123307 lines
5.9 MiB
123307 lines
5.9 MiB
|
|
var Bullet = (() => {
|
|
var _scriptDir = typeof document !== 'undefined' && document.currentScript ? document.currentScript.src : undefined;
|
|
|
|
return (
|
|
function(Bullet = {}) {
|
|
|
|
// include: shell.js
|
|
// The Module object: Our interface to the outside world. We import
|
|
// and export values on it. There are various ways Module can be used:
|
|
// 1. Not defined. We create it here
|
|
// 2. A function parameter, function(Module) { ..generated code.. }
|
|
// 3. pre-run appended it, var Module = {}; ..generated code..
|
|
// 4. External script tag defines var Module.
|
|
// We need to check if Module already exists (e.g. case 3 above).
|
|
// Substitution will be replaced with actual code on later stage of the build,
|
|
// this way Closure Compiler will not mangle it (e.g. case 4. above).
|
|
// Note that if you want to run closure, and also to use Module
|
|
// after the generated code, you will need to define var Module = {};
|
|
// before the code. Then that object will be used in the code, and you
|
|
// can continue to use Module afterwards as well.
|
|
var Module = typeof Bullet != 'undefined' ? Bullet : {};
|
|
|
|
// Set up the promise that indicates the Module is initialized
|
|
var readyPromiseResolve, readyPromiseReject;
|
|
Module['ready'] = new Promise((resolve, reject) => {
|
|
readyPromiseResolve = resolve;
|
|
readyPromiseReject = reject;
|
|
});
|
|
["_main","__embind_initialize_bindings","_fflush","onRuntimeInitialized"].forEach((prop) => {
|
|
if (!Object.getOwnPropertyDescriptor(Module['ready'], prop)) {
|
|
Object.defineProperty(Module['ready'], prop, {
|
|
get: () => abort('You are getting ' + prop + ' on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js'),
|
|
set: () => abort('You are setting ' + prop + ' on the Promise object, instead of the instance. Use .then() to get called back with the instance, see the MODULARIZE docs in src/settings.js'),
|
|
});
|
|
}
|
|
});
|
|
|
|
// --pre-jses are emitted after the Module integration code, so that they can
|
|
// refer to Module (if they choose; they can also define Module)
|
|
|
|
|
|
// Sometimes an existing Module object exists with properties
|
|
// meant to overwrite the default module functionality. Here
|
|
// we collect those properties and reapply _after_ we configure
|
|
// the current environment's defaults to avoid having to be so
|
|
// defensive during initialization.
|
|
var moduleOverrides = Object.assign({}, Module);
|
|
|
|
var arguments_ = [];
|
|
var thisProgram = './this.program';
|
|
var quit_ = (status, toThrow) => {
|
|
throw toThrow;
|
|
};
|
|
|
|
// Determine the runtime environment we are in. You can customize this by
|
|
// setting the ENVIRONMENT setting at compile time (see settings.js).
|
|
|
|
var ENVIRONMENT_IS_WEB = true;
|
|
var ENVIRONMENT_IS_WORKER = false;
|
|
var ENVIRONMENT_IS_NODE = false;
|
|
var ENVIRONMENT_IS_SHELL = false;
|
|
|
|
if (Module['ENVIRONMENT']) {
|
|
throw new Error('Module.ENVIRONMENT has been deprecated. To force the environment, use the ENVIRONMENT compile-time option (for example, -sENVIRONMENT=web or -sENVIRONMENT=node)');
|
|
}
|
|
|
|
// `/` should be present at the end if `scriptDirectory` is not empty
|
|
var scriptDirectory = '';
|
|
function locateFile(path) {
|
|
if (Module['locateFile']) {
|
|
return Module['locateFile'](path, scriptDirectory);
|
|
}
|
|
return scriptDirectory + path;
|
|
}
|
|
|
|
// Hooks that are implemented differently in different runtime environments.
|
|
var read_,
|
|
readAsync,
|
|
readBinary,
|
|
setWindowTitle;
|
|
|
|
if (ENVIRONMENT_IS_SHELL) {
|
|
|
|
if ((typeof process == 'object' && typeof require === 'function') || typeof window == 'object' || typeof importScripts == 'function') throw new Error('not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)');
|
|
|
|
if (typeof read != 'undefined') {
|
|
read_ = (f) => {
|
|
const data = tryParseAsDataURI(f);
|
|
if (data) {
|
|
return intArrayToString(data);
|
|
}
|
|
return read(f);
|
|
};
|
|
}
|
|
|
|
readBinary = (f) => {
|
|
let data;
|
|
data = tryParseAsDataURI(f);
|
|
if (data) {
|
|
return data;
|
|
}
|
|
if (typeof readbuffer == 'function') {
|
|
return new Uint8Array(readbuffer(f));
|
|
}
|
|
data = read(f, 'binary');
|
|
assert(typeof data == 'object');
|
|
return data;
|
|
};
|
|
|
|
readAsync = (f, onload, onerror) => {
|
|
setTimeout(() => onload(readBinary(f)), 0);
|
|
};
|
|
|
|
if (typeof clearTimeout == 'undefined') {
|
|
globalThis.clearTimeout = (id) => {};
|
|
}
|
|
|
|
if (typeof scriptArgs != 'undefined') {
|
|
arguments_ = scriptArgs;
|
|
} else if (typeof arguments != 'undefined') {
|
|
arguments_ = arguments;
|
|
}
|
|
|
|
if (typeof quit == 'function') {
|
|
quit_ = (status, toThrow) => {
|
|
// Unlike node which has process.exitCode, d8 has no such mechanism. So we
|
|
// have no way to set the exit code and then let the program exit with
|
|
// that code when it naturally stops running (say, when all setTimeouts
|
|
// have completed). For that reason, we must call `quit` - the only way to
|
|
// set the exit code - but quit also halts immediately. To increase
|
|
// consistency with node (and the web) we schedule the actual quit call
|
|
// using a setTimeout to give the current stack and any exception handlers
|
|
// a chance to run. This enables features such as addOnPostRun (which
|
|
// expected to be able to run code after main returns).
|
|
setTimeout(() => {
|
|
if (!(toThrow instanceof ExitStatus)) {
|
|
let toLog = toThrow;
|
|
if (toThrow && typeof toThrow == 'object' && toThrow.stack) {
|
|
toLog = [toThrow, toThrow.stack];
|
|
}
|
|
err(`exiting due to exception: ${toLog}`);
|
|
}
|
|
quit(status);
|
|
});
|
|
throw toThrow;
|
|
};
|
|
}
|
|
|
|
if (typeof print != 'undefined') {
|
|
// Prefer to use print/printErr where they exist, as they usually work better.
|
|
if (typeof console == 'undefined') console = /** @type{!Console} */({});
|
|
console.log = /** @type{!function(this:Console, ...*): undefined} */ (print);
|
|
console.warn = console.error = /** @type{!function(this:Console, ...*): undefined} */ (typeof printErr != 'undefined' ? printErr : print);
|
|
}
|
|
|
|
} else
|
|
|
|
// Note that this includes Node.js workers when relevant (pthreads is enabled).
|
|
// Node.js workers are detected as a combination of ENVIRONMENT_IS_WORKER and
|
|
// ENVIRONMENT_IS_NODE.
|
|
if (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) {
|
|
if (ENVIRONMENT_IS_WORKER) { // Check worker, not web, since window could be polyfilled
|
|
scriptDirectory = self.location.href;
|
|
} else if (typeof document != 'undefined' && document.currentScript) { // web
|
|
scriptDirectory = document.currentScript.src;
|
|
}
|
|
// When MODULARIZE, this JS may be executed later, after document.currentScript
|
|
// is gone, so we saved it, and we use it here instead of any other info.
|
|
if (_scriptDir) {
|
|
scriptDirectory = _scriptDir;
|
|
}
|
|
// blob urls look like blob:http://site.com/etc/etc and we cannot infer anything from them.
|
|
// otherwise, slice off the final part of the url to find the script directory.
|
|
// if scriptDirectory does not contain a slash, lastIndexOf will return -1,
|
|
// and scriptDirectory will correctly be replaced with an empty string.
|
|
// If scriptDirectory contains a query (starting with ?) or a fragment (starting with #),
|
|
// they are removed because they could contain a slash.
|
|
if (scriptDirectory.indexOf('blob:') !== 0) {
|
|
scriptDirectory = scriptDirectory.substr(0, scriptDirectory.replace(/[?#].*/, "").lastIndexOf('/')+1);
|
|
} else {
|
|
scriptDirectory = '';
|
|
}
|
|
|
|
if (!(typeof window == 'object' || typeof importScripts == 'function')) throw new Error('not compiled for this environment (did you build to HTML and try to run it not on the web, or set ENVIRONMENT to something - like node - and run it someplace else - like on the web?)');
|
|
|
|
// Differentiate the Web Worker from the Node Worker case, as reading must
|
|
// be done differently.
|
|
{
|
|
// include: web_or_worker_shell_read.js
|
|
read_ = (url) => {
|
|
try {
|
|
var xhr = new XMLHttpRequest();
|
|
xhr.open('GET', url, false);
|
|
xhr.send(null);
|
|
return xhr.responseText;
|
|
} catch (err) {
|
|
var data = tryParseAsDataURI(url);
|
|
if (data) {
|
|
return intArrayToString(data);
|
|
}
|
|
throw err;
|
|
}
|
|
}
|
|
|
|
if (ENVIRONMENT_IS_WORKER) {
|
|
readBinary = (url) => {
|
|
try {
|
|
var xhr = new XMLHttpRequest();
|
|
xhr.open('GET', url, false);
|
|
xhr.responseType = 'arraybuffer';
|
|
xhr.send(null);
|
|
return new Uint8Array(/** @type{!ArrayBuffer} */(xhr.response));
|
|
} catch (err) {
|
|
var data = tryParseAsDataURI(url);
|
|
if (data) {
|
|
return data;
|
|
}
|
|
throw err;
|
|
}
|
|
};
|
|
}
|
|
|
|
readAsync = (url, onload, onerror) => {
|
|
var xhr = new XMLHttpRequest();
|
|
xhr.open('GET', url, true);
|
|
xhr.responseType = 'arraybuffer';
|
|
xhr.onload = () => {
|
|
if (xhr.status == 200 || (xhr.status == 0 && xhr.response)) { // file URLs can return 0
|
|
onload(xhr.response);
|
|
return;
|
|
}
|
|
var data = tryParseAsDataURI(url);
|
|
if (data) {
|
|
onload(data.buffer);
|
|
return;
|
|
}
|
|
onerror();
|
|
};
|
|
xhr.onerror = onerror;
|
|
xhr.send(null);
|
|
}
|
|
|
|
// end include: web_or_worker_shell_read.js
|
|
}
|
|
|
|
setWindowTitle = (title) => document.title = title;
|
|
} else
|
|
{
|
|
throw new Error('environment detection error');
|
|
}
|
|
|
|
var out = Module['print'] || console.log.bind(console);
|
|
var err = Module['printErr'] || console.error.bind(console);
|
|
|
|
// Merge back in the overrides
|
|
Object.assign(Module, moduleOverrides);
|
|
// Free the object hierarchy contained in the overrides, this lets the GC
|
|
// reclaim data used e.g. in memoryInitializerRequest, which is a large typed array.
|
|
moduleOverrides = null;
|
|
checkIncomingModuleAPI();
|
|
|
|
// Emit code to handle expected values on the Module object. This applies Module.x
|
|
// to the proper local x. This has two benefits: first, we only emit it if it is
|
|
// expected to arrive, and second, by using a local everywhere else that can be
|
|
// minified.
|
|
|
|
if (Module['arguments']) arguments_ = Module['arguments'];legacyModuleProp('arguments', 'arguments_');
|
|
|
|
if (Module['thisProgram']) thisProgram = Module['thisProgram'];legacyModuleProp('thisProgram', 'thisProgram');
|
|
|
|
if (Module['quit']) quit_ = Module['quit'];legacyModuleProp('quit', 'quit_');
|
|
|
|
// perform assertions in shell.js after we set up out() and err(), as otherwise if an assertion fails it cannot print the message
|
|
// Assertions on removed incoming Module JS APIs.
|
|
assert(typeof Module['memoryInitializerPrefixURL'] == 'undefined', 'Module.memoryInitializerPrefixURL option was removed, use Module.locateFile instead');
|
|
assert(typeof Module['pthreadMainPrefixURL'] == 'undefined', 'Module.pthreadMainPrefixURL option was removed, use Module.locateFile instead');
|
|
assert(typeof Module['cdInitializerPrefixURL'] == 'undefined', 'Module.cdInitializerPrefixURL option was removed, use Module.locateFile instead');
|
|
assert(typeof Module['filePackagePrefixURL'] == 'undefined', 'Module.filePackagePrefixURL option was removed, use Module.locateFile instead');
|
|
assert(typeof Module['read'] == 'undefined', 'Module.read option was removed (modify read_ in JS)');
|
|
assert(typeof Module['readAsync'] == 'undefined', 'Module.readAsync option was removed (modify readAsync in JS)');
|
|
assert(typeof Module['readBinary'] == 'undefined', 'Module.readBinary option was removed (modify readBinary in JS)');
|
|
assert(typeof Module['setWindowTitle'] == 'undefined', 'Module.setWindowTitle option was removed (modify setWindowTitle in JS)');
|
|
assert(typeof Module['TOTAL_MEMORY'] == 'undefined', 'Module.TOTAL_MEMORY has been renamed Module.INITIAL_MEMORY');
|
|
legacyModuleProp('read', 'read_');
|
|
legacyModuleProp('readAsync', 'readAsync');
|
|
legacyModuleProp('readBinary', 'readBinary');
|
|
legacyModuleProp('setWindowTitle', 'setWindowTitle');
|
|
var IDBFS = 'IDBFS is no longer included by default; build with -lidbfs.js';
|
|
var PROXYFS = 'PROXYFS is no longer included by default; build with -lproxyfs.js';
|
|
var WORKERFS = 'WORKERFS is no longer included by default; build with -lworkerfs.js';
|
|
var NODEFS = 'NODEFS is no longer included by default; build with -lnodefs.js';
|
|
|
|
assert(!ENVIRONMENT_IS_WORKER, "worker environment detected but not enabled at build time. Add 'worker' to `-sENVIRONMENT` to enable.");
|
|
|
|
assert(!ENVIRONMENT_IS_NODE, "node environment detected but not enabled at build time. Add 'node' to `-sENVIRONMENT` to enable.");
|
|
|
|
assert(!ENVIRONMENT_IS_SHELL, "shell environment detected but not enabled at build time. Add 'shell' to `-sENVIRONMENT` to enable.");
|
|
|
|
|
|
// end include: shell.js
|
|
// include: preamble.js
|
|
// === Preamble library stuff ===
|
|
|
|
// Documentation for the public APIs defined in this file must be updated in:
|
|
// site/source/docs/api_reference/preamble.js.rst
|
|
// A prebuilt local version of the documentation is available at:
|
|
// site/build/text/docs/api_reference/preamble.js.txt
|
|
// You can also build docs locally as HTML or other formats in site/
|
|
// An online HTML version (which may be of a different version of Emscripten)
|
|
// is up at http://kripken.github.io/emscripten-site/docs/api_reference/preamble.js.html
|
|
|
|
var wasmBinary;
|
|
if (Module['wasmBinary']) wasmBinary = Module['wasmBinary'];legacyModuleProp('wasmBinary', 'wasmBinary');
|
|
var noExitRuntime = Module['noExitRuntime'] || true;legacyModuleProp('noExitRuntime', 'noExitRuntime');
|
|
|
|
// include: wasm2js.js
|
|
// wasm2js.js - enough of a polyfill for the WebAssembly object so that we can load
|
|
// wasm2js code that way.
|
|
|
|
// Emit "var WebAssembly" if definitely using wasm2js. Otherwise, in MAYBE_WASM2JS
|
|
// mode, we can't use a "var" since it would prevent normal wasm from working.
|
|
/** @suppress{duplicate, const} */
|
|
var
|
|
WebAssembly = {
|
|
// Note that we do not use closure quoting (this['buffer'], etc.) on these
|
|
// functions, as they are just meant for internal use. In other words, this is
|
|
// not a fully general polyfill.
|
|
/** @constructor */
|
|
Memory: function(opts) {
|
|
this.buffer = new ArrayBuffer(opts['initial'] * 65536);
|
|
},
|
|
|
|
Module: function(binary) {
|
|
// TODO: use the binary and info somehow - right now the wasm2js output is embedded in
|
|
// the main JS
|
|
},
|
|
|
|
/** @constructor */
|
|
Instance: function(module, info) {
|
|
// TODO: use the module somehow - right now the wasm2js output is embedded in
|
|
// the main JS
|
|
// This will be replaced by the actual wasm2js code.
|
|
this.exports = (
|
|
function instantiate(info) {
|
|
function Table(ret) {
|
|
// grow method not included; table is not growable
|
|
ret.set = function(i, func) {
|
|
this[i] = func;
|
|
};
|
|
ret.get = function(i) {
|
|
return this[i];
|
|
};
|
|
return ret;
|
|
}
|
|
|
|
var bufferView;
|
|
var base64ReverseLookup = new Uint8Array(123/*'z'+1*/);
|
|
for (var i = 25; i >= 0; --i) {
|
|
base64ReverseLookup[48+i] = 52+i; // '0-9'
|
|
base64ReverseLookup[65+i] = i; // 'A-Z'
|
|
base64ReverseLookup[97+i] = 26+i; // 'a-z'
|
|
}
|
|
base64ReverseLookup[43] = 62; // '+'
|
|
base64ReverseLookup[47] = 63; // '/'
|
|
/** @noinline Inlining this function would mean expanding the base64 string 4x times in the source code, which Closure seems to be happy to do. */
|
|
function base64DecodeToExistingUint8Array(uint8Array, offset, b64) {
|
|
var b1, b2, i = 0, j = offset, bLength = b64.length, end = offset + (bLength*3>>2) - (b64[bLength-2] == '=') - (b64[bLength-1] == '=');
|
|
for (; i < bLength; i += 4) {
|
|
b1 = base64ReverseLookup[b64.charCodeAt(i+1)];
|
|
b2 = base64ReverseLookup[b64.charCodeAt(i+2)];
|
|
uint8Array[j++] = base64ReverseLookup[b64.charCodeAt(i)] << 2 | b1 >> 4;
|
|
if (j < end) uint8Array[j++] = b1 << 4 | b2 >> 2;
|
|
if (j < end) uint8Array[j++] = b2 << 6 | base64ReverseLookup[b64.charCodeAt(i+3)];
|
|
}
|
|
}
|
|
function initActiveSegments(imports) {
|
|
base64DecodeToExistingUint8Array(bufferView, 65536, "UXVhdF96AFZlYzNfegB2LT5wb2ludC56IDwgdy0+cG9pbnQuegB2MC0+cG9pbnQueiA8IHYxLT5wb2ludC56AGFjdHVhbFRoaXNQcm94eQByZW1vdmVPdmVybGFwcGluZ1BhaXJzQ29udGFpbmluZ1Byb3h5AEVtcHR5AFJpZ2lkQm9keV9zZXRHcmF2aXR5AER5bmFtaWNzV29ybGRfc2V0R3Jhdml0eQBUcmFuc2Zvcm1fc2V0SWRlbnRpdHkAR2VuZXJpYzZEb2ZTcHJpbmcyQ29uc3RyYWludF9zZXRUYXJnZXRWZWxvY2l0eQBIaW5nZUNvbnN0cmFpbnRfc2V0TW90b3JWZWxvY2l0eQBSaWdpZEJvZHlfc2V0QW5ndWxhclZlbG9jaXR5AFJpZ2lkQm9keV9nZXRBbmd1bGFyVmVsb2NpdHkAUmlnaWRCb2R5X3NldExpbmVhclZlbG9jaXR5AFJpZ2lkQm9keV9nZXRMaW5lYXJWZWxvY2l0eQBidEphY29iaWFuRW50cnkAZnJlZU1lbW9yeQBDaGFyYWN0ZXJDb250cm9sbGVyX3NldE92ZXJsYXBSZWNvdmVyeQBIaW5nZUNvbnN0cmFpbnRfc2V0QW5ndWxhck9ubHkAd2Fsa1N0YWNrbGVzc1F1YW50aXplZFRyZWVDYWNoZUZyaWVuZGx5AGJvZHkAZ2V0T3JJbml0U29sdmVyQm9keQB+YnRSaWdpZEJvZHkARHluYW1pY3NXb3JsZF9yZW1vdmVSaWdpZEJvZHkARHluYW1pY3NXb3JsZF9hZGRSaWdpZEJvZHkAVHlwZWRDb25zdHJhaW50X2dldEZpeGVkQm9keQB3YWxrU3RhY2tsZXNzVHJlZUFnYWluc3RSYXkAd2Fsa1N0YWNrbGVzc1F1YW50aXplZFRyZWVBZ2FpbnN0UmF5AFF1YXRfeQBWZWMzX3kAQm94AGdldFZlcnRleAByZW1vdmVWZXJ0ZXgAU2ltcGxleFNoYXBlX2FkZFZlcnRleAByZXBvcnRBYWJiT3ZlcmxhcHBpbmdOb2RleAByZW1vdmVDaGlsZFNoYXBlQnlJbmRleABtX25leHRbcHJldmlvdXNdID09IHBhaXJJbmRleABtX25leHRbcHJldmlvdXNdID09IGxhc3RQYWlySW5kZXgAQ29sbGlzaW9uT2JqZWN0X3NldFVzZXJJbmRleABDb2xsaXNpb25PYmplY3RfZ2V0VXNlckluZGV4AENvbmVTaGFwZV9zZXRDb25lVXBJbmRleABzb3J0QW5kQ2FsY1NwbGl0dGluZ0luZGV4AGdldEVzY2FwZUluZGV4AGdldFRyaWFuZ2xlSW5kZXgAaW50ZXJuYWxQcm9jZXNzVHJpYW5nbGVJbmRleAB3YWxrSXRlcmF0aW9ucyA8IG1fY3VyTm9kZUluZGV4AFF1YXRfeABWZWMzX3gALSsgICAwWDB4AC0wWCswWCAwWC0weCsweCAweABSaWdpZEJvZHlfbmV3AEhpbmdlQ29uc3RyYWludF9uZXcARml4ZWRDb25zdHJhaW50X25ldwBQMlBDb25zdHJhaW50X25ldwBHZW5lcmljNkRvZlNwcmluZzJDb25zdHJhaW50X25ldwBDb2xsaXNpb25PYmplY3RfbmV3AFF1YXRfbmV3AFNlcXVlbnRpYWxJbXB1bHNlQ29uc3RyYWludFNvbHZlcl9uZXcAQm94Q2hhcmFjdGVyQ29udHJvbGxlcl9uZXcAQ2Fwc3VsZUNoYXJhY3RlckNvbnRyb2xsZXJfbmV3AENvbGxpc2lvbkRpc3BhdGNoZXJfbmV3AFRyYW5zZm9ybV9uZXcAY2NNYXRlcmlhbF9uZXcAVHJpYW5nbGVNZXNoX25ldwBEYnZ0QnJvYWRwaGFzZV9uZXcAQm94U2hhcGVfbmV3AFNpbXBsZXhTaGFwZV9uZXcAQ3lsaW5kZXJTaGFwZV9uZXcAVGVycmFpblNoYXBlX25ldwBDb252ZXhUcmlhbmdsZU1lc2hTaGFwZV9uZXcAU2NhbGVkQnZoVHJpYW5nbGVNZXNoU2hhcGVfbmV3AFNwaGVyZVNoYXBlX25ldwBDb25lU2hhcGVfbmV3AFN0YXRpY1BsYW5lU2hhcGVfbmV3AENhcHN1bGVTaGFwZV9uZXcAY2NDb21wb3VuZFNoYXBlX25ldwBjY0Rpc2NyZXRlRHluYW1pY3NXb3JsZF9uZXcAQm94Q2hhcmFjdGVyQ29udHJvbGxlckRlc2NfbmV3AENhcHN1bGVDaGFyYWN0ZXJDb250cm9sbGVyRGVzY19uZXcAVmVjM19uZXcARGVidWdEcmF3AFF1YXRfdwBvblNoYXBlSGl0RXh0AGUtPnRhcmdldC0+cG9pbnQuZG90KG5vcm1hbCkgPT0gZGlzdABDb2xsaXNpb25Xb3JsZF9yYXlUZXN0AENvbGxpc2lvbldvcmxkX2NvbnZleFN3ZWVwVGVzdABwcmVkaWN0aXZlIGNvbnZleFN3ZWVwVGVzdABzb3J0AGNvbnZleEh1bGxTdXBwb3J0AENvbnRyb2xsZXJIaXRSZXBvcnQAdW5zaWduZWQgc2hvcnQAaXNsYW5kVW5pb25GaW5kQW5kUXVpY2tTb3J0AHB0AHNoaWZ0ZWREb3QgPD0gb3JpZ0RvdABQZXJzaXN0ZW50TWFuaWZvbGRfZ2V0Q29udGFjdFBvaW50AHJlbW92ZUNvbnRhY3RQb2ludAByZXBsYWNlQ29udGFjdFBvaW50AGFkZENvbnRhY3RQb2ludABHZW5lcmljNkRvZlNwcmluZzJDb25zdHJhaW50X3NldEVxdWlsaWJyaXVtUG9pbnQAYWRkTWFuaWZvbGRQb2ludABEeW5hbWljc1dvcmxkX3JlbW92ZUNvbnN0cmFpbnQARHluYW1pY3NXb3JsZF9hZGRDb25zdHJhaW50AHVuc2lnbmVkIGludABCb3hDaGFyYWN0ZXJDb250cm9sbGVyX3NldEhhbGZTaWRlRXh0ZW50AEJveENoYXJhY3RlckNvbnRyb2xsZXJfc2V0SGFsZkZvcndhcmRFeHRlbnQAaW1wbGVtZW50AFN0YXRpY1BsYW5lU2hhcGVfc2V0UGxhbmVDb25zdGFudABhZGRTaW5nbGVSZXN1bHQASGluZ2VDb25zdHJhaW50X3NldExpbWl0AEdlbmVyaWM2RG9mU3ByaW5nMkNvbnN0cmFpbnRfc2V0TGltaXQAQ2hhcmFjdGVyQ29udHJvbGxlcl9zZXRTbG9wZUxpbWl0AFJheUNhbGxiYWNrX2hhc0hpdABDb252ZXhDYWxsYmFja19oYXNIaXQAbWluSGVpZ2h0IDw9IG1heEhlaWdodABDYXBzdWxlQ2hhcmFjdGVyQ29udHJvbGxlcl9zZXRIZWlnaHQAQ29uZVNoYXBlX3NldEhlaWdodABCb3hDaGFyYWN0ZXJDb250cm9sbGVyX3NldEhhbGZIZWlnaHQAQ2hhcmFjdGVyQ29udHJvbGxlcl9zZXRDb250YWN0T2Zmc2V0AENoYXJhY3RlckNvbnRyb2xsZXJfc2V0U3RlcE9mZnNldABnZXRJbmZvMkludGVybmFsVXNpbmdGcmFtZU9mZnNldABjY0Nsb3Nlc3RSYXlDYWxsYmFja19yZXNldABjY0FsbFJheUNhbGxiYWNrX3Jlc2V0AGNjQ2xvc2VzdENvbnZleENhbGxiYWNrX3Jlc2V0AGNjQWxsQ29udmV4Q2FsbGJhY2tfcmVzZXQAUXVhdF9zZXQAY2NNYXRlcmlhbF9zZXQAVmVjM19zZXQAZWRnZS0+dGFyZ2V0ICYmIHItPnRhcmdldABwcmV2LT5yZXZlcnNlLT50YXJnZXQgPT0gbmV4dC0+cmV2ZXJzZS0+dGFyZ2V0AHJldmVyc2UtPnRhcmdldCA9PSBuLT5yZXZlcnNlLT50YXJnZXQASGluZ2VDb25zdHJhaW50X3NldE1vdG9yVGFyZ2V0AEdlbmVyaWM2RG9mU3ByaW5nMkNvbnN0cmFpbnRfc2V0U2Vydm9UYXJnZXQAX19kZXN0cnVjdABDaGFyYWN0ZXJDb250cm9sbGVyX2dldEdob3N0T2JqZWN0AH5idEdob3N0T2JqZWN0AG90aGVyT2JqZWN0AGNvbGxpc2lvbk9iamVjdABDb250cm9sbGVyU2hhcGVIaXRfZ2V0SGl0Q29sbGlzaW9uT2JqZWN0AENvbGxpc2lvbldvcmxkX3JlbW92ZUNvbGxpc2lvbk9iamVjdABDb2xsaXNpb25Xb3JsZF9hZGRDb2xsaXNpb25PYmplY3QAQ29sbGlzaW9uT2JqZWN0X2lzU3RhdGljT2JqZWN0AENvbGxpc2lvbk9iamVjdF9pc0tpbmVtYXRpY09iamVjdABDb2xsaXNpb25PYmplY3RfaXNTdGF0aWNPcktpbmVtYXRpY09iamVjdABjYWxjdWxhdGVUaW1lT2ZJbXBhY3QAZmxvYXQAaW50X2FycmF5X2F0AFZlYzNfYXJyYXlfYXQAdWludDY0X3QAY3VycmVudFJvdzx0b3RhbE51bVJvd3MAQ2Fwc3VsZUNoYXJhY3RlckNvbnRyb2xsZXJfc2V0UmFkaXVzAENvbmVTaGFwZV9zZXRSYWRpdXMAQ29sbGlzaW9uT2JqZWN0X3NldENjZFN3ZXB0U3BoZXJlUmFkaXVzAFNwaGVyZVNoYXBlX3NldFVuc2NhbGVkUmFkaXVzAHJlZnJlc2hDb250YWN0UG9pbnRzAGluZGV4IDwgbV9jYWNoZWRQb2ludHMAc29sdmVDb25zdHJhaW50cwBCb3hTaGFwZV9zZXRVbnNjYWxlZEhhbGZFeHRlbnRzAHNldEFuZ3VsYXJMaW1pdHMAUGVyc2lzdGVudE1hbmlmb2xkX2dldE51bUNvbnRhY3RzAGNyZWF0ZVByZWRpY3RpdmVDb250YWN0cwBHZW5lcmljNkRvZlNwcmluZzJDb25zdHJhaW50X3NldFN0aWZmbmVzcwBidENvbXBvdW5kQ29tcG91bmRMZWFmQ2FsbGJhY2s6OlByb2Nlc3MAUmlnaWRCb2R5X3NldE1hc3MAY2NBbGxSYXlDYWxsYmFja19nZXRDb2xsaXNpb25TaGFwZVB0cnMAY2NBbGxDb252ZXhDYWxsYmFja19nZXRDb2xsaXNpb25TaGFwZVB0cnMAZGlzcGF0Y2hBbGxDb2xsaXNpb25QYWlycwBidEhhc2hlZE92ZXJsYXBwaW5nUGFpckNhY2hlOjpwcm9jZXNzQWxsT3ZlcmxhcHBpbmdQYWlycwBjYWxjdWxhdGVPdmVybGFwcGluZ1BhaXJzAHVwZGF0ZVN1YnRyZWVIZWFkZXJzAFJpZ2lkQm9keV9zZXRNYXNzUHJvcHMAQ29udHJvbGxlckhpdF9nZXRIaXRXb3JsZFBvcwB1cGRhdGVBY3Rpb25zAHNvbHZlR3JvdXBDYWNoZUZyaWVuZGx5SXRlcmF0aW9ucwBDb252ZXhJbnRlcm5hbFNoYXBlX2dldEltcGxpY2l0U2hhcGVEaW1lbnNpb25zAGludGVncmF0ZVRyYW5zZm9ybXMAcHJlYWxsb2NhdGVDaGlsZEFsZ29yaXRobXMAVGVzdFNlcEF4aXMAUmlnaWRCb2R5X3NldEZsYWdzAGNjQ2xvc2VzdFJheUNhbGxiYWNrX3NldEZsYWdzAGNjQWxsUmF5Q2FsbGJhY2tfc2V0RmxhZ3MAUmlnaWRCb2R5X2dldEZsYWdzAENvbGxpc2lvbk9iamVjdF9zZXRDb2xsaXNpb25GbGFncwBDb2xsaXNpb25PYmplY3RfZ2V0Q29sbGlzaW9uRmxhZ3MAaW5pdGlhbGl6ZVBvbHloZWRyYWxGZWF0dXJlcwBDb21wb3VuZFNoYXBlX2dldE51bUNoaWxkU2hhcGVzAGNsZWFyTGluZXMAZmx1c2hMaW5lcwBIaW5nZUNvbnN0cmFpbnRfc2V0RnJhbWVzAEZpeGVkQ29uc3RyYWludF9zZXRGcmFtZXMAR2VuZXJpYzZEb2ZTcHJpbmcyQ29uc3RyYWludF9zZXRGcmFtZXMAcHJvY2Vzc0FsbFRyaWFuZ2xlcwBJbnRlcm5hbFByb2Nlc3NBbGxUcmlhbmdsZXMAdjEtPmVkZ2VzLT5uZXh0ID09IHYxLT5lZGdlcwBSaWdpZEJvZHlfY2xlYXJGb3JjZXMAcmVjZWl2ZU5lYXJieUZhY2VzAGZpbmRFZGdlRm9yQ29wbGFuYXJGYWNlcwBwcm9jZXNzSXNsYW5kcwBjYWxjdWxhdGVTaW11bGF0aW9uSXNsYW5kcwBidWlsZElzbGFuZHMAUmlnaWRCb2R5X3NldFNsZWVwaW5nVGhyZXNob2xkcwByZWxlYXNlIHByZWRpY3RpdmUgY29udGFjdCBtYW5pZm9sZHMARGlzcGF0Y2hlcl9nZXROdW1NYW5pZm9sZHMAc3luY1BoeXNpY3NUb0dyYXBoaWNzAHVwZGF0ZUFhYmJzAGNjQ2xvc2VzdFJheUNhbGxiYWNrX2dldENvbGxpc2lvblNoYXBlUHRyAGNjQ2xvc2VzdENvbnZleENhbGxiYWNrX2dldENvbGxpc2lvblNoYXBlUHRyAG1fbWFuaWZvbGRQdHIASGluZ2VDb25zdHJhaW50X2VuYWJsZU1vdG9yAEdlbmVyaWM2RG9mU3ByaW5nMkNvbnN0cmFpbnRfZW5hYmxlTW90b3IAUmlnaWRCb2R5X3NldEFuZ3VsYXJGYWN0b3IAUmlnaWRCb2R5X3NldExpbmVhckZhY3RvcgBEZWJ1Z0RyYXdfc2V0Q29udGFjdFBvaW50Q29sb3IARGVidWdEcmF3X3NldENvbnN0cmFpbnRMaW1pdENvbG9yAERlYnVnRHJhd19zZXRXYW50c0RlYWN0aXZhdGlvbk9iamVjdENvbG9yAERlYnVnRHJhd19zZXREaXNhYmxlZERlYWN0aXZhdGlvbk9iamVjdENvbG9yAERlYnVnRHJhd19zZXREaXNhYmxlZFNpbXVsYXRpb25PYmplY3RDb2xvcgBEZWJ1Z0RyYXdfc2V0RGVhY3RpdmVPYmplY3RDb2xvcgBEZWJ1Z0RyYXdfc2V0QWN0aXZlT2JqZWN0Q29sb3IARGVidWdEcmF3X3NldEFBQkJDb2xvcgBwYWlyAHJlbW92ZU92ZXJsYXBwaW5nUGFpcgBuZXdFZGdlUGFpcgByZW1vdmVFZGdlUGFpcgBmaW5kUGFpcgBpbnRlcm5hbEZpbmRQYWlyAENvbnRyb2xsZXJIaXRfZ2V0SGl0TW90aW9uRGlyAENvbGxpc2lvbldvcmxkX3NldERlYnVnRHJhd2VyAENvbGxpc2lvblNoYXBlX3NldFVzZXJQb2ludGVyAERyYXdXcmFwcGVyAENvbnRyb2xsZXJIaXRSZXBvcnRXcmFwcGVyAE1vdGlvblN0YXRlV3JhcHBlcgBidENvbGxpc2lvbkRpc3BhdGNoZXIAdW5zaWduZWQgY2hhcgBjY01vdGlvblN0YXRlX3NldHVwAHNvbHZlR3JvdXBDYWNoZUZyaWVuZGx5U2V0dXAAc29sdmVHcm91cABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyYy9CdWxsZXRDb2xsaXNpb24vQ29sbGlzaW9uU2hhcGVzL2J0VHJpYW5nbGVJbmRleFZlcnRleEFycmF5LmNwcABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyYy9CdWxsZXRDb2xsaXNpb24vQnJvYWRwaGFzZUNvbGxpc2lvbi9idERidnQuY3BwAEM6L1VzZXJzL2xlYWx6L0Rlc2t0b3AvdHJ1bmsvY29jb3MvYnVsbGV0LWNvbXBpbGUvYW1tby5qcy9idWxsZXQvc3JjL0J1bGxldER5bmFtaWNzL0NvbnN0cmFpbnRTb2x2ZXIvYnRQb2ludDJQb2ludENvbnN0cmFpbnQuY3BwAEM6L1VzZXJzL2xlYWx6L0Rlc2t0b3AvdHJ1bmsvY29jb3MvYnVsbGV0LWNvbXBpbGUvYW1tby5qcy9idWxsZXQvc3JjL0J1bGxldER5bmFtaWNzL0NvbnN0cmFpbnRTb2x2ZXIvYnRIaW5nZUNvbnN0cmFpbnQuY3BwAEM6L1VzZXJzL2xlYWx6L0Rlc2t0b3AvdHJ1bmsvY29jb3MvYnVsbGV0LWNvbXBpbGUvYW1tby5qcy9idWxsZXQvc3JjL0J1bGxldER5bmFtaWNzL0NvbnN0cmFpbnRTb2x2ZXIvYnRHZW5lcmljNkRvZlNwcmluZzJDb25zdHJhaW50LmNwcABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyYy9CdWxsZXRDb2xsaXNpb24vQ29sbGlzaW9uRGlzcGF0Y2gvYnRNYW5pZm9sZFJlc3VsdC5jcHAAQzovVXNlcnMvbGVhbHovRGVza3RvcC90cnVuay9jb2Nvcy9idWxsZXQtY29tcGlsZS9hbW1vLmpzL2J1bGxldC9zcmMvQnVsbGV0Q29sbGlzaW9uL0NvbGxpc2lvbkRpc3BhdGNoL2J0R2hvc3RPYmplY3QuY3BwAEM6L1VzZXJzL2xlYWx6L0Rlc2t0b3AvdHJ1bmsvY29jb3MvYnVsbGV0LWNvbXBpbGUvYW1tby5qcy9idWxsZXQvc3JjL0J1bGxldENvbGxpc2lvbi9Db2xsaXNpb25EaXNwYXRjaC9idEJveEJveERldGVjdG9yLmNwcABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyYy9CdWxsZXRDb2xsaXNpb24vTmFycm93UGhhc2VDb2xsaXNpb24vYnRHamtQYWlyRGV0ZWN0b3IuY3BwAEM6L1VzZXJzL2xlYWx6L0Rlc2t0b3AvdHJ1bmsvY29jb3MvYnVsbGV0LWNvbXBpbGUvYW1tby5qcy9idWxsZXQvc3JjL0J1bGxldENvbGxpc2lvbi9OYXJyb3dQaGFzZUNvbGxpc2lvbi9idFZvcm9ub2lTaW1wbGV4U29sdmVyLmNwcABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyYy9CdWxsZXREeW5hbWljcy9Db25zdHJhaW50U29sdmVyL2J0U2VxdWVudGlhbEltcHVsc2VDb25zdHJhaW50U29sdmVyLmNwcABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyYy9MaW5lYXJNYXRoL2J0Q29udmV4SHVsbENvbXB1dGVyLmNwcABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyYy9CdWxsZXRDb2xsaXNpb24vQ29sbGlzaW9uRGlzcGF0Y2gvYnRDb2xsaXNpb25EaXNwYXRjaGVyLmNwcABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyYy9CdWxsZXRDb2xsaXNpb24vQ29sbGlzaW9uRGlzcGF0Y2gvYnRTaW11bGF0aW9uSXNsYW5kTWFuYWdlci5jcHAAQzovVXNlcnMvbGVhbHovRGVza3RvcC90cnVuay9jb2Nvcy9idWxsZXQtY29tcGlsZS9hbW1vLmpzL2J1bGxldC9zcmMvQnVsbGV0Q29sbGlzaW9uL0NvbGxpc2lvblNoYXBlcy9idENvbnZleFBvbHloZWRyb24uY3BwAEM6L1VzZXJzL2xlYWx6L0Rlc2t0b3AvdHJ1bmsvY29jb3MvYnVsbGV0LWNvbXBpbGUvYW1tby5qcy9idWxsZXQvc3JjL0J1bGxldENvbGxpc2lvbi9Db2xsaXNpb25EaXNwYXRjaC9idENvbnZleENvbnZleEFsZ29yaXRobS5jcHAAQzovVXNlcnMvbGVhbHovRGVza3RvcC90cnVuay9jb2Nvcy9idWxsZXQtY29tcGlsZS9hbW1vLmpzL2J1bGxldC9zcmMvQnVsbGV0Q29sbGlzaW9uL0NvbGxpc2lvbkRpc3BhdGNoL2J0Q29tcG91bmRDb2xsaXNpb25BbGdvcml0aG0uY3BwAEM6L1VzZXJzL2xlYWx6L0Rlc2t0b3AvdHJ1bmsvY29jb3MvYnVsbGV0LWNvbXBpbGUvYW1tby5qcy9idWxsZXQvc3JjL0J1bGxldENvbGxpc2lvbi9Db2xsaXNpb25EaXNwYXRjaC9idENvbXBvdW5kQ29tcG91bmRDb2xsaXNpb25BbGdvcml0aG0uY3BwAEM6L1VzZXJzL2xlYWx6L0Rlc2t0b3AvdHJ1bmsvY29jb3MvYnVsbGV0LWNvbXBpbGUvYW1tby5qcy9idWxsZXQvc3JjL0J1bGxldENvbGxpc2lvbi9Ccm9hZHBoYXNlQ29sbGlzaW9uL2J0UXVhbnRpemVkQnZoLmNwcABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyYy9CdWxsZXRDb2xsaXNpb24vQ29sbGlzaW9uU2hhcGVzL2J0T3B0aW1pemVkQnZoLmNwcABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyYy9CdWxsZXRDb2xsaXNpb24vTmFycm93UGhhc2VDb2xsaXNpb24vYnRQb2x5aGVkcmFsQ29udGFjdENsaXBwaW5nLmNwcABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyYy9CdWxsZXRDb2xsaXNpb24vQnJvYWRwaGFzZUNvbGxpc2lvbi9idERidnRCcm9hZHBoYXNlLmNwcABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyYy9CdWxsZXRDb2xsaXNpb24vQ29sbGlzaW9uU2hhcGVzL2J0RW1wdHlTaGFwZS5jcHAAQzovVXNlcnMvbGVhbHovRGVza3RvcC90cnVuay9jb2Nvcy9idWxsZXQtY29tcGlsZS9hbW1vLmpzL2J1bGxldC9zcmMvQnVsbGV0Q29sbGlzaW9uL0NvbGxpc2lvblNoYXBlcy9idENvbnZleFNoYXBlLmNwcABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyYy9CdWxsZXRDb2xsaXNpb24vQ29sbGlzaW9uU2hhcGVzL2J0UG9seWhlZHJhbENvbnZleFNoYXBlLmNwcABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyYy9CdWxsZXRDb2xsaXNpb24vQ29sbGlzaW9uU2hhcGVzL2J0SGVpZ2h0ZmllbGRUZXJyYWluU2hhcGUuY3BwAEM6L1VzZXJzL2xlYWx6L0Rlc2t0b3AvdHJ1bmsvY29jb3MvYnVsbGV0LWNvbXBpbGUvYW1tby5qcy9idWxsZXQvc3JjL0J1bGxldENvbGxpc2lvbi9Db2xsaXNpb25TaGFwZXMvYnRDb252ZXhUcmlhbmdsZU1lc2hTaGFwZS5jcHAAQzovVXNlcnMvbGVhbHovRGVza3RvcC90cnVuay9jb2Nvcy9idWxsZXQtY29tcGlsZS9hbW1vLmpzL2J1bGxldC9zcmMvQnVsbGV0Q29sbGlzaW9uL0NvbGxpc2lvblNoYXBlcy9idFRyaWFuZ2xlTWVzaFNoYXBlLmNwcABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyYy9CdWxsZXRDb2xsaXNpb24vQ29sbGlzaW9uU2hhcGVzL2J0QnZoVHJpYW5nbGVNZXNoU2hhcGUuY3BwAEM6L1VzZXJzL2xlYWx6L0Rlc2t0b3AvdHJ1bmsvY29jb3MvYnVsbGV0LWNvbXBpbGUvYW1tby5qcy9idWxsZXQvc3JjL0J1bGxldENvbGxpc2lvbi9Db2xsaXNpb25TaGFwZXMvYnRDb25lU2hhcGUuY3BwAEM6L1VzZXJzL2xlYWx6L0Rlc2t0b3AvdHJ1bmsvY29jb3MvYnVsbGV0LWNvbXBpbGUvYW1tby5qcy9idWxsZXQvc3JjL0J1bGxldENvbGxpc2lvbi9Db2xsaXNpb25TaGFwZXMvYnRDb21wb3VuZFNoYXBlLmNwcABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyYy9CdWxsZXRDb2xsaXNpb24vQnJvYWRwaGFzZUNvbGxpc2lvbi9idE92ZXJsYXBwaW5nUGFpckNhY2hlLmNwcABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyYy9CdWxsZXRDb2xsaXNpb24vQ29sbGlzaW9uRGlzcGF0Y2gvYnRIYXNoZWRTaW1wbGVQYWlyQ2FjaGUuY3BwAEM6L1VzZXJzL2xlYWx6L0Rlc2t0b3AvdHJ1bmsvY29jb3MvYnVsbGV0LWNvbXBpbGUvYW1tby5qcy9idWxsZXQvc3JjL0J1bGxldENvbGxpc2lvbi9Db2xsaXNpb25TaGFwZXMvYnRTdHJpZGluZ01lc2hJbnRlcmZhY2UuY3BwAEM6L1VzZXJzL2xlYWx6L0Rlc2t0b3AvdHJ1bmsvY29jb3MvYnVsbGV0LWNvbXBpbGUvYW1tby5qcy9idWxsZXQvc3JjL0J1bGxldER5bmFtaWNzL0R5bmFtaWNzL2J0RGlzY3JldGVEeW5hbWljc1dvcmxkLmNwcABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyYy9CdWxsZXRDb2xsaXNpb24vQ29sbGlzaW9uRGlzcGF0Y2gvYnRDb2xsaXNpb25Xb3JsZC5jcHAAQzovVXNlcnMvbGVhbHovRGVza3RvcC90cnVuay9jb2Nvcy9idWxsZXQtY29tcGlsZS9hbW1vLmpzL2J1bGxldC9zcmMvQnVsbGV0Q29sbGlzaW9uL05hcnJvd1BoYXNlQ29sbGlzaW9uL2J0UGVyc2lzdGVudE1hbmlmb2xkLmNwcABDeWxpbmRlclNoYXBlX3VwZGF0ZVByb3AAQ2Fwc3VsZVNoYXBlX3VwZGF0ZVByb3AAZi0+Y29weSAhPSBzdGFtcABxdWFudGl6ZVdpdGhDbGFtcABjY0Rpc2NyZXRlRHluYW1pY3NXb3JsZF9zZXRBbGxvd1NsZWVwAEdlbmVyaWM2RG9mU3ByaW5nMkNvbnN0cmFpbnRfc2V0U2Vydm8AZnJvbSAmJiB0bwBjb2xBbGdvAHNvbHZlckluZm8AY2FsY3VsYXRlQW5nbGVJbmZvAGFwcGx5IHNwZWN1bGF0aXZlIGNvbnRhY3QgcmVzdGl0dXRpb24AcHJlZGljdFVuY29uc3RyYWludE1vdGlvbgBDaGFyYWN0ZXJDb250cm9sbGVyX2dldFBvc2l0aW9uAG5vdGlmeU9uRGVzdHJ1Y3Rpb24AcGVyZm9ybURpc2NyZXRlQ29sbGlzaW9uRGV0ZWN0aW9uAGdldFByZWZlcnJlZFBlbmV0cmF0aW9uRGlyZWN0aW9uAG1lcmdlUHJvamVjdGlvbgByYXlSZXN1bHQubV9oaXRGcmFjdGlvbiA8PSBtX2Nsb3Nlc3RIaXRGcmFjdGlvbgBjb252ZXhSZXN1bHQubV9oaXRGcmFjdGlvbiA8PSBtX2Nsb3Nlc3RIaXRGcmFjdGlvbgBEeW5hbWljc1dvcmxkX3JlbW92ZUFjdGlvbgBEeW5hbWljc1dvcmxkX2FkZEFjdGlvbgAhbV91c2VRdWFudGl6YXRpb24AZ2V0UGxhbmVFcXVhdGlvbgBUcmFuc2Zvcm1fc2V0Um90YXRpb24AVHJhbnNmb3JtX2dldFJvdGF0aW9uAGdldE9yaWVudGF0aW9uAE92ZXJmbG93IGluIEFBQkIsIG9iamVjdCByZW1vdmVkIGZyb20gc2ltdWxhdGlvbgBEeW5hbWljc1dvcmxkX3N0ZXBTaW11bGF0aW9uAGludGVybmFsU2luZ2xlU3RlcFNpbXVsYXRpb24AQ2hhcmFjdGVyQ29udHJvbGxlcl9zZXRDb2xsaXNpb24AYnRDb252ZXhDb25jYXZlQ29sbGlzaW9uQWxnb3JpdGhtOjpwcm9jZXNzQ29sbGlzaW9uAG5lZWRzQ29sbGlzaW9uAGxvY2FsR2V0U3VwcG9ydGluZ1ZlcnRleFdpdGhvdXRNYXJnaW4AQ29sbGlzaW9uU2hhcGVfc2V0TWFyZ2luAFRyYW5zZm9ybV9nZXRPcmlnaW4AVHJhbnNmb3JtX2dldFJvdGF0aW9uQW5kT3JpZ2luAG5hbgBNb3Rpb25TdGF0ZV9zZXRXb3JsZFRyYW5zZm9ybQBSaWdpZEJvZHlfZ2V0V29ybGRUcmFuc2Zvcm0AQ29sbGlzaW9uT2JqZWN0X2dldFdvcmxkVHJhbnNmb3JtAE1vdGlvblN0YXRlX2dldFdvcmxkVHJhbnNmb3JtAENvbXBvdW5kU2hhcGVfdXBkYXRlQ2hpbGRUcmFuc2Zvcm0AIXBhaXIubV9hbGdvcml0aG0AYnRDb21wb3VuZENvbGxpc2lvbkFsZ29yaXRobQBidENvbXBvdW5kQ29tcG91bmRDb2xsaXNpb25BbGdvcml0aG0Ac2V0UGFyYW0AZ2V0UGFyYW0AYm9vbABwZXJmb3JtRGVmZXJyZWRSZW1vdmFsAGVtc2NyaXB0ZW46OnZhbABnZXRDbG9zZXN0UG9pbnRzTm9uVmlydHVhbABsb2NhbEdldFN1cHBvcnRWZXJ0ZXhXaXRob3V0TWFyZ2luTm9uVmlydHVhbABnZXRJbmZvMk5vblZpcnR1YWwARGlzcGF0Y2hlcl9nZXRNYW5pZm9sZEJ5SW5kZXhJbnRlcm5hbAByZW1vdmVPdmVybGFwcGluZ09iamVjdEludGVybmFsAGFkZE92ZXJsYXBwaW5nT2JqZWN0SW50ZXJuYWwAY29tcHV0ZUludGVybmFsAGdldEluZm8ySW50ZXJuYWwAU3RhdGljUGxhbmVTaGFwZV9nZXRQbGFuZU5vcm1hbABDb250cm9sbGVySGl0X2dldEhpdFdvcmxkTm9ybWFsAENvbGxpc2lvbk9iamVjdF9zZXRNYXRlcmlhbABDb2xsaXNpb25TaGFwZV9zZXRNYXRlcmlhbAAhdW5iYWwAc2hyaW5rAGxpbmsAQ29sbGlzaW9uT2JqZWN0X3NldElnbm9yZUNvbGxpc2lvbkNoZWNrAHBvcF9iYWNrAGNvbE9iai0+Z2V0V29ybGRBcnJheUluZGV4KCkgPT0gaQAhbV9idmgAIW1fb3duc0J2aABCdmhUcmlhbmdsZU1lc2hTaGFwZV9zZXRPcHRpbWl6ZWRCdmgAQnZoVHJpYW5nbGVNZXNoU2hhcGVfZ2V0T3B0aW1pemVkQnZoAENvbnRyb2xsZXJIaXRfZ2V0SGl0TW90aW9uTGVuZ3RoAHk8bV9oZWlnaHRTdGlja0xlbmd0aAB4PG1faGVpZ2h0U3RpY2tXaWR0aABzb2x2ZUdyb3VwQ2FjaGVGcmllbmRseUZpbmlzaABDb252ZXhUcmltZXNoAEM6L1VzZXJzL2xlYWx6L0Rlc2t0b3AvdHJ1bmsvY29jb3MvYnVsbGV0LWNvbXBpbGUvYW1tby5qcy9idWxsZXQvc3JjL0J1bGxldER5bmFtaWNzL0NvbnN0cmFpbnRTb2x2ZXIvYnRKYWNvYmlhbkVudHJ5LmgAQzovVXNlcnMvbGVhbHovRGVza3RvcC90cnVuay9jb2Nvcy9idWxsZXQtY29tcGlsZS9hbW1vLmpzL2J1bGxldC9zcmNcQnVsbGV0RHluYW1pY3MvRHluYW1pY3MvYnRSaWdpZEJvZHkuaABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyY1xMaW5lYXJNYXRoL2J0QWxpZ25lZE9iamVjdEFycmF5LmgAQzovVXNlcnMvbGVhbHovRGVza3RvcC90cnVuay9jb2Nvcy9idWxsZXQtY29tcGlsZS9hbW1vLmpzL2J1bGxldC9zcmMvTGluZWFyTWF0aC9idEFsaWduZWRPYmplY3RBcnJheS5oAEM6L1VzZXJzL2xlYWx6L0Rlc2t0b3AvdHJ1bmsvY29jb3MvYnVsbGV0LWNvbXBpbGUvYW1tby5qcy9idWxsZXQvc3JjXEJ1bGxldENvbGxpc2lvbi9Db2xsaXNpb25EaXNwYXRjaC9idE1hbmlmb2xkUmVzdWx0LmgAQzovVXNlcnMvbGVhbHovRGVza3RvcC90cnVuay9jb2Nvcy9idWxsZXQtY29tcGlsZS9hbW1vLmpzL2J1bGxldC9zcmNcQnVsbGV0Q29sbGlzaW9uL0NvbGxpc2lvbkRpc3BhdGNoL2J0R2hvc3RPYmplY3QuaABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyY1xMaW5lYXJNYXRoL2J0UG9vbEFsbG9jYXRvci5oAEM6L1VzZXJzL2xlYWx6L0Rlc2t0b3AvdHJ1bmsvY29jb3MvYnVsbGV0LWNvbXBpbGUvYW1tby5qcy9idWxsZXQvc3JjXExpbmVhck1hdGgvYnRRdWF0ZXJuaW9uLmgAQzovVXNlcnMvbGVhbHovRGVza3RvcC90cnVuay9jb2Nvcy9idWxsZXQtY29tcGlsZS9hbW1vLmpzL2J1bGxldC9zcmMvQnVsbGV0Q29sbGlzaW9uL0Jyb2FkcGhhc2VDb2xsaXNpb24vYnRRdWFudGl6ZWRCdmguaABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyYy9CdWxsZXRDb2xsaXNpb24vQ29sbGlzaW9uU2hhcGVzL2J0Qm94U2hhcGUuaABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyYy9CdWxsZXRDb2xsaXNpb24vQ29sbGlzaW9uU2hhcGVzL2J0UG9seWhlZHJhbENvbnZleFNoYXBlLmgAQzovVXNlcnMvbGVhbHovRGVza3RvcC90cnVuay9jb2Nvcy9idWxsZXQtY29tcGlsZS9hbW1vLmpzL2J1bGxldC9zcmMvQnVsbGV0Q29sbGlzaW9uL0NvbGxpc2lvblNoYXBlcy9idENvbnZleEludGVybmFsU2hhcGUuaABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyY1xCdWxsZXRDb2xsaXNpb24vQ29sbGlzaW9uU2hhcGVzL2J0VHJpYW5nbGVNZXNoU2hhcGUuaABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyY1xCdWxsZXRDb2xsaXNpb24vQ29sbGlzaW9uU2hhcGVzL2J0VHJpYW5nbGVTaGFwZS5oAEM6L1VzZXJzL2xlYWx6L0Rlc2t0b3AvdHJ1bmsvY29jb3MvYnVsbGV0LWNvbXBpbGUvYW1tby5qcy9idWxsZXQvc3JjL0J1bGxldENvbGxpc2lvbi9Ccm9hZHBoYXNlQ29sbGlzaW9uL2J0T3ZlcmxhcHBpbmdQYWlyQ2FjaGUuaABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyYy9CdWxsZXRDb2xsaXNpb24vQ29sbGlzaW9uRGlzcGF0Y2gvYnRIYXNoZWRTaW1wbGVQYWlyQ2FjaGUuaABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyYy9CdWxsZXRDb2xsaXNpb24vQ29sbGlzaW9uRGlzcGF0Y2gvYnRDb2xsaXNpb25Xb3JsZC5oAEM6L1VzZXJzL2xlYWx6L0Rlc2t0b3AvdHJ1bmsvY29jb3MvYnVsbGV0LWNvbXBpbGUvYW1tby5qcy9idWxsZXQvc3JjXEJ1bGxldENvbGxpc2lvbi9OYXJyb3dQaGFzZUNvbGxpc2lvbi9idFBlcnNpc3RlbnRNYW5pZm9sZC5oAEM6L1VzZXJzL2xlYWx6L0Rlc2t0b3AvdHJ1bmsvY29jb3MvYnVsbGV0LWNvbXBpbGUvYW1tby5qcy9idWxsZXQvc3JjL0J1bGxldENvbGxpc2lvbi9OYXJyb3dQaGFzZUNvbGxpc2lvbi9idFBlcnNpc3RlbnRNYW5pZm9sZC5oAEM6L1VzZXJzL2xlYWx6L0Rlc2t0b3AvdHJ1bmsvY29jb3MvYnVsbGV0LWNvbXBpbGUvYW1tby5qcy9idWxsZXQvc3JjXExpbmVhck1hdGgvYnRNYXRyaXgzeDMuaABDOi9Vc2Vycy9sZWFsei9EZXNrdG9wL3RydW5rL2NvY29zL2J1bGxldC1jb21waWxlL2FtbW8uanMvYnVsbGV0L3NyY1xMaW5lYXJNYXRoL2J0VmVjdG9yMy5oAEM6L1VzZXJzL2xlYWx6L0Rlc2t0b3AvdHJ1bmsvY29jb3MvYnVsbGV0LWNvbXBpbGUvYW1tby5qcy9idWxsZXQvc3JjXExpbmVhck1hdGgvYnRBYWJiVXRpbDIuaAB1bnNpZ25lZCBsb25nAHN0ZDo6d3N0cmluZwBiYXNpY19zdHJpbmcAc3RkOjpzdHJpbmcAc3RkOjp1MTZzdHJpbmcAc3RkOjp1MzJzdHJpbmcAR2VuZXJpYzZEb2ZTcHJpbmcyQ29uc3RyYWludF9lbmFibGVTcHJpbmcAQ0NEIG1vdGlvbiBjbGFtcGluZwBSaWdpZEJvZHlfc2V0RGFtcGluZwBHZW5lcmljNkRvZlNwcmluZzJDb25zdHJhaW50X3NldERhbXBpbmcAUmlnaWRCb2R5X3dhbnRzU2xlZXBpbmcAQ29sbGlzaW9uT2JqZWN0X2lzU2xlZXBpbmcAQ29sbGlzaW9uU2hhcGVfc2V0TG9jYWxTY2FsaW5nAGluZgBkMT49MC4wZgBkMD49MC4wZgBxdWFudGl6ZQBpbnRfYXJyYXlfc2l6ZQBub3JtYWxpemUAaW5pdGlhbGl6ZQBzZXJpYWxpemUAVHlwZWRDb25zdHJhaW50X3NldERiZ0RyYXdTaXplAFR5cGVkQ29uc3RyYWludF9nZXREYmdEcmF3U2l6ZQAhc2l6ZSB8fCBzaXplPD1tX2VsZW1TaXplACh1bnNpZ25lZCBjaGFyKilwdHIgPj0gbV9wb29sICYmICh1bnNpZ25lZCBjaGFyKilwdHIgPCBtX3Bvb2wgKyBtX21heEVsZW1lbnRzICogbV9lbGVtU2l6ZQB3YWxrSXRlcmF0aW9ucyA8IHN1YlRyZWVTaXplAENoYXJhY3RlckNvbnRyb2xsZXJfbW92ZQBDb2xsaXNpb25PYmplY3RfaXNBY3RpdmUAUmlnaWRCb2R5X2FwcGx5VG9ycXVlAGdldFJhd0hlaWdodEZpZWxkVmFsdWUAIW1fdXNlU29sdmVDb25zdHJhaW50T2Jzb2xldGUAX3NhZmVfZGVsZXRlAENvbGxpc2lvbk9iamVjdF9hY3RpdmF0ZQBSaWdpZEJvZHlfY2xlYXJTdGF0ZQBSaWdpZEJvZHlfZ2V0TW90aW9uU3RhdGUAc3luY2hyb25pemVTaW5nbGVNb3Rpb25TdGF0ZQBDb2xsaXNpb25PYmplY3RfZ2V0QWN0aXZhdGlvblN0YXRlAHVwZGF0ZUFjdGl2YXRpb25TdGF0ZQBDb2xsaXNpb25PYmplY3RfZm9yY2VBY3RpdmF0aW9uU3RhdGUAYWxsb2NhdGUAaW52ZXJzZQBlICE9IGludGVyc2VjdGlvbi0+cmV2ZXJzZQBSaWdpZEJvZHlfYXBwbHlJbXB1bHNlAEhpbmdlQ29uc3RyYWludF9zZXRNYXhNb3RvckltcHVsc2UAZmFsc2UAZ2V0TG9ja2VkVmVydGV4SW5kZXhCYXNlAENvbnRyb2xsZXJTaGFwZUhpdF9nZXRIaXRTaGFwZQBDb2xsaXNpb25PYmplY3Rfc2V0Q29sbGlzaW9uU2hhcGUAQ29sbGlzaW9uT2JqZWN0X2dldENvbGxpc2lvblNoYXBlAENoYXJhY3RlckNvbnRyb2xsZXJfZ2V0Q29sbGlzaW9uU2hhcGUAQ2Fwc3VsZVNoYXBlAGJ0Q29tcG91bmRTaGFwZQBDb21wb3VuZFNoYXBlX2dldENoaWxkU2hhcGUAUHJvY2Vzc0NoaWxkU2hhcGUAQ29tcG91bmRTaGFwZV9yZW1vdmVDaGlsZFNoYXBlAENvbXBvdW5kU2hhcGVfYWRkQ2hpbGRTaGFwZQBDb25lAG9uRGVidWdEcmF3TGluZQBnZXRQbGFuZQBidENvbnZleFRyaWFuZ2xlQ2FsbGJhY2s6OnByb2Nlc3NUcmlhbmdsZQBUcmlhbmdsZU1lc2hfYWRkVHJpYW5nbGUAZmluZE1heEFuZ2xlAGRvdWJsZQBtZXJnZQBnZXRFZGdlAF9mcmVlAHdhbGtTdGFja2xlc3NUcmVlAGJ1aWxkVHJlZQB3YWxrU3RhY2tsZXNzUXVhbnRpemVkVHJlZQBtZW09PW1fZHluYW1pY0FhYmJUcmVlAHByb2Nlc3NOb2RlAERlYnVnRHJhd19zZXREZWJ1Z01vZGUARGVidWdEcmF3X2dldERlYnVnTW9kZQBpc0luc2lkZQBSaWdpZEJvZHlfYXBwbHlGb3JjZQBHZW5lcmljNkRvZlNwcmluZzJDb25zdHJhaW50X3NldE1heE1vdG9yRm9yY2UAR2VuZXJpYzZEb2ZTcHJpbmcyQ29uc3RyYWludF9zZXRCb3VuY2UAc2hpZnRGYWNlAENvbGxpc2lvblNoYXBlX2lzQ29tcG91bmQAY29udmV4U3dlZXBDb21wb3VuZABleHRlbmQAQ29sbGlzaW9uV29ybGRfZGVidWdEcmF3V29ybGQAY2NDbG9zZXN0UmF5Q2FsbGJhY2tfZ2V0SGl0UG9pbnRXb3JsZABjY0FsbFJheUNhbGxiYWNrX2dldEhpdFBvaW50V29ybGQAY2NDbG9zZXN0Q29udmV4Q2FsbGJhY2tfZ2V0SGl0UG9pbnRXb3JsZABjY0FsbENvbnZleENhbGxiYWNrX2dldEhpdFBvaW50V29ybGQAY2NDbG9zZXN0UmF5Q2FsbGJhY2tfZ2V0SGl0Tm9ybWFsV29ybGQAY2NBbGxSYXlDYWxsYmFja19nZXRIaXROb3JtYWxXb3JsZABjY0Nsb3Nlc3RDb252ZXhDYWxsYmFja19nZXRIaXROb3JtYWxXb3JsZABjY0FsbENvbnZleENhbGxiYWNrX2dldEhpdE5vcm1hbFdvcmxkAENvbGxpc2lvbk9iamVjdF9zZXRDY2RNb3Rpb25UaHJlc2hvbGQAQ29sbGlzaW9uT2JqZWN0X3NldENvbnRhY3RQcm9jZXNzaW5nVGhyZXNob2xkAFJpZ2lkQm9keV9nZXRMaW5lYXJTbGVlcGluZ1RocmVzaG9sZABUeXBlZENvbnN0cmFpbnRfc2V0TWF4SW1wdWxzZVRocmVzaG9sZABnZXROZXdNYW5pZm9sZAByZWxlYXNlTWFuaWZvbGQAdm9pZABtX2lzTG9jYWxBYWJiVmFsaWQAZ2V0UGFydElkAGYtPm5lYXJieVZlcnRleCA9PSBzcmMAX21hbGxvYwBEZWZhdWx0Q29sbGlzaW9uQ29uZmlndXJhdGlvbl9zdGF0aWMAY2NDbG9zZXN0UmF5Q2FsbGJhY2tfc3RhdGljAGNjQWxsUmF5Q2FsbGJhY2tfc3RhdGljAGNjQ2xvc2VzdENvbnZleENhbGxiYWNrX3N0YXRpYwBjY0FsbENvbnZleENhbGxiYWNrX3N0YXRpYwBFbXB0eVNoYXBlX3N0YXRpYwB3YWxrUmVjdXJzaXZlUXVhbnRpemVkVHJlZUFnYWluc3RRdWVyeUFhYmIAQ29sbGlzaW9uU2hhcGVfZ2V0QWFiYgBidFRyYW5zZm9ybUFhYmIAZ2V0Tm9udmlydHVhbEFhYmIAYnRJbnRJbmRleERhdGEAYnRNZXNoUGFydERhdGEAYnRHZW5lcmljNkRvZlNwcmluZzJDb25zdHJhaW50RGF0YQBidFNob3J0SW50SW5kZXhUcmlwbGV0RGF0YQBidENoYXJJbmRleFRyaXBsZXREYXRhAGJ0UmlnaWRCb2R5RmxvYXREYXRhAGJ0UG9pbnQyUG9pbnRDb25zdHJhaW50RmxvYXREYXRhAGJ0SGluZ2VDb25zdHJhaW50RmxvYXREYXRhAGJ0VHlwZWRDb25zdHJhaW50RmxvYXREYXRhAGJ0Q29sbGlzaW9uT2JqZWN0RmxvYXREYXRhAGJ0UXVhbnRpemVkQnZoRmxvYXREYXRhAGJ0RHluYW1pY3NXb3JsZEZsb2F0RGF0YQBidFZlY3RvcjNGbG9hdERhdGEAYnRCdmhTdWJ0cmVlSW5mb0RhdGEAYnRDeWxpbmRlclNoYXBlRGF0YQBidENvbGxpc2lvblNoYXBlRGF0YQBidENvbnZleEludGVybmFsU2hhcGVEYXRhAGJ0VHJpYW5nbGVNZXNoU2hhcGVEYXRhAGJ0U2NhbGVkVHJpYW5nbGVNZXNoU2hhcGVEYXRhAGJ0Q29uZVNoYXBlRGF0YQBidFN0YXRpY1BsYW5lU2hhcGVEYXRhAGJ0Q2Fwc3VsZVNoYXBlRGF0YQBidENvbXBvdW5kU2hhcGVEYXRhAGJ0VmVjdG9yM0RvdWJsZURhdGEAYnRRdWFudGl6ZWRCdmhOb2RlRGF0YQBidE9wdGltaXplZEJ2aE5vZGVEYXRhAGJ0U3RyaWRpbmdNZXNoSW50ZXJmYWNlRGF0YQBidENvbXBvdW5kU2hhcGVDaGlsZERhdGEAaGVpZ2h0ZmllbGREYXRhAENvbGxpc2lvblNoYXBlX2NhbGN1bGF0ZUxvY2FsSW5lcnRpYQBjb2xsaXNpb25PYmplY3QgPT0gbV9jb2xsaXNpb25PYmplY3RzW2lPYmpdAG1fZG91YmxlRGlzcGF0Y2hDb250YWN0UG9pbnRzW2ldW2pdAG49PXAtPmNoaWxkc1tpXQBvcGVyYXRvcltdAEN5bGluZGVyWQBpbmRpY2VzdHlwZT09UEhZX0lOVEVHRVJ8fGluZGljZXN0eXBlPT1QSFlfU0hPUlQAaGR0ICE9IFBIWV9VQ0hBUiB8fCBoZHQgIT0gUEhZX0ZMT0FUIHx8IGhkdCAhPSBQSFlfU0hPUlQAU0VOU09SAGluZGV4ICE9IEJUX05VTExfUEFJUgBpbmRleCAhPSBCVF9TSU1QTEVfTlVMTF9QQUlSAGluZGljZXN0eXBlPT1QSFlfSU5URUdFUnx8aW5kaWNlc3R5cGU9PVBIWV9TSE9SVHx8aW5kaWNlc3R5cGU9PVBIWV9VQ0hBUgBVUABtX2ZsYWdzICYgQlRfUDJQX0ZMQUdTX0VSUABtX2ZsYWdzICYgQlRfSElOR0VfRkxBR1NfRVJQX1NUT1AAbV9mbGFncyAmIEJUX0hJTkdFX0ZMQUdTX0NGTV9TVE9QAERPV04AZnN1bSA+IFNJTURfRVBTSUxPTgBOQU4AbV9mbGFncyAmIEJUX0hJTkdFX0ZMQUdTX0VSUF9OT1JNAG1fZmxhZ3MgJiBCVF9ISU5HRV9GTEFHU19DRk1fTk9STQBtX2ZsYWdzICYgQlRfUDJQX0ZMQUdTX0NGTQBTQ0FMRURCVkhUUklBTkdMRU1FU0gASU5GAFNQSEVSRQBTVEFUSUNQTEFORQBTSURFAEhFSUdIVEZJRUxEAFAyUENvbnN0cmFpbnRfc2V0UGl2b3RCAE1hbmlmb2xkUG9pbnRfZ2V0X21fbG9jYWxQb2ludEIATWFuaWZvbGRQb2ludF9nZXRfbV9wb3NpdGlvbldvcmxkT25CAE1hbmlmb2xkUG9pbnRfZ2V0X21fbm9ybWFsV29ybGRPbkIAUDJQQ29uc3RyYWludF9zZXRQaXZvdEEATWFuaWZvbGRQb2ludF9nZXRfbV9sb2NhbFBvaW50QQBNYW5pZm9sZFBvaW50X2dldF9tX3Bvc2l0aW9uV29ybGRPbkEAZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2hvcnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGludD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8ZmxvYXQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDhfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dWludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGludDE2X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQ2NF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ2NF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4Ac3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2lnbmVkIGNoYXI+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGxvbmc+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVuc2lnbmVkIGxvbmc+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGRvdWJsZT4Ab3BlcmF0b3IvPQBidEJVX1NpbXBsZXgxdG80AHVwQXhpcyA+PSAwICYmIHVwQXhpcyA8IDMAY3VsbFBvaW50czIAcGFpci0+bV9wUHJveHkxLT5nZXRVaWQoKSA9PSBwcm94eUlkMgBfd3JpdGVfZjMyAF9yZWFkX2YzMgBib2R5MQBQZXJzaXN0ZW50TWFuaWZvbGRfZ2V0Qm9keTEATWFuaWZvbGRQb2ludF9nZXRfbV9pbmRleDEATWFuaWZvbGRQb2ludF9nZXRTaGFwZTEAcGFpci0+bV9wUHJveHkwLT5nZXRVaWQoKSA9PSBwcm94eUlkMQBjb2xsaXNpb25PYmplY3QtPmdldFdvcmxkQXJyYXlJbmRleCgpID09IC0xAGhlaWdodFN0aWNrTGVuZ3RoID4gMQBoZWlnaHRTdGlja1dpZHRoID4gMQBib2R5MABQZXJzaXN0ZW50TWFuaWZvbGRfZ2V0Qm9keTAATWFuaWZvbGRQb2ludF9nZXRfbV9pbmRleDAAKmlyZXQgIT0gaTAATWFuaWZvbGRQb2ludF9nZXRTaGFwZTAAbV9udW1WZXJ0aWNlcz4wAG51bUluZGljZXM+MABtX3NpemU+MAB5Pj0wAGluZGV4Pj0wAHRyaWFuZ2xlSW5kZXg+PTAAbj49MABjaGlsZEluZGV4MT49MABjaGlsZEluZGV4MD49MABlZHB0ci0+bV9mYWNlMD49MABtX3BvaW50Q2FjaGVbaW5zZXJ0SW5kZXhdLm1fdXNlclBlcnNpc3RlbnREYXRhPT0wAG1fcG9pbnRDYWNoZVtsYXN0VXNlZEluZGV4XS5tX3VzZXJQZXJzaXN0ZW50RGF0YT09MABtX3JlbW92ZVBhaXJzLnNpemUoKT09MABtX2NvbnN0cmFpbnRSZWZzLnNpemUoKT09MABlZHB0ci0+bV9mYWNlMTwwAHN0YWNrLnNpemUoKSA+IDAAcHRJbmRleCA+PSAwAHZvbCA+PSAwAGxpZmVUaW1lID49IDAAZG90IDw9IDAAZG90LmNvbXBhcmUob3JpZ0RvdCkgPD0gMABkb3QgIT0gMABkZXQuZ2V0U2lnbigpICE9IDAALgAhc3RhcnQxIHx8IChzdGFydDEtPnRhcmdldC0+cG9pbnQuZG90KG5vcm1hbCkgPT0gZGlzdCkAdmFsaWRDb250YWN0RGlzdGFuY2UobmV3UG9pbnQpAGluZm8yLnJvd3NraXAqc2l6ZW9mKGJ0U2NhbGFyKT09IHNpemVvZihidFNvbHZlckNvbnN0cmFpbnQpAChudWxsKQAoZ2Z4aW5kZXh0eXBlID09IFBIWV9JTlRFR0VSKSB8fCAoZ2Z4aW5kZXh0eXBlID09IFBIWV9TSE9SVCkAcGFydElkIDwgKDE8PE1BWF9OVU1fUEFSVFNfSU5fQklUUykAbm9ybWFsT25CLmxlbmd0aDIoKT49KFNJTURfRVBTSUxPTipTSU1EX0VQU0lMT04pACh0eXBlID09IFBIWV9GTE9BVCkgfHwgKHR5cGUgPT0gUEhZX0RPVUJMRSkAKGluZGV4ID49IDApICYmIChpbmRleCA8IDYpAChjb2xPYmowLT5nZXRJc2xhbmRUYWcoKSA9PSBpc2xhbmRJZCkgfHwgKGNvbE9iajAtPmdldElzbGFuZFRhZygpID09IC0xKQBzID4gYnRTY2FsYXIoMC4wKQBtX0FkaWFnID4gYnRTY2FsYXIoMC4wKQBkZXQgIT0gYnRTY2FsYXIoMC4wKQBzICE9IGJ0U2NhbGFyKDAuMCkAZCAhPSBidFNjYWxhcigwLjApAGNjdyA/ICh0LmRvdChzKSA8IDApIDogKHQuZG90KHMpID4gMCkAKGUxID09IHN0YXJ0MSkgJiYgKGQxLmRvdChub3JtYWwpIDwgMCkAKGUwID09IHN0YXJ0MCkgJiYgKGQwLmRvdChub3JtYWwpIDwgMCkAdHJpYW5nbGVJbmRleCA8ICgxPDwoMzEtTUFYX05VTV9QQVJUU19JTl9CSVRTKSkAbV9mbGFncyAmIChCVF82RE9GX0ZMQUdTX0VSUF9TVE9QMiA8PCAoYXhpcyAqIDQpKQBtX2ZsYWdzICYgKEJUXzZET0ZfRkxBR1NfQ0ZNX1NUT1AyIDw8IChheGlzICogNCkpAG1fZmxhZ3MgJiAoQlRfNkRPRl9GTEFHU19FUlBfTU9UTzIgPDwgKGF4aXMgKiA0KSkAbV9mbGFncyAmIChCVF82RE9GX0ZMQUdTX0NGTV9NT1RPMiA8PCAoYXhpcyAqIDQpKQBzdWJwYXJ0PCBnZXROdW1TdWJQYXJ0cygpAGluZGV4PGNvbXBvdW5kU2hhcGUtPmdldE51bUNoaWxkU2hhcGVzKCkAY2hpbGRJbmRleDE8Y29tcG91bmRTaGFwZTEtPmdldE51bUNoaWxkU2hhcGVzKCkAY2hpbGRJbmRleDA8Y29tcG91bmRTaGFwZTAtPmdldE51bUNoaWxkU2hhcGVzKCkAIWZ1enp5WmVybygpACF0LmlzWmVybygpACFwZXJwLmlzWmVybygpACFtLmlzWmVybygpAG4tPmlzaW50ZXJuYWwoKQBuPHNpemUoKQBpbmRleCA8IG1fb3ZlcmxhcHBpbmdQYWlyQXJyYXkuc2l6ZSgpAHBhaXJJbmRleCA8IG1fb3ZlcmxhcHBpbmdQYWlyQXJyYXkuc2l6ZSgpAG1fY29sbGlzaW9uT2JqZWN0cy5maW5kTGluZWFyU2VhcmNoKGNvbGxpc2lvbk9iamVjdCkgPT0gbV9jb2xsaXNpb25PYmplY3RzLnNpemUoKQAhbV9vdmVybGFwcGluZ09iamVjdHMuc2l6ZSgpAG1fc3VidHJlZUhlYWRlckNvdW50ID09IG1fU3VidHJlZUhlYWRlcnMuc2l6ZSgpAGZpbmRJbmRleCA8IG1fbWFuaWZvbGRzUHRyLnNpemUoKQBjaGlsZFNoYXBlSW5kZXggPj0wICYmIGNoaWxkU2hhcGVJbmRleCA8IG1fY2hpbGRyZW4uc2l6ZSgpAHNvbHZlckJvZHlJZEEgPCBtX3RtcFNvbHZlckJvZHlQb29sLnNpemUoKQAhaXNMZWFmTm9kZSgpAGNvbE9ialdyYXAtPmdldENvbGxpc2lvblNoYXBlKCktPmlzQ29tcG91bmQoKQBjb2wxT2JqV3JhcC0+Z2V0Q29sbGlzaW9uU2hhcGUoKS0+aXNDb21wb3VuZCgpAGNvbDBPYmpXcmFwLT5nZXRDb2xsaXNpb25TaGFwZSgpLT5pc0NvbXBvdW5kKCkAbG9jYWxBYWJiTWluLmdldFooKSA8PSBsb2NhbEFhYmJNYXguZ2V0WigpAHBvaW50LmdldFooKSA8PSBtX2J2aEFhYmJNYXguZ2V0WigpAHBvaW50LmdldFooKSA+PSBtX2J2aEFhYmJNaW4uZ2V0WigpAGxvY2FsQWFiYk1pbi5nZXRZKCkgPD0gbG9jYWxBYWJiTWF4LmdldFkoKQBwb2ludC5nZXRZKCkgPD0gbV9idmhBYWJiTWF4LmdldFkoKQBwb2ludC5nZXRZKCkgPj0gbV9idmhBYWJiTWluLmdldFkoKQBsb2NhbEFhYmJNaW4uZ2V0WCgpIDw9IGxvY2FsQWFiYk1heC5nZXRYKCkAcG9pbnQuZ2V0WCgpIDw9IG1fYnZoQWFiYk1heC5nZXRYKCkAcG9pbnQuZ2V0WCgpID49IG1fYnZoQWFiYk1pbi5nZXRYKCkAJmNvbnN0cmFpbnQtPmdldFJpZ2lkQm9keUEoKSE9JmNvbnN0cmFpbnQtPmdldFJpZ2lkQm9keUIoKQAhIkJhZCBtX2hlaWdodERhdGFUeXBlIgBQdXJlIHZpcnR1YWwgZnVuY3Rpb24gY2FsbGVkIQBsaWJjKythYmk6IABJZiB5b3UgY2FuIHJlcHJvZHVjZSB0aGlzLCBwbGVhc2UgZW1haWwgYnVnc0Bjb250aW51b3VzcGh5c2ljcy5jb20KAHNlcEF4aXM9KCVmLCVmLCVmKSwgc3F1YXJlZERpc3RhbmNlID0gJWYsIHNoYXBlVHlwZUE9JWksc2hhcGVUeXBlQj0laQoAYnRHamtQYWlyRGV0ZWN0b3IgbWF4SXRlciBleGNlZWRlZDolaQoAVGhhbmtzLgoAUGxlYXNlIGluY2x1ZGUgYWJvdmUgaW5mb3JtYXRpb24sIHlvdXIgUGxhdGZvcm0sIHZlcnNpb24gb2YgT1MuCgB3YXJuaW5nIGJ0Q29sbGlzaW9uRGlzcGF0Y2hlcjo6bmVlZHNDb2xsaXNpb246IHN0YXRpYy1zdGF0aWMgY29sbGlzaW9uIQoATjJjYzI2Y2NDbG9zZXN0UmF5UmVzdWx0Q2FsbGJhY2tFAE4xNmJ0Q29sbGlzaW9uV29ybGQyNENsb3Nlc3RSYXlSZXN1bHRDYWxsYmFja0UATjE2YnRDb2xsaXNpb25Xb3JsZDE3UmF5UmVzdWx0Q2FsbGJhY2tFAE4yY2MyNmNjQWxsSGl0c1JheVJlc3VsdENhbGxiYWNrRQBOMTZidENvbGxpc2lvbldvcmxkMjRBbGxIaXRzUmF5UmVzdWx0Q2FsbGJhY2tFAE4yY2MyOWNjQ2xvc2VzdENvbnZleFJlc3VsdENhbGxiYWNrRQBOMTZidENvbGxpc2lvbldvcmxkMjdDbG9zZXN0Q29udmV4UmVzdWx0Q2FsbGJhY2tFAE4xNmJ0Q29sbGlzaW9uV29ybGQyMENvbnZleFJlc3VsdENhbGxiYWNrRQBOMmNjMjljY0FsbEhpdHNDb252ZXhSZXN1bHRDYWxsYmFja0UATjE2YnRDb2xsaXNpb25Xb3JsZDI3QWxsSGl0c0NvbnZleFJlc3VsdENhbGxiYWNrRQBOMmNjMTVjY0NvbXBvdW5kU2hhcGVFADEzYnRNb3Rpb25TdGF0ZQAxMWJ0RGVidWdEcmF3ADEyYnRJRGVidWdEcmF3AFAxMWJ0RGVidWdEcmF3AFBLMTFidERlYnVnRHJhdwBpaQB2AHZpAFAxMmJ0SURlYnVnRHJhdwB2aWkAdmlpaWlpADE4YnREZWJ1Z0RyYXdXcmFwcGVyAE4xMGVtc2NyaXB0ZW43d3JhcHBlckkxMWJ0RGVidWdEcmF3RUUATjEwZW1zY3JpcHRlbjhpbnRlcm5hbDExV3JhcHBlckJhc2VFAFAxOGJ0RGVidWdEcmF3V3JhcHBlcgBQSzE4YnREZWJ1Z0RyYXdXcmFwcGVyAE4xMGVtc2NyaXB0ZW4zdmFsRQBpaWkATlN0M19fMjEyYmFzaWNfc3RyaW5nSWNOU18xMWNoYXJfdHJhaXRzSWNFRU5TXzlhbGxvY2F0b3JJY0VFRUUAaWlpaQAyMWJ0Q29udHJvbGxlckhpdFJlcG9ydAAyNWJ0VXNlckNvbnRyb2xsZXJIaXRSZXBvcnQAUDIxYnRDb250cm9sbGVySGl0UmVwb3J0AFBLMjFidENvbnRyb2xsZXJIaXRSZXBvcnQAdmlpaWkAMjhidENvbnRyb2xsZXJIaXRSZXBvcnRXcmFwcGVyAE4xMGVtc2NyaXB0ZW43d3JhcHBlckkyMWJ0Q29udHJvbGxlckhpdFJlcG9ydEVFAFAyOGJ0Q29udHJvbGxlckhpdFJlcG9ydFdyYXBwZXIAUEsyOGJ0Q29udHJvbGxlckhpdFJlcG9ydFdyYXBwZXIATjJjYzEzY2NNb3Rpb25TdGF0ZUUAUE4yY2MxM2NjTW90aW9uU3RhdGVFAFBLTjJjYzEzY2NNb3Rpb25TdGF0ZUUAdmlpaQAyMGNjTW90aW9uU3RhdGVXcmFwcGVyAE4xMGVtc2NyaXB0ZW43d3JhcHBlcklOMmNjMTNjY01vdGlvblN0YXRlRUVFAFAyMGNjTW90aW9uU3RhdGVXcmFwcGVyAFBLMjBjY01vdGlvblN0YXRlV3JhcHBlcgBmaWkAdmlpZgBpaWZmZgB2aWlmZmYAaWlmZmZmAHZpaWZmZmYAaWlpaWlpAHZpaWZmZmZmAHZpaWZmAGlpaWlpaWkAdmlpaWZmAHZpaWlmAHZpaWZpAGlpZgB2aWlmZmkAaWlmZgBpaWlmAGlpaWlpZmZmAHZpaWlpaWkAaWlpaWkAdmlpaWZmZgBpaWlmZmYAaWlmaQB2aWlpaWlpZgB2aWlmaWYAaWlpaWZmAGlpZmZmaWlpZmYAaWlmZmZpaWlmZmYAAAAAAFBgAQC7AQAAvAEAAL0BAAC+AQAAvwEAAMABAADBAQAAwgEAAMMBAADEAQAAxQEAAMYBAADHAQAAyAEAADE2YnREYnZ0QnJvYWRwaGFzZQAyMWJ0QnJvYWRwaGFzZUludGVyZmFjZQAAHK0BAC9gAQBErQEAHGABAEhgAQAAAAAASGABAMkBAADKAQAAUAEAAFABAABQAQAAUAEAAFABAABQAQAAUAEAAFABAABQAQAAUAEAAMsBAABQAQAAAAAAAPBgAQDMAQAAzQEAAM4BAADPAQAA0AEAANEBAADSAQAAMThidERidnRUcmVlQ29sbGlkZXIATjZidERidnQ4SUNvbGxpZGVFABytAQDVYAEARK0BAMBgAQDoYAEAAAAAAOhgAQDTAQAA1AEAANUBAADWAQAA0AEAANEBAADSAQAAAAAAAFxhAQDXAQAA2AEAANUBAADZAQAA0AEAANEBAADSAQAAMTlCcm9hZHBoYXNlUmF5VGVzdGVyAAAARK0BAERhAQDoYAEAAAAAAKRhAQDaAQAA2wEAANUBAADcAQAA0AEAANEBAADSAQAAMjBCcm9hZHBoYXNlQWFiYlRlc3RlcgAARK0BAIxhAQDoYAEAAAAAAGRiAQDfAQAA4AEAAOEBAADiAQAA4wEAAOQBAADlAQAA5gEAAOcBAADoAQAA6QEAAOoBAADrAQAA7AEAAO0BAADuAQAA7wEAADI4YnRIYXNoZWRPdmVybGFwcGluZ1BhaXJDYWNoZQAyMmJ0T3ZlcmxhcHBpbmdQYWlyQ2FjaGUAMjVidE92ZXJsYXBwaW5nUGFpckNhbGxiYWNrABytAQA0YgEARK0BABtiAQBQYgEARK0BAPxhAQBYYgEAAAAAAFhiAQDwAQAA8QEAAFABAABQAQAAUAEAAFABAABQAQAAUAEAAFABAABQAQAAUAEAAFABAABQAQAAUAEAAFABAABQAQAAUAEAAAAAAABQYgEA8gEAAPMBAABQAQAAUAEAAFABAAAAAAAAeGMBAPQBAAD1AQAA9gEAAFpOMjhidEhhc2hlZE92ZXJsYXBwaW5nUGFpckNhY2hlMTljbGVhblByb3h5RnJvbVBhaXJzRVAxN2J0QnJvYWRwaGFzZVByb3h5UDEyYnREaXNwYXRjaGVyRTE3Q2xlYW5QYWlyQ2FsbGJhY2sAMTdidE92ZXJsYXBDYWxsYmFjawAAABytAQBaYwEARK0BAOxiAQBwYwEAAAAAAHBjAQD3AQAA+AEAAFABAAAAAAAAMGQBAPkBAAD6AQAA+wEAAFpOMjhidEhhc2hlZE92ZXJsYXBwaW5nUGFpckNhY2hlMzdyZW1vdmVPdmVybGFwcGluZ1BhaXJzQ29udGFpbmluZ1Byb3h5RVAxN2J0QnJvYWRwaGFzZVByb3h5UDEyYnREaXNwYXRjaGVyRTE4UmVtb3ZlUGFpckNhbGxiYWNrAAAAAEStAQCsYwEAcGMBAAAAAACUZAEA/AEAAP0BAABQAQAAUAEAAFABAABQAQAAUAEAAFABAABQAQAAUAEAAFABAABQAQAAUAEAAFABAABQAQAAUAEAADEyYnREaXNwYXRjaGVyAAAcrQEAhGQBAAAAAAD8ZAEA/wEAAAACAAABAgAAAgIAAAMCAAAEAgAABQIAAAYCAAAHAgAACAIAAAkCAAAKAgAACwIAAAwCAAANAgAADgIAADIxYnRDb2xsaXNpb25EaXNwYXRjaGVyAEStAQDkZAEAlGQBAAAAAABUZQEADwIAABACAABQAQAAUAEAAFABAABOMzZidERpc2NyZXRlQ29sbGlzaW9uRGV0ZWN0b3JJbnRlcmZhY2U2UmVzdWx0RQAcrQEAJGUBAAAAAACMZQEAEQIAABICAAATAgAAMjNidENvbGxpc2lvblBhaXJDYWxsYmFjawAAAEStAQBwZQEAcGMBAAAAAADQZQEAFAIAABUCAAAWAgAAFwIAABgCAAAZAgAAGgIAADE3YnRDb2xsaXNpb25PYmplY3QAHK0BALxlAQAAAAAAKGYBABsCAAAcAgAAHQIAAB4CAAAfAgAAIAIAACECAAAiAgAAIwIAACQCAAAlAgAAJgIAACcCAAAxNmJ0Q29sbGlzaW9uV29ybGQAABytAQAUZgEAAAAAAGxmAQAoAgAAKQIAACoCAAArAgAALAIAAE4xMmJ0Q29udmV4Q2FzdDEwQ2FzdFJlc3VsdEUAAAAAHK0BAExmAQAAAAAAIGcBAC0CAAAuAgAALwIAADACAABaTjE2YnRDb2xsaXNpb25Xb3JsZDIxcmF5VGVzdFNpbmdsZUludGVybmFsRVJLMTFidFRyYW5zZm9ybVMyX1BLMjRidENvbGxpc2lvbk9iamVjdFdyYXBwZXJSTlNfMTdSYXlSZXN1bHRDYWxsYmFja0VFMjlCcmlkZ2VUcmlhbmdsZVJheWNhc3RDYWxsYmFjawAARK0BAIxmAQD0jQEAAAAAANBnAQAxAgAAMgIAANUBAAAzAgAA0AEAANEBAADSAQAAWk4xNmJ0Q29sbGlzaW9uV29ybGQyMXJheVRlc3RTaW5nbGVJbnRlcm5hbEVSSzExYnRUcmFuc2Zvcm1TMl9QSzI0YnRDb2xsaXNpb25PYmplY3RXcmFwcGVyUk5TXzE3UmF5UmVzdWx0Q2FsbGJhY2tFRTlSYXlUZXN0ZXIAAABErQEAUGcBAOhgAQAAAAAAfGgBADQCAAA1AgAANgIAADcCAABaTjE2YnRDb2xsaXNpb25Xb3JsZDIxcmF5VGVzdFNpbmdsZUludGVybmFsRVJLMTFidFRyYW5zZm9ybVMyX1BLMjRidENvbGxpc2lvbk9iamVjdFdyYXBwZXJSTlNfMTdSYXlSZXN1bHRDYWxsYmFja0VFMTVMb2NhbEluZm9BZGRlcjIAAAAARK0BAPRnAQBIrgEAAAAAAMBoAQA4AgAAOQIAAFABAAAzMGJ0Q29udmV4UGVuZXRyYXRpb25EZXB0aFNvbHZlcgAAAAAcrQEAnGgBAAAAAACQaQEAOgIAADsCAAA8AgAAPQIAAFpOMTZidENvbGxpc2lvbldvcmxkMjVvYmplY3RRdWVyeVNpbmdsZUludGVybmFsRVBLMTNidENvbnZleFNoYXBlUksxMWJ0VHJhbnNmb3JtUzVfUEsyNGJ0Q29sbGlzaW9uT2JqZWN0V3JhcHBlclJOU18yMENvbnZleFJlc3VsdENhbGxiYWNrRWZFMzJCcmlkZ2VUcmlhbmdsZUNvbnZleGNhc3RDYWxsYmFjawAARK0BAOBoAQAgjgEAAAAAAGhqAQA+AgAAPwIAADwCAABAAgAAWk4xNmJ0Q29sbGlzaW9uV29ybGQyNW9iamVjdFF1ZXJ5U2luZ2xlSW50ZXJuYWxFUEsxM2J0Q29udmV4U2hhcGVSSzExYnRUcmFuc2Zvcm1TNV9QSzI0YnRDb2xsaXNpb25PYmplY3RXcmFwcGVyUk5TXzIwQ29udmV4UmVzdWx0Q2FsbGJhY2tFZkUzMkJyaWRnZVRyaWFuZ2xlQ29udmV4Y2FzdENhbGxiYWNrXzAAAAAARK0BALRpAQAgjgEAAAAAAEBrAQBBAgAAQgIAANUBAABDAgAA0AEAANEBAADSAQAAWk4xNmJ0Q29sbGlzaW9uV29ybGQyNW9iamVjdFF1ZXJ5U2luZ2xlSW50ZXJuYWxFUEsxM2J0Q29udmV4U2hhcGVSSzExYnRUcmFuc2Zvcm1TNV9QSzI0YnRDb2xsaXNpb25PYmplY3RXcmFwcGVyUk5TXzIwQ29udmV4UmVzdWx0Q2FsbGJhY2tFZkUyMmJ0Q29tcG91bmRMZWFmQ2FsbGJhY2sAAAAARK0BAJhqAQDoYAEAAAAAAERsAQBEAgAARQIAAEYCAABHAgAAWlpOMTZidENvbGxpc2lvbldvcmxkMjVvYmplY3RRdWVyeVNpbmdsZUludGVybmFsRVBLMTNidENvbnZleFNoYXBlUksxMWJ0VHJhbnNmb3JtUzVfUEsyNGJ0Q29sbGlzaW9uT2JqZWN0V3JhcHBlclJOU18yMENvbnZleFJlc3VsdENhbGxiYWNrRWZFTjIyYnRDb21wb3VuZExlYWZDYWxsYmFjazEyUHJvY2Vzc0NoaWxkRWlTNV9QSzE2YnRDb2xsaXNpb25TaGFwZUUxNExvY2FsSW5mb0FkZGVyAABErQEAZGsBAPiuAQAAAAAAxGwBAEgCAABJAgAASgIAADE5YnRTaW5nbGVSYXlDYWxsYmFjawAyM2J0QnJvYWRwaGFzZVJheUNhbGxiYWNrADI0YnRCcm9hZHBoYXNlQWFiYkNhbGxiYWNrAAAcrQEAlGwBAEStAQB6bAEAsGwBAEStAQBkbAEAuGwBAAAAAAC4bAEASwIAAEwCAABQAQAAAAAAALBsAQBNAgAATgIAAFABAAAAAAAAJG0BAE8CAABQAgAAUQIAADIxYnRTaW5nbGVTd2VlcENhbGxiYWNrAEStAQAMbQEAuGwBAAAAAABwbQEAUgIAAFMCAABUAgAAVQIAAPz///9wbQEAVgIAAFcCAABYAgAAMTdEZWJ1Z0RyYXdjYWxsYmFjawCgrQEAXG0BAAAAAAACAAAAUIgBAAIAAACQiAEAAgQAAAAAAAAAbgEAWQIAAFoCAABQAQAAUAEAAFABAAAAAAAACG4BAFsCAABcAgAAUAEAAFABAABQAQAAMzBidEFjdGl2YXRpbmdDb2xsaXNpb25BbGdvcml0aG0AMjBidENvbGxpc2lvbkFsZ29yaXRobQAcrQEA6W0BAEStAQDIbQEAAG4BAAAAAABsbgEAXQIAAGACAABhAgAAAAAAAJRuAQBeAgAAYgIAAGMCAABkAgAAZQIAAE4yM2J0Q29udmV4Q29udmV4QWxnb3JpdGhtMTBDcmVhdGVGdW5jRQBErQEARG4BAHx1AQAyM2J0Q29udmV4Q29udmV4QWxnb3JpdGhtAAAARK0BAHhuAQAIbgEAAAAAAERvAQBmAgAAZwIAAGgCAABpAgAAagIAAFpOMjNidENvbnZleENvbnZleEFsZ29yaXRobTE2cHJvY2Vzc0NvbGxpc2lvbkVQSzI0YnRDb2xsaXNpb25PYmplY3RXcmFwcGVyUzJfUksxNmJ0RGlzcGF0Y2hlckluZm9QMTZidE1hbmlmb2xkUmVzdWx0RTEzYnREdW1teVJlc3VsdAAAAABErQEAvG4BAFRlAQAAAAAA/G8BAGsCAABsAgAAbQIAAG4CAABvAgAAWk4yM2J0Q29udmV4Q29udmV4QWxnb3JpdGhtMTZwcm9jZXNzQ29sbGlzaW9uRVBLMjRidENvbGxpc2lvbk9iamVjdFdyYXBwZXJTMl9SSzE2YnREaXNwYXRjaGVySW5mb1AxNmJ0TWFuaWZvbGRSZXN1bHRFMjFidFdpdGhvdXRNYXJnaW5SZXN1bHQAAAAARK0BAGxvAQBUZQEAAAAAAEBwAQBwAgAAcQIAAHICAABzAgAAdAIAADI0YnRQZXJ0dXJiZWRDb250YWN0UmVzdWx0AABErQEAJHABADB5AQAAAAAAoHABAHcCAAB4AgAAeQIAAHoCAAB7AgAAAAAAAMhwAQB2AgAAfAIAAH0CAAAzM2J0Q29udmV4Q29uY2F2ZUNvbGxpc2lvbkFsZ29yaXRobQBErQEAfHABAAhuAQAyNGJ0Q29udmV4VHJpYW5nbGVDYWxsYmFjawAARK0BAKxwAQBQiAEAAAAAAHBxAQB+AgAAfwIAAIACAABsAQAAbQEAAG4BAACBAgAAggIAAIMCAACEAgAAcwEAAIUCAACGAgAAhwIAAIgCAAB4AQAAiQIAAIoCAACLAgAAjAIAAI0CAACOAgAAjwIAAJACAACRAgAAkgIAAJMCAACUAgAAlQIAAJYCAACXAgAAmAIAADE1YnRUcmlhbmdsZVNoYXBlAAAARK0BAFxxAQCYhQEAAAAAADByAQCZAgAAmgIAAJsCAABaTjMzYnRDb252ZXhDb25jYXZlQ29sbGlzaW9uQWxnb3JpdGhtMjFjYWxjdWxhdGVUaW1lT2ZJbXBhY3RFUDE3YnRDb2xsaXNpb25PYmplY3RTMV9SSzE2YnREaXNwYXRjaGVySW5mb1AxNmJ0TWFuaWZvbGRSZXN1bHRFMzFMb2NhbFRyaWFuZ2xlU3BoZXJlQ2FzdENhbGxiYWNrAAAARK0BAJBxAQBQiAEAAAAAAHhyAQCcAgAAnQIAAJ4CAACfAgAAoAIAADI4YnRDb21wb3VuZENvbGxpc2lvbkFsZ29yaXRobQAARK0BAFhyAQAIbgEAAAAAAMRyAQChAgAAogIAANUBAACjAgAA0AEAANEBAADSAQAAMjJidENvbXBvdW5kTGVhZkNhbGxiYWNrAAAAAEStAQCocgEA6GABAAAAAAAUcwEApAIAAKUCAACmAgAApwIAAKgCAAAzNmJ0Q29tcG91bmRDb21wb3VuZENvbGxpc2lvbkFsZ29yaXRobQAARK0BAOxyAQB4cgEAAAAAAGhzAQCpAgAAqgIAAKsCAADWAQAA0AEAANEBAADSAQAAMzBidENvbXBvdW5kQ29tcG91bmRMZWFmQ2FsbGJhY2sAAAAARK0BAERzAQDoYAEAAAAAAMxzAQCsAgAArQIAAK4CAAAxNmJ0Qm94Qm94RGV0ZWN0b3IAMzZidERpc2NyZXRlQ29sbGlzaW9uRGV0ZWN0b3JJbnRlcmZhY2UAAAAcrQEAm3MBAEStAQCIcwEAxHMBAAAAAADEcwEArwIAALACAABQAQAAAAAAACh0AQCxAgAAsgIAALMCAAC0AgAAtQIAADI2YnRCb3hCb3hDb2xsaXNpb25BbGdvcml0aG0AAAAARK0BAAh0AQAIbgEAAAAAAHR0AQC2AgAAtwIAALgCAAC5AgAAugIAADMxYnRDb252ZXhQbGFuZUNvbGxpc2lvbkFsZ29yaXRobQAAAEStAQBQdAEAAG4BAAAAAADodAEAuwIAALwCAAC9AgAAvgIAAL8CAADAAgAAMzFidERlZmF1bHRDb2xsaXNpb25Db25maWd1cmF0aW9uADI0YnRDb2xsaXNpb25Db25maWd1cmF0aW9uAAAAABytAQDCdAEARK0BAKB0AQDgdAEAAAAAAOB0AQDBAgAAwgIAAFABAABQAQAAUAEAAFABAAAAAAAAhHUBAMMCAADEAgAAxQIAAE4zM2J0Q29udmV4Q29uY2F2ZUNvbGxpc2lvbkFsZ29yaXRobTEwQ3JlYXRlRnVuY0UAMzBidENvbGxpc2lvbkFsZ29yaXRobUNyZWF0ZUZ1bmMAABytAQBadQEARK0BACh1AQB8dQEAAAAAAHx1AQDGAgAAxwIAAMgCAAAAAAAA9HUBAMkCAADKAgAAywIAAE4zM2J0Q29udmV4Q29uY2F2ZUNvbGxpc2lvbkFsZ29yaXRobTE3U3dhcHBlZENyZWF0ZUZ1bmNFAAAAAEStAQC4dQEAfHUBAAAAAABEdgEAzAIAAM0CAADOAgAATjI4YnRDb21wb3VuZENvbGxpc2lvbkFsZ29yaXRobTEwQ3JlYXRlRnVuY0UAAAAARK0BABR2AQB8dQEAAAAAAJx2AQDPAgAA0AIAANECAABOMzZidENvbXBvdW5kQ29tcG91bmRDb2xsaXNpb25BbGdvcml0aG0xMENyZWF0ZUZ1bmNFAAAAAEStAQBkdgEAfHUBAAAAAADwdgEA0gIAANMCAADUAgAATjI4YnRDb21wb3VuZENvbGxpc2lvbkFsZ29yaXRobTE3U3dhcHBlZENyZWF0ZUZ1bmNFAEStAQC8dgEAfHUBAAAAAAA0dwEA1QIAANYCAADXAgAATjE2YnRFbXB0eUFsZ29yaXRobTEwQ3JlYXRlRnVuY0UAAAAARK0BABB3AQB8dQEAAAAAAIh3AQDYAgAA2QIAANoCAABOMzJidFNwaGVyZVNwaGVyZUNvbGxpc2lvbkFsZ29yaXRobTEwQ3JlYXRlRnVuY0UAAAAARK0BAFR3AQB8dQEAAAAAANx3AQDbAgAA3AIAAN0CAABOMzRidFNwaGVyZVRyaWFuZ2xlQ29sbGlzaW9uQWxnb3JpdGhtMTBDcmVhdGVGdW5jRQAARK0BAKh3AQB8dQEAAAAAACh4AQDeAgAA3wIAAOACAABOMjZidEJveEJveENvbGxpc2lvbkFsZ29yaXRobTEwQ3JlYXRlRnVuY0UAAEStAQD8dwEAfHUBAAAAAAB4eAEA4QIAAOICAADjAgAATjMxYnRDb252ZXhQbGFuZUNvbGxpc2lvbkFsZ29yaXRobTEwQ3JlYXRlRnVuY0UARK0BAEh4AQB8dQEAAAAAALR4AQDkAgAA5QIAAOYCAADnAgAA6AIAADE2YnRFbXB0eUFsZ29yaXRobQAARK0BAKB4AQAAbgEAAAAAAPh4AQDpAgAA6gIAAOsCAADsAgAA7QIAADIzYnRIYXNoZWRTaW1wbGVQYWlyQ2FjaGUAAAAcrQEA3HgBAAAAAAAweQEA7gIAAO8CAAByAgAAcwIAAPACAAAxNmJ0TWFuaWZvbGRSZXN1bHQAAEStAQAceQEAVGUBAAAAAAB8eQEA8QIAAPICAADzAgAA9AIAAPUCAAAzMmJ0U3BoZXJlU3BoZXJlQ29sbGlzaW9uQWxnb3JpdGhtAABErQEAWHkBAAhuAQAAAAAAzHkBAPYCAAD3AgAA+AIAAPkCAAD6AgAAMzRidFNwaGVyZVRyaWFuZ2xlQ29sbGlzaW9uQWxnb3JpdGhtAAAAAEStAQCkeQEACG4BAAAAAAAIegEA+wIAAPwCAAD9AgAAMjJTcGhlcmVUcmlhbmdsZURldGVjdG9yAAAAAEStAQDseQEAxHMBAAAAAACsegEA/gIAAP8CAAAAAwAAbAEAAG0BAABuAQAAAQMAAIICAAACAwAAAwMAAHMBAAAEAwAAhgIAAIcCAACIAgAAeAEAAAUDAAAGAwAAiwIAAAcDAACNAgAACAMAAAkDAACQAgAACgMAAAsDAAAMAwAADQMAAA4DAAAPAwAAEAMAABEDAAAxMGJ0Qm94U2hhcGUAAAAARK0BAJx6AQCYhQEAAAAAAPB6AQASAwAAFAMAABUDAAAWAwAAFwMAABgDAAAZAwAAMTRidFF1YW50aXplZEJ2aAAAAAAcrQEA3HoBAAAAAABwewEAGgMAABsDAAAcAwAAbAEAAG0BAABuAQAAHQMAAB4DAAAfAwAAIAMAAHMBAAAhAwAAIgMAACMDAAAkAwAAeAEAACUDAAAmAwAAJwMAACgDAAApAwAAMjJidEJ2aFRyaWFuZ2xlTWVzaFNoYXBlAAAAAEStAQBUewEAQIoBAAAAAAAYfAEAKgMAACsDAAAsAwAAWk4yMmJ0QnZoVHJpYW5nbGVNZXNoU2hhcGUxNHBlcmZvcm1SYXljYXN0RVAxOGJ0VHJpYW5nbGVDYWxsYmFja1JLOWJ0VmVjdG9yM1M0X0UyMU15Tm9kZU92ZXJsYXBDYWxsYmFjawAyMWJ0Tm9kZU92ZXJsYXBDYWxsYmFjawAcrQEA+HsBAEStAQCQewEAEHwBAAAAAAAQfAEALQMAAC4DAABQAQAAAAAAAMB8AQAvAwAAMAMAADEDAABaTjIyYnRCdmhUcmlhbmdsZU1lc2hTaGFwZTE3cGVyZm9ybUNvbnZleGNhc3RFUDE4YnRUcmlhbmdsZUNhbGxiYWNrUks5YnRWZWN0b3IzUzRfUzRfUzRfRTIxTXlOb2RlT3ZlcmxhcENhbGxiYWNrAAAAAEStAQBMfAEAEHwBAAAAAABQfQEAMgMAADMDAAA0AwAAWk5LMjJidEJ2aFRyaWFuZ2xlTWVzaFNoYXBlMTlwcm9jZXNzQWxsVHJpYW5nbGVzRVAxOGJ0VHJpYW5nbGVDYWxsYmFja1JLOWJ0VmVjdG9yM1M0X0UyMU15Tm9kZU92ZXJsYXBDYWxsYmFjawAAAEStAQDgfAEAEHwBAAAAAADUfQEANQMAADYDAAA3AwAAbAEAAG0BAABuAQAAOAMAAIICAAA5AwAAOgMAADsDAAA8AwAAhgIAAD0DAAA+AwAAeAEAAIkCAAA/AwAAiwIAAEADAACNAgAAQQMAAEIDAAAxNGJ0Q2Fwc3VsZVNoYXBlAAAAAEStAQDAfQEAsH8BAAAAAAA8fgEAQwMAAEQDAABQAQAAbAEAAG0BAABuAQAAUAEAAFABAABQAQAAUAEAAHMBAABQAQAAUAEAAEUDAABGAwAAeAEAADE2YnRDb2xsaXNpb25TaGFwZQAAHK0BACh+AQAAAAAAqH4BAEcDAABIAwAAawEAAGwBAABtAQAAbgEAAG8BAABwAQAAcQEAAHIBAABzAQAAdAEAAHUBAAB2AQAAdwEAAHgBAAB5AQAAegEAADE1YnRDb21wb3VuZFNoYXBlAAAARK0BAJR+AQA8fgEAAAAAACh/AQBJAwAASgMAAEsDAABsAQAAbQEAAG4BAABMAwAAggIAAE0DAABOAwAATwMAAIUCAACGAgAAUAMAAFEDAAB4AQAAUgMAAFMDAACLAgAAVAMAAI0CAABBAwAAQgMAADExYnRDb25lU2hhcGUAAABErQEAGH8BALB/AQAAAAAAsH8BAFUDAABWAwAASwMAAGwBAABtAQAAbgEAAIECAACCAgAAUAEAAFABAABzAQAAhQIAAIYCAACHAgAAiAIAAHgBAACJAgAAUAEAAIsCAABQAQAAjQIAAEEDAABCAwAAMjFidENvbnZleEludGVybmFsU2hhcGUARK0BAJh/AQAwgAEAAAAAADCAAQBXAwAAWAMAAFABAABsAQAAbQEAAG4BAABQAQAAUAEAAFABAABQAQAAcwEAAFABAABQAQAARQMAAEYDAAB4AQAAUAEAAFABAACLAgAAUAEAAFABAABQAQAAUAEAADEzYnRDb252ZXhTaGFwZQBErQEAIIABADx+AQAAAAAA3IABAFkDAABaAwAAWwMAAGwBAABtAQAAbgEAAFwDAABdAwAAXgMAAF8DAABzAQAAhQIAAIYCAACHAgAAiAIAAHgBAABgAwAAYQMAAIsCAABiAwAAjQIAAEEDAABCAwAAkAIAAGMDAABkAwAAZQMAAGYDAABnAwAAaAMAAGkDAAAyNWJ0Q29udmV4VHJpYW5nbGVNZXNoU2hhcGUARK0BAMCAAQDMhQEAAAAAAByBAQBqAwAAawMAAGwDAAAyNkxvY2FsU3VwcG9ydFZlcnRleENhbGxiYWNrAAAAAEStAQD8gAEAkIgBAAAAAACkgQEAbQMAAG4DAABvAwAAbAEAAG0BAABuAQAAcAMAAIICAABxAwAAcgMAAHMDAAB0AwAAhgIAAHUDAAB2AwAAeAEAAHcDAAB4AwAAiwIAAHkDAACNAgAAQQMAAEIDAAB6AwAAMTVidEN5bGluZGVyU2hhcGUAAABErQEAkIEBALB/AQAAAAAAEIIBAHsDAAB8AwAAUAEAAGwBAABtAQAAbgEAAFABAABQAQAAUAEAAFABAABzAQAAIQMAACIDAABFAwAARgMAAHgBAABQAQAAMTRidENvbmNhdmVTaGFwZQAAAABErQEA/IEBADx+AQAAAAAAeIIBAH0DAAB+AwAAfwMAAGwBAABtAQAAbgEAAIADAACBAwAAggMAAIMDAABzAQAAIQMAACIDAABFAwAARgMAAHgBAACEAwAAMTJidEVtcHR5U2hhcGUAAEStAQBoggEAEIIBAAAAAADwggEAhQMAAIYDAACHAwAAbAEAAG0BAABuAQAAiAMAAIkDAACKAwAAiwMAAHMBAAAhAwAAIgMAAEUDAABGAwAAeAEAAIwDAACNAwAAMjVidEhlaWdodGZpZWxkVGVycmFpblNoYXBlAEStAQDUggEAEIIBAAAAAAA4gwEAjgMAAI8DAAAVAwAAFgMAABcDAAAYAwAAGQMAAJADAAAxNGJ0T3B0aW1pemVkQnZoAAAAAEStAQAkgwEA8HoBAAAAAAC8gwEAkQMAAJIDAACTAwAAWk4xNGJ0T3B0aW1pemVkQnZoNWJ1aWxkRVAyM2J0U3RyaWRpbmdNZXNoSW50ZXJmYWNlYlJLOWJ0VmVjdG9yM1M0X0UyOVF1YW50aXplZE5vZGVUcmlhbmdsZUNhbGxiYWNrAEStAQBYgwEAkIgBAAAAAAA4hAEAlAMAAJUDAACWAwAAWk4xNGJ0T3B0aW1pemVkQnZoNWJ1aWxkRVAyM2J0U3RyaWRpbmdNZXNoSW50ZXJmYWNlYlJLOWJ0VmVjdG9yM1M0X0UyME5vZGVUcmlhbmdsZUNhbGxiYWNrAABErQEA3IMBAJCIAQAAAAAAbIQBAJcDAACYAwAAMThidENvbnZleFBvbHloZWRyb24AAAAAHK0BAFSEAQAAAAAAmIUBAJkDAACaAwAASwMAAGwBAABtAQAAbgEAAIECAACCAgAAXgMAAFABAABzAQAAhQIAAIYCAACHAgAAiAIAAHgBAACJAgAAmwMAAIsCAACcAwAAjQIAAEEDAABCAwAAkAIAAFABAABQAQAAUAEAAFABAABQAQAAUAEAAFABAAAAAAAAzIUBAJ0DAACeAwAAWwMAAGwBAABtAQAAbgEAAJ8DAACCAgAAXgMAAFABAABzAQAAhQIAAIYCAACHAgAAiAIAAHgBAACJAgAAmwMAAIsCAACcAwAAjQIAAEEDAABCAwAAkAIAAFABAABQAQAAUAEAAFABAABQAQAAUAEAAFABAAAyM2J0UG9seWhlZHJhbENvbnZleFNoYXBlAAAARK0BAHyFAQCwfwEAMzRidFBvbHloZWRyYWxDb252ZXhBYWJiQ2FjaGluZ1NoYXBlAAAAAEStAQCkhQEAmIUBAAAAAABEhgEAoAMAAKEDAACiAwAAbAEAAG0BAABuAQAAowMAAKQDAAClAwAApgMAAHMBAAAhAwAAIgMAAKcDAACoAwAAeAEAAKkDAAAyOGJ0U2NhbGVkQnZoVHJpYW5nbGVNZXNoU2hhcGUAAEStAQAkhgEAEIIBAAAAAACAhgEAqgMAAKsDAACsAwAAMjRidFNjYWxlZFRyaWFuZ2xlQ2FsbGJhY2sAAEStAQBkhgEAUIgBAAAAAAAAhwEArQMAAK4DAACvAwAAbAEAAG0BAABuAQAAgQIAAIICAACwAwAAsQMAAHMBAACyAwAAswMAAIcCAACIAgAAeAEAALQDAAC1AwAAiwIAALYDAACNAgAAQQMAAEIDAAAxM2J0U3BoZXJlU2hhcGUARK0BAPCGAQCwfwEAAAAAAHCHAQC3AwAAuAMAALkDAABsAQAAbQEAAG4BAAC6AwAAuwMAALwDAAC9AwAAcwEAACEDAAAiAwAAvgMAAL8DAAB4AQAAwAMAADE4YnRTdGF0aWNQbGFuZVNoYXBlAAAAAEStAQBYhwEAEIIBAAAAAAAYiAEAwQMAAMIDAADDAwAAbAEAAG0BAABuAQAAnwMAAIICAABeAwAAxAMAAHMBAACFAgAAhgIAAIcCAACIAgAAeAEAAIkCAACbAwAAiwIAAJwDAACNAgAAQQMAAEIDAACQAgAAxQMAAMYDAADHAwAAyAMAAMkDAADKAwAAywMAAMwDAAAxNmJ0QlVfU2ltcGxleDF0bzQAAEStAQAEiAEAzIUBAAAAAABQiAEAzQMAAM4DAABQAQAAMThidFRyaWFuZ2xlQ2FsbGJhY2sAAAAAHK0BADiIAQAAAAAAkIgBAM8DAADQAwAAUAEAADMxYnRJbnRlcm5hbFRyaWFuZ2xlSW5kZXhDYWxsYmFjawAAABytAQBsiAEAAAAAAPiIAQDRAwAA0gMAANMDAABQAQAAUAEAAFABAABQAQAAUAEAAFABAABQAQAA1AMAANUDAADWAwAA1wMAANgDAAAyM2J0U3RyaWRpbmdNZXNoSW50ZXJmYWNlAAAAHK0BANyIAQAAAAAAZIkBANkDAADaAwAA0wMAANsDAADcAwAA3QMAAN4DAADfAwAA4AMAAOEDAADiAwAA4wMAAOQDAADXAwAA2AMAADI2YnRUcmlhbmdsZUluZGV4VmVydGV4QXJyYXkAAAAARK0BAESJAQD4iAEAAAAAAMiJAQDlAwAA5gMAANMDAADbAwAA3AMAAN0DAADeAwAA3wMAAOcDAADoAwAA4gMAAOMDAADkAwAA1wMAANgDAAAxNGJ0VHJpYW5nbGVNZXNoAAAAAEStAQC0iQEAZIkBAAAAAABAigEA6QMAAOoDAAAcAwAAbAEAAG0BAABuAQAA6wMAAB4DAAAfAwAA7AMAAHMBAAAhAwAAIgMAAEUDAABGAwAAeAEAAO0DAAAmAwAAJwMAADE5YnRUcmlhbmdsZU1lc2hTaGFwZQAAAEStAQAoigEAEIIBAAAAAADIigEA7gMAAO8DAADwAwAAWk5LMTlidFRyaWFuZ2xlTWVzaFNoYXBlMTlwcm9jZXNzQWxsVHJpYW5nbGVzRVAxOGJ0VHJpYW5nbGVDYWxsYmFja1JLOWJ0VmVjdG9yM1M0X0UxNkZpbHRlcmVkQ2FsbGJhY2sAAABErQEAYIoBAJCIAQAAAAAAAIsBAPEDAADyAwAA8wMAADIxU3VwcG9ydFZlcnRleENhbGxiYWNrAEStAQDoigEAUIgBAAAAAABAiwEA9AMAAPUDAAD2AwAAMjdidENvbnRpbnVvdXNDb252ZXhDb2xsaXNpb24AAABErQEAIIsBAKyLAQAAAAAAfIsBAPcDAAD4AwAA+QMAAPoDAAD7AwAAMTZidFBvaW50Q29sbGVjdG9yAABErQEAaIsBAFRlAQAAAAAArIsBAPwDAAD9AwAAUAEAADEyYnRDb252ZXhDYXN0AAAcrQEAnIsBAAAAAADciwEA/gMAAP8DAAAABAAAMTVidEdqa0NvbnZleENhc3QAAABErQEAyIsBAKyLAQABAAAAAgAAAAAAAAABAAAAAgAAAAAAAAABAAAAAgAAAAAAAAACAAAAAAAAAAEAAAAAAAAAUIwBAAMEAAAEBAAABQQAADMwYnRHamtFcGFQZW5ldHJhdGlvbkRlcHRoU29sdmVyAAAAAEStAQAsjAEAwGgBAAAAAACEjAEABgQAAAcEAAAIBAAAMTdidEdqa1BhaXJEZXRlY3RvcgBErQEAcIwBAMRzAQAAAAAAyIwBAAkEAAAKBAAACwQAADMzYnRNaW5rb3dza2lQZW5ldHJhdGlvbkRlcHRoU29sdmVyAEStAQCkjAEAwGgBAAAAAACcjQEADAQAAA0EAAAOBAAADwQAABAEAABaTjMzYnRNaW5rb3dza2lQZW5ldHJhdGlvbkRlcHRoU29sdmVyMTJjYWxjUGVuRGVwdGhFUjIyYnRWb3Jvbm9pU2ltcGxleFNvbHZlclBLMTNidENvbnZleFNoYXBlUzRfUksxMWJ0VHJhbnNmb3JtUzdfUjlidFZlY3RvcjNTOV9TOV9QMTJidElEZWJ1Z0RyYXdFMjBidEludGVybWVkaWF0ZVJlc3VsdAAARK0BAPCMAQBUZQEAAAAAAPSNAQARBAAAEgQAAC8CAABQAQAAAAAAACCOAQATBAAAFAQAADwCAABQAQAAMjVidFRyaWFuZ2xlUmF5Y2FzdENhbGxiYWNrAEStAQDYjQEAUIgBADI4YnRUcmlhbmdsZUNvbnZleGNhc3RDYWxsYmFjawAARK0BAACOAQBQiAEAAAAAAFyOAQAVBAAAFgQAABcEAAAyMmJ0U3Vic2ltcGxleENvbnZleENhc3QAAAAARK0BAECOAQCsiwEAAAAAALCOAQAYBAAAGQQAABoEAAAbBAAAHAQAAB0EAAAeBAAAHwQAACAEAAAhBAAAIgQAADE3YnRGaXhlZENvbnN0cmFpbnQARK0BAJyOAQAgjwEAAAAAACCPAQAjBAAAJAQAABoEAAAbBAAAHAQAAB0EAAAeBAAAHwQAACAEAAAhBAAAIgQAAAAAAAABAAAAAgAAADMwYnRHZW5lcmljNkRvZlNwcmluZzJDb25zdHJhaW50AAAAAEStAQD8jgEA9JABAAAAAAB4jwEAJQQAACYEAAAnBAAAGwQAACgEAAApBAAAHgQAACoEAAArBAAALAQAAC0EAAAuBAAAMTdidEhpbmdlQ29uc3RyYWludABErQEAZI8BAPSQAQAAAAAA2I8BAC8EAAAwBAAAMQQAABsEAAAyBAAAMwQAAB4EAAA0BAAANQQAADYEAAA3BAAAOAQAADIzYnRQb2ludDJQb2ludENvbnN0cmFpbnQAAABErQEAvI8BAPSQAQAAAAAAZJABADwEAAA9BAAAPgQAAD8EAABABAAAQQQAAEIEAABDBAAARAQAAEUEAABGBAAARwQAAEgEAAAzNWJ0U2VxdWVudGlhbEltcHVsc2VDb25zdHJhaW50U29sdmVyADE4YnRDb25zdHJhaW50U29sdmVyAAAcrQEARpABAEStAQAgkAEAXJABAAAAAABckAEASQQAAEoEAAA+BAAAUAEAAEAEAABQAQAAUAEAAAAAAAD0kAEATAQAAE0EAABOBAAAGwQAAFABAABQAQAAHgQAAFABAABQAQAATwQAAFAEAAAxN2J0VHlwZWRDb25zdHJhaW50ADEzYnRUeXBlZE9iamVjdAAcrQEA3JABAKCtAQDIkAEAAAAAAAEAAADskAEAAgQAAAAAAABAkQEAUQQAAFIEAAAWAgAAFwIAAFMEAABUBAAAVQQAADExYnRSaWdpZEJvZHkAAABErQEAMJEBANBlAQAAAAAAgJEBAFYEAABXBAAAWAQAAFkEAAAyNWJ0U2ltdWxhdGlvbklzbGFuZE1hbmFnZXIAHK0BAGSRAQAAAAAAhJIBAFoEAABbBAAAHQIAAB4CAAAfAgAAIAIAAFwEAAAiAgAAIwIAAF0EAABeBAAAJgIAAF8EAABgBAAAYQQAAGIEAABjBAAAZAQAAGUEAABmBAAAZwQAAGgEAABpBAAAagQAAGsEAABsBAAAbQQAAG4EAABvBAAAcAQAAHEEAAByBAAAcwQAAHQEAAB1BAAAdgQAAHcEAAB4BAAAeQQAAHoEAAB7BAAAfAQAAH0EAAB+BAAAfwQAAIAEAACBBAAAMjNidERpc2NyZXRlRHluYW1pY3NXb3JsZAAxNWJ0RHluYW1pY3NXb3JsZABErQEAZpIBAChmAQBErQEATJIBAHiSAQAAAAAAeJIBAIIEAACDBAAAHQIAAB4CAAAfAgAAIAIAAFABAAAiAgAAIwIAACQCAAAlAgAAJgIAACcCAABQAQAAhAQAAIUEAABQAQAAUAEAAFABAABQAQAAUAEAAFABAABQAQAAUAEAAFABAABQAQAAhgQAAIcEAACIBAAAUAEAAFABAACJBAAAigQAAIsEAACMBAAAAAAAAIyTAQCNBAAAjgQAAI8EAAAyN0lucGxhY2VTb2x2ZXJJc2xhbmRDYWxsYmFjawBOMjVidFNpbXVsYXRpb25Jc2xhbmRNYW5hZ2VyMTRJc2xhbmRDYWxsYmFja0UAHK0BAFaTAQBErQEAOJMBAISTAQAAAAAAhJMBAJAEAACRBAAAUAEAAAAAAADskwEAkgQAAJMEAACUBAAAlQQAADM0YnRDbG9zZXN0Tm90TWVDb252ZXhSZXN1bHRDYWxsYmFjawAAAABErQEAxJMBAACvAQAAAAAA3JQBAJYEAACXBAAAHQIAAB4CAAAfAgAAIAIAAFwEAAAiAgAAIwIAAF0EAABeBAAAJgIAAF8EAABgBAAAYQQAAGIEAABjBAAAZAQAAGUEAABmBAAAZwQAAGgEAABpBAAAagQAAGsEAABsBAAAbQQAAG4EAABvBAAAcAQAAHEEAAByBAAAcwQAAHQEAAB1BAAAdgQAAHcEAAB4BAAAeQQAAHoEAAB7BAAAmAQAAH0EAAB+BAAAmQQAAIAEAACBBAAATjJjYzIzY2NEaXNjcmV0ZUR5bmFtaWNzV29ybGRFAABErQEAvJQBAISSAQAAAAAAQJUBAJoEAACbBAAAnAQAAE4yY2MyM2NjT3ZlcmxhcEZpbHRlckNhbGxiYWNrRQAyM2J0T3ZlcmxhcEZpbHRlckNhbGxiYWNrAAAAABytAQAblQEARK0BAPyUAQA4lQEAAAAAADiVAQCdBAAAngQAAFABAAAAAAAAlJUBAJ8EAACgBAAAoQQAAKIEAACjBAAAMTlidEdob3N0UGFpckNhbGxiYWNrAAAARK0BAHyVAQBQYgEAAAAAAOSVAQCkBAAApQQAAKYEAACnBAAATjJjYzM0Y2NOb3RNZUNsb3Nlc3RDb252ZXhSZXN1bHRDYWxsYmFja0UAAABErQEAuJUBAACvAQAAAAAAWJYBAKgEAACqBAAAFgIAABcCAAAYAgAAGQIAABoCAACrBAAArAQAAAAAAACAlgEAqQQAAK0EAAAWAgAAFwIAABgCAAAZAgAAGgIAAK4EAACvBAAAMTNidEdob3N0T2JqZWN0AEStAQBIlgEA0GUBADI0YnRQYWlyQ2FjaGluZ0dob3N0T2JqZWN0AABErQEAZJYBAFiWAQAAAAAAIJcBALEEAACyBAAAswQAALQEAAC1BAAAUAEAAAAAAABMlwEAtgQAALcEAACzBAAAtAQAALUEAAC4BAAAAAAAAHSXAQC5BAAAugQAALMEAAC0BAAAtQQAALsEAAAyMWJ0Q2hhcmFjdGVyQ29udHJvbGxlcgAxN2J0QWN0aW9uSW50ZXJmYWNlABytAQAElwEARK0BAOyWAQAYlwEAMjhidENhcHN1bGVDaGFyYWN0ZXJDb250cm9sbGVyAABErQEALJcBACCXAQAyNGJ0Qm94Q2hhcmFjdGVyQ29udHJvbGxlcgAARK0BAFiXAQAglwEAAAAAAMiXAQC8BAAAvQQAAF4BAAC+BAAANDNidEtpbmVtYXRpY0Nsb3Nlc3ROb3RNZUNvbnZleFJlc3VsdENhbGxiYWNrAAAARK0BAJiXAQAArwEAAAAAABiXAQC/BAAAwAQAAFABAABQAQAATlN0M19fMjEyYmFzaWNfc3RyaW5nSWhOU18xMWNoYXJfdHJhaXRzSWhFRU5TXzlhbGxvY2F0b3JJaEVFRUUAABytAQDslwEATlN0M19fMjEyYmFzaWNfc3RyaW5nSXdOU18xMWNoYXJfdHJhaXRzSXdFRU5TXzlhbGxvY2F0b3JJd0VFRUUAABytAQA0mAEATlN0M19fMjEyYmFzaWNfc3RyaW5nSURzTlNfMTFjaGFyX3RyYWl0c0lEc0VFTlNfOWFsbG9jYXRvcklEc0VFRUUAAAAcrQEAfJgBAE5TdDNfXzIxMmJhc2ljX3N0cmluZ0lEaU5TXzExY2hhcl90cmFpdHNJRGlFRU5TXzlhbGxvY2F0b3JJRGlFRUVFAAAAHK0BAMiYAQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0ljRUUAABytAQAUmQEATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJYUVFAAAcrQEAPJkBAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWhFRQAAHK0BAGSZAQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lzRUUAABytAQCMmQEATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJdEVFAAAcrQEAtJkBAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWlFRQAAHK0BANyZAQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lqRUUAABytAQAEmgEATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJbEVFAAAcrQEALJoBAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SW1FRQAAHK0BAFSaAQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0l4RUUAABytAQB8mgEATjEwZW1zY3JpcHRlbjExbWVtb3J5X3ZpZXdJeUVFAAAcrQEApJoBAE4xMGVtc2NyaXB0ZW4xMW1lbW9yeV92aWV3SWZFRQAAHK0BAMyaAQBOMTBlbXNjcmlwdGVuMTFtZW1vcnlfdmlld0lkRUUAABytAQD0mgEA2w9JP9sPSb/kyxZA5MsWwAAAAAAAAACA2w9JQNsPScAAAAAAOGPtPtoPST9emHs/2g/JP2k3rDFoISIztA8UM2ghojMDAAAABAAAAAQAAAAGAAAAg/miAERObgD8KRUA0VcnAN009QBi28AAPJmVAEGQQwBjUf4Au96rALdhxQA6biQA0k1CAEkG4AAJ6i4AHJLRAOsd/gApsRwA6D6nAPU1ggBEuy4AnOmEALQmcABBfl8A1pE5AFODOQCc9DkAi1+EACj5vQD4HzsA3v+XAA+YBQARL+8AClqLAG0fbQDPfjYACcsnAEZPtwCeZj8ALepfALondQDl68cAPXvxAPc5BwCSUooA+2vqAB+xXwAIXY0AMANWAHv8RgDwq2sAILzPADb0mgDjqR0AXmGRAAgb5gCFmWUAoBRfAI1AaACA2P8AJ3NNAAYGMQDKVhUAyahzAHviYABrjMAAGcRHAM1nwwAJ6NwAWYMqAIt2xACmHJYARK/dABlX0QClPgUABQf/ADN+PwDCMugAmE/eALt9MgAmPcMAHmvvAJ/4XgA1HzoAf/LKAPGHHQB8kCEAaiR8ANVu+gAwLXcAFTtDALUUxgDDGZ0ArcTCACxNQQAMAF0Ahn1GAONxLQCbxpoAM2IAALTSfAC0p5cAN1XVANc+9gCjEBgATXb8AGSdKgBw16sAY3z4AHqwVwAXFecAwElWADvW2QCnhDgAJCPLANaKdwBaVCMAAB+5APEKGwAZzt8AnzH/AGYeagCZV2EArPtHAH5/2AAiZbcAMuiJAOa/YADvxM0AbDYJAF0/1AAW3tcAWDveAN6bkgDSIigAKIboAOJYTQDGyjIACOMWAOB9ywAXwFAA8x2nABjgWwAuEzQAgxJiAINIAQD1jlsArbB/AB7p8gBISkMAEGfTAKrd2ACuX0IAamHOAAoopADTmbQABqbyAFx3fwCjwoMAYTyIAIpzeACvjFoAb9e9AC2mYwD0v8sAjYHvACbBZwBVykUAytk2ACio0gDCYY0AEsl3AAQmFAASRpsAxFnEAMjFRABNspEAABfzANRDrQApSeUA/dUQAAC+/AAelMwAcM7uABM+9QDs8YAAs+fDAMf4KACTBZQAwXE+AC4JswALRfMAiBKcAKsgewAutZ8AR5LCAHsyLwAMVW0AcqeQAGvnHwAxy5YAeRZKAEF54gD034kA6JSXAOLmhACZMZcAiO1rAF9fNgC7/Q4ASJq0AGekbABxckIAjV0yAJ8VuAC85QkAjTElAPd0OQAwBRwADQwBAEsIaAAs7lgAR6qQAHTnAgC91iQA932mAG5IcgCfFu8AjpSmALSR9gDRU1EAzwryACCYMwD1S34AsmNoAN0+XwBAXQMAhYl/AFVSKQA3ZMAAbdgQADJIMgBbTHUATnHUAEVUbgALCcEAKvVpABRm1QAnB50AXQRQALQ72wDqdsUAh/kXAElrfQAdJ7oAlmkpAMbMrACtFFQAkOJqAIjZiQAsclAABKS+AHcHlADzMHAAAPwnAOpxqABmwkkAZOA9AJfdgwCjP5cAQ5T9AA2GjAAxQd4AkjmdAN1wjAAXt+cACN87ABU3KwBcgKAAWoCTABARkgAP6NgAbICvANv/SwA4kA8AWRh2AGKlFQBhy7sAx4m5ABBAvQDS8gQASXUnAOu29gDbIrsAChSqAIkmLwBkg3YACTszAA6UGgBROqoAHaPCAK/trgBcJhIAbcJNAC16nADAVpcAAz+DAAnw9gArQIwAbTGZADm0BwAMIBUA2MNbAPWSxADGrUsATsqlAKc3zQDmqTYAq5KUAN1CaAAZY94AdozvAGiLUgD82zcArqGrAN8VMQAArqEADPvaAGRNZgDtBbcAKWUwAFdWvwBH/zoAavm5AHW+8wAok98Aq4AwAGaM9gAEyxUA+iIGANnkHQA9s6QAVxuPADbNCQBOQukAE76kADMjtQDwqhoAT2WoANLBpQALPw8AW3jNACP5dgB7iwQAiRdyAMamUwBvbuIA7+sAAJtKWADE2rcAqma6AHbPzwDRAh0AsfEtAIyZwQDDrXcAhkjaAPddoADGgPQArPAvAN3smgA/XLwA0N5tAJDHHwAq27YAoyU6AACvmgCtU5MAtlcEACkttABLgH4A2genAHaqDgB7WaEAFhIqANy3LQD65f0Aidv+AIm+/QDkdmwABqn8AD6AcACFbhUA/Yf/ACg+BwBhZzMAKhiGAE296gCz568Aj21uAJVnOQAxv1sAhNdIADDfFgDHLUMAJWE1AMlwzgAwy7gAv2z9AKQAogAFbOQAWt2gACFvRwBiEtIAuVyEAHBhSQBrVuAAmVIBAFBVNwAe1bcAM/HEABNuXwBdMOQAhS6pAB2ywwChMjYACLekAOqx1AAW9yEAj2nkACf/dwAMA4AAjUAtAE/NoAAgpZkAs6LTAC9dCgC0+UIAEdrLAH2+0ACb28EAqxe9AMqigQAIalwALlUXACcAVQB/FPAA4QeGABQLZACWQY0Ah77eANr9KgBrJbYAe4k0AAXz/gC5v54AaGpPAEoqqABPxFoALfi8ANdamAD0x5UADU2NACA6pgCkV18AFD+xAIA4lQDMIAEAcd2GAMnetgC/YPUATWURAAEHawCMsKwAssDQAFFVSAAe+w4AlXLDAKMGOwDAQDUABtx7AOBFzABOKfoA1srIAOjzQQB8ZN4Am2TYANm+MQCkl8MAd1jUAGnjxQDw2hMAujo8AEYYRgBVdV8A0r31AG6SxgCsLl0ADkTtABw+QgBhxIcAKf3pAOfW8wAifMoAb5E1AAjgxQD/140AbmriALD9xgCTCMEAfF10AGutsgDNbp0APnJ7AMYRagD3z6kAKXPfALXJugC3AFEA4rINAHS6JADlfWAAdNiKAA0VLACBGAwAfmaUAAEpFgCfenYA/f2+AFZF7wDZfjYA7NkTAIu6uQDEl/wAMagnAPFuwwCUxTYA2KhWALSotQDPzA4AEoktAG9XNAAsVokAmc7jANYguQBrXqoAPiqcABFfzAD9C0oA4fT7AI47bQDihiwA6dSEAPy0qQDv7tEALjXJAC85YQA4IUQAG9nIAIH8CgD7SmoALxzYAFO0hABOmYwAVCLMACpV3ADAxtYACxmWABpwuABplWQAJlpgAD9S7gB/EQ8A9LURAPzL9QA0vC0ANLzuAOhdzADdXmAAZ46bAJIz7wDJF7gAYVibAOFXvABRg8YA2D4QAN1xSAAtHN0ArxihACEsRgBZ89cA2XqYAJ5UwABPhvoAVgb8AOV5rgCJIjYAOK0iAGeT3ABV6KoAgiY4AMrnmwBRDaQAmTOxAKnXDgBpBUgAZbLwAH+IpwCITJcA+dE2ACGSswB7gkoAmM8hAECf3ADcR1UA4XQ6AGfrQgD+nd8AXtRfAHtnpAC6rHoAVfaiACuIIwBBulUAWW4IACEqhgA5R4MAiePmAOWe1ABJ+0AA/1bpABwPygDFWYoAlPorANPBxQAPxc8A21quAEfFhgCFQ2IAIYY7ACx5lAAQYYcAKkx7AIAsGgBDvxIAiCaQAHg8iQCoxOQA5dt7AMQ6wgAm9OoA92eKAA2SvwBloysAPZOxAL18CwCkUdwAJ91jAGnh3QCalBkAqCmVAGjOKAAJ7bQARJ8gAE6YygBwgmMAfnwjAA+5MgCn9Y4AFFbnACHxCAC1nSoAb35NAKUZUQC1+asAgt/WAJbdYQAWNgIAxDqfAIOioQBy7W0AOY16AIK4qQBrMlwARidbAAA07QDSAHcA/PRVAAFZTQDgcYAAAAAAAAAAAAAAAABA+yH5PwAAAAAtRHQ+AAAAgJhG+DwAAABgUcx4OwAAAICDG/A5AAAAQCAlejgAAACAIoLjNgAAAAAd82k1AAAAAAAA8D90hRXTsNnvPw+J+WxYte8/UVsS0AGT7z97UX08uHLvP6q5aDGHVO8/OGJ1bno47z/h3h/1nR7vPxW3MQr+Bu8/y6k6N6fx7j8iNBJMpt7uPy2JYWAIzu4/Jyo21dq/7j+CT51WK7TuPylUSN0Hq+4/hVU6sH6k7j/NO39mnqDuP3Rf7Oh1n+4/hwHrcxSh7j8TzkyZiaXuP9ugKkLlrO4/5cXNsDe37j+Q8KOCkcTuP10lPrID1e4/rdNamZ/o7j9HXvvydv/uP5xShd2bGe8/aZDv3CA37z+HpPvcGFjvP1+bezOXfO8/2pCkoq+k7z9ARW5bdtDvPwAAAAAAAOhClCORS/hqrD/zxPpQzr/OP9ZSDP9CLuY/AAAAAAAAOEP+gitlRxVHQJQjkUv4arw+88T6UM6/Lj/WUgz/Qi6WP77z+HnsYfY/GTCWW8b+3r89iK9K7XH1P6T81DJoC9u/sBDw8DmV9D97tx8Ki0HXv4UDuLCVyfM/e89tGumd07+lZIgMGQ3zPzG28vObHdC/oI4LeyJe8j/wejsbHXzJvz80GkpKu/E/nzyvk+P5wr+65YrwWCPxP1yNeL/LYLm/pwCZQT+V8D/OX0e2nW+qvwAAAAAAAPA/AAAAAAAAAACsR5r9jGDuPz31JJ/KOLM/oGoCH7Ok7D+6kThUqXbEP+b8alc2IOs/0uTESguEzj8tqqFj0cLpPxxlxvBFBtQ/7UF4A+aG6D/4nxssnI7YP2JIU/XcZ+c/zHuxTqTg3D8LbknJFnbSP3rGdaBpGde/3bqnbArH3j/I9r5IRxXnvyu4KmVHFfc/GQAKABkZGQAAAAAFAAAAAAAACQAAAAALAAAAAAAAAAAZABEKGRkZAwoHAAEACQsYAAAJBgsAAAsABhkAAAAZGRkAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAGQAKDRkZGQANAAACAAkOAAAACQAOAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAAAAAAAAAAABMAAAAAEwAAAAAJDAAAAAAADAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAPAAAABA8AAAAACRAAAAAAABAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEgAAAAAAAAAAAAAAEQAAAAARAAAAAAkSAAAAAAASAAASAAAaAAAAGhoaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABoAAAAaGhoAAAAAAAAJAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAXAAAAABcAAAAACRQAAAAAABQAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFgAAAAAAAAAAAAAAFQAAAAAVAAAAAAkWAAAAAAAWAAAWAAAwMTIzNDU2Nzg5QUJDREVGcLkBAE4xMF9fY3h4YWJpdjExNl9fc2hpbV90eXBlX2luZm9FAAAAAEStAQDUqgEAIK4BAE4xMF9fY3h4YWJpdjExN19fY2xhc3NfdHlwZV9pbmZvRQAAAEStAQAEqwEA+KoBAE4xMF9fY3h4YWJpdjExN19fcGJhc2VfdHlwZV9pbmZvRQAAAEStAQA0qwEA+KoBAE4xMF9fY3h4YWJpdjExOV9fcG9pbnRlcl90eXBlX2luZm9FAEStAQBkqwEAWKsBAE4xMF9fY3h4YWJpdjEyMF9fZnVuY3Rpb25fdHlwZV9pbmZvRQAAAABErQEAlKsBAPiqAQBOMTBfX2N4eGFiaXYxMjlfX3BvaW50ZXJfdG9fbWVtYmVyX3R5cGVfaW5mb0UAAABErQEAyKsBAFirAQAAAAAASKwBAMkEAADKBAAAywQAAMwEAADNBAAATjEwX19jeHhhYml2MTIzX19mdW5kYW1lbnRhbF90eXBlX2luZm9FAEStAQAgrAEA+KoBAHYAAAAMrAEAVKwBAERuAAAMrAEAYKwBAGIAAAAMrAEAbKwBAGMAAAAMrAEAeKwBAGgAAAAMrAEAhKwBAGEAAAAMrAEAkKwBAHMAAAAMrAEAnKwBAHQAAAAMrAEAqKwBAGkAAAAMrAEAtKwBAGoAAAAMrAEAwKwBAGwAAAAMrAEAzKwBAG0AAAAMrAEA2KwBAHgAAAAMrAEA5KwBAHkAAAAMrAEA8KwBAGYAAAAMrAEA/KwBAGQAAAAMrAEACK0BAAAAAAAoqwEAyQQAAM4EAADLBAAAzAQAAM8EAADQBAAA0QQAANIEAAAAAAAAjK0BAMkEAADTBAAAywQAAMwEAADPBAAA1AQAANUEAADWBAAATjEwX19jeHhhYml2MTIwX19zaV9jbGFzc190eXBlX2luZm9FAAAAAEStAQBkrQEAKKsBAAAAAADorQEAyQQAANcEAADLBAAAzAQAAM8EAADYBAAA2QQAANoEAABOMTBfX2N4eGFiaXYxMjFfX3ZtaV9jbGFzc190eXBlX2luZm9FAAAARK0BAMCtAQAoqwEAAAAAAIirAQDJBAAA2wQAAMsEAADMBAAA3AQAAFN0OXR5cGVfaW5mbwAAAAAcrQEAEK4BAA==");
|
|
base64DecodeToExistingUint8Array(bufferView, 110128, "AAAAAFyuAQBGAQAARwEAAEgBAABJAQAAHK0BAJ9aAQBErQEAcFoBAEiuAQBErQEATloBAFCuAQAAAAAAUK4BAEoBAABLAQAATAEAAE0BAAAAAAAASK4BAE4BAABPAQAATAEAAFABAAAAAAAAvK4BAFEBAABSAQAAUwEAAFQBAABErQEA6VoBAEiuAQBErQEAx1oBALCuAQAAAAAAsK4BAFUBAABWAQAATAEAAFcBAAAAAAAADK8BAFgBAABZAQAAWgEAAFsBAAAcrQEAb1sBAEStAQA9WwEA+K4BAEStAQAYWwEAAK8BAAAAAAAArwEAXAEAAF0BAABeAQAAXwEAAAAAAAD4rgEAYAEAAGEBAABeAQAAUAEAAAAAAABsrwEAYgEAAGMBAABkAQAAZQEAAEStAQC/WwEA+K4BAEStAQCaWwEAYK8BAAAAAABgrwEAZgEAAGcBAABeAQAAaAEAAAAAAADgrwEAaQEAAGoBAABrAQAAbAEAAG0BAABuAQAAbwEAAHABAABxAQAAcgEAAHMBAAB0AQAAdQEAAHYBAAB3AQAAeAEAAHkBAAB6AQAARK0BAPFbAQCofgEAHK0BAAhcAQAAAAAA7K8BAHsBAAB8AQAAUAEAAFABAAAcrQEAJlwBAEStAQAYXAEADLABAPytAQA1XAEAAAAAABSwAQD8rQEARFwBAAEAAAAUsAEAWKwBAEiwAQD8rQEAXFwBAAAAAAAMsAEAAAAAAAAAAABYrAEAILABALisAQC4rAEAuKwBABytAQCyXAEAoK0BAIxcAQAAAAAAAgAAABSwAQACAAAAdLABAAKIAABErQEAd1wBAHywAQD8rQEA11wBAAAAAACcsAEA/K0BAO1cAQABAAAAnLABAFisAQCcsAEAqLABANiwAQAcrQEABF0BAAAAAACcsAEAfQEAAH4BAAB/AQAAgAEAAIEBAACCAQAAgwEAAIQBAACFAQAAhgEAAIcBAACIAQAAiQEAAIoBAACLAQAAjAEAAI0BAACOAQAAjwEAAJABAACRAQAAkgEAAJMBAACUAQAAlQEAAJYBAACXAQAAmAEAAAAAAAB8sAEAmQEAAJoBAAB/AQAAgAEAAIEBAACCAQAAgwEAAIQBAACFAQAAhgEAAIcBAACIAQAAiQEAAIoBAACLAQAAjAEAAI0BAACOAQAAjwEAAJABAACRAQAAkgEAAJMBAACUAQAAlQEAAJsBAACcAQAAUAEAAAAAAAAUsAEAnQEAAJ4BAAB/AQAAgAEAAIEBAACCAQAAgwEAAIQBAACFAQAAhgEAAIcBAACIAQAAiQEAAIoBAACLAQAAjAEAAI0BAACOAQAAjwEAAJABAACRAQAAkgEAAJMBAACUAQAAlQEAAJsBAACcAQAAUAEAAAAAAAAMsAEAnwEAAKABAAChAQAAogEAAFABAACCAQAAgwEAAIQBAACFAQAAhgEAAFABAABQAQAAUAEAAFABAABQAQAAjAEAAI0BAACOAQAAjwEAAJABAACRAQAAkgEAAJMBAACUAQAAlQEAAJsBAACcAQAAWKwBAFisAQC4rAEAuKwBALisAQDYsAEA3LIBANiwAQAcrQEAG10BABytAQB3XQEARK0BAF9dAQDksgEA/K0BAJNdAQAAAAAA7LIBAPytAQCsXQEAAQAAAOyyAQAAAAAAAAAAAFisAQD4sgEAuKwBALisAQCgrQEA610BAAAAAAACAAAA7LIBAAIAAAB0sAEAAgQAAEStAQDMXQEAMLMBAPytAQAbXgEAAAAAAFCzAQD8rQEAO14BAAEAAABQswEAWKwBAFCzAQBcswEA2LABAAAAAABQswEAowEAAKQBAAClAQAApgEAAKcBAAAAAAAAMLMBAKMBAACkAQAAqAEAAKkBAABQAQAAAAAAAOyyAQCjAQAApAEAAKoBAACrAQAAUAEAAAAAAADksgEAUAEAAFABAACsAQAArQEAAFisAQC4rAEAuKwBAEStAQBcXgEA7K8BAPytAQBxXgEAAAAAAAS0AQD8rQEAh14BAAEAAAAEtAEAWKwBABC0AQC4rAEAoK0BALpeAQAAAAAAAgAAAAS0AQACAAAAdLABAAJIAABErQEAo14BADy0AQD8rQEA514BAAAAAABctAEA/K0BAP9eAQABAAAAXLQBAFisAQBctAEAaLQBANiwAQAAAAAAXLQBAK4BAACvAQAAsAEAALEBAACyAQAAAAAAADy0AQCzAQAAtAEAALABAACxAQAAUAEAAAAAAAAEtAEAtQEAALYBAACwAQAAsQEAAFABAABYrAEAuKwBALisAQC4rAEAWKwBALisAQAArQEAuKwBAFisAQC4rAEAAK0BAFisAQC4rAEAuKwBAAAAAAAAAAAAAAAAALisAQAArQEAAK0BAACtAQBYrAEAuKwBAACtAQAArQEAAK0BAAAAAAAAAAAAAAAAALisAQAArQEAAK0BAACtAQAArQEAAAAAAAAAAAAAAAAAWKwBALisAQAArQEAAK0BAACtAQAArQEAuKwBALisAQC4rAEAuKwBAAAAAAAAAAAAWKwBALisAQC4rAEAuKwBALisAQC4rAEAuKwBALisAQC4rAEAAAAAAAAAAAAAAAAAWKwBALisAQAArQEAAK0BAACtAQAArQEAAK0BAFisAQC4rAEAcKwBAAAAAAAAAAAAWKwBALisAQAArQEAAK0BALisAQC4rAEAuKwBALisAQC4rAEAuKwBAAAAAAAAAAAAWKwBALisAQC4rAEAAK0BAACtAQAAAAAAAAAAAAAAAABYrAEAuKwBALisAQBwrAEAWKwBALisAQC4rAEAAK0BAHCsAQC4rAEAAAAAAAAAAABYrAEAuKwBAACtAQC4rAEAWKwBALisAQC4rAEAuKwBALisAQC4rAEAAK0BAAAAAABYrAEAuKwBAACtAQAArQEAuKwBALisAQAArQEAAK0BALisAQC4rAEAAK0BAAAAAAC4rAEAuKwBALisAQC4rAEAAK0BAACtAQAArQEAAAAAAFisAQC4rAEAuKwBALisAQC4rAEAcKwBAAAAAAAAAAAAuKwBALisAQBwrAEAcKwBAFisAQC4rAEAuKwBAACtAQAArQEAAK0BAAAAAAAAAAAAuKwBALisAQAArQEAAK0BAACtAQAAAAAAAAAAAAAAAABYrAEAuKwBALisAQC4rAEAcKwBALisAQAArQEAuKwBAFisAQC4rAEAuKwBAMSsAQDErAEAAAAAAAAAAAAAAAAAWKwBALisAQC4rAEAuKwBALisAQC4rAEAAK0BAAAAAAC4rAEAuKwBALisAQC4rAEAWKwBALisAQAArQEAuKwBAACtAQAAAAAAAAAAAAAAAABYrAEAuKwBALisAQC4rAEAxKwBAHCsAQAAAAAAAAAAALisAQC4rAEAuKwBAACtAQAArQEAAAAAAAAAAAAAAAAAuKwBAACtAQAArQEAAK0BALisAQC4rAEAuKwBAACtAQAArQEAAAAAAAAAAAAAAAAAuKwBAACtAQAArQEAAK0BALisAQC4rAEAuKwBAACtAQAArQEAAK0BALcBAAC4AQAAuQEAALoBAADdAQAA3gEAAAEAAABvEoM6CtejPAEBAAAAAABAIAAAAAUAAAAAAAAAAAAAAMIEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMMEAADEBAAAKMYBAAAEAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAD/////CgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAANi4AQDwzAEABQAAAAAAAAAAAAAAxwQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwwQAAMgEAADkzAEAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAP//////////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcLkBAA==");
|
|
base64DecodeToExistingUint8Array(bufferView, 113168, "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA");
|
|
}
|
|
|
|
var scratchBuffer = new ArrayBuffer(16);
|
|
var i32ScratchView = new Int32Array(scratchBuffer);
|
|
var f32ScratchView = new Float32Array(scratchBuffer);
|
|
var f64ScratchView = new Float64Array(scratchBuffer);
|
|
|
|
function wasm2js_scratch_load_i32(index) {
|
|
return i32ScratchView[index];
|
|
}
|
|
|
|
function wasm2js_scratch_store_i32(index, value) {
|
|
i32ScratchView[index] = value;
|
|
}
|
|
|
|
function wasm2js_scratch_load_f64() {
|
|
return f64ScratchView[0];
|
|
}
|
|
|
|
function wasm2js_scratch_store_f64(value) {
|
|
f64ScratchView[0] = value;
|
|
}
|
|
function wasm2js_trap() { throw new Error('abort'); }
|
|
|
|
function wasm2js_scratch_store_f32(value) {
|
|
f32ScratchView[2] = value;
|
|
}
|
|
|
|
function wasm2js_scratch_load_f32() {
|
|
return f32ScratchView[2];
|
|
}
|
|
|
|
function asmFunc(imports) {
|
|
var env = imports.env;
|
|
var memory = env.memory;
|
|
var buffer = memory.buffer;
|
|
memory.grow = __wasm_memory_grow;
|
|
var HEAP8 = new Int8Array(buffer);
|
|
var HEAP16 = new Int16Array(buffer);
|
|
var HEAP32 = new Int32Array(buffer);
|
|
var HEAPU8 = new Uint8Array(buffer);
|
|
var HEAPU16 = new Uint16Array(buffer);
|
|
var HEAPU32 = new Uint32Array(buffer);
|
|
var HEAPF32 = new Float32Array(buffer);
|
|
var HEAPF64 = new Float64Array(buffer);
|
|
var Math_imul = Math.imul;
|
|
var Math_fround = Math.fround;
|
|
var Math_abs = Math.abs;
|
|
var Math_clz32 = Math.clz32;
|
|
var Math_min = Math.min;
|
|
var Math_max = Math.max;
|
|
var Math_floor = Math.floor;
|
|
var Math_ceil = Math.ceil;
|
|
var Math_trunc = Math.trunc;
|
|
var Math_sqrt = Math.sqrt;
|
|
var __assert_fail = env.__assert_fail;
|
|
var _embind_register_class = env._embind_register_class;
|
|
var _embind_register_class_class_function = env._embind_register_class_class_function;
|
|
var _embind_register_function = env._embind_register_function;
|
|
var _embind_register_class_function = env._embind_register_class_function;
|
|
var _embind_create_inheriting_constructor = env._embind_create_inheriting_constructor;
|
|
var _emval_decref = env._emval_decref;
|
|
var _emval_call_void_method = env._emval_call_void_method;
|
|
var _emval_get_method_caller = env._emval_get_method_caller;
|
|
var _emval_incref = env._emval_incref;
|
|
var _embind_register_void = env._embind_register_void;
|
|
var _embind_register_bool = env._embind_register_bool;
|
|
var _embind_register_integer = env._embind_register_integer;
|
|
var _embind_register_float = env._embind_register_float;
|
|
var _embind_register_std_string = env._embind_register_std_string;
|
|
var _embind_register_std_wstring = env._embind_register_std_wstring;
|
|
var _embind_register_emval = env._embind_register_emval;
|
|
var _embind_register_memory_view = env._embind_register_memory_view;
|
|
var emscripten_memcpy_big = env.emscripten_memcpy_big;
|
|
var wasi_snapshot_preview1 = imports.wasi_snapshot_preview1;
|
|
var __wasi_fd_write = wasi_snapshot_preview1.fd_write;
|
|
var emscripten_resize_heap = env.emscripten_resize_heap;
|
|
var abort = env.abort;
|
|
var __wasi_fd_close = wasi_snapshot_preview1.fd_close;
|
|
var legalimport$_embind_register_bigint = env._embind_register_bigint;
|
|
var legalimport$__wasi_fd_seek = wasi_snapshot_preview1.fd_seek;
|
|
var __stack_pointer = 65536;
|
|
var __stack_end = 0;
|
|
var __stack_base = 0;
|
|
var tempRet0 = 0;
|
|
var GOT_data_internal___memory_base = 0;
|
|
var GOT_data_internal___table_base = 1;
|
|
var GOT_data_internal_vtable_20for_20cc__ccClosestRayResultCallback = 110128;
|
|
var GOT_data_internal_vtable_20for_20btCollisionWorld__ClosestRayResultCallback = 110184;
|
|
var GOT_data_internal_vtable_20for_20cc__ccAllHitsRayResultCallback = 110232;
|
|
var GOT_data_internal_vtable_20for_20btCollisionWorld__AllHitsRayResultCallback = 110280;
|
|
var GOT_data_internal_vtable_20for_20cc__ccClosestConvexResultCallback = 110304;
|
|
var GOT_data_internal_vtable_20for_20btCollisionWorld__ClosestConvexResultCallback = 110360;
|
|
var GOT_data_internal_vtable_20for_20cc__ccAllHitsConvexResultCallback = 110408;
|
|
var GOT_data_internal_vtable_20for_20btCollisionWorld__AllHitsConvexResultCallback = 110456;
|
|
var GOT_data_internal_vtable_20for_20btSphereShape = 99980;
|
|
var GOT_data_internal_vtable_20for_20cc__ccCompoundShape = 110480;
|
|
var GOT_data_internal_gDisableDeactivation = 116124;
|
|
var GOT_data_internal_vtable_20for_20btMotionState = 110580;
|
|
var GOT_data_internal_gDeactivationTime = 112848;
|
|
var GOT_func_internal_void_20const__20emscripten__internal__getActualType_btDebugDraw__28btDebugDraw__29 = 9;
|
|
var GOT_func_internal_void_20emscripten__internal__raw_destructor_btDebugDraw__28btDebugDraw__29 = 10;
|
|
var GOT_func_internal_void_20const__20emscripten__internal__getActualType_btDebugDrawWrapper__28btDebugDrawWrapper__29 = 11;
|
|
var GOT_func_internal_void_20emscripten__internal__raw_destructor_btDebugDrawWrapper__28btDebugDrawWrapper__29 = 12;
|
|
var GOT_func_internal_btDebugDrawWrapper__20emscripten__internal__wrapped_new_btDebugDrawWrapper__2c_20btDebugDrawWrapper_2c_20emscripten__val__28emscripten__val___29 = 13;
|
|
var GOT_func_internal_emscripten__internal__Invoker_btDebugDrawWrapper__2c_20emscripten__val_____invoke_28btDebugDrawWrapper__20_28__29_28emscripten__val___29_2c_20emscripten___EM_VAL__29 = 14;
|
|
var GOT_func_internal_emscripten__val_20emscripten__internal__wrapped_extend_btDebugDrawWrapper__28std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const__29 = 15;
|
|
var GOT_func_internal_emscripten__internal__Invoker_emscripten__val_2c_20std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const____invoke_28emscripten__val_20_28__29_28std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const__29_2c_20emscripten__internal__BindingType_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___2c_20void____unnamed___2c_20emscripten___EM_VAL__29 = 16;
|
|
var GOT_func_internal_void_20const__20emscripten__internal__getActualType_btControllerHitReport__28btControllerHitReport__29 = 17;
|
|
var GOT_func_internal_void_20emscripten__internal__raw_destructor_btControllerHitReport__28btControllerHitReport__29 = 18;
|
|
var GOT_func_internal_void_20const__20emscripten__internal__getActualType_btControllerHitReportWrapper__28btControllerHitReportWrapper__29 = 19;
|
|
var GOT_func_internal_void_20emscripten__internal__raw_destructor_btControllerHitReportWrapper__28btControllerHitReportWrapper__29 = 20;
|
|
var GOT_func_internal_btControllerHitReportWrapper__20emscripten__internal__wrapped_new_btControllerHitReportWrapper__2c_20btControllerHitReportWrapper_2c_20emscripten__val__28emscripten__val___29 = 21;
|
|
var GOT_func_internal_emscripten__internal__Invoker_btControllerHitReportWrapper__2c_20emscripten__val_____invoke_28btControllerHitReportWrapper__20_28__29_28emscripten__val___29_2c_20emscripten___EM_VAL__29 = 22;
|
|
var GOT_func_internal_emscripten__val_20emscripten__internal__wrapped_extend_btControllerHitReportWrapper__28std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const__29 = 23;
|
|
var GOT_func_internal_void_20const__20emscripten__internal__getActualType_cc__ccMotionState__28cc__ccMotionState__29 = 24;
|
|
var GOT_func_internal_void_20emscripten__internal__raw_destructor_cc__ccMotionState__28cc__ccMotionState__29 = 25;
|
|
var GOT_func_internal_void_20const__20emscripten__internal__getActualType_ccMotionStateWrapper__28ccMotionStateWrapper__29 = 26;
|
|
var GOT_func_internal_void_20emscripten__internal__raw_destructor_ccMotionStateWrapper__28ccMotionStateWrapper__29 = 27;
|
|
var GOT_func_internal_ccMotionStateWrapper__20emscripten__internal__wrapped_new_ccMotionStateWrapper__2c_20ccMotionStateWrapper_2c_20emscripten__val__28emscripten__val___29 = 28;
|
|
var GOT_func_internal_emscripten__internal__Invoker_ccMotionStateWrapper__2c_20emscripten__val_____invoke_28ccMotionStateWrapper__20_28__29_28emscripten__val___29_2c_20emscripten___EM_VAL__29 = 29;
|
|
var GOT_func_internal_emscripten__val_20emscripten__internal__wrapped_extend_ccMotionStateWrapper__28std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const__29 = 30;
|
|
var GOT_func_internal__malloc_28int_29 = 31;
|
|
var GOT_func_internal__free_28int_29 = 32;
|
|
var GOT_func_internal__read_f32_28int_29 = 33;
|
|
var GOT_func_internal__write_f32_28int_2c_20float_29 = 34;
|
|
var GOT_func_internal__safe_delete_28int_2c_20int_29 = 35;
|
|
var GOT_func_internal_Vec3_new_28float_2c_20float_2c_20float_29 = 36;
|
|
var GOT_func_internal_Vec3_x_28int_29 = 37;
|
|
var GOT_func_internal_Vec3_y_28int_29 = 38;
|
|
var GOT_func_internal_Vec3_z_28int_29 = 39;
|
|
var GOT_func_internal_Vec3_set_28int_2c_20float_2c_20float_2c_20float_29 = 40;
|
|
var GOT_func_internal_Quat_new_28float_2c_20float_2c_20float_2c_20float_29 = 41;
|
|
var GOT_func_internal_Quat_x_28int_29 = 42;
|
|
var GOT_func_internal_Quat_y_28int_29 = 43;
|
|
var GOT_func_internal_Quat_z_28int_29 = 44;
|
|
var GOT_func_internal_Quat_w_28int_29 = 45;
|
|
var GOT_func_internal_Quat_set_28int_2c_20float_2c_20float_2c_20float_2c_20float_29 = 46;
|
|
var GOT_func_internal_Transform_new_28_29 = 47;
|
|
var GOT_func_internal_Transform_setIdentity_28int_29 = 48;
|
|
var GOT_func_internal_Transform_setRotation_28int_2c_20int_29 = 49;
|
|
var GOT_func_internal_Transform_getOrigin_28int_29 = 50;
|
|
var GOT_func_internal_Transform_getRotation_28int_2c_20int_29 = 51;
|
|
var GOT_func_internal_Transform_getRotationAndOrigin_28int_2c_20int_29 = 52;
|
|
var GOT_func_internal_MotionState_getWorldTransform = 53;
|
|
var GOT_func_internal_MotionState_setWorldTransform = 54;
|
|
var GOT_func_internal_ccMotionState_setup = 55;
|
|
var GOT_func_internal_int_array_size_28int_29 = 56;
|
|
var GOT_func_internal_int_array_at_28int_2c_20int_29 = 57;
|
|
var GOT_func_internal_Vec3_array_at_28int_2c_20int_29 = 58;
|
|
var GOT_func_internal_TypedConstraint_getFixedBody_28_29 = 59;
|
|
var GOT_func_internal_TypedConstraint_getDbgDrawSize_28int_29 = 60;
|
|
var GOT_func_internal_TypedConstraint_setDbgDrawSize_28int_2c_20float_29 = 61;
|
|
var GOT_func_internal_TypedConstraint_setMaxImpulseThreshold_28int_2c_20float_29 = 62;
|
|
var GOT_func_internal_HingeConstraint_new_28int_2c_20int_2c_20int_2c_20int_29 = 63;
|
|
var GOT_func_internal_HingeConstraint_setFrames_28int_2c_20int_2c_20int_29 = 64;
|
|
var GOT_func_internal_HingeConstraint_setLimit_28int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float_29 = 65;
|
|
var GOT_func_internal_HingeConstraint_enableMotor_28int_2c_20bool_29 = 66;
|
|
var GOT_func_internal_HingeConstraint_setAngularOnly_28int_2c_20bool_29 = 67;
|
|
var GOT_func_internal_HingeConstraint_setMaxMotorImpulse_28int_2c_20float_29 = 68;
|
|
var GOT_func_internal_HingeConstraint_setMotorTarget_28int_2c_20float_2c_20float_29 = 69;
|
|
var GOT_func_internal_HingeConstraint_setMotorVelocity_28int_2c_20float_29 = 70;
|
|
var GOT_func_internal_P2PConstraint_new_28int_2c_20int_2c_20int_2c_20int_29 = 71;
|
|
var GOT_func_internal_P2PConstraint_setPivotA_28int_2c_20int_29 = 72;
|
|
var GOT_func_internal_P2PConstraint_setPivotB_28int_2c_20int_29 = 73;
|
|
var GOT_func_internal_FixedConstraint_new_28int_2c_20int_2c_20int_2c_20int_29 = 74;
|
|
var GOT_func_internal_FixedConstraint_setFrames_28int_2c_20int_2c_20int_29 = 75;
|
|
var GOT_func_internal_Generic6DofSpring2Constraint_new_28int_2c_20int_2c_20int_2c_20int_2c_20int_29 = 76;
|
|
var GOT_func_internal_Generic6DofSpring2Constraint_setFrames_28int_2c_20int_2c_20int_29 = 77;
|
|
var GOT_func_internal_Generic6DofSpring2Constraint_setLimit_28int_2c_20int_2c_20float_2c_20float_29 = 78;
|
|
var GOT_func_internal_Generic6DofSpring2Constraint_enableSpring_28int_2c_20int_2c_20bool_29 = 79;
|
|
var GOT_func_internal_Generic6DofSpring2Constraint_setStiffness_28int_2c_20int_2c_20float_29 = 80;
|
|
var GOT_func_internal_Generic6DofSpring2Constraint_setDamping_28int_2c_20int_2c_20float_29 = 81;
|
|
var GOT_func_internal_Generic6DofSpring2Constraint_setBounce_28int_2c_20int_2c_20float_29 = 82;
|
|
var GOT_func_internal_Generic6DofSpring2Constraint_setEquilibriumPoint_28int_2c_20int_2c_20float_29 = 83;
|
|
var GOT_func_internal_Generic6DofSpring2Constraint_enableMotor_28int_2c_20int_2c_20bool_29 = 84;
|
|
var GOT_func_internal_Generic6DofSpring2Constraint_setMaxMotorForce_28int_2c_20int_2c_20float_29 = 85;
|
|
var GOT_func_internal_Generic6DofSpring2Constraint_setTargetVelocity_28int_2c_20int_2c_20float_29 = 86;
|
|
var GOT_func_internal_Generic6DofSpring2Constraint_setServo_28int_2c_20int_2c_20bool_29 = 87;
|
|
var GOT_func_internal_Generic6DofSpring2Constraint_setServoTarget_28int_2c_20int_2c_20float_29 = 88;
|
|
var GOT_func_internal_CollisionShape_isCompound_28int_29 = 89;
|
|
var GOT_func_internal_CollisionShape_setLocalScaling_28int_2c_20int_29 = 90;
|
|
var GOT_func_internal_CollisionShape_calculateLocalInertia_28int_2c_20float_2c_20int_29 = 91;
|
|
var GOT_func_internal_CollisionShape_getAabb_28int_2c_20int_2c_20int_2c_20int_29 = 92;
|
|
var GOT_func_internal_CollisionShape_setMargin_28int_2c_20float_29 = 93;
|
|
var GOT_func_internal_CollisionShape_setMaterial_28int_2c_20int_29 = 94;
|
|
var GOT_func_internal_CollisionShape_setUserPointer_28int_2c_20int_29 = 95;
|
|
var GOT_func_internal_EmptyShape_static_28_29 = 96;
|
|
var GOT_func_internal_ConvexInternalShape_getImplicitShapeDimensions_28int_29 = 97;
|
|
var GOT_func_internal_BoxShape_new_28int_29 = 98;
|
|
var GOT_func_internal_BoxShape_setUnscaledHalfExtents_28int_2c_20int_29 = 99;
|
|
var GOT_func_internal_SphereShape_new_28float_29 = 100;
|
|
var GOT_func_internal_SphereShape_setUnscaledRadius_28int_2c_20float_29 = 101;
|
|
var GOT_func_internal_CylinderShape_new_28int_29 = 102;
|
|
var GOT_func_internal_CylinderShape_updateProp_28int_2c_20float_2c_20float_2c_20int_29 = 103;
|
|
var GOT_func_internal_CapsuleShape_new_28float_2c_20float_29 = 104;
|
|
var GOT_func_internal_CapsuleShape_updateProp_28int_2c_20float_2c_20float_2c_20int_29 = 105;
|
|
var GOT_func_internal_ConeShape_new_28float_2c_20float_29 = 106;
|
|
var GOT_func_internal_ConeShape_setRadius_28int_2c_20float_29 = 107;
|
|
var GOT_func_internal_ConeShape_setHeight_28int_2c_20float_29 = 108;
|
|
var GOT_func_internal_ConeShape_setConeUpIndex_28int_2c_20int_29 = 109;
|
|
var GOT_func_internal_StaticPlaneShape_new_28int_2c_20float_29 = 110;
|
|
var GOT_func_internal_StaticPlaneShape_getPlaneNormal_28int_29 = 111;
|
|
var GOT_func_internal_StaticPlaneShape_setPlaneConstant_28int_2c_20float_29 = 112;
|
|
var GOT_func_internal_TerrainShape_new_28int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29 = 113;
|
|
var GOT_func_internal_TriangleMesh_new_28_29 = 114;
|
|
var GOT_func_internal_TriangleMesh_addTriangle_28int_2c_20int_2c_20int_2c_20int_2c_20bool_29 = 115;
|
|
var GOT_func_internal_BvhTriangleMeshShape_new_28int_2c_20bool_2c_20bool_29 = 116;
|
|
var GOT_func_internal_BvhTriangleMeshShape_getOptimizedBvh_28int_29 = 117;
|
|
var GOT_func_internal_BvhTriangleMeshShape_setOptimizedBvh_28int_2c_20int_2c_20float_2c_20float_2c_20float_29 = 118;
|
|
var GOT_func_internal_ScaledBvhTriangleMeshShape_new_28int_2c_20float_2c_20float_2c_20float_29 = 119;
|
|
var GOT_func_internal_ConvexTriangleMeshShape_new_28int_29 = 120;
|
|
var GOT_func_internal_SimplexShape_new_28_29 = 121;
|
|
var GOT_func_internal_SimplexShape_addVertex_28int_2c_20int_29 = 122;
|
|
var GOT_func_internal_ccCompoundShape_new_28_29 = 123;
|
|
var GOT_func_internal_CompoundShape_getNumChildShapes_28int_29 = 124;
|
|
var GOT_func_internal_CompoundShape_addChildShape_28int_2c_20int_2c_20int_29 = 125;
|
|
var GOT_func_internal_CompoundShape_getChildShape_28int_2c_20int_29 = 126;
|
|
var GOT_func_internal_CompoundShape_removeChildShape_28int_2c_20int_29 = 127;
|
|
var GOT_func_internal_CompoundShape_updateChildTransform_28int_2c_20int_2c_20int_2c_20bool_29 = 128;
|
|
var GOT_func_internal_CollisionObject_new_28_29 = 129;
|
|
var GOT_func_internal_CollisionObject_getCollisionShape_28int_29 = 130;
|
|
var GOT_func_internal_CollisionObject_setCollisionShape_28int_2c_20int_29 = 131;
|
|
var GOT_func_internal_CollisionObject_setContactProcessingThreshold_28int_2c_20int_29 = 132;
|
|
var GOT_func_internal_CollisionObject_isSleeping_28int_29 = 133;
|
|
var GOT_func_internal_CollisionObject_getActivationState_28int_29 = 134;
|
|
var GOT_func_internal_CollisionObject_forceActivationState_28int_2c_20int_29 = 135;
|
|
var GOT_func_internal_CollisionObject_activate_28int_2c_20bool_29 = 136;
|
|
var GOT_func_internal_CollisionObject_isActive_28int_29 = 137;
|
|
var GOT_func_internal_CollisionObject_isKinematicObject_28int_29 = 138;
|
|
var GOT_func_internal_CollisionObject_isStaticObject_28int_29 = 139;
|
|
var GOT_func_internal_CollisionObject_isStaticOrKinematicObject_28int_29 = 140;
|
|
var GOT_func_internal_CollisionObject_getWorldTransform_28int_29 = 141;
|
|
var GOT_func_internal_CollisionObject_setCollisionFlags_28int_2c_20int_29 = 142;
|
|
var GOT_func_internal_CollisionObject_getCollisionFlags_28int_29 = 143;
|
|
var GOT_func_internal_CollisionObject_setCcdMotionThreshold_28int_2c_20float_29 = 144;
|
|
var GOT_func_internal_CollisionObject_setCcdSweptSphereRadius_28int_2c_20float_29 = 145;
|
|
var GOT_func_internal_CollisionObject_setUserIndex_28int_2c_20int_29 = 146;
|
|
var GOT_func_internal_CollisionObject_getUserIndex_28int_29 = 147;
|
|
var GOT_func_internal_CollisionObject_setMaterial_28int_2c_20float_2c_20float_2c_20float_2c_20float_29 = 148;
|
|
var GOT_func_internal_CollisionObject_setIgnoreCollisionCheck_28int_2c_20int_2c_20bool_29 = 149;
|
|
var GOT_func_internal_RigidBody_new_28float_2c_20int_29 = 150;
|
|
var GOT_func_internal_RigidBody_getFlags_28int_29 = 151;
|
|
var GOT_func_internal_RigidBody_setFlags_28int_2c_20int_29 = 152;
|
|
var GOT_func_internal_RigidBody_setGravity_28int_2c_20int_29 = 153;
|
|
var GOT_func_internal_RigidBody_setDamping_28int_2c_20float_2c_20float_29 = 154;
|
|
var GOT_func_internal_RigidBody_setMass_28int_2c_20float_29 = 155;
|
|
var GOT_func_internal_RigidBody_setMassProps_28int_2c_20float_2c_20int_29 = 156;
|
|
var GOT_func_internal_RigidBody_setLinearFactor_28int_2c_20int_29 = 157;
|
|
var GOT_func_internal_RigidBody_setAngularFactor_28int_2c_20int_29 = 158;
|
|
var GOT_func_internal_RigidBody_setLinearVelocity_28int_2c_20int_29 = 159;
|
|
var GOT_func_internal_RigidBody_getLinearVelocity_28int_29 = 160;
|
|
var GOT_func_internal_RigidBody_setAngularVelocity_28int_2c_20int_29 = 161;
|
|
var GOT_func_internal_RigidBody_getAngularVelocity_28int_29 = 162;
|
|
var GOT_func_internal_RigidBody_clearState_28int_29 = 163;
|
|
var GOT_func_internal_RigidBody_clearForces_28int_29 = 164;
|
|
var GOT_func_internal_RigidBody_wantsSleeping_28int_29 = 165;
|
|
var GOT_func_internal_RigidBody_setSleepingThresholds_28int_2c_20float_2c_20float_29 = 166;
|
|
var GOT_func_internal_RigidBody_getLinearSleepingThreshold_28int_29 = 167;
|
|
var GOT_func_internal_RigidBody_getMotionState_28int_29 = 168;
|
|
var GOT_func_internal_RigidBody_applyTorque_28int_2c_20int_29 = 169;
|
|
var GOT_func_internal_RigidBody_applyForce_28int_2c_20int_2c_20int_29 = 170;
|
|
var GOT_func_internal_RigidBody_applyImpulse_28int_2c_20int_2c_20int_29 = 171;
|
|
var GOT_func_internal_RigidBody_getWorldTransform_28int_2c_20int_29 = 172;
|
|
var GOT_func_internal_DefaultCollisionConfiguration_static_28_29 = 173;
|
|
var GOT_func_internal_CollisionDispatcher_new_28_29 = 174;
|
|
var GOT_func_internal_Dispatcher_getNumManifolds_28int_29 = 175;
|
|
var GOT_func_internal_Dispatcher_getManifoldByIndexInternal_28int_2c_20int_29 = 176;
|
|
var GOT_func_internal_ManifoldPoint_getShape0_28int_29 = 177;
|
|
var GOT_func_internal_ManifoldPoint_getShape1_28int_29 = 178;
|
|
var GOT_func_internal_ManifoldPoint_get_m_index0_28int_29 = 179;
|
|
var GOT_func_internal_ManifoldPoint_get_m_index1_28int_29 = 180;
|
|
var GOT_func_internal_PersistentManifold_getBody0_28int_29 = 181;
|
|
var GOT_func_internal_PersistentManifold_getBody1_28int_29 = 182;
|
|
var GOT_func_internal_PersistentManifold_getNumContacts_28int_29 = 183;
|
|
var GOT_func_internal_PersistentManifold_getContactPoint_28int_2c_20int_29 = 184;
|
|
var GOT_func_internal_ManifoldPoint_get_m_localPointA_28int_29 = 185;
|
|
var GOT_func_internal_ManifoldPoint_get_m_localPointB_28int_29 = 186;
|
|
var GOT_func_internal_ManifoldPoint_get_m_positionWorldOnA_28int_29 = 187;
|
|
var GOT_func_internal_ManifoldPoint_get_m_positionWorldOnB_28int_29 = 188;
|
|
var GOT_func_internal_ManifoldPoint_get_m_normalWorldOnB_28int_29 = 189;
|
|
var GOT_func_internal_DbvtBroadphase_new_28_29 = 190;
|
|
var GOT_func_internal_SequentialImpulseConstraintSolver_new_28_29 = 191;
|
|
var GOT_func_internal_CollisionWorld_addCollisionObject_28int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int_29 = 192;
|
|
var GOT_func_internal_CollisionWorld_removeCollisionObject_28int_2c_20int_29 = 193;
|
|
var GOT_func_internal_CollisionWorld_rayTest_28int_2c_20int_2c_20int_2c_20int_29 = 194;
|
|
var GOT_func_internal_CollisionWorld_convexSweepTest_28int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float_29 = 195;
|
|
var GOT_func_internal_CollisionWorld_setDebugDrawer_28int_2c_20int_29 = 196;
|
|
var GOT_func_internal_CollisionWorld_debugDrawWorld_28int_29 = 197;
|
|
var GOT_func_internal_ccDiscreteDynamicsWorld_new_28int_2c_20int_2c_20int_29 = 198;
|
|
var GOT_func_internal_ccDiscreteDynamicsWorld_setAllowSleep_28int_2c_20bool_29 = 199;
|
|
var GOT_func_internal_DynamicsWorld_setGravity_28int_2c_20int_29 = 200;
|
|
var GOT_func_internal_DynamicsWorld_stepSimulation_28int_2c_20float_2c_20int_2c_20float_29 = 201;
|
|
var GOT_func_internal_DynamicsWorld_addRigidBody_28int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int_29 = 202;
|
|
var GOT_func_internal_DynamicsWorld_removeRigidBody_28int_2c_20int_29 = 203;
|
|
var GOT_func_internal_DynamicsWorld_addConstraint_28int_2c_20int_2c_20bool_29 = 204;
|
|
var GOT_func_internal_DynamicsWorld_removeConstraint_28int_2c_20int_29 = 205;
|
|
var GOT_func_internal_DynamicsWorld_addAction_28int_2c_20int_29 = 206;
|
|
var GOT_func_internal_DynamicsWorld_removeAction_28int_2c_20int_29 = 207;
|
|
var GOT_func_internal_DebugDraw_setDebugMode_28int_2c_20int_29 = 208;
|
|
var GOT_func_internal_DebugDraw_getDebugMode_28int_29 = 209;
|
|
var GOT_func_internal_DebugDraw_setActiveObjectColor_28int_2c_20float_2c_20float_2c_20float_29 = 210;
|
|
var GOT_func_internal_DebugDraw_setDeactiveObjectColor_28int_2c_20float_2c_20float_2c_20float_29 = 211;
|
|
var GOT_func_internal_DebugDraw_setWantsDeactivationObjectColor_28int_2c_20float_2c_20float_2c_20float_29 = 212;
|
|
var GOT_func_internal_DebugDraw_setDisabledDeactivationObjectColor_28int_2c_20float_2c_20float_2c_20float_29 = 213;
|
|
var GOT_func_internal_DebugDraw_setDisabledSimulationObjectColor_28int_2c_20float_2c_20float_2c_20float_29 = 214;
|
|
var GOT_func_internal_DebugDraw_setAABBColor_28int_2c_20float_2c_20float_2c_20float_29 = 215;
|
|
var GOT_func_internal_DebugDraw_setContactPointColor_28int_2c_20float_2c_20float_2c_20float_29 = 216;
|
|
var GOT_func_internal_DebugDraw_setConstraintLimitColor_28int_2c_20float_2c_20float_2c_20float_29 = 217;
|
|
var GOT_func_internal_RayCallback_hasHit_28int_29 = 218;
|
|
var GOT_func_internal_ConvexCallback_hasHit_28int_29 = 219;
|
|
var GOT_func_internal_ccAllRayCallback_static_28_29 = 220;
|
|
var GOT_func_internal_ccAllRayCallback_setFlags_28int_2c_20int_29 = 221;
|
|
var GOT_func_internal_ccAllRayCallback_reset_28int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29 = 222;
|
|
var GOT_func_internal_ccAllRayCallback_getHitPointWorld_28int_29 = 223;
|
|
var GOT_func_internal_ccAllRayCallback_getHitNormalWorld_28int_29 = 224;
|
|
var GOT_func_internal_ccAllRayCallback_getCollisionShapePtrs_28int_29 = 225;
|
|
var GOT_func_internal_ccClosestRayCallback_static_28_29 = 226;
|
|
var GOT_func_internal_ccClosestRayCallback_setFlags_28int_2c_20int_29 = 227;
|
|
var GOT_func_internal_ccClosestRayCallback_reset_28int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29 = 228;
|
|
var GOT_func_internal_ccClosestRayCallback_getHitPointWorld_28int_29 = 229;
|
|
var GOT_func_internal_ccClosestRayCallback_getHitNormalWorld_28int_29 = 230;
|
|
var GOT_func_internal_ccClosestRayCallback_getCollisionShapePtr_28int_29 = 231;
|
|
var GOT_func_internal_ccAllConvexCallback_static_28_29 = 232;
|
|
var GOT_func_internal_ccAllConvexCallback_reset_28int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29 = 233;
|
|
var GOT_func_internal_ccAllConvexCallback_getHitPointWorld_28int_29 = 234;
|
|
var GOT_func_internal_ccAllConvexCallback_getHitNormalWorld_28int_29 = 235;
|
|
var GOT_func_internal_ccAllConvexCallback_getCollisionShapePtrs_28int_29 = 236;
|
|
var GOT_func_internal_ccClosestConvexCallback_static_28_29 = 237;
|
|
var GOT_func_internal_ccClosestConvexCallback_reset_28int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29 = 238;
|
|
var GOT_func_internal_ccClosestConvexCallback_getHitPointWorld_28int_29 = 239;
|
|
var GOT_func_internal_ccClosestConvexCallback_getHitNormalWorld_28int_29 = 240;
|
|
var GOT_func_internal_ccClosestConvexCallback_getCollisionShapePtr_28int_29 = 241;
|
|
var GOT_func_internal_ccMaterial_new_28_29 = 242;
|
|
var GOT_func_internal_ccMaterial_set_28int_2c_20float_2c_20float_2c_20float_2c_20float_29 = 243;
|
|
var GOT_func_internal_CharacterController_getGhostObject = 244;
|
|
var GOT_func_internal_CharacterController_getCollisionShape = 245;
|
|
var GOT_func_internal_ControllerHit_getHitWorldPos = 246;
|
|
var GOT_func_internal_ControllerHit_getHitWorldNormal = 247;
|
|
var GOT_func_internal_ControllerHit_getHitMotionDir = 248;
|
|
var GOT_func_internal_ControllerHit_getHitMotionLength = 249;
|
|
var GOT_func_internal_ControllerShapeHit_getHitShape = 250;
|
|
var GOT_func_internal_ControllerShapeHit_getHitCollisionObject = 251;
|
|
var GOT_func_internal_CharacterController_move = 252;
|
|
var GOT_func_internal_CharacterController_getPosition = 253;
|
|
var GOT_func_internal_CharacterController_setContactOffset = 254;
|
|
var GOT_func_internal_CharacterController_setStepOffset = 255;
|
|
var GOT_func_internal_CharacterController_setSlopeLimit = 256;
|
|
var GOT_func_internal_CharacterController_setCollision = 257;
|
|
var GOT_func_internal_CharacterController_setOverlapRecovery = 258;
|
|
var GOT_func_internal_CapsuleCharacterControllerDesc_new = 259;
|
|
var GOT_func_internal_CapsuleCharacterController_new = 260;
|
|
var GOT_func_internal_CapsuleCharacterController_setRadius = 261;
|
|
var GOT_func_internal_CapsuleCharacterController_setHeight = 262;
|
|
var GOT_func_internal_BoxCharacterControllerDesc_new = 263;
|
|
var GOT_func_internal_BoxCharacterController_new = 264;
|
|
var GOT_func_internal_BoxCharacterController_setHalfHeight = 265;
|
|
var GOT_func_internal_BoxCharacterController_setHalfSideExtent = 266;
|
|
var GOT_func_internal_BoxCharacterController_setHalfForwardExtent = 267;
|
|
var GOT_data_internal_vtable_20for_20btCollisionWorld__RayResultCallback = 110208;
|
|
var GOT_data_internal_vtable_20for_20btCollisionWorld__ConvexResultCallback = 110384;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int__28_29__signature = 89172;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void__28_29__signature = 89175;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int__28_29__signature = 89177;
|
|
var GOT_func_internal_emscripten__internal__MethodInvoker_void_20_28btIDebugDraw____29_28_29_2c_20void_2c_20btIDebugDraw____invoke_28void_20_28btIDebugDraw____20const__29_28_29_2c_20btIDebugDraw__29 = 268;
|
|
var GOT_func_internal_emscripten__internal__MethodInvoker_void_20_28btDebugDraw____29_28int_2c_20int_2c_20int_29_2c_20void_2c_20btDebugDraw__2c_20int_2c_20int_2c_20int___invoke_28void_20_28btDebugDraw____20const__29_28int_2c_20int_2c_20int_29_2c_20btDebugDraw__2c_20int_2c_20int_2c_20int_29 = 269;
|
|
var GOT_func_internal_btDebugDraw__20emscripten__base_btDebugDraw___convertPointer_btDebugDrawWrapper_2c_20btDebugDraw__28btDebugDrawWrapper__29 = 270;
|
|
var GOT_func_internal_btDebugDrawWrapper__20emscripten__base_btDebugDraw___convertPointer_btDebugDraw_2c_20btDebugDrawWrapper__28btDebugDraw__29 = 271;
|
|
var GOT_func_internal_emscripten__class__btDebugDraw_2c_20emscripten__internal__NoBaseClass__20const__20emscripten__class__btDebugDraw_2c_20emscripten__internal__NoBaseClass___allow_subclass_btDebugDrawWrapper__28char_20const__2c_20emscripten__constructor___29_20const___lambda__28btDebugDrawWrapper__29____invoke_28btDebugDrawWrapper__29 = 272;
|
|
var GOT_func_internal_emscripten__internal__FunctionInvoker_void_20_28__29_28btDebugDrawWrapper__29_2c_20void_2c_20btDebugDrawWrapper____invoke_28void_20_28___29_28btDebugDrawWrapper__29_2c_20btDebugDrawWrapper__29 = 273;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int__28_29__signature = 89367;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int__28_29__signature = 89434;
|
|
var GOT_func_internal_emscripten__internal__MethodInvoker_void_20_28btControllerHitReport____29_28int_2c_20int_29_2c_20void_2c_20btControllerHitReport__2c_20int_2c_20int___invoke_28void_20_28btControllerHitReport____20const__29_28int_2c_20int_29_2c_20btControllerHitReport__2c_20int_2c_20int_29 = 274;
|
|
var GOT_func_internal_btControllerHitReport__20emscripten__base_btControllerHitReport___convertPointer_btControllerHitReportWrapper_2c_20btControllerHitReport__28btControllerHitReportWrapper__29 = 275;
|
|
var GOT_func_internal_btControllerHitReportWrapper__20emscripten__base_btControllerHitReport___convertPointer_btControllerHitReport_2c_20btControllerHitReportWrapper__28btControllerHitReport__29 = 276;
|
|
var GOT_func_internal_emscripten__class__btControllerHitReport_2c_20emscripten__internal__NoBaseClass__20const__20emscripten__class__btControllerHitReport_2c_20emscripten__internal__NoBaseClass___allow_subclass_btControllerHitReportWrapper__28char_20const__2c_20emscripten__constructor___29_20const___lambda__28btControllerHitReportWrapper__29____invoke_28btControllerHitReportWrapper__29 = 277;
|
|
var GOT_func_internal_emscripten__internal__FunctionInvoker_void_20_28__29_28btControllerHitReportWrapper__29_2c_20void_2c_20btControllerHitReportWrapper____invoke_28void_20_28___29_28btControllerHitReportWrapper__29_2c_20btControllerHitReportWrapper__29 = 278;
|
|
var GOT_func_internal_emscripten__internal__MethodInvoker_void_20_28cc__ccMotionState____29_28int_29_2c_20void_2c_20cc__ccMotionState__2c_20int___invoke_28void_20_28cc__ccMotionState____20const__29_28int_29_2c_20cc__ccMotionState__2c_20int_29 = 279;
|
|
var GOT_func_internal_cc__ccMotionState__20emscripten__base_cc__ccMotionState___convertPointer_ccMotionStateWrapper_2c_20cc__ccMotionState__28ccMotionStateWrapper__29 = 280;
|
|
var GOT_func_internal_ccMotionStateWrapper__20emscripten__base_cc__ccMotionState___convertPointer_cc__ccMotionState_2c_20ccMotionStateWrapper__28cc__ccMotionState__29 = 281;
|
|
var GOT_func_internal_emscripten__class__cc__ccMotionState_2c_20emscripten__internal__NoBaseClass__20const__20emscripten__class__cc__ccMotionState_2c_20emscripten__internal__NoBaseClass___allow_subclass_ccMotionStateWrapper__28char_20const__2c_20emscripten__constructor___29_20const___lambda__28ccMotionStateWrapper__29____invoke_28ccMotionStateWrapper__29 = 282;
|
|
var GOT_func_internal_emscripten__internal__FunctionInvoker_void_20_28__29_28ccMotionStateWrapper__29_2c_20void_2c_20ccMotionStateWrapper____invoke_28void_20_28___29_28ccMotionStateWrapper__29_2c_20ccMotionStateWrapper__29 = 283;
|
|
var GOT_func_internal_emscripten__internal__Invoker_int_2c_20int___invoke_28int_20_28__29_28int_29_2c_20int_29 = 284;
|
|
var GOT_func_internal_emscripten__internal__Invoker_void_2c_20int___invoke_28void_20_28__29_28int_29_2c_20int_29 = 285;
|
|
var GOT_func_internal_emscripten__internal__Invoker_float_2c_20int___invoke_28float_20_28__29_28int_29_2c_20int_29 = 286;
|
|
var GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20float___invoke_28void_20_28__29_28int_2c_20float_29_2c_20int_2c_20float_29 = 287;
|
|
var GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20int___invoke_28void_20_28__29_28int_2c_20int_29_2c_20int_2c_20int_29 = 288;
|
|
var GOT_func_internal_emscripten__internal__Invoker_int_2c_20float_2c_20float_2c_20float___invoke_28int_20_28__29_28float_2c_20float_2c_20float_29_2c_20float_2c_20float_2c_20float_29 = 289;
|
|
var GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20float_2c_20float___invoke_28void_20_28__29_28int_2c_20float_2c_20float_2c_20float_29_2c_20int_2c_20float_2c_20float_2c_20float_29 = 290;
|
|
var GOT_func_internal_emscripten__internal__Invoker_int_2c_20float_2c_20float_2c_20float_2c_20float___invoke_28int_20_28__29_28float_2c_20float_2c_20float_2c_20float_29_2c_20float_2c_20float_2c_20float_2c_20float_29 = 291;
|
|
var GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float___invoke_28void_20_28__29_28int_2c_20float_2c_20float_2c_20float_2c_20float_29_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_29 = 292;
|
|
var GOT_func_internal_emscripten__internal__Invoker_int___invoke_28int_20_28__29_28_29_29 = 293;
|
|
var GOT_func_internal_emscripten__internal__Invoker_int_2c_20int_2c_20int___invoke_28int_20_28__29_28int_2c_20int_29_2c_20int_2c_20int_29 = 294;
|
|
var GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20int___invoke_28void_20_28__29_28int_2c_20int_2c_20int_29_2c_20int_2c_20int_2c_20int_29 = 295;
|
|
var GOT_func_internal_emscripten__internal__Invoker_int_2c_20int_2c_20int_2c_20int_2c_20int___invoke_28int_20_28__29_28int_2c_20int_2c_20int_2c_20int_29_2c_20int_2c_20int_2c_20int_2c_20int_29 = 296;
|
|
var GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float___invoke_28void_20_28__29_28int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float_29_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float_29 = 297;
|
|
var GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20bool___invoke_28void_20_28__29_28int_2c_20bool_29_2c_20int_2c_20bool_29 = 298;
|
|
var GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20float___invoke_28void_20_28__29_28int_2c_20float_2c_20float_29_2c_20int_2c_20float_2c_20float_29 = 299;
|
|
var GOT_func_internal_emscripten__internal__Invoker_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int___invoke_28int_20_28__29_28int_2c_20int_2c_20int_2c_20int_2c_20int_29_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_29 = 300;
|
|
var GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20float_2c_20float___invoke_28void_20_28__29_28int_2c_20int_2c_20float_2c_20float_29_2c_20int_2c_20int_2c_20float_2c_20float_29 = 301;
|
|
var GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20bool___invoke_28void_20_28__29_28int_2c_20int_2c_20bool_29_2c_20int_2c_20int_2c_20bool_29 = 302;
|
|
var GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20float___invoke_28void_20_28__29_28int_2c_20int_2c_20float_29_2c_20int_2c_20int_2c_20float_29 = 303;
|
|
var GOT_func_internal_emscripten__internal__Invoker_bool_2c_20int___invoke_28bool_20_28__29_28int_29_2c_20int_29 = 304;
|
|
var GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20int___invoke_28void_20_28__29_28int_2c_20float_2c_20int_29_2c_20int_2c_20float_2c_20int_29 = 305;
|
|
var GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20int_2c_20int___invoke_28void_20_28__29_28int_2c_20int_2c_20int_2c_20int_29_2c_20int_2c_20int_2c_20int_2c_20int_29 = 306;
|
|
var GOT_func_internal_emscripten__internal__Invoker_int_2c_20float___invoke_28int_20_28__29_28float_29_2c_20float_29 = 307;
|
|
var GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20float_2c_20int___invoke_28void_20_28__29_28int_2c_20float_2c_20float_2c_20int_29_2c_20int_2c_20float_2c_20float_2c_20int_29 = 308;
|
|
var GOT_func_internal_emscripten__internal__Invoker_int_2c_20float_2c_20float___invoke_28int_20_28__29_28float_2c_20float_29_2c_20float_2c_20float_29 = 309;
|
|
var GOT_func_internal_emscripten__internal__Invoker_int_2c_20int_2c_20float___invoke_28int_20_28__29_28int_2c_20float_29_2c_20int_2c_20float_29 = 310;
|
|
var GOT_func_internal_emscripten__internal__Invoker_int_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float___invoke_28int_20_28__29_28int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29 = 311;
|
|
var GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20bool___invoke_28void_20_28__29_28int_2c_20int_2c_20int_2c_20int_2c_20bool_29_2c_20int_2c_20int_2c_20int_2c_20int_2c_20bool_29 = 312;
|
|
var GOT_func_internal_emscripten__internal__Invoker_int_2c_20int_2c_20bool_2c_20bool___invoke_28int_20_28__29_28int_2c_20bool_2c_20bool_29_2c_20int_2c_20bool_2c_20bool_29 = 313;
|
|
var GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float___invoke_28void_20_28__29_28int_2c_20int_2c_20float_2c_20float_2c_20float_29_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29 = 314;
|
|
var GOT_func_internal_emscripten__internal__Invoker_int_2c_20int_2c_20float_2c_20float_2c_20float___invoke_28int_20_28__29_28int_2c_20float_2c_20float_2c_20float_29_2c_20int_2c_20float_2c_20float_2c_20float_29 = 315;
|
|
var GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20int_2c_20bool___invoke_28void_20_28__29_28int_2c_20int_2c_20int_2c_20bool_29_2c_20int_2c_20int_2c_20int_2c_20bool_29 = 316;
|
|
var GOT_func_internal_emscripten__internal__Invoker_int_2c_20float_2c_20int___invoke_28int_20_28__29_28float_2c_20int_29_2c_20float_2c_20int_29 = 317;
|
|
var GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int___invoke_28void_20_28__29_28int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int_29_2c_20int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int_29 = 318;
|
|
var GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float___invoke_28void_20_28__29_28int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float_29_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float_29 = 319;
|
|
var GOT_func_internal_emscripten__internal__Invoker_int_2c_20int_2c_20int_2c_20int___invoke_28int_20_28__29_28int_2c_20int_2c_20int_29_2c_20int_2c_20int_2c_20int_29 = 320;
|
|
var GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20int_2c_20float___invoke_28void_20_28__29_28int_2c_20float_2c_20int_2c_20float_29_2c_20int_2c_20float_2c_20int_2c_20float_29 = 321;
|
|
var GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool___invoke_28void_20_28__29_28int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29_2c_20int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29 = 322;
|
|
var GOT_func_internal_emscripten__internal__Invoker_int_2c_20int_2c_20int_2c_20float_2c_20float___invoke_28int_20_28__29_28int_2c_20int_2c_20float_2c_20float_29_2c_20int_2c_20int_2c_20float_2c_20float_29 = 323;
|
|
var GOT_func_internal_emscripten__internal__Invoker_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float___invoke_28int_20_28__29_28float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_29_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_29 = 324;
|
|
var GOT_func_internal_emscripten__internal__Invoker_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float___invoke_28int_20_28__29_28float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29 = 325;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int__28_29__signature = 89196;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_float_2c_20int_2c_20int__28_29__signature = 89880;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float__28_29__signature = 89884;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int__28_29__signature = 89758;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float_2c_20float_2c_20float__28_29__signature = 89889;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float__28_29__signature = 89895;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float__28_29__signature = 89902;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float__28_29__signature = 89909;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20int__28_29__signature = 89542;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int__28_29__signature = 89917;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float__28_29__signature = 89924;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20float__28_29__signature = 89933;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int__28_29__signature = 89939;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float__28_29__signature = 89947;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20float__28_29__signature = 89954;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20int__28_29__signature = 89960;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int__28_29__signature = 89200;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float__28_29__signature = 89966;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20int__28_29__signature = 89970;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float_2c_20float__28_29__signature = 89977;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20float__28_29__signature = 89982;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float__28_29__signature = 89987;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int__28_29__signature = 89996;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int_2c_20int__28_29__signature = 90004;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float__28_29__signature = 90010;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float__28_29__signature = 90018;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float_2c_20int__28_29__signature = 90025;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float__28_29__signature = 90030;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20int_2c_20float__28_29__signature = 90039;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float__28_29__signature = 90046;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float__28_29__signature = 90053;
|
|
var GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float__28_29__signature = 90064;
|
|
var GOT_data_internal_typeinfo_20for_20btDebugDraw = 110612;
|
|
var GOT_data_internal_typeinfo_20for_20btDebugDraw_ = 110624;
|
|
var GOT_data_internal_typeinfo_20for_20btDebugDraw_20const_ = 110640;
|
|
var GOT_data_internal_typeinfo_20for_20btIDebugDraw = 110604;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20emscripten__internal__AllowedRawPointer_btIDebugDraw_____get_28_29__types = 110656;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20emscripten__internal__AllowedRawPointer_btDebugDraw__2c_20int_2c_20int_2c_20int____get_28_29__types = 110688;
|
|
var GOT_data_internal_vtable_20for_20btDebugDrawWrapper = 110816;
|
|
var GOT_data_internal_typeinfo_20for_20btDebugDrawWrapper = 110748;
|
|
var GOT_data_internal_typeinfo_20for_20btDebugDrawWrapper_ = 110760;
|
|
var GOT_data_internal_typeinfo_20for_20btDebugDrawWrapper_20const_ = 110776;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20btDebugDrawWrapper_____get_28_29__types = 110792;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_emscripten__internal__AllowedRawPointer_btDebugDrawWrapper__2c_20emscripten__val______get_28_29__types = 110800;
|
|
var GOT_data_internal_vtable_20for_20emscripten__wrapper_btDebugDraw_ = 110936;
|
|
var GOT_data_internal_vtable_20for_20btDebugDraw = 111056;
|
|
var GOT_data_internal_vtable_20for_20btIDebugDraw = 111176;
|
|
var GOT_data_internal_guard_20variable_20for_20emscripten__internal__Signature_void___get_method_caller_28_29__mc = 113892;
|
|
var GOT_data_internal_emscripten__internal__Signature_void___get_method_caller_28_29__mc = 113888;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void____get_28_29__types = 111292;
|
|
var GOT_data_internal_guard_20variable_20for_20emscripten__internal__Signature_void_2c_20int_20const__2c_20int_20const__2c_20int____get_method_caller_28_29__mc = 113900;
|
|
var GOT_data_internal_emscripten__internal__Signature_void_2c_20int_20const__2c_20int_20const__2c_20int____get_method_caller_28_29__mc = 113896;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_20const__2c_20int_20const__2c_20int_____get_28_29__types = 111296;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_emscripten__val_2c_20std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const_____get_28_29__types = 111312;
|
|
var GOT_data_internal_typeinfo_20for_20btControllerHitReport = 111340;
|
|
var GOT_data_internal_typeinfo_20for_20btControllerHitReport_ = 111352;
|
|
var GOT_data_internal_typeinfo_20for_20btControllerHitReport_20const_ = 111368;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20emscripten__internal__AllowedRawPointer_btControllerHitReport__2c_20int_2c_20int____get_28_29__types = 111392;
|
|
var GOT_data_internal_vtable_20for_20btControllerHitReportWrapper = 111500;
|
|
var GOT_data_internal_typeinfo_20for_20btControllerHitReportWrapper = 111440;
|
|
var GOT_data_internal_typeinfo_20for_20btControllerHitReportWrapper_ = 111452;
|
|
var GOT_data_internal_typeinfo_20for_20btControllerHitReportWrapper_20const_ = 111468;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20btControllerHitReportWrapper_____get_28_29__types = 111484;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_emscripten__internal__AllowedRawPointer_btControllerHitReportWrapper__2c_20emscripten__val______get_28_29__types = 111492;
|
|
var GOT_data_internal_vtable_20for_20emscripten__wrapper_btControllerHitReport_ = 111528;
|
|
var GOT_data_internal_vtable_20for_20btControllerHitReport = 111556;
|
|
var GOT_data_internal_vtable_20for_20btUserControllerHitReport = 111584;
|
|
var GOT_data_internal_guard_20variable_20for_20emscripten__internal__Signature_void_2c_20int_20const__2c_20int_20const____get_method_caller_28_29__mc = 113908;
|
|
var GOT_data_internal_emscripten__internal__Signature_void_2c_20int_20const__2c_20int_20const____get_method_caller_28_29__mc = 113904;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_20const__2c_20int_20const_____get_28_29__types = 111608;
|
|
var GOT_data_internal_typeinfo_20for_20cc__ccMotionState = 111620;
|
|
var GOT_data_internal_typeinfo_20for_20cc__ccMotionState_ = 111632;
|
|
var GOT_data_internal_typeinfo_20for_20cc__ccMotionState_20const_ = 111648;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20emscripten__internal__AllowedRawPointer_cc__ccMotionState__2c_20int____get_28_29__types = 111664;
|
|
var GOT_data_internal_vtable_20for_20ccMotionStateWrapper = 111768;
|
|
var GOT_data_internal_typeinfo_20for_20ccMotionStateWrapper = 111708;
|
|
var GOT_data_internal_typeinfo_20for_20ccMotionStateWrapper_ = 111720;
|
|
var GOT_data_internal_typeinfo_20for_20ccMotionStateWrapper_20const_ = 111736;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20ccMotionStateWrapper_____get_28_29__types = 111752;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_emscripten__internal__AllowedRawPointer_ccMotionStateWrapper__2c_20emscripten__val______get_28_29__types = 111760;
|
|
var GOT_data_internal_vtable_20for_20emscripten__wrapper_cc__ccMotionState_ = 111796;
|
|
var GOT_data_internal_vtable_20for_20cc__ccMotionState = 111824;
|
|
var GOT_data_internal_guard_20variable_20for_20emscripten__internal__Signature_void_2c_20int_20const____get_method_caller_28_29__mc = 113916;
|
|
var GOT_data_internal_emscripten__internal__Signature_void_2c_20int_20const____get_method_caller_28_29__mc = 113912;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_20const_____get_28_29__types = 111852;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int____get_28_29__types = 111860;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int____get_28_29__types = 111868;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_float_2c_20int____get_28_29__types = 111876;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float____get_28_29__types = 111884;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int____get_28_29__types = 111896;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float_2c_20float_2c_20float____get_28_29__types = 111920;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20float_2c_20float____get_28_29__types = 111936;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float_2c_20float_2c_20float_2c_20float____get_28_29__types = 111968;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float____get_28_29__types = 112e3;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int____get_28_29__types = 112024;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20int____get_28_29__types = 112028;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20int____get_28_29__types = 112048;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20int_2c_20int_2c_20int____get_28_29__types = 112064;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float____get_28_29__types = 112096;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20bool____get_28_29__types = 112124;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20float____get_28_29__types = 112144;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int____get_28_29__types = 112160;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20float_2c_20float____get_28_29__types = 112192;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20bool____get_28_29__types = 112224;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20float____get_28_29__types = 112240;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_bool_2c_20int____get_28_29__types = 112256;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20int____get_28_29__types = 112272;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20int_2c_20int____get_28_29__types = 112288;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float____get_28_29__types = 112308;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20float_2c_20int____get_28_29__types = 112320;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float_2c_20float____get_28_29__types = 112340;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20float____get_28_29__types = 112352;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float____get_28_29__types = 112368;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20bool____get_28_29__types = 112400;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20bool_2c_20bool____get_28_29__types = 112432;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float____get_28_29__types = 112448;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20float_2c_20float_2c_20float____get_28_29__types = 112480;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20int_2c_20bool____get_28_29__types = 112512;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float_2c_20int____get_28_29__types = 112532;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int____get_28_29__types = 112544;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float____get_28_29__types = 112576;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20int_2c_20int____get_28_29__types = 112608;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20int_2c_20float____get_28_29__types = 112624;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool____get_28_29__types = 112656;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20int_2c_20float_2c_20float____get_28_29__types = 112688;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float____get_28_29__types = 112720;
|
|
var GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float____get_28_29__types = 112768;
|
|
var __wasm_intrinsics_temp_i64 = 0;
|
|
var __wasm_intrinsics_temp_i64$hi = 0;
|
|
var i64toi32_i32$HIGH_BITS = 0;
|
|
// EMSCRIPTEN_START_FUNCS
|
|
;
|
|
function __wasm_call_ctors() {
|
|
emscripten_stack_init();
|
|
_GLOBAL__sub_I_BulletWebBindings_cpp();
|
|
_GLOBAL__sub_I_btAlignedAllocator_cpp();
|
|
_GLOBAL__sub_I_btDbvt_cpp();
|
|
_GLOBAL__sub_I_btDbvtBroadphase_cpp();
|
|
_GLOBAL__sub_I_btQuickprof_cpp();
|
|
_GLOBAL__sub_I_btOverlappingPairCache_cpp();
|
|
_GLOBAL__sub_I_btDispatcher_cpp();
|
|
_GLOBAL__sub_I_btCollisionDispatcher_cpp();
|
|
_GLOBAL__sub_I_btCollisionObject_cpp();
|
|
_GLOBAL__sub_I_btCollisionWorld_cpp();
|
|
_GLOBAL__sub_I_btCollisionAlgorithm_cpp();
|
|
_GLOBAL__sub_I_btActivatingCollisionAlgorithm_cpp();
|
|
_GLOBAL__sub_I_btConvexConvexAlgorithm_cpp();
|
|
_GLOBAL__sub_I_btConvexConcaveCollisionAlgorithm_cpp();
|
|
_GLOBAL__sub_I_btCompoundCollisionAlgorithm_cpp();
|
|
_GLOBAL__sub_I_btCompoundCompoundCollisionAlgorithm_cpp();
|
|
_GLOBAL__sub_I_btBoxBoxDetector_cpp();
|
|
_GLOBAL__sub_I_btBoxBoxCollisionAlgorithm_cpp();
|
|
_GLOBAL__sub_I_btConvexPlaneCollisionAlgorithm_cpp();
|
|
_GLOBAL__sub_I_btDefaultCollisionConfiguration_cpp();
|
|
_GLOBAL__sub_I_btEmptyCollisionAlgorithm_cpp();
|
|
_GLOBAL__sub_I_btHashedSimplePairCache_cpp();
|
|
_GLOBAL__sub_I_btManifoldResult_cpp();
|
|
_GLOBAL__sub_I_btSphereSphereCollisionAlgorithm_cpp();
|
|
_GLOBAL__sub_I_btSphereTriangleCollisionAlgorithm_cpp();
|
|
_GLOBAL__sub_I_SphereTriangleDetector_cpp();
|
|
_GLOBAL__sub_I_btBoxShape_cpp();
|
|
_GLOBAL__sub_I_btQuantizedBvh_cpp();
|
|
_GLOBAL__sub_I_btBvhTriangleMeshShape_cpp();
|
|
_GLOBAL__sub_I_btCapsuleShape_cpp();
|
|
_GLOBAL__sub_I_btCollisionShape_cpp();
|
|
_GLOBAL__sub_I_btCompoundShape_cpp();
|
|
_GLOBAL__sub_I_btConeShape_cpp();
|
|
_GLOBAL__sub_I_btConvexInternalShape_cpp();
|
|
_GLOBAL__sub_I_btConvexShape_cpp();
|
|
_GLOBAL__sub_I_btConvexTriangleMeshShape_cpp();
|
|
_GLOBAL__sub_I_btCylinderShape_cpp();
|
|
_GLOBAL__sub_I_btConcaveShape_cpp();
|
|
_GLOBAL__sub_I_btEmptyShape_cpp();
|
|
_GLOBAL__sub_I_btHeightfieldTerrainShape_cpp();
|
|
_GLOBAL__sub_I_btOptimizedBvh_cpp();
|
|
_GLOBAL__sub_I_btConvexPolyhedron_cpp();
|
|
_GLOBAL__sub_I_btGeometryUtil_cpp();
|
|
_GLOBAL__sub_I_btConvexHullComputer_cpp();
|
|
_GLOBAL__sub_I_btPolyhedralConvexShape_cpp();
|
|
_GLOBAL__sub_I_btScaledBvhTriangleMeshShape_cpp();
|
|
_GLOBAL__sub_I_btSphereShape_cpp();
|
|
_GLOBAL__sub_I_btStaticPlaneShape_cpp();
|
|
_GLOBAL__sub_I_btTetrahedronShape_cpp();
|
|
_GLOBAL__sub_I_btTriangleCallback_cpp();
|
|
_GLOBAL__sub_I_btStridingMeshInterface_cpp();
|
|
_GLOBAL__sub_I_btTriangleIndexVertexArray_cpp();
|
|
_GLOBAL__sub_I_btTriangleMesh_cpp();
|
|
_GLOBAL__sub_I_btTriangleMeshShape_cpp();
|
|
_GLOBAL__sub_I_btContinuousConvexCollision_cpp();
|
|
_GLOBAL__sub_I_btConvexCast_cpp();
|
|
_GLOBAL__sub_I_btGjkConvexCast_cpp();
|
|
_GLOBAL__sub_I_btGjkEpa2_cpp();
|
|
_GLOBAL__sub_I_btGjkEpaPenetrationDepthSolver_cpp();
|
|
_GLOBAL__sub_I_btGjkPairDetector_cpp();
|
|
_GLOBAL__sub_I_btMinkowskiPenetrationDepthSolver_cpp();
|
|
_GLOBAL__sub_I_btPersistentManifold_cpp();
|
|
_GLOBAL__sub_I_btRaycastCallback_cpp();
|
|
_GLOBAL__sub_I_btSubSimplexConvexCast_cpp();
|
|
_GLOBAL__sub_I_btVoronoiSimplexSolver_cpp();
|
|
_GLOBAL__sub_I_btPolyhedralContactClipping_cpp();
|
|
_GLOBAL__sub_I_btFixedConstraint_cpp();
|
|
_GLOBAL__sub_I_btGeneric6DofSpring2Constraint_cpp();
|
|
_GLOBAL__sub_I_btHingeConstraint_cpp();
|
|
_GLOBAL__sub_I_btPoint2PointConstraint_cpp();
|
|
_GLOBAL__sub_I_btSequentialImpulseConstraintSolver_cpp();
|
|
_GLOBAL__sub_I_btTypedConstraint_cpp();
|
|
_GLOBAL__sub_I_btRigidBody_cpp();
|
|
_GLOBAL__sub_I_btUnionFind_cpp();
|
|
_GLOBAL__sub_I_btSimulationIslandManager_cpp();
|
|
_GLOBAL__sub_I_btConeTwistConstraint_cpp();
|
|
_GLOBAL__sub_I_btGeneric6DofConstraint_cpp();
|
|
_GLOBAL__sub_I_btDiscreteDynamicsWorld_cpp();
|
|
_GLOBAL__sub_I_ccDiscreteDynamicsWorld_cpp();
|
|
_GLOBAL__sub_I_ccCompoundShape_cpp();
|
|
_GLOBAL__sub_I_btGhostObject_cpp();
|
|
_GLOBAL__sub_I_btCharacterController_cpp();
|
|
_GLOBAL__sub_I_bind_cpp();
|
|
init_pthread_self();
|
|
}
|
|
|
|
function __cxx_global_var_init() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(GOT_data_internal___memory_base + 113168 | 0 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btInfMaskConverter__btInfMaskConverter_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function __cxx_global_var_init_1() {
|
|
var $1 = 0, $6 = 0, $13 = 0, $20 = 0;
|
|
$1 = GOT_data_internal___memory_base;
|
|
std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____basic_string_5babi_v160004_5d_std__nullptr_t__28char_20const__29($1 + 113184 | 0 | 0, $1 + 84159 | 0 | 0) | 0;
|
|
$6 = GOT_data_internal___memory_base;
|
|
std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____basic_string_5babi_v160004_5d_std__nullptr_t__28char_20const__29(($6 + 113184 | 0) + 12 | 0 | 0, $6 + 84426 | 0 | 0) | 0;
|
|
$13 = GOT_data_internal___memory_base;
|
|
std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____basic_string_5babi_v160004_5d_std__nullptr_t__28char_20const__29(($13 + 113184 | 0) + 24 | 0 | 0, $13 + 84257 | 0 | 0) | 0;
|
|
$20 = GOT_data_internal___memory_base;
|
|
std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____basic_string_5babi_v160004_5d_std__nullptr_t__28char_20const__29(($20 + 113184 | 0) + 36 | 0 | 0, $20 + 84028 | 0 | 0) | 0;
|
|
__cxa_atexit(GOT_data_internal___table_base + 0 | 0 | 0, 0 | 0, GOT_data_internal___memory_base + 65536 | 0 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____basic_string_5babi_v160004_5d_std__nullptr_t__28char_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
std____2____compressed_pair_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_20std____2__allocator_char______compressed_pair_5babi_v160004_5d_std____2____default_init_tag_2c_20std____2____default_init_tag__28std____2____default_init_tag___2c_20std____2____default_init_tag___29($5 | 0, $4 + 7 | 0 | 0, $4 + 6 | 0 | 0) | 0;
|
|
std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______init_28char_20const__2c_20unsigned_20long_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, std____2__char_traits_char___length_28char_20const__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
void_20std____2____debug_db_insert_c_5babi_v160004_5d_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____28std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____29($5 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function __cxx_global_array_dtor($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $12 = 0, $9 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$9 = (GOT_data_internal___memory_base + 113184 | 0) + 48 | 0;
|
|
label$1 : while (1) {
|
|
$12 = $9 + -12 | 0;
|
|
std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char_____basic_string_28_29($12 | 0) | 0;
|
|
$9 = $12;
|
|
if (!(($12 | 0) == (GOT_data_internal___memory_base + 113184 | 0 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function std____2____compressed_pair_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_20std____2__allocator_char______compressed_pair_5babi_v160004_5d_std____2____default_init_tag_2c_20std____2____default_init_tag__28std____2____default_init_tag___2c_20std____2____default_init_tag___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
std____2____compressed_pair_elem_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_200_2c_20false_____compressed_pair_elem_5babi_v160004_5d_28std____2____default_init_tag_29($6 | 0) | 0;
|
|
std____2____compressed_pair_elem_std____2__allocator_char__2c_201_2c_20true_____compressed_pair_elem_5babi_v160004_5d_28std____2____default_init_tag_29($6 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function std____2__char_traits_char___length_28char_20const__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = std____2____constexpr_strlen_5babi_v160004_5d_28char_20const__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function void_20std____2____debug_db_insert_c_5babi_v160004_5d_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____28std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____29($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return;
|
|
}
|
|
|
|
function _safe_delete_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $63 = 0, $81 = 0, $99 = 0, $117 = 0, $135 = 0, $153 = 0, $171 = 0, $189 = 0, $207 = 0, $225 = 0, $243 = 0, $261 = 0, $5 = 0, $15 = 0, $31 = 0, $47 = 0;
|
|
$4 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 76 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 72 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 72 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
switch ($5 | 0) {
|
|
case 0:
|
|
HEAP32[($4 + 68 | 0) >> 2] = HEAP32[($4 + 76 | 0) >> 2] | 0;
|
|
label$18 : {
|
|
if (!((HEAP32[($4 + 68 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$18
|
|
}
|
|
$15 = HEAP32[($4 + 68 | 0) >> 2] | 0;
|
|
label$19 : {
|
|
if (($15 | 0) == (0 | 0) & 1 | 0) {
|
|
break label$19
|
|
}
|
|
btVector3__operator_20delete_28void__29($15 | 0);
|
|
}
|
|
HEAP32[($4 + 68 | 0) >> 2] = 0;
|
|
}
|
|
break label$1;
|
|
case 1:
|
|
HEAP32[($4 + 64 | 0) >> 2] = HEAP32[($4 + 76 | 0) >> 2] | 0;
|
|
label$20 : {
|
|
if (!((HEAP32[($4 + 64 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$20
|
|
}
|
|
$31 = HEAP32[($4 + 64 | 0) >> 2] | 0;
|
|
label$21 : {
|
|
if (($31 | 0) == (0 | 0) & 1 | 0) {
|
|
break label$21
|
|
}
|
|
operator_20delete_28void__29($31 | 0);
|
|
}
|
|
HEAP32[($4 + 64 | 0) >> 2] = 0;
|
|
}
|
|
break label$1;
|
|
case 2:
|
|
HEAP32[($4 + 60 | 0) >> 2] = HEAP32[($4 + 76 | 0) >> 2] | 0;
|
|
label$22 : {
|
|
if (!((HEAP32[($4 + 60 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$22
|
|
}
|
|
$47 = HEAP32[($4 + 60 | 0) >> 2] | 0;
|
|
label$23 : {
|
|
if (($47 | 0) == (0 | 0) & 1 | 0) {
|
|
break label$23
|
|
}
|
|
operator_20delete_28void__29($47 | 0);
|
|
}
|
|
HEAP32[($4 + 60 | 0) >> 2] = 0;
|
|
}
|
|
break label$1;
|
|
case 3:
|
|
HEAP32[($4 + 56 | 0) >> 2] = HEAP32[($4 + 76 | 0) >> 2] | 0;
|
|
label$24 : {
|
|
if (!((HEAP32[($4 + 56 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$24
|
|
}
|
|
$63 = HEAP32[($4 + 56 | 0) >> 2] | 0;
|
|
label$25 : {
|
|
if (($63 | 0) == (0 | 0) & 1 | 0) {
|
|
break label$25
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$63 >> 2] | 0) + 4 | 0) >> 2] | 0 | 0]($63);
|
|
}
|
|
HEAP32[($4 + 56 | 0) >> 2] = 0;
|
|
}
|
|
break label$1;
|
|
case 4:
|
|
HEAP32[($4 + 52 | 0) >> 2] = HEAP32[($4 + 76 | 0) >> 2] | 0;
|
|
label$26 : {
|
|
if (!((HEAP32[($4 + 52 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$26
|
|
}
|
|
$81 = HEAP32[($4 + 52 | 0) >> 2] | 0;
|
|
label$27 : {
|
|
if (($81 | 0) == (0 | 0) & 1 | 0) {
|
|
break label$27
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$81 >> 2] | 0) + 4 | 0) >> 2] | 0 | 0]($81);
|
|
}
|
|
HEAP32[($4 + 52 | 0) >> 2] = 0;
|
|
}
|
|
break label$1;
|
|
case 5:
|
|
HEAP32[($4 + 48 | 0) >> 2] = HEAP32[($4 + 76 | 0) >> 2] | 0;
|
|
label$28 : {
|
|
if (!((HEAP32[($4 + 48 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$28
|
|
}
|
|
$99 = HEAP32[($4 + 48 | 0) >> 2] | 0;
|
|
label$29 : {
|
|
if (($99 | 0) == (0 | 0) & 1 | 0) {
|
|
break label$29
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$99 >> 2] | 0) + 4 | 0) >> 2] | 0 | 0]($99);
|
|
}
|
|
HEAP32[($4 + 48 | 0) >> 2] = 0;
|
|
}
|
|
break label$1;
|
|
case 7:
|
|
HEAP32[($4 + 44 | 0) >> 2] = HEAP32[($4 + 76 | 0) >> 2] | 0;
|
|
label$30 : {
|
|
if (!((HEAP32[($4 + 44 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$30
|
|
}
|
|
$117 = HEAP32[($4 + 44 | 0) >> 2] | 0;
|
|
label$31 : {
|
|
if (($117 | 0) == (0 | 0) & 1 | 0) {
|
|
break label$31
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$117 >> 2] | 0) + 4 | 0) >> 2] | 0 | 0]($117);
|
|
}
|
|
HEAP32[($4 + 44 | 0) >> 2] = 0;
|
|
}
|
|
break label$1;
|
|
case 8:
|
|
HEAP32[($4 + 40 | 0) >> 2] = HEAP32[($4 + 76 | 0) >> 2] | 0;
|
|
label$32 : {
|
|
if (!((HEAP32[($4 + 40 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$32
|
|
}
|
|
$135 = HEAP32[($4 + 40 | 0) >> 2] | 0;
|
|
label$33 : {
|
|
if (($135 | 0) == (0 | 0) & 1 | 0) {
|
|
break label$33
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$135 >> 2] | 0) + 4 | 0) >> 2] | 0 | 0]($135);
|
|
}
|
|
HEAP32[($4 + 40 | 0) >> 2] = 0;
|
|
}
|
|
break label$1;
|
|
case 9:
|
|
HEAP32[($4 + 36 | 0) >> 2] = HEAP32[($4 + 76 | 0) >> 2] | 0;
|
|
label$34 : {
|
|
if (!((HEAP32[($4 + 36 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$34
|
|
}
|
|
$153 = HEAP32[($4 + 36 | 0) >> 2] | 0;
|
|
label$35 : {
|
|
if (($153 | 0) == (0 | 0) & 1 | 0) {
|
|
break label$35
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$153 >> 2] | 0) + 4 | 0) >> 2] | 0 | 0]($153);
|
|
}
|
|
HEAP32[($4 + 36 | 0) >> 2] = 0;
|
|
}
|
|
break label$1;
|
|
case 10:
|
|
HEAP32[($4 + 32 | 0) >> 2] = HEAP32[($4 + 76 | 0) >> 2] | 0;
|
|
label$36 : {
|
|
if (!((HEAP32[($4 + 32 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$36
|
|
}
|
|
$171 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
label$37 : {
|
|
if (($171 | 0) == (0 | 0) & 1 | 0) {
|
|
break label$37
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$171 >> 2] | 0) + 4 | 0) >> 2] | 0 | 0]($171);
|
|
}
|
|
HEAP32[($4 + 32 | 0) >> 2] = 0;
|
|
}
|
|
break label$1;
|
|
case 11:
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 76 | 0) >> 2] | 0;
|
|
label$38 : {
|
|
if (!((HEAP32[($4 + 28 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$38
|
|
}
|
|
$189 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
label$39 : {
|
|
if (($189 | 0) == (0 | 0) & 1 | 0) {
|
|
break label$39
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$189 >> 2] | 0) + 4 | 0) >> 2] | 0 | 0]($189);
|
|
}
|
|
HEAP32[($4 + 28 | 0) >> 2] = 0;
|
|
}
|
|
break label$1;
|
|
case 12:
|
|
HEAP32[($4 + 24 | 0) >> 2] = HEAP32[($4 + 76 | 0) >> 2] | 0;
|
|
label$40 : {
|
|
if (!((HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$40
|
|
}
|
|
$207 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
label$41 : {
|
|
if (($207 | 0) == (0 | 0) & 1 | 0) {
|
|
break label$41
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$207 >> 2] | 0) + 4 | 0) >> 2] | 0 | 0]($207);
|
|
}
|
|
HEAP32[($4 + 24 | 0) >> 2] = 0;
|
|
}
|
|
break label$1;
|
|
case 13:
|
|
HEAP32[($4 + 20 | 0) >> 2] = HEAP32[($4 + 76 | 0) >> 2] | 0;
|
|
label$42 : {
|
|
if (!((HEAP32[($4 + 20 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$42
|
|
}
|
|
$225 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
label$43 : {
|
|
if (($225 | 0) == (0 | 0) & 1 | 0) {
|
|
break label$43
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$225 >> 2] | 0) + 4 | 0) >> 2] | 0 | 0]($225);
|
|
}
|
|
HEAP32[($4 + 20 | 0) >> 2] = 0;
|
|
}
|
|
break label$1;
|
|
case 6:
|
|
HEAP32[($4 + 16 | 0) >> 2] = HEAP32[($4 + 76 | 0) >> 2] | 0;
|
|
label$44 : {
|
|
if (!((HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$44
|
|
}
|
|
$243 = HEAP32[($4 + 16 | 0) >> 2] | 0;
|
|
label$45 : {
|
|
if (($243 | 0) == (0 | 0) & 1 | 0) {
|
|
break label$45
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$243 >> 2] | 0) + 4 | 0) >> 2] | 0 | 0]($243);
|
|
}
|
|
HEAP32[($4 + 16 | 0) >> 2] = 0;
|
|
}
|
|
break label$1;
|
|
case 14:
|
|
HEAP32[($4 + 12 | 0) >> 2] = HEAP32[($4 + 76 | 0) >> 2] | 0;
|
|
label$46 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$46
|
|
}
|
|
$261 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$47 : {
|
|
if (($261 | 0) == (0 | 0) & 1 | 0) {
|
|
break label$47
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$261 >> 2] | 0) + 4 | 0) >> 2] | 0 | 0]($261);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
break label$1;
|
|
default:
|
|
break label$2;
|
|
};
|
|
}
|
|
}
|
|
__stack_pointer = $4 + 80 | 0;
|
|
return;
|
|
}
|
|
|
|
function btVector3__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function RayCallback_hasHit_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $8 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$8 = (btCollisionWorld__RayResultCallback__hasHit_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0) & 1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__RayResultCallback__hasHit_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function ConvexCallback_hasHit_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $8 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$8 = (btCollisionWorld__ConvexResultCallback__hasHit_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0) & 1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__ConvexResultCallback__hasHit_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function ccClosestRayCallback_static_28_29() {
|
|
var $2 = 0, $18 = 0;
|
|
$2 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $2;
|
|
label$1 : {
|
|
if (!(((HEAPU8[(GOT_data_internal___memory_base + 113324 | 0) >> 0] | 0) & 255 | 0 | 0) == (0 & 255 | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btVector3__btVector3_28_29($2 + 16 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($2 | 0) | 0;
|
|
$18 = GOT_data_internal___memory_base;
|
|
cc__ccClosestRayResultCallback__ccClosestRayResultCallback_28btVector3_20const__2c_20btVector3_20const__29($18 + 113232 | 0 | 0, $2 + 16 | 0 | 0, $2 | 0) | 0;
|
|
__cxa_atexit(GOT_data_internal___table_base + 1 | 0 | 0, 0 | 0, $18 + 65536 | 0 | 0) | 0;
|
|
HEAP8[($18 + 113324 | 0) >> 0] = 1;
|
|
}
|
|
__stack_pointer = $2 + 32 | 0;
|
|
return GOT_data_internal___memory_base + 113232 | 0 | 0;
|
|
}
|
|
|
|
function btVector3__btVector3_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function cc__ccClosestRayResultCallback__ccClosestRayResultCallback_28btVector3_20const__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__ClosestRayResultCallback__ClosestRayResultCallback_28btVector3_20const__2c_20btVector3_20const__29($6 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$6 >> 2] = GOT_data_internal_vtable_20for_20cc__ccClosestRayResultCallback + 8 | 0;
|
|
HEAP32[($6 + 84 | 0) >> 2] = 0;
|
|
HEAP8[($6 + 88 | 0) >> 0] = 1;
|
|
HEAP32[($6 + 12 | 0) >> 2] = -1;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function __cxx_global_array_dtor_5($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
cc__ccClosestRayResultCallback___ccClosestRayResultCallback_28_29(GOT_data_internal___memory_base + 113232 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__ClosestRayResultCallback__ClosestRayResultCallback_28btVector3_20const__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $5 = 0, $6 = 0, $11 = 0, $14 = 0, $19 = 0, $22 = 0, $61 = 0, $71 = 0, $80 = 0, $90 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__RayResultCallback__RayResultCallback_28_29($6 | 0) | 0;
|
|
HEAP32[$6 >> 2] = GOT_data_internal_vtable_20for_20btCollisionWorld__ClosestRayResultCallback + 8 | 0;
|
|
$11 = $6 + 20 | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$61 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $11;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $61;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$14 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $14 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$71 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11 + $14 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $71;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$19 = $6 + 36 | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$80 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $19;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $80;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$22 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $22 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$90 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $19 + $22 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $90;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__btVector3_28_29($6 + 52 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 68 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function cc__ccClosestRayResultCallback___ccClosestRayResultCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__ClosestRayResultCallback___ClosestRayResultCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__ClosestRayResultCallback___ClosestRayResultCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__RayResultCallback___RayResultCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function ccClosestRayCallback_setFlags_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($4 + 4 | 0) >> 2] | 0) + 16 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function ccClosestRayCallback_reset_28int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $13 = 0, $15 = 0, $22 = 0, $24 = 0, $65 = 0, $75 = 0, $86 = 0, $96 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP8[($7 + 15 | 0) >> 0] = $4;
|
|
HEAP32[($7 + 8 | 0) >> 2] = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
$13 = (HEAP32[($7 + 8 | 0) >> 2] | 0) + 20 | 0;
|
|
i64toi32_i32$2 = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$65 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $13;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $65;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$15 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $15 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$75 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $13 + $15 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $75;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$22 = (HEAP32[($7 + 8 | 0) >> 2] | 0) + 36 | 0;
|
|
i64toi32_i32$2 = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$86 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $86;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$24 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $24 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$96 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $24 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $96;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
cc__ccClosestRayResultCallback__reset_28int_2c_20bool_29(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0, HEAP32[($7 + 16 | 0) >> 2] | 0 | 0, (HEAPU8[($7 + 15 | 0) >> 0] | 0) & 1 | 0 | 0);
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function cc__ccClosestRayResultCallback__reset_28int_2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $7 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 7 | 0) >> 0] = $2;
|
|
$7 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 12 | 0) >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
HEAP8[($7 + 88 | 0) >> 0] = (HEAPU8[($5 + 7 | 0) >> 0] | 0) & 1 | 0;
|
|
HEAPF32[($7 + 4 | 0) >> 2] = Math_fround(1.0);
|
|
HEAP32[($7 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function ccClosestRayCallback_getHitNormalWorld_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = cc__ccClosestRayResultCallback__getHitNormalWorld_28_29(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function cc__ccClosestRayResultCallback__getHitNormalWorld_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 52 | 0 | 0;
|
|
}
|
|
|
|
function ccClosestRayCallback_getHitPointWorld_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = cc__ccClosestRayResultCallback__getHitPointWorld_28_29(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function cc__ccClosestRayResultCallback__getHitPointWorld_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 68 | 0 | 0;
|
|
}
|
|
|
|
function ccClosestRayCallback_getCollisionShapePtr_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = cc__ccClosestRayResultCallback__getCollisionShapePtr_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function cc__ccClosestRayResultCallback__getCollisionShapePtr_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 84 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function ccAllRayCallback_static_28_29() {
|
|
var $2 = 0, $18 = 0;
|
|
$2 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $2;
|
|
label$1 : {
|
|
if (!(((HEAPU8[(GOT_data_internal___memory_base + 113484 | 0) >> 0] | 0) & 255 | 0 | 0) == (0 & 255 | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btVector3__btVector3_28_29($2 + 16 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($2 | 0) | 0;
|
|
$18 = GOT_data_internal___memory_base;
|
|
cc__ccAllHitsRayResultCallback__ccAllHitsRayResultCallback_28btVector3_20const__2c_20btVector3_20const__29($18 + 113328 | 0 | 0, $2 + 16 | 0 | 0, $2 | 0) | 0;
|
|
__cxa_atexit(GOT_data_internal___table_base + 2 | 0 | 0, 0 | 0, $18 + 65536 | 0 | 0) | 0;
|
|
HEAP8[($18 + 113484 | 0) >> 0] = 1;
|
|
}
|
|
__stack_pointer = $2 + 32 | 0;
|
|
return GOT_data_internal___memory_base + 113328 | 0 | 0;
|
|
}
|
|
|
|
function cc__ccAllHitsRayResultCallback__ccAllHitsRayResultCallback_28btVector3_20const__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__AllHitsRayResultCallback__AllHitsRayResultCallback_28btVector3_20const__2c_20btVector3_20const__29($6 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$6 >> 2] = GOT_data_internal_vtable_20for_20cc__ccAllHitsRayResultCallback + 8 | 0;
|
|
btAlignedObjectArray_int___btAlignedObjectArray_28_29($6 + 132 | 0 | 0) | 0;
|
|
HEAP8[($6 + 152 | 0) >> 0] = 1;
|
|
HEAP32[($6 + 12 | 0) >> 2] = -1;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function __cxx_global_array_dtor_6($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
cc__ccAllHitsRayResultCallback___ccAllHitsRayResultCallback_28_29(GOT_data_internal___memory_base + 113328 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__AllHitsRayResultCallback__AllHitsRayResultCallback_28btVector3_20const__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, $5 = 0, $13 = 0, $16 = 0, $21 = 0, $24 = 0, $70 = 0, $80 = 0, $89 = 0, $99 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__RayResultCallback__RayResultCallback_28_29($6 | 0) | 0;
|
|
HEAP32[$6 >> 2] = GOT_data_internal_vtable_20for_20btCollisionWorld__AllHitsRayResultCallback + 8 | 0;
|
|
btAlignedObjectArray_btCollisionObject_20const____btAlignedObjectArray_28_29($6 + 20 | 0 | 0) | 0;
|
|
$13 = $6 + 40 | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$70 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $13;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $70;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$16 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $16 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$80 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $13 + $16 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $80;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$21 = $6 + 56 | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$89 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $21;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $89;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$24 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $24 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$99 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $21 + $24 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $99;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btAlignedObjectArray_btVector3___btAlignedObjectArray_28_29($6 + 72 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3___btAlignedObjectArray_28_29($6 + 92 | 0 | 0) | 0;
|
|
btAlignedObjectArray_float___btAlignedObjectArray_28_29($6 + 112 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_int___btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_int_2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_int___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function cc__ccAllHitsRayResultCallback___ccAllHitsRayResultCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = GOT_data_internal_vtable_20for_20cc__ccAllHitsRayResultCallback + 8 | 0;
|
|
btAlignedObjectArray_int____btAlignedObjectArray_28_29($4 + 132 | 0 | 0) | 0;
|
|
btCollisionWorld__AllHitsRayResultCallback___AllHitsRayResultCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_int____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_int___clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__AllHitsRayResultCallback___AllHitsRayResultCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = GOT_data_internal_vtable_20for_20btCollisionWorld__AllHitsRayResultCallback + 8 | 0;
|
|
btAlignedObjectArray_float____btAlignedObjectArray_28_29($4 + 112 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3____btAlignedObjectArray_28_29($4 + 92 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3____btAlignedObjectArray_28_29($4 + 72 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btCollisionObject_20const_____btAlignedObjectArray_28_29($4 + 20 | 0 | 0) | 0;
|
|
btCollisionWorld__RayResultCallback___RayResultCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function ccAllRayCallback_setFlags_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($4 + 4 | 0) >> 2] | 0) + 16 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function ccAllRayCallback_reset_28int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $13 = 0, $15 = 0, $22 = 0, $24 = 0, $65 = 0, $75 = 0, $86 = 0, $96 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP8[($7 + 15 | 0) >> 0] = $4;
|
|
HEAP32[($7 + 8 | 0) >> 2] = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
$13 = (HEAP32[($7 + 8 | 0) >> 2] | 0) + 40 | 0;
|
|
i64toi32_i32$2 = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$65 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $13;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $65;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$15 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $15 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$75 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $13 + $15 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $75;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$22 = (HEAP32[($7 + 8 | 0) >> 2] | 0) + 56 | 0;
|
|
i64toi32_i32$2 = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$86 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $86;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$24 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $24 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$96 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $24 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $96;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
cc__ccAllHitsRayResultCallback__reset_28unsigned_20int_2c_20bool_29(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0, HEAP32[($7 + 16 | 0) >> 2] | 0 | 0, (HEAPU8[($7 + 15 | 0) >> 0] | 0) & 1 | 0 | 0);
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function cc__ccAllHitsRayResultCallback__reset_28unsigned_20int_2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $7 = 0;
|
|
$5 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 60 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 56 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 55 | 0) >> 0] = $2;
|
|
$7 = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 12 | 0) >> 2] = HEAP32[($5 + 56 | 0) >> 2] | 0;
|
|
HEAP8[($7 + 152 | 0) >> 0] = (HEAPU8[($5 + 55 | 0) >> 0] | 0) & 1 | 0;
|
|
HEAPF32[($7 + 4 | 0) >> 2] = Math_fround(1.0);
|
|
HEAP32[($7 + 8 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 48 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_int___resize_28int_2c_20int_20const__29($7 + 132 | 0 | 0, 0 | 0, $5 + 48 | 0 | 0);
|
|
HEAPF32[($5 + 44 | 0) >> 2] = Math_fround(0 | 0);
|
|
btAlignedObjectArray_float___resize_28int_2c_20float_20const__29($7 + 112 | 0 | 0, 0 | 0, $5 + 44 | 0 | 0);
|
|
HEAP32[($5 + 40 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btCollisionObject_20const____resize_28int_2c_20btCollisionObject_20const__20const__29($7 + 20 | 0 | 0, 0 | 0, $5 + 40 | 0 | 0);
|
|
btVector3__btVector3_28_29($5 + 24 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3___resize_28int_2c_20btVector3_20const__29($7 + 92 | 0 | 0, 0 | 0, $5 + 24 | 0 | 0);
|
|
btVector3__btVector3_28_29($5 + 8 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3___resize_28int_2c_20btVector3_20const__29($7 + 72 | 0 | 0, 0 | 0, $5 + 8 | 0 | 0);
|
|
__stack_pointer = $5 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_int___resize_28int_2c_20int_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_int___size_28_29_20const($6 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) > (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btAlignedObjectArray_int___reserve_28int_29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[(HEAP32[($5 + 20 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_float___resize_28int_2c_20float_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_float___size_28_29_20const($6 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) > (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btAlignedObjectArray_float___reserve_28int_29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAPF32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[($5 + 20 | 0) >> 2] | 0) >> 2]);
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject_20const____resize_28int_2c_20btCollisionObject_20const__20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btCollisionObject_20const____size_28_29_20const($6 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) > (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btAlignedObjectArray_btCollisionObject_20const____reserve_28int_29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[(HEAP32[($5 + 20 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btVector3___resize_28int_2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, $48 = 0, $51 = 0, $171 = 0, $181 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btVector3___size_28_29_20const($6 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) > (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btAlignedObjectArray_btVector3___reserve_28int_29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$48 = btVector3__operator_20new_28unsigned_20long_2c_20void__29(16 | 0, (HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$171 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $48;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $171;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$51 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $51 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$181 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $48 + $51 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $181;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function ccAllRayCallback_getHitPointWorld_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = cc__ccAllHitsRayResultCallback__getHitPointWorld_28_29(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function cc__ccAllHitsRayResultCallback__getHitPointWorld_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 92 | 0 | 0;
|
|
}
|
|
|
|
function ccAllRayCallback_getHitNormalWorld_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = cc__ccAllHitsRayResultCallback__getHitNormalWorld_28_29(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function cc__ccAllHitsRayResultCallback__getHitNormalWorld_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 72 | 0 | 0;
|
|
}
|
|
|
|
function ccAllRayCallback_getCollisionShapePtrs_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = cc__ccAllHitsRayResultCallback__getCollisionShapePtrs_28_29(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function cc__ccAllHitsRayResultCallback__getCollisionShapePtrs_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 132 | 0 | 0;
|
|
}
|
|
|
|
function ccClosestConvexCallback_static_28_29() {
|
|
var $2 = 0, $18 = 0;
|
|
$2 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $2;
|
|
label$1 : {
|
|
if (!(((HEAPU8[(GOT_data_internal___memory_base + 113580 | 0) >> 0] | 0) & 255 | 0 | 0) == (0 & 255 | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btVector3__btVector3_28_29($2 + 16 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($2 | 0) | 0;
|
|
$18 = GOT_data_internal___memory_base;
|
|
cc__ccClosestConvexResultCallback__ccClosestConvexResultCallback_28btVector3_20const__2c_20btVector3_20const__29($18 + 113488 | 0 | 0, $2 + 16 | 0 | 0, $2 | 0) | 0;
|
|
__cxa_atexit(GOT_data_internal___table_base + 3 | 0 | 0, 0 | 0, $18 + 65536 | 0 | 0) | 0;
|
|
HEAP8[($18 + 113580 | 0) >> 0] = 1;
|
|
}
|
|
__stack_pointer = $2 + 32 | 0;
|
|
return GOT_data_internal___memory_base + 113488 | 0 | 0;
|
|
}
|
|
|
|
function cc__ccClosestConvexResultCallback__ccClosestConvexResultCallback_28btVector3_20const__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__ClosestConvexResultCallback__ClosestConvexResultCallback_28btVector3_20const__2c_20btVector3_20const__29($6 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$6 >> 2] = GOT_data_internal_vtable_20for_20cc__ccClosestConvexResultCallback + 8 | 0;
|
|
HEAP32[($6 + 84 | 0) >> 2] = 0;
|
|
HEAP8[($6 + 88 | 0) >> 0] = 1;
|
|
HEAP32[($6 + 8 | 0) >> 2] = -1;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function __cxx_global_array_dtor_7($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
cc__ccClosestConvexResultCallback___ccClosestConvexResultCallback_28_29(GOT_data_internal___memory_base + 113488 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__ClosestConvexResultCallback__ClosestConvexResultCallback_28btVector3_20const__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $5 = 0, $6 = 0, $11 = 0, $14 = 0, $19 = 0, $22 = 0, $61 = 0, $71 = 0, $80 = 0, $90 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__ConvexResultCallback__ConvexResultCallback_28_29($6 | 0) | 0;
|
|
HEAP32[$6 >> 2] = GOT_data_internal_vtable_20for_20btCollisionWorld__ClosestConvexResultCallback + 8 | 0;
|
|
$11 = $6 + 20 | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$61 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $11;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $61;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$14 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $14 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$71 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11 + $14 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $71;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$19 = $6 + 36 | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$80 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $19;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $80;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$22 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $22 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$90 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $19 + $22 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $90;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__btVector3_28_29($6 + 52 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 68 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function cc__ccClosestConvexResultCallback___ccClosestConvexResultCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__ClosestConvexResultCallback___ClosestConvexResultCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__ClosestConvexResultCallback___ClosestConvexResultCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__ConvexResultCallback___ConvexResultCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function ccClosestConvexCallback_reset_28int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $13 = 0, $15 = 0, $22 = 0, $24 = 0, $65 = 0, $75 = 0, $86 = 0, $96 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP8[($7 + 15 | 0) >> 0] = $4;
|
|
HEAP32[($7 + 8 | 0) >> 2] = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
$13 = (HEAP32[($7 + 8 | 0) >> 2] | 0) + 20 | 0;
|
|
i64toi32_i32$2 = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$65 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $13;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $65;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$15 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $15 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$75 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $13 + $15 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $75;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$22 = (HEAP32[($7 + 8 | 0) >> 2] | 0) + 36 | 0;
|
|
i64toi32_i32$2 = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$86 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $86;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$24 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $24 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$96 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $24 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $96;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
cc__ccClosestConvexResultCallback__reset_28int_2c_20bool_29(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0, HEAP32[($7 + 16 | 0) >> 2] | 0 | 0, (HEAPU8[($7 + 15 | 0) >> 0] | 0) & 1 | 0 | 0);
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function cc__ccClosestConvexResultCallback__reset_28int_2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $7 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 7 | 0) >> 0] = $2;
|
|
$7 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 12 | 0) >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
HEAP8[($7 + 88 | 0) >> 0] = (HEAPU8[($5 + 7 | 0) >> 0] | 0) & 1 | 0;
|
|
HEAPF32[($7 + 4 | 0) >> 2] = Math_fround(1.0);
|
|
HEAP32[($7 + 16 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function ccClosestConvexCallback_getHitNormalWorld_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = cc__ccClosestConvexResultCallback__getHitNormalWorld_28_29(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function cc__ccClosestConvexResultCallback__getHitNormalWorld_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 52 | 0 | 0;
|
|
}
|
|
|
|
function ccClosestConvexCallback_getHitPointWorld_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = cc__ccClosestConvexResultCallback__getHitPointWorld_28_29(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function cc__ccClosestConvexResultCallback__getHitPointWorld_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 68 | 0 | 0;
|
|
}
|
|
|
|
function ccClosestConvexCallback_getCollisionShapePtr_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = cc__ccClosestConvexResultCallback__getCollisionShapePtr_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function cc__ccClosestConvexResultCallback__getCollisionShapePtr_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 84 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function ccAllConvexCallback_static_28_29() {
|
|
var $2 = 0, $18 = 0;
|
|
$2 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $2;
|
|
label$1 : {
|
|
if (!(((HEAPU8[(GOT_data_internal___memory_base + 113740 | 0) >> 0] | 0) & 255 | 0 | 0) == (0 & 255 | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btVector3__btVector3_28_29($2 + 16 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($2 | 0) | 0;
|
|
$18 = GOT_data_internal___memory_base;
|
|
cc__ccAllHitsConvexResultCallback__ccAllHitsConvexResultCallback_28btVector3_20const__2c_20btVector3_20const__29($18 + 113584 | 0 | 0, $2 + 16 | 0 | 0, $2 | 0) | 0;
|
|
__cxa_atexit(GOT_data_internal___table_base + 4 | 0 | 0, 0 | 0, $18 + 65536 | 0 | 0) | 0;
|
|
HEAP8[($18 + 113740 | 0) >> 0] = 1;
|
|
}
|
|
__stack_pointer = $2 + 32 | 0;
|
|
return GOT_data_internal___memory_base + 113584 | 0 | 0;
|
|
}
|
|
|
|
function cc__ccAllHitsConvexResultCallback__ccAllHitsConvexResultCallback_28btVector3_20const__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__AllHitsConvexResultCallback__AllHitsConvexResultCallback_28btVector3_20const__2c_20btVector3_20const__29($6 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$6 >> 2] = GOT_data_internal_vtable_20for_20cc__ccAllHitsConvexResultCallback + 8 | 0;
|
|
btAlignedObjectArray_int___btAlignedObjectArray_28_29($6 + 132 | 0 | 0) | 0;
|
|
HEAP8[($6 + 152 | 0) >> 0] = 1;
|
|
HEAP32[($6 + 8 | 0) >> 2] = -1;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function __cxx_global_array_dtor_8($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
cc__ccAllHitsConvexResultCallback___ccAllHitsConvexResultCallback_28_29(GOT_data_internal___memory_base + 113584 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__AllHitsConvexResultCallback__AllHitsConvexResultCallback_28btVector3_20const__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, $5 = 0, $13 = 0, $16 = 0, $21 = 0, $24 = 0, $70 = 0, $80 = 0, $89 = 0, $99 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__ConvexResultCallback__ConvexResultCallback_28_29($6 | 0) | 0;
|
|
HEAP32[$6 >> 2] = GOT_data_internal_vtable_20for_20btCollisionWorld__AllHitsConvexResultCallback + 8 | 0;
|
|
btAlignedObjectArray_btCollisionObject_20const____btAlignedObjectArray_28_29($6 + 20 | 0 | 0) | 0;
|
|
$13 = $6 + 40 | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$70 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $13;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $70;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$16 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $16 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$80 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $13 + $16 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $80;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$21 = $6 + 56 | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$89 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $21;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $89;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$24 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $24 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$99 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $21 + $24 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $99;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btAlignedObjectArray_btVector3___btAlignedObjectArray_28_29($6 + 72 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3___btAlignedObjectArray_28_29($6 + 92 | 0 | 0) | 0;
|
|
btAlignedObjectArray_float___btAlignedObjectArray_28_29($6 + 112 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function cc__ccAllHitsConvexResultCallback___ccAllHitsConvexResultCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = GOT_data_internal_vtable_20for_20cc__ccAllHitsConvexResultCallback + 8 | 0;
|
|
btAlignedObjectArray_int____btAlignedObjectArray_28_29($4 + 132 | 0 | 0) | 0;
|
|
btCollisionWorld__AllHitsConvexResultCallback___AllHitsConvexResultCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__AllHitsConvexResultCallback___AllHitsConvexResultCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = GOT_data_internal_vtable_20for_20btCollisionWorld__AllHitsConvexResultCallback + 8 | 0;
|
|
btAlignedObjectArray_float____btAlignedObjectArray_28_29($4 + 112 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3____btAlignedObjectArray_28_29($4 + 92 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3____btAlignedObjectArray_28_29($4 + 72 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btCollisionObject_20const_____btAlignedObjectArray_28_29($4 + 20 | 0 | 0) | 0;
|
|
btCollisionWorld__ConvexResultCallback___ConvexResultCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function ccAllConvexCallback_reset_28int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $13 = 0, $15 = 0, $22 = 0, $24 = 0, $65 = 0, $75 = 0, $86 = 0, $96 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP8[($7 + 15 | 0) >> 0] = $4;
|
|
HEAP32[($7 + 8 | 0) >> 2] = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
$13 = (HEAP32[($7 + 8 | 0) >> 2] | 0) + 40 | 0;
|
|
i64toi32_i32$2 = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$65 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $13;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $65;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$15 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $15 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$75 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $13 + $15 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $75;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$22 = (HEAP32[($7 + 8 | 0) >> 2] | 0) + 56 | 0;
|
|
i64toi32_i32$2 = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$86 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $86;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$24 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $24 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$96 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $24 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $96;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
cc__ccAllHitsConvexResultCallback__reset_28int_2c_20bool_29(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0, HEAP32[($7 + 16 | 0) >> 2] | 0 | 0, (HEAPU8[($7 + 15 | 0) >> 0] | 0) & 1 | 0 | 0);
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function cc__ccAllHitsConvexResultCallback__reset_28int_2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $7 = 0;
|
|
$5 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 60 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 56 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 55 | 0) >> 0] = $2;
|
|
$7 = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 12 | 0) >> 2] = HEAP32[($5 + 56 | 0) >> 2] | 0;
|
|
HEAP8[($7 + 152 | 0) >> 0] = (HEAPU8[($5 + 55 | 0) >> 0] | 0) & 1 | 0;
|
|
HEAPF32[($7 + 4 | 0) >> 2] = Math_fround(1.0);
|
|
HEAP32[($5 + 48 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_int___resize_28int_2c_20int_20const__29($7 + 132 | 0 | 0, 0 | 0, $5 + 48 | 0 | 0);
|
|
HEAPF32[($5 + 44 | 0) >> 2] = Math_fround(0 | 0);
|
|
btAlignedObjectArray_float___resize_28int_2c_20float_20const__29($7 + 112 | 0 | 0, 0 | 0, $5 + 44 | 0 | 0);
|
|
HEAP32[($5 + 40 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btCollisionObject_20const____resize_28int_2c_20btCollisionObject_20const__20const__29($7 + 20 | 0 | 0, 0 | 0, $5 + 40 | 0 | 0);
|
|
btVector3__btVector3_28_29($5 + 24 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3___resize_28int_2c_20btVector3_20const__29($7 + 92 | 0 | 0, 0 | 0, $5 + 24 | 0 | 0);
|
|
btVector3__btVector3_28_29($5 + 8 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3___resize_28int_2c_20btVector3_20const__29($7 + 72 | 0 | 0, 0 | 0, $5 + 8 | 0 | 0);
|
|
__stack_pointer = $5 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function ccAllConvexCallback_getHitPointWorld_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = cc__ccAllHitsConvexResultCallback__getHitPointWorld_28_29(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function cc__ccAllHitsConvexResultCallback__getHitPointWorld_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 92 | 0 | 0;
|
|
}
|
|
|
|
function ccAllConvexCallback_getHitNormalWorld_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = cc__ccAllHitsConvexResultCallback__getHitNormalWorld_28_29(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function cc__ccAllHitsConvexResultCallback__getHitNormalWorld_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 72 | 0 | 0;
|
|
}
|
|
|
|
function ccAllConvexCallback_getCollisionShapePtrs_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = cc__ccAllHitsConvexResultCallback__getCollisionShapePtrs_28_29(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function cc__ccAllHitsConvexResultCallback__getCollisionShapePtrs_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 132 | 0 | 0;
|
|
}
|
|
|
|
function ManifoldPoint_get_m_positionWorldOnA_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
return (HEAP32[($3 + 8 | 0) >> 2] | 0) + 48 | 0 | 0;
|
|
}
|
|
|
|
function ManifoldPoint_get_m_positionWorldOnB_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
return (HEAP32[($3 + 8 | 0) >> 2] | 0) + 32 | 0 | 0;
|
|
}
|
|
|
|
function ManifoldPoint_get_m_normalWorldOnB_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
return (HEAP32[($3 + 8 | 0) >> 2] | 0) + 64 | 0 | 0;
|
|
}
|
|
|
|
function ManifoldPoint_get_m_localPointA_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
return HEAP32[($3 + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function ManifoldPoint_get_m_localPointB_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
return (HEAP32[($3 + 8 | 0) >> 2] | 0) + 16 | 0 | 0;
|
|
}
|
|
|
|
function btManifoldPoint__getDistance_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 80 | 0) >> 2]));
|
|
}
|
|
|
|
function ManifoldPoint_getShape0_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = btManifoldPoint__getShape0_28_29(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btManifoldPoint__getShape0_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 200 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function ManifoldPoint_getShape1_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = btManifoldPoint__getShape1_28_29(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btManifoldPoint__getShape1_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 204 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function ManifoldPoint_get_m_index0_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
return HEAP32[((HEAP32[($3 + 8 | 0) >> 2] | 0) + 108 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function ManifoldPoint_get_m_index1_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
return HEAP32[((HEAP32[($3 + 8 | 0) >> 2] | 0) + 112 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function PersistentManifold_getBody0_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = btPersistentManifold__getBody0_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btPersistentManifold__getBody0_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 836 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function PersistentManifold_getBody1_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = btPersistentManifold__getBody1_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btPersistentManifold__getBody1_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 840 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function PersistentManifold_getNumContacts_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = btPersistentManifold__getNumContacts_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btPersistentManifold__getNumContacts_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 844 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function PersistentManifold_getContactPoint_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $8 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$8 = btPersistentManifold__getContactPoint_28int_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btPersistentManifold__getContactPoint_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $14 = 0, $5 = 0, $26 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 844 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
$14 = GOT_data_internal___memory_base;
|
|
__assert_fail($14 + 69167 | 0 | 0, $14 + 79943 | 0 | 0, 133 | 0, $14 + 67585 | 0 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$26 = ($5 + 4 | 0) + Math_imul(HEAP32[($4 + 8 | 0) >> 2] | 0, 208) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $26 | 0;
|
|
}
|
|
|
|
function ControllerHit_getHitWorldPos($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
return (HEAP32[($3 + 8 | 0) >> 2] | 0) + 4 | 0 | 0;
|
|
}
|
|
|
|
function ControllerHit_getHitWorldNormal($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
return (HEAP32[($3 + 8 | 0) >> 2] | 0) + 20 | 0 | 0;
|
|
}
|
|
|
|
function ControllerHit_getHitMotionDir($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
return (HEAP32[($3 + 8 | 0) >> 2] | 0) + 36 | 0 | 0;
|
|
}
|
|
|
|
function ControllerHit_getHitMotionLength($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 8 | 0) >> 2] | 0) + 52 | 0) >> 2]));
|
|
}
|
|
|
|
function ControllerShapeHit_getHitShape($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
return HEAP32[((HEAP32[($3 + 8 | 0) >> 2] | 0) + 56 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function ControllerShapeHit_getHitCollisionObject($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
return HEAP32[((HEAP32[($3 + 8 | 0) >> 2] | 0) + 60 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function CharacterController_setContactOffset($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btCharacterController__setContactOffset_28float_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2])));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCharacterController__setContactOffset_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 36 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function CharacterController_setStepOffset($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btCharacterController__setStepHeight_28float_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2])));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCharacterController__setStepHeight_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 32 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function CharacterController_setSlopeLimit($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btCharacterController__setMaxSlope_28float_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2])));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function CharacterController_setCollision($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP8[($4 + 11 | 0) >> 0] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btCharacterController__setCollision_28bool_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, (HEAPU8[($4 + 11 | 0) >> 0] | 0) & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCharacterController__setCollision_28bool_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP8[($4 + 11 | 0) >> 0] = $1;
|
|
HEAP8[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 62 | 0) >> 0] = (HEAPU8[($4 + 11 | 0) >> 0] | 0) & 1 | 0;
|
|
return;
|
|
}
|
|
|
|
function CharacterController_setOverlapRecovery($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP8[($4 + 11 | 0) >> 0] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btCharacterController__setOverlapRecovery_28bool_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, (HEAPU8[($4 + 11 | 0) >> 0] | 0) & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCharacterController__setOverlapRecovery_28bool_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP8[($4 + 11 | 0) >> 0] = $1;
|
|
HEAP8[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 63 | 0) >> 0] = (HEAPU8[($4 + 11 | 0) >> 0] | 0) & 1 | 0;
|
|
return;
|
|
}
|
|
|
|
function CharacterController_getGhostObject($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = btCharacterController__getGhostObject_28_29(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btCharacterController__getGhostObject_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function CharacterController_getCollisionShape($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = btCharacterController__getCollisionShape_28_29(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btCharacterController__getCollisionShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function CharacterController_move($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $8 = 0, $9 = 0, $56 = 0, $60 = 0, $22 = 0;
|
|
$6 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 40 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 36 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 32 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 28 | 0) >> 2] = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
$8 = HEAP32[($6 + 40 | 0) >> 2] | 0;
|
|
$9 = 8;
|
|
i64toi32_i32$2 = $8 + $9 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$56 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 8 | 0) + $9 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $56;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$60 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $60;
|
|
HEAP32[($6 + 12 | 0) >> 2] = i64toi32_i32$0;
|
|
$22 = btCharacterController__move_28btVector3_20const__2c_20float_2c_20float_29(HEAP32[($6 + 28 | 0) >> 2] | 0 | 0, $6 + 8 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 36 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($6 + 32 | 0) >> 2]))) | 0;
|
|
__stack_pointer = $6 + 48 | 0;
|
|
return $22 | 0;
|
|
}
|
|
|
|
function CharacterController_getPosition($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = btCharacterController__getPosition_28_29(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function CapsuleCharacterControllerDesc_new($0, $1, $2, $3, $4, $5, $6, $7) {
|
|
$0 = Math_fround($0);
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = Math_fround($6);
|
|
$7 = Math_fround($7);
|
|
var $10 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $12 = 0, $22 = 0, $24 = 0, $31 = 0, $33 = 0, $101 = 0, $111 = 0, $122 = 0, $132 = 0, $43 = 0;
|
|
$10 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $10;
|
|
HEAPF32[($10 + 44 | 0) >> 2] = $0;
|
|
HEAPF32[($10 + 40 | 0) >> 2] = $1;
|
|
HEAPF32[($10 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($10 + 32 | 0) >> 2] = $3;
|
|
HEAP32[($10 + 28 | 0) >> 2] = $4;
|
|
HEAP32[($10 + 24 | 0) >> 2] = $5;
|
|
HEAPF32[($10 + 20 | 0) >> 2] = $6;
|
|
HEAPF32[($10 + 16 | 0) >> 2] = $7;
|
|
$12 = operator_20new_28unsigned_20long_29(60 | 0) | 0;
|
|
btCapsuleCharacterControllerDesc__btCapsuleCharacterControllerDesc_28_29($12 | 0) | 0;
|
|
HEAP32[($10 + 12 | 0) >> 2] = $12;
|
|
HEAPF32[(HEAP32[($10 + 12 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[($10 + 44 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($10 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] = Math_fround(HEAPF32[($10 + 40 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($10 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] = Math_fround(HEAPF32[($10 + 36 | 0) >> 2]);
|
|
$22 = (HEAP32[($10 + 12 | 0) >> 2] | 0) + 12 | 0;
|
|
i64toi32_i32$2 = HEAP32[($10 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$101 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $101;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$24 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $24 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$111 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $24 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $111;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$31 = (HEAP32[($10 + 12 | 0) >> 2] | 0) + 28 | 0;
|
|
i64toi32_i32$2 = HEAP32[($10 + 28 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$122 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $31;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $122;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$33 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $33 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$132 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $31 + $33 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $132;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[((HEAP32[($10 + 12 | 0) >> 2] | 0) + 48 | 0) >> 2] = HEAP32[($10 + 24 | 0) >> 2] | 0;
|
|
HEAPF32[((HEAP32[($10 + 12 | 0) >> 2] | 0) + 52 | 0) >> 2] = Math_fround(HEAPF32[($10 + 20 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($10 + 12 | 0) >> 2] | 0) + 56 | 0) >> 2] = Math_fround(HEAPF32[($10 + 16 | 0) >> 2]);
|
|
$43 = HEAP32[($10 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $10 + 48 | 0;
|
|
return $43 | 0;
|
|
}
|
|
|
|
function btCapsuleCharacterControllerDesc__btCapsuleCharacterControllerDesc_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCharacterControllerDesc__btCharacterControllerDesc_28_29($4 | 0) | 0;
|
|
HEAP32[($4 + 44 | 0) >> 2] = 1;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCharacterControllerDesc__btCharacterControllerDesc_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($4 + 12 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 28 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function CapsuleCharacterController_new($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 16 | 0) >> 2] = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
$10 = operator_20new_28unsigned_20long_29(160 | 0) | 0;
|
|
btCapsuleCharacterController__btCapsuleCharacterController_28btCollisionWorld__2c_20btCapsuleCharacterControllerDesc__2c_20void__29($10 | 0, HEAP32[($5 + 16 | 0) >> 2] | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function CapsuleCharacterController_setRadius($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btCapsuleCharacterController__setRadius_28float_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2])));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function CapsuleCharacterController_setHeight($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btCapsuleCharacterController__setHeight_28float_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2])));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function BoxCharacterControllerDesc_new($0, $1, $2, $3, $4, $5, $6, $7, $8) {
|
|
$0 = Math_fround($0);
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = Math_fround($6);
|
|
$7 = Math_fround($7);
|
|
$8 = Math_fround($8);
|
|
var $11 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $13 = 0, $23 = 0, $25 = 0, $32 = 0, $34 = 0, $106 = 0, $116 = 0, $127 = 0, $137 = 0, $46 = 0;
|
|
$11 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $11;
|
|
HEAPF32[($11 + 44 | 0) >> 2] = $0;
|
|
HEAPF32[($11 + 40 | 0) >> 2] = $1;
|
|
HEAPF32[($11 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($11 + 32 | 0) >> 2] = $3;
|
|
HEAP32[($11 + 28 | 0) >> 2] = $4;
|
|
HEAP32[($11 + 24 | 0) >> 2] = $5;
|
|
HEAPF32[($11 + 20 | 0) >> 2] = $6;
|
|
HEAPF32[($11 + 16 | 0) >> 2] = $7;
|
|
HEAPF32[($11 + 12 | 0) >> 2] = $8;
|
|
$13 = operator_20new_28unsigned_20long_29(64 | 0) | 0;
|
|
btBoxCharacterControllerDesc__btBoxCharacterControllerDesc_28_29($13 | 0) | 0;
|
|
HEAP32[($11 + 8 | 0) >> 2] = $13;
|
|
HEAPF32[(HEAP32[($11 + 8 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[($11 + 44 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($11 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] = Math_fround(HEAPF32[($11 + 40 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($11 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] = Math_fround(HEAPF32[($11 + 36 | 0) >> 2]);
|
|
$23 = (HEAP32[($11 + 8 | 0) >> 2] | 0) + 12 | 0;
|
|
i64toi32_i32$2 = HEAP32[($11 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$106 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $23;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $106;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$25 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $25 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$116 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $23 + $25 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $116;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$32 = (HEAP32[($11 + 8 | 0) >> 2] | 0) + 28 | 0;
|
|
i64toi32_i32$2 = HEAP32[($11 + 28 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$127 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $32;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $127;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$34 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $34 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$137 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $32 + $34 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $137;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[((HEAP32[($11 + 8 | 0) >> 2] | 0) + 48 | 0) >> 2] = HEAP32[($11 + 24 | 0) >> 2] | 0;
|
|
HEAPF32[((HEAP32[($11 + 8 | 0) >> 2] | 0) + 52 | 0) >> 2] = Math_fround(HEAPF32[($11 + 20 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($11 + 8 | 0) >> 2] | 0) + 56 | 0) >> 2] = Math_fround(HEAPF32[($11 + 16 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($11 + 8 | 0) >> 2] | 0) + 60 | 0) >> 2] = Math_fround(HEAPF32[($11 + 12 | 0) >> 2]);
|
|
$46 = HEAP32[($11 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $11 + 48 | 0;
|
|
return $46 | 0;
|
|
}
|
|
|
|
function btBoxCharacterControllerDesc__btBoxCharacterControllerDesc_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCharacterControllerDesc__btCharacterControllerDesc_28_29($4 | 0) | 0;
|
|
HEAP32[($4 + 44 | 0) >> 2] = 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function BoxCharacterController_new($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 16 | 0) >> 2] = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
$10 = operator_20new_28unsigned_20long_29(164 | 0) | 0;
|
|
btBoxCharacterController__btBoxCharacterController_28btCollisionWorld__2c_20btBoxCharacterControllerDesc__2c_20void__29($10 | 0, HEAP32[($5 + 16 | 0) >> 2] | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function BoxCharacterController_setHalfHeight($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btBoxCharacterController__setHalfHeight_28float_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2])));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function BoxCharacterController_setHalfSideExtent($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btBoxCharacterController__setHalfSideExtent_28float_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2])));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function BoxCharacterController_setHalfForwardExtent($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btBoxCharacterController__setHalfForwardExtent_28float_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2])));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function CollisionObject_new_28_29() {
|
|
var $2 = 0, $4 = 0, $5 = 0;
|
|
$2 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $2;
|
|
$4 = btCollisionObject__operator_20new_28unsigned_20long_29(324 | 0) | 0;
|
|
btCollisionObject__btCollisionObject_28_29($4 | 0) | 0;
|
|
HEAP32[($2 + 12 | 0) >> 2] = $4;
|
|
$5 = HEAP32[($2 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $2 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btCollisionObject__operator_20new_28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function CollisionObject_isStaticObject_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $7 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$7 = (btCollisionObject__isStaticObject_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0) & 1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btCollisionObject__isStaticObject_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return ((HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 204 | 0) >> 2] | 0) & 1 | 0 | 0) != (0 | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function CollisionObject_isKinematicObject_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $7 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$7 = (btCollisionObject__isKinematicObject_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0) & 1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btCollisionObject__isKinematicObject_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return ((HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 204 | 0) >> 2] | 0) & 2 | 0 | 0) != (0 | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function CollisionObject_isStaticOrKinematicObject_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $7 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$7 = (btCollisionObject__isStaticOrKinematicObject_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0) & 1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btCollisionObject__isStaticOrKinematicObject_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return ((HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 204 | 0) >> 2] | 0) & 3 | 0 | 0) != (0 | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function CollisionObject_setContactProcessingThreshold_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btCollisionObject__setContactProcessingThreshold_28float_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0)));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionObject__setContactProcessingThreshold_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 184 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function CollisionObject_forceActivationState_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btCollisionObject__forceActivationState_28int_29_20const(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function CollisionObject_activate_28int_2c_20bool_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP8[($4 + 11 | 0) >> 0] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btCollisionObject__activate_28bool_29_20const(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, (HEAPU8[($4 + 11 | 0) >> 0] | 0) & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function CollisionObject_isActive_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $8 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$8 = (btCollisionObject__isActive_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0) & 1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btCollisionObject__isActive_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $13 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$13 = 0;
|
|
label$1 : {
|
|
if (!((btCollisionObject__getActivationState_28_29_20const($4 | 0) | 0 | 0) != (2 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$13 = (btCollisionObject__getActivationState_28_29_20const($4 | 0) | 0 | 0) != (5 | 0);
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $13 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btCollisionObject__getActivationState_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 220 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function CollisionObject_setMaterial_28int_2c_20float_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
$4 = Math_fround($4);
|
|
var $7 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAPF32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAPF32[($7 + 12 | 0) >> 2] = $4;
|
|
HEAP32[($7 + 8 | 0) >> 2] = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
btCollisionObject__setRestitution_28float_29(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($7 + 24 | 0) >> 2])));
|
|
btCollisionObject__setFriction_28float_29(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($7 + 20 | 0) >> 2])));
|
|
btCollisionObject__setRollingFriction_28float_29(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($7 + 16 | 0) >> 2])));
|
|
btCollisionObject__setSpinningFriction_28float_29(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($7 + 12 | 0) >> 2])));
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionObject__setRestitution_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 304 | 0) >> 2] = (HEAP32[($5 + 304 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAPF32[($5 + 232 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function btCollisionObject__setFriction_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 304 | 0) >> 2] = (HEAP32[($5 + 304 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAPF32[($5 + 228 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function btCollisionObject__setRollingFriction_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 304 | 0) >> 2] = (HEAP32[($5 + 304 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAPF32[($5 + 236 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function btCollisionObject__setSpinningFriction_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 304 | 0) >> 2] = (HEAP32[($5 + 304 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAPF32[($5 + 240 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function CollisionObject_getCollisionFlags_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = btCollisionObject__getCollisionFlags_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btCollisionObject__getCollisionFlags_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 204 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function CollisionObject_setCollisionFlags_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btCollisionObject__setCollisionFlags_28int_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionObject__setCollisionFlags_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 204 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function CollisionObject_getWorldTransform_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = btCollisionObject__getWorldTransform_28_29(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btCollisionObject__getWorldTransform_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0 | 0;
|
|
}
|
|
|
|
function CollisionObject_setCollisionShape_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$6 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($6, HEAP32[($4 + 8 | 0) >> 2] | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function CollisionObject_getCollisionShape_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = btCollisionObject__getCollisionShape_28_29(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btCollisionObject__getCollisionShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 192 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function CollisionObject_setCcdMotionThreshold_28int_2c_20float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btCollisionObject__setCcdMotionThreshold_28float_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2])));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionObject__setCcdMotionThreshold_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 276 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function btCollisionObject__getCcdSweptSphereRadius_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 272 | 0) >> 2]));
|
|
}
|
|
|
|
function CollisionObject_setCcdSweptSphereRadius_28int_2c_20float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btCollisionObject__setCcdSweptSphereRadius_28float_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2])));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionObject__setCcdSweptSphereRadius_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 272 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function CollisionObject_getUserIndex_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = btCollisionObject__getUserIndex_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btCollisionObject__getUserIndex_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 264 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function CollisionObject_setUserIndex_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btCollisionObject__setUserIndex_28int_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionObject__setUserIndex_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 264 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function CollisionObject_isSleeping_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $12 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$12 = (btCollisionObject__getActivationState_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) == (2 | 0) & 1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $12 | 0;
|
|
}
|
|
|
|
function CollisionObject_getActivationState_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = btCollisionObject__getActivationState_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function CollisionObject_setIgnoreCollisionCheck_28int_2c_20int_2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 23 | 0) >> 0] = $2;
|
|
HEAP32[($5 + 16 | 0) >> 2] = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
btCollisionObject__setIgnoreCollisionCheck_28btCollisionObject_20const__2c_20bool_29(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0, (HEAPU8[($5 + 23 | 0) >> 0] | 0) & 1 | 0 | 0);
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionObject__setIgnoreCollisionCheck_28btCollisionObject_20const__2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $7 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 7 | 0) >> 0] = $2;
|
|
$7 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($5 + 7 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedObjectArray_btCollisionObject_20const____push_back_28btCollisionObject_20const__20const__29($7 + 284 | 0 | 0, $5 + 8 | 0 | 0);
|
|
break label$1;
|
|
}
|
|
btAlignedObjectArray_btCollisionObject_20const____remove_28btCollisionObject_20const__20const__29($7 + 284 | 0 | 0, $5 + 8 | 0 | 0);
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = (btAlignedObjectArray_btCollisionObject_20const____size_28_29_20const($7 + 284 | 0 | 0) | 0 | 0) > (0 | 0) & 1 | 0), HEAP32[(wasm2js_i32$0 + 280 | 0) >> 2] = wasm2js_i32$1;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject_20const____push_back_28btCollisionObject_20const__20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btCollisionObject_20const____size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btCollisionObject_20const____capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btCollisionObject_20const____reserve_28int_29($5 | 0, btAlignedObjectArray_btCollisionObject_20const____allocSize_28int_29($5 | 0, btAlignedObjectArray_btCollisionObject_20const____size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject_20const____remove_28btCollisionObject_20const__20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btCollisionObject_20const____findLinearSearch_28btCollisionObject_20const__20const__29_20const($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btCollisionObject_20const____removeAtIndex_28int_29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject_20const____size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function CollisionShape_setMaterial_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
btCollisionShape__setMaterial_28cc__ccMaterial__29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, HEAP32[$4 >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionShape__setMaterial_28cc__ccMaterial__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 16 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionShape__getMaterial_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function CollisionShape_setUserPointer_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btCollisionShape__setUserPointerAsInt_28int_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionShape__setUserPointerAsInt_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionShape__getUserPointerAsInt_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function CollisionShape_setLocalScaling_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$6 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 24 | 0) >> 2] | 0 | 0]($6, HEAP32[($4 + 8 | 0) >> 2] | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function CollisionShape_calculateLocalInertia_28int_2c_20float_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $7 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
$7 = HEAP32[$5 >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 32 | 0) >> 2] | 0 | 0]($7, Math_fround(HEAPF32[($5 + 8 | 0) >> 2]), HEAP32[($5 + 4 | 0) >> 2] | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function CollisionShape_isCompound_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $8 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$8 = (btCollisionShape__isCompound_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0) & 1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btCollisionShape__isCompound_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $8 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$8 = (btBroadphaseProxy__isCompound_28int_29(btCollisionShape__getShapeType_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) & 1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btCollisionShape__getShapeType_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btBroadphaseProxy__isCompound_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) == (31 | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function CollisionShape_getAabb_28int_2c_20int_2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $8 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
$8 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($8, HEAP32[($6 + 24 | 0) >> 2] | 0, HEAP32[($6 + 20 | 0) >> 2] | 0, HEAP32[($6 + 16 | 0) >> 2] | 0);
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTransform__btTransform_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btMatrix3x3__btMatrix3x3_28_29($4 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 48 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btTransform__setIdentity_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btMatrix3x3__setIdentity_28_29($4 | 0);
|
|
HEAPF32[($3 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 4 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[$3 >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 48 | 0 | 0, $3 + 8 | 0 | 0, $3 + 4 | 0 | 0, $3 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function operator__28btVector3_20const__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $2;
|
|
HEAPF32[($5 + 20 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[(HEAP32[($5 + 28 | 0) >> 2] | 0) >> 2]) - Math_fround(HEAPF32[(HEAP32[($5 + 24 | 0) >> 2] | 0) >> 2]));
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 28 | 0) >> 2] | 0) + 4 | 0) >> 2]) - Math_fround(HEAPF32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2]));
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 28 | 0) >> 2] | 0) + 8 | 0) >> 2]) - Math_fround(HEAPF32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 8 | 0) >> 2]));
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $5 + 20 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btVector3__length_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = Math_fround(btSqrt_28float_29(Math_fround(Math_fround(btVector3__length2_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0)))));
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($6);
|
|
}
|
|
|
|
function CollisionShape_setMargin_28int_2c_20float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $6 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$6 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 44 | 0) >> 2] | 0 | 0]($6, Math_fround(HEAPF32[($4 + 8 | 0) >> 2]));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function BoxShape_new_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = btBoxShape__operator_20new_28unsigned_20long_29(64 | 0) | 0;
|
|
btBoxShape__btBoxShape_28btVector3_20const__29($5 | 0, HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btBoxShape__operator_20new_28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function BoxShape_setUnscaledHalfExtents_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btBoxShape__setUnscaledHalfExtents_28btVector3_20const__29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBoxShape__setUnscaledHalfExtents_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $43 = 0, $45 = 0, $147 = 0, $160 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 76 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 72 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 76 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 52 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 48 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 56 | 0 | 0, $4 + 52 | 0 | 0, $4 + 48 | 0 | 0, $4 + 44 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($4 + 12 | 0 | 0, HEAP32[($4 + 72 | 0) >> 2] | 0 | 0, $5 + 20 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 28 | 0 | 0, $4 + 12 | 0 | 0, $4 + 56 | 0 | 0);
|
|
$43 = $5 + 36 | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
$147 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $43;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $147;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$45 = 8;
|
|
i64toi32_i32$2 = ($4 + 28 | 0) + $45 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$160 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $43 + $45 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $160;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btConvexInternalShape__setSafeMargin_28btVector3_20const__2c_20float_29($5 | 0, HEAP32[($4 + 72 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(.10000000149011612)));
|
|
__stack_pointer = $4 + 80 | 0;
|
|
return;
|
|
}
|
|
|
|
function btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[$7 >> 2] = Math_fround(HEAPF32[(HEAP32[($6 + 8 | 0) >> 2] | 0) >> 2]);
|
|
HEAPF32[($7 + 4 | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[($6 + 4 | 0) >> 2] | 0) >> 2]);
|
|
HEAPF32[($7 + 8 | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[$6 >> 2] | 0) >> 2]);
|
|
HEAPF32[($7 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
return $7 | 0;
|
|
}
|
|
|
|
function operator__28btVector3_20const__2c_20btVector3_20const__29_1($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $2;
|
|
HEAPF32[($5 + 20 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[(HEAP32[($5 + 28 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[(HEAP32[($5 + 24 | 0) >> 2] | 0) >> 2]));
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 28 | 0) >> 2] | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2]));
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 28 | 0) >> 2] | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 8 | 0) >> 2]));
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $5 + 20 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexInternalShape__setSafeMargin_28btVector3_20const__2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $6 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) + ((btVector3__minAxis_28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) << 2 | 0) | 0) >> 2])), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
btConvexInternalShape__setSafeMargin_28float_2c_20float_29($6 | 0, Math_fround(Math_fround(HEAPF32[$5 >> 2])), Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2])));
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function SphereShape_new_28float_29($0) {
|
|
$0 = Math_fround($0);
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAPF32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = btSphereShape__operator_20new_28unsigned_20long_29(60 | 0) | 0;
|
|
btSphereShape__btSphereShape_28float_29($5 | 0, Math_fround(Math_fround(HEAPF32[($3 + 12 | 0) >> 2]))) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btSphereShape__operator_20new_28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btSphereShape__btSphereShape_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 24 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
btConvexInternalShape__btConvexInternalShape_28_29($5 | 0) | 0;
|
|
HEAP32[$5 >> 2] = GOT_data_internal_vtable_20for_20btSphereShape + 8 | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = 8;
|
|
HEAPF32[($4 + 20 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($4 + 16 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($4 + 12 | 0) >> 2] = Math_fround(1.0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 20 | 0 | 0, $4 + 20 | 0 | 0, $4 + 16 | 0 | 0, $4 + 12 | 0 | 0);
|
|
btVector3__setZero_28_29($5 + 36 | 0 | 0);
|
|
btVector3__setX_28float_29($5 + 36 | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 24 | 0) >> 2])));
|
|
HEAPF32[($5 + 52 | 0) >> 2] = Math_fround(HEAPF32[($4 + 24 | 0) >> 2]);
|
|
HEAPF32[($5 + 56 | 0) >> 2] = Math_fround(0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[$7 >> 2] = Math_fround(HEAPF32[(HEAP32[($6 + 8 | 0) >> 2] | 0) >> 2]);
|
|
HEAPF32[($7 + 4 | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[($6 + 4 | 0) >> 2] | 0) >> 2]);
|
|
HEAPF32[($7 + 8 | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[$6 >> 2] | 0) >> 2]);
|
|
HEAPF32[($7 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
return;
|
|
}
|
|
|
|
function btVector3__setZero_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[($3 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 4 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[$3 >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($4 | 0, $3 + 8 | 0 | 0, $3 + 4 | 0 | 0, $3 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btVector3__setX_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function SphereShape_setUnscaledRadius_28int_2c_20float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btSphereShape__setUnscaledRadius_28float_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2])));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSphereShape__setUnscaledRadius_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btVector3__setX_28float_29($5 + 36 | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2])));
|
|
btConvexInternalShape__setMargin_28float_29($5 | 0, Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2])));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexInternalShape__setMargin_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 52 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function CapsuleShape_new_28float_2c_20float_29($0, $1) {
|
|
$0 = Math_fround($0);
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $6 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAPF32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
$6 = btCapsuleShape__operator_20new_28unsigned_20long_29(64 | 0) | 0;
|
|
btCapsuleShape__btCapsuleShape_28float_2c_20float_29($6 | 0, Math_fround(Math_fround(HEAPF32[($4 + 12 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2]))) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btCapsuleShape__operator_20new_28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function CapsuleShape_updateProp_28int_2c_20float_2c_20float_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = $3 | 0;
|
|
var $6 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
btCapsuleShape__updateProp_28float_2c_20float_2c_20int_29(HEAP32[($6 + 12 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 24 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($6 + 20 | 0) >> 2])), HEAP32[($6 + 16 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCapsuleShape__updateProp_28float_2c_20float_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $34 = 0, $46 = 0, $51 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 60 | 0) >> 2] = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
HEAPF32[($6 + 12 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($6 + 8 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($6 + 4 | 0) >> 2] = Math_fround(1.0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 20 | 0 | 0, $6 + 12 | 0 | 0, $6 + 8 | 0 | 0, $6 + 4 | 0 | 0);
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($7 + 60 | 0) >> 2] | 0 | 0) == (1 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$34 = $6 + 24 | 0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 36 | 0 | 0, $34 | 0, $6 + 20 | 0 | 0, $34 | 0);
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (HEAP32[($7 + 60 | 0) >> 2] | 0) {
|
|
break label$4
|
|
}
|
|
$46 = $6 + 24 | 0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 36 | 0 | 0, $6 + 20 | 0 | 0, $46 | 0, $46 | 0);
|
|
break label$3;
|
|
}
|
|
$51 = $6 + 24 | 0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 36 | 0 | 0, $51 | 0, $51 | 0, $6 + 20 | 0 | 0);
|
|
}
|
|
}
|
|
HEAP32[$6 >> 2] = ((HEAP32[($6 + 16 | 0) >> 2] | 0) + 2 | 0 | 0) % (3 | 0) | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($7 + 36 | 0 | 0) | 0) + ((HEAP32[$6 >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 52 | 0) >> 2] = wasm2js_f32$0;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btVector3__operator_20float__28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function ConvexInternalShape_getImplicitShapeDimensions_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = btConvexInternalShape__getImplicitShapeDimensions_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btConvexInternalShape__getImplicitShapeDimensions_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 36 | 0 | 0;
|
|
}
|
|
|
|
function CylinderShape_new_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = btCylinderShape__operator_20new_28unsigned_20long_29(64 | 0) | 0;
|
|
btCylinderShape__btCylinderShape_28btVector3_20const__29($5 | 0, HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btCylinderShape__operator_20new_28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function CylinderShape_updateProp_28int_2c_20float_2c_20float_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = $3 | 0;
|
|
var $6 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
btCylinderShape__updateProp_28float_2c_20float_2c_20int_29(HEAP32[($6 + 12 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 24 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($6 + 20 | 0) >> 2])), HEAP32[($6 + 16 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCylinderShape__updateProp_28float_2c_20float_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $34 = 0, $46 = 0, $51 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 60 | 0) >> 2] = $0;
|
|
HEAPF32[($6 + 56 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 52 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 48 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 60 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 60 | 0) >> 2] = HEAP32[($6 + 48 | 0) >> 2] | 0;
|
|
HEAPF32[($6 + 44 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($6 + 40 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($6 + 36 | 0) >> 2] = Math_fround(1.0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 20 | 0 | 0, $6 + 44 | 0 | 0, $6 + 40 | 0 | 0, $6 + 36 | 0 | 0);
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($7 + 60 | 0) >> 2] | 0 | 0) == (1 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$34 = $6 + 56 | 0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 36 | 0 | 0, $34 | 0, $6 + 52 | 0 | 0, $34 | 0);
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (HEAP32[($7 + 60 | 0) >> 2] | 0) {
|
|
break label$4
|
|
}
|
|
$46 = $6 + 56 | 0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 36 | 0 | 0, $6 + 52 | 0 | 0, $46 | 0, $46 | 0);
|
|
break label$3;
|
|
}
|
|
$51 = $6 + 56 | 0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 36 | 0 | 0, $51 | 0, $51 | 0, $6 + 52 | 0 | 0);
|
|
}
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($7))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($7))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($7))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 20 | 0 | 0, $6 + 16 | 0 | 0, $6 + 12 | 0 | 0, $6 + 8 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29($7 + 36 | 0 | 0, $6 + 20 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function btVector3__operator___28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[$5 >> 2] = Math_fround(Math_fround(HEAPF32[$5 >> 2]) - Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2]));
|
|
HEAPF32[($5 + 4 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2]) - Math_fround(HEAPF32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2]));
|
|
HEAPF32[($5 + 8 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 8 | 0) >> 2]) - Math_fround(HEAPF32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2]));
|
|
return $5 | 0;
|
|
}
|
|
|
|
function ConeShape_new_28float_2c_20float_29($0, $1) {
|
|
$0 = Math_fround($0);
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $6 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAPF32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
$6 = btConeShape__operator_20new_28unsigned_20long_29(84 | 0) | 0;
|
|
btConeShape__btConeShape_28float_2c_20float_29($6 | 0, Math_fround(Math_fround(HEAPF32[($4 + 12 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2]))) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btConeShape__operator_20new_28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function ConeShape_setRadius_28int_2c_20float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
btConeShape__setRadius_28float_29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2])));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConeShape__setRadius_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 64 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function ConeShape_setHeight_28int_2c_20float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
btConeShape__setHeight_28float_29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2])));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConeShape__setHeight_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 68 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function ConeShape_setConeUpIndex_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btConeShape__setConeUpIndex_28int_29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function StaticPlaneShape_new_28int_2c_20float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $6 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
$6 = btStaticPlaneShape__operator_20new_28unsigned_20long_29(92 | 0) | 0;
|
|
btStaticPlaneShape__btStaticPlaneShape_28btVector3_20const__2c_20float_29($6 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2]))) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btStaticPlaneShape__operator_20new_28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function StaticPlaneShape_setPlaneConstant_28int_2c_20float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btStaticPlaneShape__setPlaneConstant_28float_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2])));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btStaticPlaneShape__setPlaneConstant_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 72 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function StaticPlaneShape_getPlaneNormal_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = btStaticPlaneShape__getPlaneNormal_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btStaticPlaneShape__getPlaneNormal_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 56 | 0 | 0;
|
|
}
|
|
|
|
function ccCompoundShape_new_28_29() {
|
|
var $1 = 0;
|
|
$1 = cc__ccCompoundShape__operator_20new_28unsigned_20long_29(100 | 0) | 0;
|
|
__memset($1 | 0, 0 | 0, 100 | 0) | 0;
|
|
cc__ccCompoundShape__ccCompoundShape_28_29($1 | 0) | 0;
|
|
return $1 | 0;
|
|
}
|
|
|
|
function cc__ccCompoundShape__operator_20new_28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function cc__ccCompoundShape__ccCompoundShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCompoundShape__btCompoundShape_28bool_2c_20int_29($4 | 0, 1 | 0, 0 | 0) | 0;
|
|
HEAP32[$4 >> 2] = GOT_data_internal_vtable_20for_20cc__ccCompoundShape + 8 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function CompoundShape_getNumChildShapes_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = btCompoundShape__getNumChildShapes_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btCompoundShape__getNumChildShapes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $7 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$7 = btAlignedObjectArray_btCompoundShapeChild___size_28_29_20const((HEAP32[($3 + 12 | 0) >> 2] | 0) + 20 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCompoundShapeChild___size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function CompoundShape_addChildShape_28int_2c_20int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btCompoundShape__addChildShape_28btTransform_20const__2c_20btCollisionShape__29(HEAP32[$5 >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function CompoundShape_removeChildShape_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$6 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($6, HEAP32[($4 + 8 | 0) >> 2] | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function CompoundShape_getChildShape_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $8 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$8 = btCompoundShape__getChildShape_28int_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btCompoundShape__getChildShape_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $10 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$10 = HEAP32[((btAlignedObjectArray_btCompoundShapeChild___operator_5b_5d_28int_29((HEAP32[($4 + 12 | 0) >> 2] | 0) + 20 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) + 64 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCompoundShapeChild___operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $14 = 0, $29 = 0, $5 = 0, $40 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
$14 = GOT_data_internal___memory_base;
|
|
__assert_fail($14 + 85840 | 0 | 0, $14 + 78192 | 0 | 0, 183 | 0, $14 + 83901 | 0 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btCompoundShapeChild___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
$29 = GOT_data_internal___memory_base;
|
|
__assert_fail($29 + 87321 | 0 | 0, $29 + 78192 | 0 | 0, 184 | 0, $29 + 83901 | 0 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$40 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($4 + 8 | 0) >> 2] | 0, 80) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $40 | 0;
|
|
}
|
|
|
|
function CompoundShape_updateChildTransform_28int_2c_20int_2c_20int_2c_20bool_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP8[($6 + 19 | 0) >> 0] = $3;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
cc__ccCompoundShape__updateChildTransform_28btCollisionShape__2c_20btTransform_20const__2c_20bool_29(HEAP32[($6 + 12 | 0) >> 2] | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, (HEAPU8[($6 + 19 | 0) >> 0] | 0) & 1 | 0 | 0);
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function TriangleMesh_new_28_29() {
|
|
var $1 = 0, $2 = 0;
|
|
$1 = btTriangleIndexVertexArray__operator_20new_28unsigned_20long_29(172 | 0) | 0;
|
|
$2 = 1;
|
|
btTriangleMesh__btTriangleMesh_28bool_2c_20bool_29($1 | 0, $2 & 1 | 0 | 0, $2 & 1 | 0 | 0) | 0;
|
|
return $1 | 0;
|
|
}
|
|
|
|
function btTriangleIndexVertexArray__operator_20new_28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function TriangleMesh_addTriangle_28int_2c_20int_2c_20int_2c_20int_2c_20bool_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP8[($7 + 15 | 0) >> 0] = $4;
|
|
HEAP32[($7 + 8 | 0) >> 2] = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
btTriangleMesh__addTriangle_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20bool_29(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0, HEAP32[($7 + 24 | 0) >> 2] | 0 | 0, HEAP32[($7 + 20 | 0) >> 2] | 0 | 0, HEAP32[($7 + 16 | 0) >> 2] | 0 | 0, (HEAPU8[($7 + 15 | 0) >> 0] | 0) & 1 | 0 | 0);
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function BvhTriangleMeshShape_new_28int_2c_20bool_2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP8[($5 + 11 | 0) >> 0] = $1;
|
|
HEAP8[($5 + 10 | 0) >> 0] = $2;
|
|
HEAP32[($5 + 4 | 0) >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
$10 = btBvhTriangleMeshShape__operator_20new_28unsigned_20long_29(84 | 0) | 0;
|
|
btBvhTriangleMeshShape__btBvhTriangleMeshShape_28btStridingMeshInterface__2c_20bool_2c_20bool_29($10 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0, (HEAPU8[($5 + 11 | 0) >> 0] | 0) & 1 | 0 | 0, (HEAPU8[($5 + 10 | 0) >> 0] | 0) & 1 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__operator_20new_28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function BvhTriangleMeshShape_getOptimizedBvh_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = btBvhTriangleMeshShape__getOptimizedBvh_28_29(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__getOptimizedBvh_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 60 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function BvhTriangleMeshShape_setOptimizedBvh_28int_2c_20int_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
$4 = Math_fround($4);
|
|
var $7 = 0, $10 = 0, $11 = 0;
|
|
$7 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 40 | 0) >> 2] = $1;
|
|
HEAPF32[($7 + 36 | 0) >> 2] = $2;
|
|
HEAPF32[($7 + 32 | 0) >> 2] = $3;
|
|
HEAPF32[($7 + 28 | 0) >> 2] = $4;
|
|
HEAP32[($7 + 24 | 0) >> 2] = HEAP32[($7 + 44 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 20 | 0) >> 2] = HEAP32[($7 + 40 | 0) >> 2] | 0;
|
|
$10 = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
$11 = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 4 | 0 | 0, $7 + 36 | 0 | 0, $7 + 32 | 0 | 0, $7 + 28 | 0 | 0) | 0;
|
|
btBvhTriangleMeshShape__setOptimizedBvh_28btOptimizedBvh__2c_20btVector3_20const__29($10 | 0, $11 | 0, $7 + 4 | 0 | 0);
|
|
__stack_pointer = $7 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function ScaledBvhTriangleMeshShape_new_28int_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $9 = 0, $10 = 0;
|
|
$6 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 44 | 0) >> 2] = $0;
|
|
HEAPF32[($6 + 40 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 36 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 32 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 28 | 0) >> 2] = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
$9 = btScaledBvhTriangleMeshShape__operator_20new_28unsigned_20long_29(44 | 0) | 0;
|
|
$10 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 12 | 0 | 0, $6 + 40 | 0 | 0, $6 + 36 | 0 | 0, $6 + 32 | 0 | 0) | 0;
|
|
btScaledBvhTriangleMeshShape__btScaledBvhTriangleMeshShape_28btBvhTriangleMeshShape__2c_20btVector3_20const__29($9 | 0, $10 | 0, $6 + 12 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 48 | 0;
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btScaledBvhTriangleMeshShape__operator_20new_28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function ConvexTriangleMeshShape_new_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = btConvexTriangleMeshShape__operator_20new_28unsigned_20long_29(104 | 0) | 0;
|
|
btConvexTriangleMeshShape__btConvexTriangleMeshShape_28btStridingMeshInterface__2c_20bool_29($6 | 0, HEAP32[($3 + 8 | 0) >> 2] | 0 | 0, 1 & 1 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btConvexTriangleMeshShape__operator_20new_28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function EmptyShape_static_28_29() {
|
|
var $13 = 0;
|
|
label$1 : {
|
|
if (!(((HEAPU8[(GOT_data_internal___memory_base + 113784 | 0) >> 0] | 0) & 255 | 0 | 0) == (0 & 255 | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$13 = GOT_data_internal___memory_base;
|
|
btEmptyShape__btEmptyShape_28_29($13 + 113744 | 0 | 0) | 0;
|
|
__cxa_atexit(GOT_data_internal___table_base + 5 | 0 | 0, 0 | 0, $13 + 65536 | 0 | 0) | 0;
|
|
HEAP8[($13 + 113784 | 0) >> 0] = 1;
|
|
}
|
|
return GOT_data_internal___memory_base + 113744 | 0 | 0;
|
|
}
|
|
|
|
function __cxx_global_array_dtor_9($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btEmptyShape___btEmptyShape_28_29(GOT_data_internal___memory_base + 113744 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function SimplexShape_new_28_29() {
|
|
var $1 = 0;
|
|
$1 = btBU_Simplex1to4__operator_20new_28unsigned_20long_29(168 | 0) | 0;
|
|
btBU_Simplex1to4__btBU_Simplex1to4_28_29($1 | 0) | 0;
|
|
return $1 | 0;
|
|
}
|
|
|
|
function btBU_Simplex1to4__operator_20new_28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function SimplexShape_addVertex_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btBU_Simplex1to4__addVertex_28btVector3_20const__29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function TerrainShape_new_28int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
$4 = Math_fround($4);
|
|
$5 = Math_fround($5);
|
|
var $8 = 0, $10 = 0, $22 = 0;
|
|
$8 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 20 | 0) >> 2] = $2;
|
|
HEAPF32[($8 + 16 | 0) >> 2] = $3;
|
|
HEAPF32[($8 + 12 | 0) >> 2] = $4;
|
|
HEAPF32[($8 + 8 | 0) >> 2] = $5;
|
|
$10 = btHeightfieldTerrainShape__operator_20new_28unsigned_20long_29(132 | 0) | 0;
|
|
btHeightfieldTerrainShape__btHeightfieldTerrainShape_28int_2c_20int_2c_20void_20const__2c_20float_2c_20float_2c_20float_2c_20int_2c_20PHY_ScalarType_2c_20bool_29($10 | 0, HEAP32[($8 + 28 | 0) >> 2] | 0 | 0, HEAP32[($8 + 24 | 0) >> 2] | 0 | 0, HEAP32[($8 + 20 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($8 + 16 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($8 + 12 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($8 + 8 | 0) >> 2])), 1 | 0, 0 | 0, 0 & 1 | 0 | 0) | 0;
|
|
HEAP32[($8 + 4 | 0) >> 2] = $10;
|
|
$22 = HEAP32[($8 + 4 | 0) >> 2] | 0;
|
|
__stack_pointer = $8 + 32 | 0;
|
|
return $22 | 0;
|
|
}
|
|
|
|
function btHeightfieldTerrainShape__operator_20new_28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function DefaultCollisionConfiguration_static_28_29() {
|
|
var $2 = 0, $18 = 0;
|
|
$2 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $2;
|
|
label$1 : {
|
|
if (!(((HEAPU8[(GOT_data_internal___memory_base + 113876 | 0) >> 0] | 0) & 255 | 0 | 0) == (0 & 255 | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btDefaultCollisionConstructionInfo__btDefaultCollisionConstructionInfo_28_29($2 + 8 | 0 | 0) | 0;
|
|
$18 = GOT_data_internal___memory_base;
|
|
btDefaultCollisionConfiguration__btDefaultCollisionConfiguration_28btDefaultCollisionConstructionInfo_20const__29($18 + 113788 | 0 | 0, $2 + 8 | 0 | 0) | 0;
|
|
__cxa_atexit(GOT_data_internal___table_base + 6 | 0 | 0, 0 | 0, $18 + 65536 | 0 | 0) | 0;
|
|
HEAP8[($18 + 113876 | 0) >> 0] = 1;
|
|
}
|
|
__stack_pointer = $2 + 32 | 0;
|
|
return GOT_data_internal___memory_base + 113788 | 0 | 0;
|
|
}
|
|
|
|
function btDefaultCollisionConstructionInfo__btDefaultCollisionConstructionInfo_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 4096;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 4096;
|
|
HEAP32[($4 + 16 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = 1;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function __cxx_global_array_dtor_10($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btDefaultCollisionConfiguration___btDefaultCollisionConfiguration_28_29(GOT_data_internal___memory_base + 113788 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function Dispatcher_getNumManifolds_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0, $8 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$5 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
$8 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 36 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function Dispatcher_getManifoldByIndexInternal_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$6 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
$10 = FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 40 | 0) >> 2] | 0 | 0]($6, HEAP32[($4 + 8 | 0) >> 2] | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function CollisionDispatcher_new_28_29() {
|
|
var $1 = 0;
|
|
$1 = operator_20new_28unsigned_20long_29(10448 | 0) | 0;
|
|
btCollisionDispatcher__btCollisionDispatcher_28btCollisionConfiguration__29($1 | 0, DefaultCollisionConfiguration_static_28_29() | 0 | 0) | 0;
|
|
return $1 | 0;
|
|
}
|
|
|
|
function DbvtBroadphase_new_28_29() {
|
|
var $1 = 0;
|
|
$1 = operator_20new_28unsigned_20long_29(176 | 0) | 0;
|
|
btDbvtBroadphase__btDbvtBroadphase_28btOverlappingPairCache__29($1 | 0, 0 | 0) | 0;
|
|
return $1 | 0;
|
|
}
|
|
|
|
function SequentialImpulseConstraintSolver_new_28_29() {
|
|
var $1 = 0;
|
|
$1 = btSequentialImpulseConstraintSolver__operator_20new_28unsigned_20long_29(236 | 0) | 0;
|
|
btSequentialImpulseConstraintSolver__btSequentialImpulseConstraintSolver_28_29($1 | 0) | 0;
|
|
return $1 | 0;
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__operator_20new_28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function CollisionWorld_rayTest_28int_2c_20int_2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $8 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
$8 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 32 | 0) >> 2] | 0 | 0]($8, HEAP32[($6 + 24 | 0) >> 2] | 0, HEAP32[($6 + 20 | 0) >> 2] | 0, HEAP32[($6 + 16 | 0) >> 2] | 0);
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__getDispatchInfo_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 28 | 0 | 0;
|
|
}
|
|
|
|
function CollisionWorld_addCollisionObject_28int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $8 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
$8 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 36 | 0) >> 2] | 0 | 0]($8, HEAP32[($6 + 24 | 0) >> 2] | 0, HEAP32[($6 + 20 | 0) >> 2] | 0, HEAP32[($6 + 16 | 0) >> 2] | 0);
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function CollisionWorld_removeCollisionObject_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$6 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 40 | 0) >> 2] | 0 | 0]($6, HEAP32[($4 + 8 | 0) >> 2] | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function CollisionWorld_convexSweepTest_28int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float_29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = Math_fround($5);
|
|
var $8 = 0;
|
|
$8 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 12 | 0) >> 2] = $4;
|
|
HEAPF32[($8 + 8 | 0) >> 2] = $5;
|
|
HEAP32[($8 + 4 | 0) >> 2] = HEAP32[($8 + 28 | 0) >> 2] | 0;
|
|
btCollisionWorld__convexSweepTest_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29_20const(HEAP32[($8 + 4 | 0) >> 2] | 0 | 0, HEAP32[($8 + 24 | 0) >> 2] | 0 | 0, HEAP32[($8 + 20 | 0) >> 2] | 0 | 0, HEAP32[($8 + 16 | 0) >> 2] | 0 | 0, HEAP32[($8 + 12 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($8 + 8 | 0) >> 2])));
|
|
__stack_pointer = $8 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function CollisionWorld_setDebugDrawer_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$6 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($6, HEAP32[($4 + 8 | 0) >> 2] | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function CollisionWorld_debugDrawWorld_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$5 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 24 | 0) >> 2] | 0 | 0]($5);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function DynamicsWorld_addAction_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$6 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($6, HEAP32[($4 + 8 | 0) >> 2] | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function DynamicsWorld_removeAction_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$6 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 68 | 0) >> 2] | 0 | 0]($6, HEAP32[($4 + 8 | 0) >> 2] | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDynamicsWorld__getSolverInfo_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 92 | 0 | 0;
|
|
}
|
|
|
|
function ccDiscreteDynamicsWorld_new_28int_2c_20int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $7 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$7 = cc__ccDiscreteDynamicsWorld__operator_20new_28unsigned_20long_29(348 | 0) | 0;
|
|
cc__ccDiscreteDynamicsWorld__ccDiscreteDynamicsWorld_28btDispatcher__2c_20btBroadphaseInterface__2c_20btConstraintSolver__2c_20btCollisionConfiguration__29($7 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0, DefaultCollisionConfiguration_static_28_29() | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function cc__ccDiscreteDynamicsWorld__operator_20new_28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function DynamicsWorld_setGravity_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$6 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 72 | 0) >> 2] | 0 | 0]($6, HEAP32[($4 + 8 | 0) >> 2] | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function DynamicsWorld_addRigidBody_28int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $8 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
$8 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 88 | 0) >> 2] | 0 | 0]($8, HEAP32[($6 + 24 | 0) >> 2] | 0, HEAP32[($6 + 20 | 0) >> 2] | 0, HEAP32[($6 + 16 | 0) >> 2] | 0);
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function DynamicsWorld_removeRigidBody_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$6 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 92 | 0) >> 2] | 0 | 0]($6, HEAP32[($4 + 8 | 0) >> 2] | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function DynamicsWorld_addConstraint_28int_2c_20int_2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $8 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 7 | 0) >> 0] = $2;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
$8 = HEAP32[$5 >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($8, HEAP32[($5 + 8 | 0) >> 2] | 0, (HEAPU8[($5 + 7 | 0) >> 0] | 0) & 1 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function DynamicsWorld_removeConstraint_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$6 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 60 | 0) >> 2] | 0 | 0]($6, HEAP32[($4 + 8 | 0) >> 2] | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function DynamicsWorld_stepSimulation_28int_2c_20float_2c_20int_2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $8 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
$8 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 52 | 0) >> 2] | 0 | 0]($8, Math_fround(HEAPF32[($6 + 24 | 0) >> 2]), HEAP32[($6 + 20 | 0) >> 2] | 0, Math_fround(HEAPF32[($6 + 16 | 0) >> 2])) | 0;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function ccDiscreteDynamicsWorld_setAllowSleep_28int_2c_20bool_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP8[($4 + 11 | 0) >> 0] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
cc__ccDiscreteDynamicsWorld__setAllowSleep_28bool_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, (HEAPU8[($4 + 11 | 0) >> 0] | 0) & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function cc__ccDiscreteDynamicsWorld__setAllowSleep_28bool_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
$5 = 1;
|
|
HEAP8[($4 + 11 | 0) >> 0] = $1 & $5 | 0;
|
|
HEAP8[GOT_data_internal_gDisableDeactivation >> 0] = ((HEAPU8[($4 + 11 | 0) >> 0] | 0) ^ -1 | 0) & $5 | 0;
|
|
return;
|
|
}
|
|
|
|
function TypedConstraint_getFixedBody_28_29() {
|
|
return btTypedConstraint__getFixedBody_28_29() | 0 | 0;
|
|
}
|
|
|
|
function TypedConstraint_getDbgDrawSize_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = Math_fround(btTypedConstraint__getDbgDrawSize_28_29(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0));
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($6);
|
|
}
|
|
|
|
function btTypedConstraint__getDbgDrawSize_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 40 | 0) >> 2]));
|
|
}
|
|
|
|
function TypedConstraint_setDbgDrawSize_28int_2c_20float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btTypedConstraint__setDbgDrawSize_28float_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2])));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTypedConstraint__setDbgDrawSize_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 40 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function HingeConstraint_new_28int_2c_20int_2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $12 = 0, $20 = 0;
|
|
$6 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 32 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 28 | 0) >> 2] = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = HEAP32[($6 + 40 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 20 | 0) >> 2] = HEAP32[($6 + 36 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 16 | 0) >> 2] = HEAP32[($6 + 32 | 0) >> 2] | 0;
|
|
$12 = btHingeConstraint__operator_20new_28unsigned_20long_29(768 | 0) | 0;
|
|
btHingeConstraint__btHingeConstraint_28btRigidBody__2c_20btRigidBody__2c_20btTransform_20const__2c_20btTransform_20const__2c_20bool_29($12 | 0, HEAP32[($6 + 28 | 0) >> 2] | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0) | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $12;
|
|
$20 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $6 + 48 | 0;
|
|
return $20 | 0;
|
|
}
|
|
|
|
function btHingeConstraint__operator_20new_28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function HingeConstraint_setFrames_28int_2c_20int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 16 | 0) >> 2] = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
btHingeConstraint__setFrames_28btTransform_20const__2c_20btTransform_20const__29(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function HingeConstraint_setLimit_28int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
$4 = Math_fround($4);
|
|
$5 = Math_fround($5);
|
|
var $8 = 0;
|
|
$8 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($8 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($8 + 20 | 0) >> 2] = $2;
|
|
HEAPF32[($8 + 16 | 0) >> 2] = $3;
|
|
HEAPF32[($8 + 12 | 0) >> 2] = $4;
|
|
HEAPF32[($8 + 8 | 0) >> 2] = $5;
|
|
HEAP32[($8 + 4 | 0) >> 2] = HEAP32[($8 + 28 | 0) >> 2] | 0;
|
|
btHingeConstraint__setLimit_28float_2c_20float_2c_20float_2c_20float_2c_20float_29(HEAP32[($8 + 4 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($8 + 24 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($8 + 20 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($8 + 16 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($8 + 12 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($8 + 8 | 0) >> 2])));
|
|
__stack_pointer = $8 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHingeConstraint__setLimit_28float_2c_20float_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
$4 = Math_fround($4);
|
|
$5 = Math_fround($5);
|
|
var $8 = 0;
|
|
$8 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($8 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($8 + 20 | 0) >> 2] = $2;
|
|
HEAPF32[($8 + 16 | 0) >> 2] = $3;
|
|
HEAPF32[($8 + 12 | 0) >> 2] = $4;
|
|
HEAPF32[($8 + 8 | 0) >> 2] = $5;
|
|
btAngularLimit__set_28float_2c_20float_2c_20float_2c_20float_2c_20float_29((HEAP32[($8 + 28 | 0) >> 2] | 0) + 688 | 0 | 0, Math_fround(Math_fround(HEAPF32[($8 + 24 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($8 + 20 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($8 + 16 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($8 + 12 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($8 + 8 | 0) >> 2])));
|
|
__stack_pointer = $8 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function HingeConstraint_setAngularOnly_28int_2c_20bool_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP8[($4 + 11 | 0) >> 0] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btHingeConstraint__setAngularOnly_28bool_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, (HEAPU8[($4 + 11 | 0) >> 0] | 0) & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHingeConstraint__setAngularOnly_28bool_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP8[($4 + 11 | 0) >> 0] = $1;
|
|
HEAP8[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 736 | 0) >> 0] = (HEAPU8[($4 + 11 | 0) >> 0] | 0) & 1 | 0;
|
|
return;
|
|
}
|
|
|
|
function HingeConstraint_enableMotor_28int_2c_20bool_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP8[($4 + 11 | 0) >> 0] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btHingeConstraint__enableMotor_28bool_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, (HEAPU8[($4 + 11 | 0) >> 0] | 0) & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHingeConstraint__enableMotor_28bool_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP8[($4 + 11 | 0) >> 0] = $1;
|
|
HEAP8[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 737 | 0) >> 0] = (HEAPU8[($4 + 11 | 0) >> 0] | 0) & 1 | 0;
|
|
return;
|
|
}
|
|
|
|
function HingeConstraint_setMotorVelocity_28int_2c_20float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btHingeConstraint__setMotorTargetVelocity_28float_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2])));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHingeConstraint__setMotorTargetVelocity_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 680 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function HingeConstraint_setMaxMotorImpulse_28int_2c_20float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btHingeConstraint__setMaxMotorImpulse_28float_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2])));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHingeConstraint__setMaxMotorImpulse_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 684 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function HingeConstraint_setMotorTarget_28int_2c_20float_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btHingeConstraint__setMotorTarget_28float_2c_20float_29(HEAP32[$5 >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 8 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2])));
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function P2PConstraint_new_28int_2c_20int_2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $12 = 0, $17 = 0;
|
|
$6 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 32 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 28 | 0) >> 2] = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = HEAP32[($6 + 40 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 20 | 0) >> 2] = HEAP32[($6 + 36 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 16 | 0) >> 2] = HEAP32[($6 + 32 | 0) >> 2] | 0;
|
|
$12 = btPoint2PointConstraint__operator_20new_28unsigned_20long_29(360 | 0) | 0;
|
|
btPoint2PointConstraint__btPoint2PointConstraint_28btRigidBody__2c_20btRigidBody__2c_20btVector3_20const__2c_20btVector3_20const__29($12 | 0, HEAP32[($6 + 28 | 0) >> 2] | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $12;
|
|
$17 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $6 + 48 | 0;
|
|
return $17 | 0;
|
|
}
|
|
|
|
function btPoint2PointConstraint__operator_20new_28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function P2PConstraint_setPivotA_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btPoint2PointConstraint__setPivotA_28btVector3_20const__29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPoint2PointConstraint__setPivotA_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, $8 = 0, $10 = 0, $32 = 0, $42 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$8 = (HEAP32[($4 + 12 | 0) >> 2] | 0) + 300 | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$32 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $8;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $32;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$10 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $10 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$42 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8 + $10 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $42;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function P2PConstraint_setPivotB_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btPoint2PointConstraint__setPivotB_28btVector3_20const__29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPoint2PointConstraint__setPivotB_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, $8 = 0, $10 = 0, $32 = 0, $42 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$8 = (HEAP32[($4 + 12 | 0) >> 2] | 0) + 316 | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$32 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $8;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $32;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$10 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $10 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$42 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8 + $10 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $42;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function FixedConstraint_new_28int_2c_20int_2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $12 = 0, $17 = 0;
|
|
$6 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 32 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 28 | 0) >> 2] = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = HEAP32[($6 + 40 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 20 | 0) >> 2] = HEAP32[($6 + 36 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 16 | 0) >> 2] = HEAP32[($6 + 32 | 0) >> 2] | 0;
|
|
$12 = btGeneric6DofSpring2Constraint__operator_20new_28unsigned_20long_29(1460 | 0) | 0;
|
|
btFixedConstraint__btFixedConstraint_28btRigidBody__2c_20btRigidBody__2c_20btTransform_20const__2c_20btTransform_20const__29($12 | 0, HEAP32[($6 + 28 | 0) >> 2] | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $12;
|
|
$17 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $6 + 48 | 0;
|
|
return $17 | 0;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__operator_20new_28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function FixedConstraint_setFrames_28int_2c_20int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 16 | 0) >> 2] = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
btGeneric6DofSpring2Constraint__setFrames_28btTransform_20const__2c_20btTransform_20const__29(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function TypedConstraint_setMaxImpulseThreshold_28int_2c_20float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btTypedConstraint__setBreakingImpulseThreshold_28float_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2])));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTypedConstraint__setBreakingImpulseThreshold_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 16 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function Generic6DofSpring2Constraint_new_28int_2c_20int_2c_20int_2c_20int_2c_20int_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $13 = 0, $19 = 0;
|
|
$7 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 32 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $4;
|
|
HEAP32[($7 + 24 | 0) >> 2] = HEAP32[($7 + 44 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 20 | 0) >> 2] = HEAP32[($7 + 40 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 16 | 0) >> 2] = HEAP32[($7 + 36 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 12 | 0) >> 2] = HEAP32[($7 + 32 | 0) >> 2] | 0;
|
|
$13 = btGeneric6DofSpring2Constraint__operator_20new_28unsigned_20long_29(1460 | 0) | 0;
|
|
btGeneric6DofSpring2Constraint__btGeneric6DofSpring2Constraint_28btRigidBody__2c_20btRigidBody__2c_20btTransform_20const__2c_20btTransform_20const__2c_20RotateOrder_29($13 | 0, HEAP32[($7 + 24 | 0) >> 2] | 0 | 0, HEAP32[($7 + 20 | 0) >> 2] | 0 | 0, HEAP32[($7 + 16 | 0) >> 2] | 0 | 0, HEAP32[($7 + 12 | 0) >> 2] | 0 | 0, HEAP32[($7 + 28 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($7 + 8 | 0) >> 2] = $13;
|
|
$19 = HEAP32[($7 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $7 + 48 | 0;
|
|
return $19 | 0;
|
|
}
|
|
|
|
function Generic6DofSpring2Constraint_setFrames_28int_2c_20int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 16 | 0) >> 2] = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
btGeneric6DofSpring2Constraint__setFrames_28btTransform_20const__2c_20btTransform_20const__29(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function Generic6DofSpring2Constraint_setLimit_28int_2c_20int_2c_20float_2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
var $6 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
btGeneric6DofSpring2Constraint__setLimit_28int_2c_20float_2c_20float_29(HEAP32[($6 + 12 | 0) >> 2] | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 20 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($6 + 16 | 0) >> 2])));
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__setLimit_28int_2c_20float_2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $7 = 0, $15 = Math_fround(0), $23 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAPF32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$15 = Math_fround(HEAPF32[($6 + 4 | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($7 + 680 | 0 | 0) | 0) + ((HEAP32[($6 + 8 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $15), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$23 = Math_fround(HEAPF32[$6 >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29(($7 + 680 | 0) + 16 | 0 | 0) | 0) + ((HEAP32[($6 + 8 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $23), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btNormalizeAngle_28float_29(Math_fround(Math_fround(HEAPF32[($6 + 4 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btNormalizeAngle_28float_29(Math_fround(Math_fround(HEAPF32[$6 >> 2]))))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAPF32[(($7 + 968 | 0) + Math_imul((HEAP32[($6 + 8 | 0) >> 2] | 0) - 3 | 0, 88) | 0) >> 2] = Math_fround(HEAPF32[($6 + 4 | 0) >> 2]);
|
|
HEAPF32[((($7 + 968 | 0) + Math_imul((HEAP32[($6 + 8 | 0) >> 2] | 0) - 3 | 0, 88) | 0) + 4 | 0) >> 2] = Math_fround(HEAPF32[$6 >> 2]);
|
|
}
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btNormalizeAngle_28float_29($0) {
|
|
$0 = Math_fround($0);
|
|
var $3 = 0, $24 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAPF32[($3 + 8 | 0) >> 2] = $0;
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(btFmod_28float_2c_20float_29(Math_fround(Math_fround(HEAPF32[($3 + 8 | 0) >> 2])), Math_fround(Math_fround(6.2831854820251465))))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($3 + 8 | 0) >> 2]) < Math_fround(-3.1415927410125732) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($3 + 12 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($3 + 8 | 0) >> 2]) + Math_fround(6.2831854820251465));
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($3 + 8 | 0) >> 2]) > Math_fround(3.1415927410125732) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAPF32[($3 + 12 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($3 + 8 | 0) >> 2]) - Math_fround(6.2831854820251465));
|
|
break label$1;
|
|
}
|
|
HEAPF32[($3 + 12 | 0) >> 2] = Math_fround(HEAPF32[($3 + 8 | 0) >> 2]);
|
|
}
|
|
$24 = Math_fround(HEAPF32[($3 + 12 | 0) >> 2]);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($24);
|
|
}
|
|
|
|
function Generic6DofSpring2Constraint_enableMotor_28int_2c_20int_2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 7 | 0) >> 0] = $2;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btGeneric6DofSpring2Constraint__enableMotor_28int_2c_20bool_29(HEAP32[$5 >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, (HEAPU8[($5 + 7 | 0) >> 0] | 0) & 1 | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function Generic6DofSpring2Constraint_setMaxMotorForce_28int_2c_20int_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btGeneric6DofSpring2Constraint__setMaxMotorForce_28int_2c_20float_29(HEAP32[$5 >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2])));
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function Generic6DofSpring2Constraint_setTargetVelocity_28int_2c_20int_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btGeneric6DofSpring2Constraint__setTargetVelocity_28int_2c_20float_29(HEAP32[$5 >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2])));
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function Generic6DofSpring2Constraint_setServo_28int_2c_20int_2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 7 | 0) >> 0] = $2;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btGeneric6DofSpring2Constraint__setServo_28int_2c_20bool_29(HEAP32[$5 >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, (HEAPU8[($5 + 7 | 0) >> 0] | 0) & 1 | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function Generic6DofSpring2Constraint_setServoTarget_28int_2c_20int_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btGeneric6DofSpring2Constraint__setServoTarget_28int_2c_20float_29(HEAP32[$5 >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2])));
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function Generic6DofSpring2Constraint_enableSpring_28int_2c_20int_2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 7 | 0) >> 0] = $2;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btGeneric6DofSpring2Constraint__enableSpring_28int_2c_20bool_29(HEAP32[$5 >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, (HEAPU8[($5 + 7 | 0) >> 0] | 0) & 1 | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function Generic6DofSpring2Constraint_setStiffness_28int_2c_20int_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btGeneric6DofSpring2Constraint__setStiffness_28int_2c_20float_2c_20bool_29(HEAP32[$5 >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2])), 1 & 1 | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function Generic6DofSpring2Constraint_setDamping_28int_2c_20int_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btGeneric6DofSpring2Constraint__setDamping_28int_2c_20float_2c_20bool_29(HEAP32[$5 >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2])), 1 & 1 | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function Generic6DofSpring2Constraint_setBounce_28int_2c_20int_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btGeneric6DofSpring2Constraint__setBounce_28int_2c_20float_29(HEAP32[$5 >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2])));
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function Generic6DofSpring2Constraint_setEquilibriumPoint_28int_2c_20int_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btGeneric6DofSpring2Constraint__setEquilibriumPoint_28int_2c_20float_29(HEAP32[$5 >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2])));
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function DebugDraw_setDebugMode_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$6 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 52 | 0) >> 2] | 0 | 0]($6, HEAP32[($4 + 8 | 0) >> 2] | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function DebugDraw_getDebugMode_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0, $8 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$5 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
$8 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function DebugDraw_setActiveObjectColor_28int_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $8 = 0, $26 = 0;
|
|
$6 = __stack_pointer - 160 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 156 | 0) >> 2] = $0;
|
|
HEAPF32[($6 + 152 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 148 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 144 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 140 | 0) >> 2] = HEAP32[($6 + 156 | 0) >> 2] | 0;
|
|
$8 = HEAP32[($6 + 140 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($6 + 12 | 0, $8);
|
|
btVector3__setX_28float_29($6 + 12 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 152 | 0) >> 2])));
|
|
btVector3__setY_28float_29($6 + 12 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 148 | 0) >> 2])));
|
|
btVector3__setZ_28float_29($6 + 12 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 144 | 0) >> 2])));
|
|
$26 = HEAP32[($6 + 140 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$26 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($26, $6 + 12 | 0);
|
|
__stack_pointer = $6 + 160 | 0;
|
|
return;
|
|
}
|
|
|
|
function btVector3__setY_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function btVector3__setZ_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function DebugDraw_setDeactiveObjectColor_28int_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $8 = 0, $32 = 0;
|
|
$6 = __stack_pointer - 160 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 156 | 0) >> 2] = $0;
|
|
HEAPF32[($6 + 152 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 148 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 144 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 140 | 0) >> 2] = HEAP32[($6 + 156 | 0) >> 2] | 0;
|
|
$8 = HEAP32[($6 + 140 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($6 + 12 | 0, $8);
|
|
btVector3__setX_28float_29(($6 + 12 | 0) + 16 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 152 | 0) >> 2])));
|
|
btVector3__setY_28float_29(($6 + 12 | 0) + 16 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 148 | 0) >> 2])));
|
|
btVector3__setZ_28float_29(($6 + 12 | 0) + 16 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 144 | 0) >> 2])));
|
|
$32 = HEAP32[($6 + 140 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$32 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($32, $6 + 12 | 0);
|
|
__stack_pointer = $6 + 160 | 0;
|
|
return;
|
|
}
|
|
|
|
function DebugDraw_setWantsDeactivationObjectColor_28int_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $8 = 0, $32 = 0;
|
|
$6 = __stack_pointer - 160 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 156 | 0) >> 2] = $0;
|
|
HEAPF32[($6 + 152 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 148 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 144 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 140 | 0) >> 2] = HEAP32[($6 + 156 | 0) >> 2] | 0;
|
|
$8 = HEAP32[($6 + 140 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($6 + 12 | 0, $8);
|
|
btVector3__setX_28float_29(($6 + 12 | 0) + 32 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 152 | 0) >> 2])));
|
|
btVector3__setY_28float_29(($6 + 12 | 0) + 32 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 148 | 0) >> 2])));
|
|
btVector3__setZ_28float_29(($6 + 12 | 0) + 32 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 144 | 0) >> 2])));
|
|
$32 = HEAP32[($6 + 140 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$32 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($32, $6 + 12 | 0);
|
|
__stack_pointer = $6 + 160 | 0;
|
|
return;
|
|
}
|
|
|
|
function DebugDraw_setDisabledDeactivationObjectColor_28int_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $8 = 0, $32 = 0;
|
|
$6 = __stack_pointer - 160 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 156 | 0) >> 2] = $0;
|
|
HEAPF32[($6 + 152 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 148 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 144 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 140 | 0) >> 2] = HEAP32[($6 + 156 | 0) >> 2] | 0;
|
|
$8 = HEAP32[($6 + 140 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($6 + 12 | 0, $8);
|
|
btVector3__setX_28float_29(($6 + 12 | 0) + 48 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 152 | 0) >> 2])));
|
|
btVector3__setY_28float_29(($6 + 12 | 0) + 48 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 148 | 0) >> 2])));
|
|
btVector3__setZ_28float_29(($6 + 12 | 0) + 48 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 144 | 0) >> 2])));
|
|
$32 = HEAP32[($6 + 140 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$32 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($32, $6 + 12 | 0);
|
|
__stack_pointer = $6 + 160 | 0;
|
|
return;
|
|
}
|
|
|
|
function DebugDraw_setDisabledSimulationObjectColor_28int_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $8 = 0, $32 = 0;
|
|
$6 = __stack_pointer - 160 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 156 | 0) >> 2] = $0;
|
|
HEAPF32[($6 + 152 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 148 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 144 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 140 | 0) >> 2] = HEAP32[($6 + 156 | 0) >> 2] | 0;
|
|
$8 = HEAP32[($6 + 140 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($6 + 12 | 0, $8);
|
|
btVector3__setX_28float_29(($6 + 12 | 0) + 64 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 152 | 0) >> 2])));
|
|
btVector3__setY_28float_29(($6 + 12 | 0) + 64 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 148 | 0) >> 2])));
|
|
btVector3__setZ_28float_29(($6 + 12 | 0) + 64 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 144 | 0) >> 2])));
|
|
$32 = HEAP32[($6 + 140 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$32 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($32, $6 + 12 | 0);
|
|
__stack_pointer = $6 + 160 | 0;
|
|
return;
|
|
}
|
|
|
|
function DebugDraw_setAABBColor_28int_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $8 = 0, $32 = 0;
|
|
$6 = __stack_pointer - 160 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 156 | 0) >> 2] = $0;
|
|
HEAPF32[($6 + 152 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 148 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 144 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 140 | 0) >> 2] = HEAP32[($6 + 156 | 0) >> 2] | 0;
|
|
$8 = HEAP32[($6 + 140 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($6 + 12 | 0, $8);
|
|
btVector3__setX_28float_29(($6 + 12 | 0) + 80 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 152 | 0) >> 2])));
|
|
btVector3__setY_28float_29(($6 + 12 | 0) + 80 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 148 | 0) >> 2])));
|
|
btVector3__setZ_28float_29(($6 + 12 | 0) + 80 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 144 | 0) >> 2])));
|
|
$32 = HEAP32[($6 + 140 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$32 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($32, $6 + 12 | 0);
|
|
__stack_pointer = $6 + 160 | 0;
|
|
return;
|
|
}
|
|
|
|
function DebugDraw_setContactPointColor_28int_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $8 = 0, $32 = 0;
|
|
$6 = __stack_pointer - 160 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 156 | 0) >> 2] = $0;
|
|
HEAPF32[($6 + 152 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 148 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 144 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 140 | 0) >> 2] = HEAP32[($6 + 156 | 0) >> 2] | 0;
|
|
$8 = HEAP32[($6 + 140 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($6 + 12 | 0, $8);
|
|
btVector3__setX_28float_29(($6 + 12 | 0) + 96 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 152 | 0) >> 2])));
|
|
btVector3__setY_28float_29(($6 + 12 | 0) + 96 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 148 | 0) >> 2])));
|
|
btVector3__setZ_28float_29(($6 + 12 | 0) + 96 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 144 | 0) >> 2])));
|
|
$32 = HEAP32[($6 + 140 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$32 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($32, $6 + 12 | 0);
|
|
__stack_pointer = $6 + 160 | 0;
|
|
return;
|
|
}
|
|
|
|
function DebugDraw_setConstraintLimitColor_28int_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $8 = 0, $32 = 0;
|
|
$6 = __stack_pointer - 160 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 156 | 0) >> 2] = $0;
|
|
HEAPF32[($6 + 152 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 148 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 144 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 140 | 0) >> 2] = HEAP32[($6 + 156 | 0) >> 2] | 0;
|
|
$8 = HEAP32[($6 + 140 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($6 + 12 | 0, $8);
|
|
btVector3__setX_28float_29(($6 + 12 | 0) + 112 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 152 | 0) >> 2])));
|
|
btVector3__setY_28float_29(($6 + 12 | 0) + 112 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 148 | 0) >> 2])));
|
|
btVector3__setZ_28float_29(($6 + 12 | 0) + 112 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 144 | 0) >> 2])));
|
|
$32 = HEAP32[($6 + 140 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$32 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($32, $6 + 12 | 0);
|
|
__stack_pointer = $6 + 160 | 0;
|
|
return;
|
|
}
|
|
|
|
function _malloc_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = dlmalloc(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function _free_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
dlfree(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function _read_f32_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[(HEAP32[($3 + 12 | 0) >> 2] | 0) >> 2]));
|
|
}
|
|
|
|
function _write_f32_28int_2c_20float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function Vec3_new_28float_2c_20float_2c_20float_29($0, $1, $2) {
|
|
$0 = Math_fround($0);
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $7 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAPF32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
$7 = btVector3__operator_20new_28unsigned_20long_29(16 | 0) | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 | 0, $5 + 12 | 0 | 0, $5 + 8 | 0 | 0, $5 + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btVector3__operator_20new_28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function Vec3_set_28int_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
var $6 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29(HEAP32[($6 + 12 | 0) >> 2] | 0 | 0, $6 + 24 | 0 | 0, $6 + 20 | 0 | 0, $6 + 16 | 0 | 0);
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function Vec3_x_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $7 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$7 = Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2]);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($7);
|
|
}
|
|
|
|
function btVector3__x_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function Vec3_y_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $7 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$7 = Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2]);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($7);
|
|
}
|
|
|
|
function btVector3__y_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0 | 0;
|
|
}
|
|
|
|
function Vec3_z_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $7 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$7 = Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2]);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($7);
|
|
}
|
|
|
|
function btVector3__z_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0 | 0;
|
|
}
|
|
|
|
function Quat_new_28float_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3) {
|
|
$0 = Math_fround($0);
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $8 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAPF32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAPF32[$6 >> 2] = $3;
|
|
$8 = operator_20new_28unsigned_20long_29(16 | 0) | 0;
|
|
btQuaternion__btQuaternion_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($8 | 0, $6 + 12 | 0 | 0, $6 + 8 | 0 | 0, $6 + 4 | 0 | 0, $6 | 0) | 0;
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btQuaternion__btQuaternion_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
btQuadWord__btQuadWord_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($8 | 0, HEAP32[($7 + 24 | 0) >> 2] | 0 | 0, HEAP32[($7 + 20 | 0) >> 2] | 0 | 0, HEAP32[($7 + 16 | 0) >> 2] | 0 | 0, HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btQuadWord__btQuadWord_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
HEAPF32[$8 >> 2] = Math_fround(HEAPF32[(HEAP32[($7 + 24 | 0) >> 2] | 0) >> 2]);
|
|
HEAPF32[($8 + 4 | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[($7 + 20 | 0) >> 2] | 0) >> 2]);
|
|
HEAPF32[($8 + 8 | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[($7 + 16 | 0) >> 2] | 0) >> 2]);
|
|
HEAPF32[($8 + 12 | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[($7 + 12 | 0) >> 2] | 0) >> 2]);
|
|
return $8 | 0;
|
|
}
|
|
|
|
function Quat_set_28int_2c_20float_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
$4 = Math_fround($4);
|
|
var $7 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAPF32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAPF32[($7 + 12 | 0) >> 2] = $4;
|
|
HEAP32[($7 + 8 | 0) >> 2] = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
btQuadWord__setValue_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0, $7 + 24 | 0 | 0, $7 + 20 | 0 | 0, $7 + 16 | 0 | 0, $7 + 12 | 0 | 0);
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuadWord__setValue_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
HEAPF32[$8 >> 2] = Math_fround(HEAPF32[(HEAP32[($7 + 24 | 0) >> 2] | 0) >> 2]);
|
|
HEAPF32[($8 + 4 | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[($7 + 20 | 0) >> 2] | 0) >> 2]);
|
|
HEAPF32[($8 + 8 | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[($7 + 16 | 0) >> 2] | 0) >> 2]);
|
|
HEAPF32[($8 + 12 | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[($7 + 12 | 0) >> 2] | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function Quat_x_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $7 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$7 = Math_fround(HEAPF32[(btQuadWord__x_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2]);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($7);
|
|
}
|
|
|
|
function btQuadWord__x_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function Quat_y_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $7 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$7 = Math_fround(HEAPF32[(btQuadWord__y_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2]);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($7);
|
|
}
|
|
|
|
function btQuadWord__y_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0 | 0;
|
|
}
|
|
|
|
function Quat_z_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $7 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$7 = Math_fround(HEAPF32[(btQuadWord__z_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2]);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($7);
|
|
}
|
|
|
|
function btQuadWord__z_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0 | 0;
|
|
}
|
|
|
|
function Quat_w_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $7 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$7 = Math_fround(HEAPF32[(btQuadWord__w_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2]);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($7);
|
|
}
|
|
|
|
function btQuadWord__w_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 12 | 0 | 0;
|
|
}
|
|
|
|
function Transform_new_28_29() {
|
|
var $2 = 0, $4 = 0, $6 = 0;
|
|
$2 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $2;
|
|
$4 = operator_20new_28unsigned_20long_29(64 | 0) | 0;
|
|
btTransform__btTransform_28_29($4 | 0) | 0;
|
|
HEAP32[($2 + 12 | 0) >> 2] = $4;
|
|
btTransform__setIdentity_28_29(HEAP32[($2 + 12 | 0) >> 2] | 0 | 0);
|
|
$6 = HEAP32[($2 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $2 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btMatrix3x3__btMatrix3x3_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $7 = 0, $8 = 0, $10 = 0, $6 = 0, $16 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
$6 = $4 + 48 | 0;
|
|
$7 = $4;
|
|
label$1 : while (1) {
|
|
$8 = $7;
|
|
btVector3__btVector3_28_29($8 | 0) | 0;
|
|
$10 = $8 + 16 | 0;
|
|
$7 = $10;
|
|
if (!(($10 | 0) == ($6 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
$16 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $16 | 0;
|
|
}
|
|
|
|
function btMatrix3x3__setIdentity_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 44 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 44 | 0) >> 2] | 0;
|
|
HEAPF32[($3 + 40 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($3 + 36 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 32 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 28 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 24 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($3 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 8 | 0) >> 2] = Math_fround(1.0);
|
|
btMatrix3x3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($4 | 0, $3 + 40 | 0 | 0, $3 + 36 | 0 | 0, $3 + 32 | 0 | 0, $3 + 28 | 0 | 0, $3 + 24 | 0 | 0, $3 + 20 | 0 | 0, $3 + 16 | 0 | 0, $3 + 12 | 0 | 0, $3 + 8 | 0 | 0);
|
|
__stack_pointer = $3 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function Transform_setIdentity_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btTransform__setIdentity_28_29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTransform__setOrigin_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, $8 = 0, $10 = 0, $32 = 0, $42 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$8 = (HEAP32[($4 + 12 | 0) >> 2] | 0) + 48 | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$32 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $8;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $32;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$10 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $10 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$42 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8 + $10 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $42;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function Transform_setRotation_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btTransform__setRotation_28btQuaternion_20const__29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTransform__setRotation_28btQuaternion_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btMatrix3x3__setRotation_28btQuaternion_20const__29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btMatrix3x3__setRotation_28btQuaternion_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 108 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 104 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 108 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btQuaternion__length2_28_29_20const(HEAP32[($4 + 104 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 100 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($4 + 96 | 0) >> 2] = Math_fround(Math_fround(2.0) / Math_fround(HEAPF32[($4 + 100 | 0) >> 2]));
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btQuadWord__x_28_29_20const(HEAP32[($4 + 104 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($4 + 96 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 92 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btQuadWord__y_28_29_20const(HEAP32[($4 + 104 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($4 + 96 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 88 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btQuadWord__z_28_29_20const(HEAP32[($4 + 104 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($4 + 96 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 84 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btQuadWord__w_28_29_20const(HEAP32[($4 + 104 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($4 + 92 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 80 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btQuadWord__w_28_29_20const(HEAP32[($4 + 104 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($4 + 88 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 76 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btQuadWord__w_28_29_20const(HEAP32[($4 + 104 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($4 + 84 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 72 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btQuadWord__x_28_29_20const(HEAP32[($4 + 104 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($4 + 92 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 68 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btQuadWord__x_28_29_20const(HEAP32[($4 + 104 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($4 + 88 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 64 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btQuadWord__x_28_29_20const(HEAP32[($4 + 104 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($4 + 84 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 60 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btQuadWord__y_28_29_20const(HEAP32[($4 + 104 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($4 + 88 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 56 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btQuadWord__y_28_29_20const(HEAP32[($4 + 104 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($4 + 84 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 52 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btQuadWord__z_28_29_20const(HEAP32[($4 + 104 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($4 + 84 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 48 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($4 + 44 | 0) >> 2] = Math_fround(Math_fround(1.0) - Math_fround(Math_fround(HEAPF32[($4 + 56 | 0) >> 2]) + Math_fround(HEAPF32[($4 + 48 | 0) >> 2])));
|
|
HEAPF32[($4 + 40 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($4 + 64 | 0) >> 2]) - Math_fround(HEAPF32[($4 + 72 | 0) >> 2]));
|
|
HEAPF32[($4 + 36 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($4 + 60 | 0) >> 2]) + Math_fround(HEAPF32[($4 + 76 | 0) >> 2]));
|
|
HEAPF32[($4 + 32 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($4 + 64 | 0) >> 2]) + Math_fround(HEAPF32[($4 + 72 | 0) >> 2]));
|
|
HEAPF32[($4 + 28 | 0) >> 2] = Math_fround(Math_fround(1.0) - Math_fround(Math_fround(HEAPF32[($4 + 68 | 0) >> 2]) + Math_fround(HEAPF32[($4 + 48 | 0) >> 2])));
|
|
HEAPF32[($4 + 24 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($4 + 52 | 0) >> 2]) - Math_fround(HEAPF32[($4 + 80 | 0) >> 2]));
|
|
HEAPF32[($4 + 20 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($4 + 60 | 0) >> 2]) - Math_fround(HEAPF32[($4 + 76 | 0) >> 2]));
|
|
HEAPF32[($4 + 16 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($4 + 52 | 0) >> 2]) + Math_fround(HEAPF32[($4 + 80 | 0) >> 2]));
|
|
HEAPF32[($4 + 12 | 0) >> 2] = Math_fround(Math_fround(1.0) - Math_fround(Math_fround(HEAPF32[($4 + 68 | 0) >> 2]) + Math_fround(HEAPF32[($4 + 56 | 0) >> 2])));
|
|
btMatrix3x3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($5 | 0, $4 + 44 | 0 | 0, $4 + 40 | 0 | 0, $4 + 36 | 0 | 0, $4 + 32 | 0 | 0, $4 + 28 | 0 | 0, $4 + 24 | 0 | 0, $4 + 20 | 0 | 0, $4 + 16 | 0 | 0, $4 + 12 | 0 | 0);
|
|
__stack_pointer = $4 + 112 | 0;
|
|
return;
|
|
}
|
|
|
|
function Transform_getOrigin_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = btTransform__getOrigin_28_29(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btTransform__getOrigin_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 48 | 0 | 0;
|
|
}
|
|
|
|
function Transform_getRotation_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $10 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
btMatrix3x3__getRotation_28btQuaternion__29_20const(btTransform__getBasis_28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[$4 >> 2] | 0 | 0);
|
|
$10 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btTransform__getBasis_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btMatrix3x3__getRotation_28btQuaternion__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $86 = 0, $190 = Math_fround(0), $195 = 0, $220 = Math_fround(0), $225 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 60 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 56 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 60 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 | 0) | 0) >> 2]) + Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 + 16 | 0 | 0) | 0) >> 2])) + Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 + 32 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 52 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 52 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btSqrt_28float_29(Math_fround(Math_fround(Math_fround(HEAPF32[($4 + 52 | 0) >> 2]) + Math_fround(1.0)))))), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($4 + 44 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($4 + 28 | 0) >> 2]) * Math_fround(.5));
|
|
HEAPF32[($4 + 28 | 0) >> 2] = Math_fround(Math_fround(.5) / Math_fround(HEAPF32[($4 + 28 | 0) >> 2]));
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 + 32 | 0 | 0) | 0) >> 2]) - Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 + 16 | 0 | 0) | 0) >> 2])) * Math_fround(HEAPF32[($4 + 28 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 | 0) | 0) >> 2]) - Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 + 32 | 0 | 0) | 0) >> 2])) * Math_fround(HEAPF32[($4 + 28 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 + 16 | 0 | 0) | 0) >> 2]) - Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 | 0) | 0) >> 2])) * Math_fround(HEAPF32[($4 + 28 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_f32$0;
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 | 0) | 0) >> 2]) < Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 + 16 | 0 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$86 = Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 + 16 | 0 | 0) | 0) >> 2]) < Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 + 32 | 0 | 0) | 0) >> 2]) & 1 | 0 ? 2 : 1;
|
|
break label$3;
|
|
}
|
|
$86 = Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 | 0) | 0) >> 2]) < Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 + 32 | 0 | 0) | 0) >> 2]) & 1 | 0 ? 2 : 0;
|
|
}
|
|
HEAP32[($4 + 24 | 0) >> 2] = $86;
|
|
HEAP32[($4 + 20 | 0) >> 2] = ((HEAP32[($4 + 24 | 0) >> 2] | 0) + 1 | 0 | 0) % (3 | 0) | 0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = ((HEAP32[($4 + 24 | 0) >> 2] | 0) + 2 | 0 | 0) % (3 | 0) | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btSqrt_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($5 + ((HEAP32[($4 + 24 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0) + ((HEAP32[($4 + 24 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) - Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($5 + ((HEAP32[($4 + 20 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0) + ((HEAP32[($4 + 20 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])) - Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($5 + ((HEAP32[($4 + 16 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0) + ((HEAP32[($4 + 16 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])) + Math_fround(1.0)))))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[(($4 + 32 | 0) + ((HEAP32[($4 + 24 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($4 + 12 | 0) >> 2]) * Math_fround(.5));
|
|
HEAPF32[($4 + 12 | 0) >> 2] = Math_fround(Math_fround(.5) / Math_fround(HEAPF32[($4 + 12 | 0) >> 2]));
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($5 + ((HEAP32[($4 + 16 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0) + ((HEAP32[($4 + 20 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) - Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($5 + ((HEAP32[($4 + 20 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0) + ((HEAP32[($4 + 16 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])) * Math_fround(HEAPF32[($4 + 12 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
$190 = Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($5 + ((HEAP32[($4 + 20 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0) + ((HEAP32[($4 + 24 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
$195 = btVector3__operator_20float_20const__28_29_20const($5 + ((HEAP32[($4 + 24 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0;
|
|
HEAPF32[(($4 + 32 | 0) + ((HEAP32[($4 + 20 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(Math_fround($190 + Math_fround(HEAPF32[($195 + ((HEAP32[($4 + 20 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])) * Math_fround(HEAPF32[($4 + 12 | 0) >> 2]));
|
|
$220 = Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($5 + ((HEAP32[($4 + 16 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0) + ((HEAP32[($4 + 24 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
$225 = btVector3__operator_20float_20const__28_29_20const($5 + ((HEAP32[($4 + 24 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0;
|
|
HEAPF32[(($4 + 32 | 0) + ((HEAP32[($4 + 16 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(Math_fround($220 + Math_fround(HEAPF32[($225 + ((HEAP32[($4 + 16 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])) * Math_fround(HEAPF32[($4 + 12 | 0) >> 2]));
|
|
}
|
|
btQuadWord__setValue_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29(HEAP32[($4 + 56 | 0) >> 2] | 0 | 0, $4 + 32 | 0 | 0, ($4 + 32 | 0) + 4 | 0 | 0, ($4 + 32 | 0) + 8 | 0 | 0, ($4 + 32 | 0) + 12 | 0 | 0);
|
|
__stack_pointer = $4 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSqrt_28float_29($0) {
|
|
$0 = Math_fround($0);
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAPF32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(Math_sqrt(Math_fround(HEAPF32[($3 + 12 | 0) >> 2]))));
|
|
}
|
|
|
|
function btVector3__operator_20float_20const__28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function Transform_getRotationAndOrigin_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $12 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 20 | 0) >> 2] = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
btMatrix3x3__getRotation_28btQuaternion__29_20const(btTransform__getBasis_28_29(HEAP32[($4 + 20 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btTransform__getOrigin_28_29(HEAP32[($4 + 20 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$12 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return $12 | 0;
|
|
}
|
|
|
|
function Vec3_array_at_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $8 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$8 = btAlignedObjectArray_btVector3___at_28int_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btVector3___at_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $14 = 0, $29 = 0, $5 = 0, $40 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
$14 = GOT_data_internal___memory_base;
|
|
__assert_fail($14 + 85840 | 0 | 0, $14 + 78192 | 0 | 0, 169 | 0, $14 + 68983 | 0 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btVector3___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
$29 = GOT_data_internal___memory_base;
|
|
__assert_fail($29 + 87321 | 0 | 0, $29 + 78192 | 0 | 0, 170 | 0, $29 + 68983 | 0 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$40 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $40 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btVector3___size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function int_array_size_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = btAlignedObjectArray_int___size_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_int___size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function int_array_at_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$9 = HEAP32[(btAlignedObjectArray_int___at_28int_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_int___at_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $14 = 0, $29 = 0, $5 = 0, $40 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
$14 = GOT_data_internal___memory_base;
|
|
__assert_fail($14 + 85840 | 0 | 0, $14 + 78192 | 0 | 0, 169 | 0, $14 + 68983 | 0 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_int___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
$29 = GOT_data_internal___memory_base;
|
|
__assert_fail($29 + 87321 | 0 | 0, $29 + 78192 | 0 | 0, 170 | 0, $29 + 68983 | 0 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$40 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $40 | 0;
|
|
}
|
|
|
|
function ccMaterial_new_28_29() {
|
|
var $2 = Math_fround(0), $1 = 0;
|
|
$1 = operator_20new_28unsigned_20long_29(16 | 0) | 0;
|
|
$2 = Math_fround(.10000000149011612);
|
|
cc__ccMaterial__ccMaterial_28float_2c_20float_2c_20float_2c_20float_29($1 | 0, Math_fround($2), Math_fround(Math_fround(.6000000238418579)), Math_fround($2), Math_fround($2)) | 0;
|
|
return $1 | 0;
|
|
}
|
|
|
|
function cc__ccMaterial__ccMaterial_28float_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
$4 = Math_fround($4);
|
|
var $7 = 0, $8 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAPF32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAPF32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
HEAPF32[$8 >> 2] = Math_fround(HEAPF32[($7 + 24 | 0) >> 2]);
|
|
HEAPF32[($8 + 4 | 0) >> 2] = Math_fround(HEAPF32[($7 + 20 | 0) >> 2]);
|
|
HEAPF32[($8 + 8 | 0) >> 2] = Math_fround(HEAPF32[($7 + 16 | 0) >> 2]);
|
|
HEAPF32[($8 + 12 | 0) >> 2] = Math_fround(HEAPF32[($7 + 12 | 0) >> 2]);
|
|
return $8 | 0;
|
|
}
|
|
|
|
function ccMaterial_set_28int_2c_20float_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
$4 = Math_fround($4);
|
|
var $7 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAPF32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAPF32[($7 + 12 | 0) >> 2] = $4;
|
|
HEAP32[($7 + 8 | 0) >> 2] = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
HEAPF32[(HEAP32[($7 + 8 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[($7 + 24 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($7 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] = Math_fround(HEAPF32[($7 + 20 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($7 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] = Math_fround(HEAPF32[($7 + 16 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($7 + 8 | 0) >> 2] | 0) + 12 | 0) >> 2] = Math_fround(HEAPF32[($7 + 12 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function MotionState_getWorldTransform($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $7 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
$7 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($7, HEAP32[$4 >> 2] | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function MotionState_setWorldTransform($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $7 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
$7 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($7, HEAP32[$4 >> 2] | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTransform__btTransform_28btMatrix3x3_20const__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, $9 = 0, $12 = 0, $44 = 0, $54 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btMatrix3x3__btMatrix3x3_28btMatrix3x3_20const__29($6 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
$9 = $6 + 48 | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$44 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $9;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $44;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$12 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $12 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$54 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $9 + $12 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $54;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btMotionState__btMotionState_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = GOT_data_internal_vtable_20for_20btMotionState + 8 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btTransform__btTransform_28btTransform_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $5 = 0, $8 = 0, $13 = 0, $46 = 0, $56 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btMatrix3x3__btMatrix3x3_28btMatrix3x3_20const__29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
$8 = $5 + 48 | 0;
|
|
i64toi32_i32$2 = (HEAP32[($4 + 8 | 0) >> 2] | 0) + 48 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$46 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $8;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $46;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$13 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $13 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$56 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8 + $13 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $56;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function ccMotionState_setup($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
cc__ccMotionState__setup_28int_2c_20btTransform_20const__29(HEAP32[$5 >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function cc__ccMotionState__setup_28int_2c_20btTransform_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
btTransform__operator__28btTransform_20const__29($6 + 8 | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTransform__operator__28btTransform_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $5 = 0, $11 = 0, $13 = 0, $46 = 0, $56 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btMatrix3x3__operator__28btMatrix3x3_20const__29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
$11 = $5 + 48 | 0;
|
|
i64toi32_i32$2 = (HEAP32[($4 + 8 | 0) >> 2] | 0) + 48 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$46 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $11;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $46;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$13 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $13 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$56 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11 + $13 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $56;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btRigidBody__btRigidBodyConstructionInfo__btRigidBodyConstructionInfo_28float_2c_20btMotionState__2c_20btCollisionShape__2c_20btVector3_20const__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $8 = 0, $7 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $15 = 0, $18 = 0, $86 = 0, $96 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
HEAPF32[$8 >> 2] = Math_fround(HEAPF32[($7 + 24 | 0) >> 2]);
|
|
HEAP32[($8 + 4 | 0) >> 2] = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
btTransform__btTransform_28_29($8 + 8 | 0 | 0) | 0;
|
|
HEAP32[($8 + 72 | 0) >> 2] = HEAP32[($7 + 16 | 0) >> 2] | 0;
|
|
$15 = $8 + 76 | 0;
|
|
i64toi32_i32$2 = HEAP32[($7 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$86 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $15;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $86;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$18 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $18 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$96 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $15 + $18 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $96;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($8 + 92 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 96 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 100 | 0) >> 2] = Math_fround(.5);
|
|
HEAPF32[($8 + 104 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 108 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 112 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 116 | 0) >> 2] = Math_fround(.800000011920929);
|
|
HEAPF32[($8 + 120 | 0) >> 2] = Math_fround(1.0);
|
|
HEAP8[($8 + 124 | 0) >> 0] = 0;
|
|
HEAPF32[($8 + 128 | 0) >> 2] = Math_fround(.004999999888241291);
|
|
HEAPF32[($8 + 132 | 0) >> 2] = Math_fround(.009999999776482582);
|
|
HEAPF32[($8 + 136 | 0) >> 2] = Math_fround(.009999999776482582);
|
|
HEAPF32[($8 + 140 | 0) >> 2] = Math_fround(.009999999776482582);
|
|
btTransform__setIdentity_28_29($8 + 8 | 0 | 0);
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function RigidBody_new_28float_2c_20int_29($0, $1) {
|
|
$0 = Math_fround($0);
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $54 = 0, $58 = 0;
|
|
$4 = __stack_pointer - 208 | 0;
|
|
__stack_pointer = $4;
|
|
HEAPF32[($4 + 204 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 200 | 0) >> 2] = $1;
|
|
HEAPF32[($4 + 180 | 0) >> 2] = Math_fround(1.6666666269302368);
|
|
HEAPF32[($4 + 176 | 0) >> 2] = Math_fround(1.6666666269302368);
|
|
HEAPF32[($4 + 172 | 0) >> 2] = Math_fround(1.6666666269302368);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 184 | 0 | 0, $4 + 180 | 0 | 0, $4 + 176 | 0 | 0, $4 + 172 | 0 | 0) | 0;
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 204 | 0) >> 2]) == Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[($4 + 168 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 164 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 160 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 184 | 0 | 0, $4 + 168 | 0 | 0, $4 + 164 | 0 | 0, $4 + 160 | 0 | 0);
|
|
}
|
|
btRigidBody__btRigidBodyConstructionInfo__btRigidBodyConstructionInfo_28float_2c_20btMotionState__2c_20btCollisionShape__2c_20btVector3_20const__29($4 + 16 | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 204 | 0) >> 2])), HEAP32[($4 + 200 | 0) >> 2] | 0 | 0, EmptyShape_static_28_29() | 0 | 0, $4 + 184 | 0 | 0) | 0;
|
|
$54 = btCollisionObject__operator_20new_28unsigned_20long_29(676 | 0) | 0;
|
|
btRigidBody__btRigidBody_28btRigidBody__btRigidBodyConstructionInfo_20const__29($54 | 0, $4 + 16 | 0 | 0) | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $54;
|
|
$58 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 208 | 0;
|
|
return $58 | 0;
|
|
}
|
|
|
|
function RigidBody_setSleepingThresholds_28int_2c_20float_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btRigidBody__setSleepingThresholds_28float_2c_20float_29(HEAP32[$5 >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 8 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2])));
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__setSleepingThresholds_28float_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[($6 + 532 | 0) >> 2] = Math_fround(HEAPF32[($5 + 8 | 0) >> 2]);
|
|
HEAPF32[($6 + 536 | 0) >> 2] = Math_fround(HEAPF32[($5 + 4 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function RigidBody_getLinearSleepingThreshold_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = Math_fround(btRigidBody__getLinearSleepingThreshold_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0));
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($6);
|
|
}
|
|
|
|
function btRigidBody__getLinearSleepingThreshold_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 532 | 0) >> 2]));
|
|
}
|
|
|
|
function RigidBody_setDamping_28int_2c_20float_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btRigidBody__setDamping_28float_2c_20float_29(HEAP32[$5 >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 8 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2])));
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function RigidBody_setMass_28int_2c_20float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $23 = 0, $44 = 0, $51 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 44 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 36 | 0) >> 2] = HEAP32[($4 + 44 | 0) >> 2] | 0;
|
|
HEAPF32[($4 + 16 | 0) >> 2] = Math_fround(1.6666666269302368);
|
|
HEAPF32[($4 + 12 | 0) >> 2] = Math_fround(1.6666666269302368);
|
|
HEAPF32[($4 + 8 | 0) >> 2] = Math_fround(1.6666666269302368);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 20 | 0 | 0, $4 + 16 | 0 | 0, $4 + 12 | 0 | 0, $4 + 8 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btRigidBody__getCollisionShape_28_29(HEAP32[($4 + 36 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
$23 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!(strcmp(FUNCTION_TABLE[HEAP32[((HEAP32[$23 >> 2] | 0) + 36 | 0) >> 2] | 0 | 0]($23) | 0 | 0, GOT_data_internal___memory_base + 65654 | 0 | 0) | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((btCollisionShape__isCompound_28_29_20const(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[$4 >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
label$4 : {
|
|
if (!((btCompoundShape__getNumChildShapes_28_29_20const(HEAP32[$4 >> 2] | 0 | 0) | 0 | 0) > (0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$44 = HEAP32[$4 >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$44 >> 2] | 0) + 32 | 0) >> 2] | 0 | 0]($44, Math_fround(HEAPF32[($4 + 40 | 0) >> 2]), $4 + 20 | 0);
|
|
}
|
|
break label$2;
|
|
}
|
|
$51 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$51 >> 2] | 0) + 32 | 0) >> 2] | 0 | 0]($51, Math_fround(HEAPF32[($4 + 40 | 0) >> 2]), $4 + 20 | 0);
|
|
}
|
|
}
|
|
btRigidBody__setMassProps_28float_2c_20btVector3_20const__29(HEAP32[($4 + 36 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 40 | 0) >> 2])), $4 + 20 | 0 | 0);
|
|
__stack_pointer = $4 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__getCollisionShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 192 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function RigidBody_setMassProps_28int_2c_20float_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 16 | 0) >> 2] = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
btRigidBody__setMassProps_28float_2c_20btVector3_20const__29(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 24 | 0) >> 2])), HEAP32[($5 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function RigidBody_setLinearFactor_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btRigidBody__setLinearFactor_28btVector3_20const__29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__setLinearFactor_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, i64toi32_i32$2 = 0, $5 = 0, $8 = 0, $10 = 0, $22 = 0, $24 = 0, $51 = 0, $61 = 0, $81 = 0, $94 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
$8 = $5 + 408 | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$51 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $8;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $51;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$10 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $10 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$61 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8 + $10 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $61;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($4 + 8 | 0 | 0, $5 + 408 | 0 | 0, $5 + 404 | 0 | 0);
|
|
$22 = $5 + 620 | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$81 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $81;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$24 = 8;
|
|
i64toi32_i32$2 = ($4 + 8 | 0) + $24 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$94 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $24 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $94;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function operator__28btVector3_20const__2c_20float_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $2;
|
|
HEAPF32[($5 + 20 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[(HEAP32[($5 + 28 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[(HEAP32[($5 + 24 | 0) >> 2] | 0) >> 2]));
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 28 | 0) >> 2] | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[(HEAP32[($5 + 24 | 0) >> 2] | 0) >> 2]));
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 28 | 0) >> 2] | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[(HEAP32[($5 + 24 | 0) >> 2] | 0) >> 2]));
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $5 + 20 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function RigidBody_setAngularFactor_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btRigidBody__setAngularFactor_28btVector3_20const__29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__setAngularFactor_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, $5 = 0, $11 = 0, $13 = 0, $42 = 0, $52 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 304 | 0) >> 2] = (HEAP32[($5 + 304 | 0) >> 2] | 0) + 1 | 0;
|
|
$11 = $5 + 604 | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$42 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $11;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $42;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$13 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $13 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$52 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11 + $13 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $52;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function RigidBody_getLinearVelocity_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = btRigidBody__getLinearVelocity_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btRigidBody__getLinearVelocity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 372 | 0 | 0;
|
|
}
|
|
|
|
function RigidBody_getAngularVelocity_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = btRigidBody__getAngularVelocity_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btRigidBody__getAngularVelocity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 388 | 0 | 0;
|
|
}
|
|
|
|
function RigidBody_setLinearVelocity_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btRigidBody__setLinearVelocity_28btVector3_20const__29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__setLinearVelocity_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, $5 = 0, $11 = 0, $13 = 0, $42 = 0, $52 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 304 | 0) >> 2] = (HEAP32[($5 + 304 | 0) >> 2] | 0) + 1 | 0;
|
|
$11 = $5 + 372 | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$42 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $11;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $42;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$13 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $13 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$52 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11 + $13 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $52;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function RigidBody_setAngularVelocity_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btRigidBody__setAngularVelocity_28btVector3_20const__29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__setAngularVelocity_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, $5 = 0, $11 = 0, $13 = 0, $42 = 0, $52 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 304 | 0) >> 2] = (HEAP32[($5 + 304 | 0) >> 2] | 0) + 1 | 0;
|
|
$11 = $5 + 388 | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$42 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $11;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $42;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$13 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $13 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$52 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11 + $13 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $52;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function RigidBody_setGravity_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btRigidBody__setGravity_28btVector3_20const__29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function RigidBody_applyTorque_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btRigidBody__applyTorque_28btVector3_20const__29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__applyTorque_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($4 + 8 | 0 | 0, HEAP32[($4 + 24 | 0) >> 2] | 0 | 0, $5 + 604 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($5 + 488 | 0 | 0, $4 + 8 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btVector3__operator___28btVector3_20const__29_1($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[$5 >> 2] = Math_fround(Math_fround(HEAPF32[$5 >> 2]) + Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2]));
|
|
HEAPF32[($5 + 4 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2]) + Math_fround(HEAPF32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2]));
|
|
HEAPF32[($5 + 8 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 8 | 0) >> 2]) + Math_fround(HEAPF32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2]));
|
|
return $5 | 0;
|
|
}
|
|
|
|
function RigidBody_applyForce_28int_2c_20int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btRigidBody__applyForce_28btVector3_20const__2c_20btVector3_20const__29(HEAP32[$5 >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__applyForce_28btVector3_20const__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $8 = 0;
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 36 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 44 | 0) >> 2] | 0;
|
|
btRigidBody__applyCentralForce_28btVector3_20const__29($6 | 0, HEAP32[($5 + 40 | 0) >> 2] | 0 | 0);
|
|
$8 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($5 + 4 | 0 | 0, HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, $6 + 408 | 0 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($5 + 20 | 0 | 0, $8 | 0, $5 + 4 | 0 | 0);
|
|
btRigidBody__applyTorque_28btVector3_20const__29($6 | 0, $5 + 20 | 0 | 0);
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__applyCentralForce_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($4 + 8 | 0 | 0, HEAP32[($4 + 24 | 0) >> 2] | 0 | 0, $5 + 408 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($5 + 472 | 0 | 0, $4 + 8 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btVector3__cross_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 20 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($6 + 4 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 8 | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[($6 + 8 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2]))));
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($6 + 8 | 0) >> 2]) * Math_fround(HEAPF32[(HEAP32[($5 + 24 | 0) >> 2] | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[$6 >> 2]) * Math_fround(HEAPF32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 8 | 0) >> 2]))));
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[$6 >> 2]) * Math_fround(HEAPF32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[($6 + 4 | 0) >> 2]) * Math_fround(HEAPF32[(HEAP32[($5 + 24 | 0) >> 2] | 0) >> 2]))));
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $5 + 20 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__applyTorqueImpulse_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 40 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 44 | 0) >> 2] | 0;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($4 + 8 | 0 | 0, $5 + 324 | 0 | 0, HEAP32[($4 + 40 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($4 + 24 | 0 | 0, $4 + 8 | 0 | 0, $5 + 604 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($5 + 388 | 0 | 0, $4 + 24 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $2;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $5 + 20 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function RigidBody_applyImpulse_28int_2c_20int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btRigidBody__applyImpulse_28btVector3_20const__2c_20btVector3_20const__29(HEAP32[$5 >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__applyImpulse_28btVector3_20const__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $23 = 0;
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 36 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 44 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 404 | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btRigidBody__applyCentralImpulse_28btVector3_20const__29($6 | 0, HEAP32[($5 + 40 | 0) >> 2] | 0 | 0);
|
|
label$2 : {
|
|
if (!((btVector3__operator_20float__28_29($6 + 604 | 0 | 0) | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$23 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($5 + 4 | 0 | 0, HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, $6 + 408 | 0 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($5 + 20 | 0 | 0, $23 | 0, $5 + 4 | 0 | 0);
|
|
btRigidBody__applyTorqueImpulse_28btVector3_20const__29($6 | 0, $5 + 20 | 0 | 0);
|
|
}
|
|
}
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__applyCentralImpulse_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 40 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 44 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($4 + 8 | 0 | 0, HEAP32[($4 + 40 | 0) >> 2] | 0 | 0, $5 + 408 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($4 + 24 | 0 | 0, $4 + 8 | 0 | 0, $5 + 404 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($5 + 372 | 0 | 0, $4 + 24 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__getTotalForce_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 472 | 0 | 0;
|
|
}
|
|
|
|
function btRigidBody__getTotalTorque_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 488 | 0 | 0;
|
|
}
|
|
|
|
function RigidBody_getFlags_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = btRigidBody__getFlags_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btRigidBody__getFlags_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 564 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function RigidBody_setFlags_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btRigidBody__setFlags_28int_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__setFlags_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 564 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function RigidBody_clearForces_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btRigidBody__clearForces_28_29(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__clearForces_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 28 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 28 | 0) >> 2] | 0;
|
|
HEAPF32[($3 + 24 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 472 | 0 | 0, $3 + 24 | 0 | 0, $3 + 20 | 0 | 0, $3 + 16 | 0 | 0);
|
|
HEAPF32[($3 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 4 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 488 | 0 | 0, $3 + 12 | 0 | 0, $3 + 8 | 0 | 0, $3 + 4 | 0 | 0);
|
|
__stack_pointer = $3 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function RigidBody_wantsSleeping_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $8 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$8 = (btRigidBody__wantsSleeping_28_29(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0) & 1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btRigidBody__wantsSleeping_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $60 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((btCollisionObject__getActivationState_28_29_20const($4 | 0) | 0 | 0) == (4 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP8[($3 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if ((HEAPU8[GOT_data_internal_gDisableDeactivation >> 0] | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
if (!(Math_fround(HEAPF32[GOT_data_internal_gDeactivationTime >> 2]) == Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
}
|
|
HEAP8[($3 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
label$6 : {
|
|
if ((btCollisionObject__getActivationState_28_29_20const($4 | 0) | 0 | 0) == (2 | 0) & 1 | 0) {
|
|
break label$6
|
|
}
|
|
if (!((btCollisionObject__getActivationState_28_29_20const($4 | 0) | 0 | 0) == (3 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
}
|
|
HEAP8[($3 + 15 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
label$7 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 224 | 0) >> 2]) > Math_fround(HEAPF32[GOT_data_internal_gDeactivationTime >> 2]) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAP8[($3 + 15 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP8[($3 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
}
|
|
$60 = (HEAPU8[($3 + 15 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $60 | 0;
|
|
}
|
|
|
|
function RigidBody_clearState_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btRigidBody__clearState_28_29(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__clearState_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 60 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 60 | 0) >> 2] | 0;
|
|
HEAPF32[($3 + 56 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 52 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 48 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 372 | 0 | 0, $3 + 56 | 0 | 0, $3 + 52 | 0 | 0, $3 + 48 | 0 | 0);
|
|
HEAPF32[($3 + 44 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 40 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 36 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 388 | 0 | 0, $3 + 44 | 0 | 0, $3 + 40 | 0 | 0, $3 + 36 | 0 | 0);
|
|
HEAPF32[($3 + 32 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 28 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 24 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 472 | 0 | 0, $3 + 32 | 0 | 0, $3 + 28 | 0 | 0, $3 + 24 | 0 | 0);
|
|
HEAPF32[($3 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 488 | 0 | 0, $3 + 20 | 0 | 0, $3 + 16 | 0 | 0, $3 + 12 | 0 | 0);
|
|
__stack_pointer = $3 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function RigidBody_getMotionState_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = btRigidBody__getMotionState_28_29(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btRigidBody__getMotionState_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 540 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function RigidBody_getWorldTransform_28int_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 20 | 0) >> 2] = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btRigidBody__getMotionState_28_29(HEAP32[($4 + 20 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
$9 = HEAP32[($4 + 16 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$9 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($9, HEAP32[($4 + 12 | 0) >> 2] | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_12() {
|
|
EmBindInit_bullet__EmBindInit_bullet_28_29(GOT_data_internal___memory_base + 113880 | 0 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function EmBindInit_bullet__EmBindInit_bullet_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
emscripten__internal__InitFunc__InitFunc_28void_20_28__29_28_29_29($4 | 0, GOT_data_internal___table_base + 7 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function embind_init_bullet_28_29() {
|
|
var $2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, $29 = 0, $125 = 0, $105 = 0, $109 = 0, $127 = 0, $129 = 0, $167 = 0, $12 = 0, $13 = 0, $14 = 0, $15 = 0, $17 = 0, $18 = 0, $20 = 0, $21 = 0, $23 = 0, $24 = 0, $25 = 0, $1388 = 0, $32 = 0, $33 = 0, $38 = 0, $39 = 0, $40 = 0, $1422 = 0, $1435 = 0, $47 = 0, $48 = 0, $51 = 0, $52 = 0, $53 = 0, $1466 = 0, $1479 = 0, $60 = 0, $61 = 0, $64 = 0, $65 = 0, $66 = 0, $1510 = 0, $73 = 0, $74 = 0, $81 = 0, $82 = 0, $83 = 0, $84 = 0, $86 = 0, $87 = 0, $89 = 0, $90 = 0, $92 = 0, $93 = 0, $94 = 0, $101 = 0, $111 = 0, $113 = 0, $114 = 0, $117 = 0, $120 = 0, $130 = 0, $131 = 0, $134 = 0, $137 = 0, $150 = 0, $151 = 0, $152 = 0, $153 = 0, $155 = 0, $156 = 0, $158 = 0, $159 = 0, $161 = 0, $162 = 0, $163 = 0, $1782 = 0, $169 = 0, $170 = 0, $175 = 0, $176 = 0, $177 = 0, $1816 = 0, $184 = 0, $185 = 0, $192 = 0, $193 = 0, $194 = 0, $195 = 0, $197 = 0, $198 = 0, $200 = 0, $201 = 0, $203 = 0, $204 = 0, $205 = 0, $212 = 0, $218 = 0, $220 = 0, $221 = 0, $224 = 0, $227 = 0, $233 = 0, $234 = 0, $237 = 0, $240 = 0, $253 = 0, $254 = 0, $255 = 0, $256 = 0, $258 = 0, $259 = 0, $261 = 0, $262 = 0, $264 = 0, $265 = 0, $266 = 0, $2078 = 0, $271 = 0, $272 = 0, $277 = 0, $278 = 0, $279 = 0, $2112 = 0, $286 = 0, $287 = 0, $294 = 0, $295 = 0, $296 = 0, $297 = 0, $299 = 0, $300 = 0, $302 = 0, $303 = 0, $305 = 0, $306 = 0, $307 = 0, $314 = 0, $320 = 0, $322 = 0, $323 = 0, $326 = 0, $329 = 0, $335 = 0, $336 = 0, $340 = 0, $344 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$2 = __stack_pointer - 960 | 0;
|
|
__stack_pointer = $2;
|
|
HEAP32[($2 + 356 | 0) >> 2] = $2 + 335 | 0;
|
|
$6 = GOT_data_internal___memory_base;
|
|
HEAP32[($2 + 352 | 0) >> 2] = $6 + 67306 | 0;
|
|
void_20emscripten__internal__NoBaseClass__verify_btDebugDraw__28_29();
|
|
HEAP32[($2 + 348 | 0) >> 2] = GOT_func_internal_void_20const__20emscripten__internal__getActualType_btDebugDraw__28btDebugDraw__29;
|
|
(wasm2js_i32$0 = $2, wasm2js_i32$1 = void_20_28_emscripten__internal__NoBaseClass__getUpcaster_btDebugDraw__28_29_29_28_29() | 0), HEAP32[(wasm2js_i32$0 + 344 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $2, wasm2js_i32$1 = void_20_28_emscripten__internal__NoBaseClass__getDowncaster_btDebugDraw__28_29_29_28_29() | 0), HEAP32[(wasm2js_i32$0 + 340 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($2 + 336 | 0) >> 2] = GOT_func_internal_void_20emscripten__internal__raw_destructor_btDebugDraw__28btDebugDraw__29;
|
|
$12 = emscripten__internal__TypeID_btDebugDraw_2c_20void___get_28_29() | 0;
|
|
$13 = emscripten__internal__TypeID_emscripten__internal__AllowedRawPointer_btDebugDraw__2c_20void___get_28_29() | 0;
|
|
$14 = emscripten__internal__TypeID_emscripten__internal__AllowedRawPointer_btDebugDraw_20const__2c_20void___get_28_29() | 0;
|
|
$15 = emscripten__internal__NoBaseClass__get_28_29() | 0;
|
|
HEAP32[($2 + 612 | 0) >> 2] = HEAP32[($2 + 348 | 0) >> 2] | 0;
|
|
$17 = char_20const__20emscripten__internal__getGenericSignature_int_2c_20int__28_29() | 0;
|
|
$18 = HEAP32[($2 + 348 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 636 | 0) >> 2] = HEAP32[($2 + 344 | 0) >> 2] | 0;
|
|
$20 = char_20const__20emscripten__internal__getGenericSignature_void__28_29() | 0;
|
|
$21 = HEAP32[($2 + 344 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 632 | 0) >> 2] = HEAP32[($2 + 340 | 0) >> 2] | 0;
|
|
$23 = char_20const__20emscripten__internal__getGenericSignature_void__28_29() | 0;
|
|
$24 = HEAP32[($2 + 340 | 0) >> 2] | 0;
|
|
$25 = HEAP32[($2 + 352 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 640 | 0) >> 2] = HEAP32[($2 + 336 | 0) >> 2] | 0;
|
|
_embind_register_class($12 | 0, $13 | 0, $14 | 0, $15 | 0, $17 | 0, $18 | 0, $20 | 0, $21 | 0, $23 | 0, $24 | 0, $25 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int__28_29() | 0 | 0, HEAP32[($2 + 336 | 0) >> 2] | 0 | 0);
|
|
$29 = 1;
|
|
HEAP32[($2 + 328 | 0) >> 2] = $29;
|
|
HEAP32[($2 + 324 | 0) >> 2] = 100;
|
|
i64toi32_i32$0 = HEAP32[($2 + 324 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($2 + 328 | 0) >> 2] | 0;
|
|
$1388 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $2;
|
|
HEAP32[($2 + 392 | 0) >> 2] = $1388;
|
|
HEAP32[($2 + 396 | 0) >> 2] = i64toi32_i32$1;
|
|
$32 = HEAP32[($2 + 392 | 0) >> 2] | 0;
|
|
$33 = HEAP32[($2 + 396 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 420 | 0) >> 2] = $2 + 335 | 0;
|
|
HEAP32[($2 + 416 | 0) >> 2] = $6 + 70055 | 0;
|
|
HEAP32[($2 + 412 | 0) >> 2] = $33;
|
|
HEAP32[($2 + 408 | 0) >> 2] = $32;
|
|
$38 = HEAP32[($2 + 420 | 0) >> 2] | 0;
|
|
$39 = HEAP32[($2 + 416 | 0) >> 2] | 0;
|
|
$40 = HEAP32[($2 + 408 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 404 | 0) >> 2] = HEAP32[($2 + 412 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 400 | 0) >> 2] = $40;
|
|
i64toi32_i32$1 = HEAP32[($2 + 400 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($2 + 404 | 0) >> 2] | 0;
|
|
$1422 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $2;
|
|
HEAP32[($2 + 40 | 0) >> 2] = $1422;
|
|
HEAP32[($2 + 44 | 0) >> 2] = i64toi32_i32$0;
|
|
void_20emscripten__internal__RegisterClassMethod_void_20_28btIDebugDraw____29_28_29___invoke_btDebugDraw__28char_20const__2c_20void_20_28btIDebugDraw____29_28_29_29($39 | 0, $2 + 40 | 0 | 0);
|
|
HEAP32[($2 + 320 | 0) >> 2] = $29;
|
|
HEAP32[($2 + 316 | 0) >> 2] = 104;
|
|
i64toi32_i32$0 = HEAP32[($2 + 316 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($2 + 320 | 0) >> 2] | 0;
|
|
$1435 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $2;
|
|
HEAP32[($2 + 360 | 0) >> 2] = $1435;
|
|
HEAP32[($2 + 364 | 0) >> 2] = i64toi32_i32$1;
|
|
$47 = HEAP32[($2 + 360 | 0) >> 2] | 0;
|
|
$48 = HEAP32[($2 + 364 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 388 | 0) >> 2] = $38;
|
|
HEAP32[($2 + 384 | 0) >> 2] = $6 + 70066 | 0;
|
|
HEAP32[($2 + 380 | 0) >> 2] = $48;
|
|
HEAP32[($2 + 376 | 0) >> 2] = $47;
|
|
$51 = HEAP32[($2 + 388 | 0) >> 2] | 0;
|
|
$52 = HEAP32[($2 + 384 | 0) >> 2] | 0;
|
|
$53 = HEAP32[($2 + 376 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 372 | 0) >> 2] = HEAP32[($2 + 380 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 368 | 0) >> 2] = $53;
|
|
i64toi32_i32$1 = HEAP32[($2 + 368 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($2 + 372 | 0) >> 2] | 0;
|
|
$1466 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $2;
|
|
HEAP32[($2 + 32 | 0) >> 2] = $1466;
|
|
HEAP32[($2 + 36 | 0) >> 2] = i64toi32_i32$0;
|
|
void_20emscripten__internal__RegisterClassMethod_void_20_28btIDebugDraw____29_28_29___invoke_btDebugDraw__28char_20const__2c_20void_20_28btIDebugDraw____29_28_29_29($52 | 0, $2 + 32 | 0 | 0);
|
|
HEAP32[($2 + 312 | 0) >> 2] = $29;
|
|
HEAP32[($2 + 308 | 0) >> 2] = 108;
|
|
i64toi32_i32$0 = HEAP32[($2 + 308 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($2 + 312 | 0) >> 2] | 0;
|
|
$1479 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $2;
|
|
HEAP32[($2 + 424 | 0) >> 2] = $1479;
|
|
HEAP32[($2 + 428 | 0) >> 2] = i64toi32_i32$1;
|
|
$60 = HEAP32[($2 + 424 | 0) >> 2] | 0;
|
|
$61 = HEAP32[($2 + 428 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 456 | 0) >> 2] = $51;
|
|
HEAP32[($2 + 452 | 0) >> 2] = $6 + 81794 | 0;
|
|
HEAP32[($2 + 448 | 0) >> 2] = $61;
|
|
HEAP32[($2 + 444 | 0) >> 2] = $60;
|
|
$64 = HEAP32[($2 + 456 | 0) >> 2] | 0;
|
|
$65 = HEAP32[($2 + 452 | 0) >> 2] | 0;
|
|
$66 = HEAP32[($2 + 444 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 440 | 0) >> 2] = HEAP32[($2 + 448 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 436 | 0) >> 2] = $66;
|
|
i64toi32_i32$1 = HEAP32[($2 + 436 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($2 + 440 | 0) >> 2] | 0;
|
|
$1510 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $2;
|
|
HEAP32[($2 + 24 | 0) >> 2] = $1510;
|
|
HEAP32[($2 + 28 | 0) >> 2] = i64toi32_i32$0;
|
|
void_20emscripten__internal__RegisterClassMethod_void_20_28btDebugDraw____29_28int_2c_20int_2c_20int_29___invoke_btDebugDraw__28char_20const__2c_20void_20_28btDebugDraw____29_28int_2c_20int_2c_20int_29_29($65 | 0, $2 + 24 | 0 | 0);
|
|
HEAP32[($2 + 468 | 0) >> 2] = $64;
|
|
HEAP32[($2 + 464 | 0) >> 2] = $6 + 71171 | 0;
|
|
$73 = HEAP32[($2 + 468 | 0) >> 2] | 0;
|
|
$74 = HEAP32[($2 + 464 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 664 | 0) >> 2] = $2 + 463 | 0;
|
|
HEAP32[($2 + 660 | 0) >> 2] = $74;
|
|
void_20emscripten__base_btDebugDraw___verify_btDebugDrawWrapper__28_29();
|
|
HEAP32[($2 + 656 | 0) >> 2] = GOT_func_internal_void_20const__20emscripten__internal__getActualType_btDebugDrawWrapper__28btDebugDrawWrapper__29;
|
|
(wasm2js_i32$0 = $2, wasm2js_i32$1 = btDebugDraw__20_28_emscripten__base_btDebugDraw___getUpcaster_btDebugDrawWrapper__28_29_29_28btDebugDrawWrapper__29() | 0), HEAP32[(wasm2js_i32$0 + 652 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $2, wasm2js_i32$1 = btDebugDrawWrapper__20_28_emscripten__base_btDebugDraw___getDowncaster_btDebugDrawWrapper__28_29_29_28btDebugDraw__29() | 0), HEAP32[(wasm2js_i32$0 + 648 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($2 + 644 | 0) >> 2] = GOT_func_internal_void_20emscripten__internal__raw_destructor_btDebugDrawWrapper__28btDebugDrawWrapper__29;
|
|
$81 = emscripten__internal__TypeID_btDebugDrawWrapper_2c_20void___get_28_29() | 0;
|
|
$82 = emscripten__internal__TypeID_emscripten__internal__AllowedRawPointer_btDebugDrawWrapper__2c_20void___get_28_29() | 0;
|
|
$83 = emscripten__internal__TypeID_emscripten__internal__AllowedRawPointer_btDebugDrawWrapper_20const__2c_20void___get_28_29() | 0;
|
|
$84 = emscripten__base_btDebugDraw___get_28_29() | 0;
|
|
HEAP32[($2 + 720 | 0) >> 2] = HEAP32[($2 + 656 | 0) >> 2] | 0;
|
|
$86 = char_20const__20emscripten__internal__getGenericSignature_int_2c_20int__28_29() | 0;
|
|
$87 = HEAP32[($2 + 656 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 724 | 0) >> 2] = HEAP32[($2 + 652 | 0) >> 2] | 0;
|
|
$89 = char_20const__20emscripten__internal__getGenericSignature_int_2c_20int__28_29() | 0;
|
|
$90 = HEAP32[($2 + 652 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 728 | 0) >> 2] = HEAP32[($2 + 648 | 0) >> 2] | 0;
|
|
$92 = char_20const__20emscripten__internal__getGenericSignature_int_2c_20int__28_29() | 0;
|
|
$93 = HEAP32[($2 + 648 | 0) >> 2] | 0;
|
|
$94 = HEAP32[($2 + 660 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 732 | 0) >> 2] = HEAP32[($2 + 644 | 0) >> 2] | 0;
|
|
_embind_register_class($81 | 0, $82 | 0, $83 | 0, $84 | 0, $86 | 0, $87 | 0, $89 | 0, $90 | 0, $92 | 0, $93 | 0, $94 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int__28_29() | 0 | 0, HEAP32[($2 + 644 | 0) >> 2] | 0 | 0);
|
|
$101 = void_20_28_emscripten__select_overload_void_20_28btDebugDrawWrapper__29__28void_20_28__29_28btDebugDrawWrapper__29_29_29_28btDebugDrawWrapper__29(emscripten__class__btDebugDraw_2c_20emscripten__internal__NoBaseClass__20const__20emscripten__class__btDebugDraw_2c_20emscripten__internal__NoBaseClass___allow_subclass_btDebugDrawWrapper__28char_20const__2c_20emscripten__constructor___29_20const___lambda__28btDebugDrawWrapper__29__operator_20void_20_28__29_28btDebugDrawWrapper__29_28_29_20const($2 + 462 | 0 | 0) | 0 | 0) | 0;
|
|
HEAP32[($2 + 676 | 0) >> 2] = $2 + 463 | 0;
|
|
$105 = $6 + 76334 | 0;
|
|
HEAP32[($2 + 672 | 0) >> 2] = $105;
|
|
HEAP32[($2 + 668 | 0) >> 2] = $101;
|
|
void_20emscripten__internal__RegisterClassMethod_void_20_28__29_28btDebugDrawWrapper__29___invoke_btDebugDrawWrapper__28char_20const__2c_20void_20_28__29_28btDebugDrawWrapper__29_29(HEAP32[($2 + 672 | 0) >> 2] | 0 | 0, HEAP32[($2 + 668 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($2 + 696 | 0) >> 2] = $73;
|
|
$109 = $6 + 67879 | 0;
|
|
HEAP32[($2 + 692 | 0) >> 2] = $109;
|
|
HEAP32[($2 + 688 | 0) >> 2] = GOT_func_internal_btDebugDrawWrapper__20emscripten__internal__wrapped_new_btDebugDrawWrapper__2c_20btDebugDrawWrapper_2c_20emscripten__val__28emscripten__val___29;
|
|
$111 = HEAP32[($2 + 696 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 680 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_btDebugDrawWrapper__2c_20emscripten__val_____invoke_28btDebugDrawWrapper__20_28__29_28emscripten__val___29_2c_20emscripten___EM_VAL__29;
|
|
$113 = emscripten__internal__TypeID_btDebugDraw_2c_20void___get_28_29() | 0;
|
|
$114 = HEAP32[($2 + 692 | 0) >> 2] | 0;
|
|
$117 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointer_emscripten__ret_val____ArgTypeList_btDebugDrawWrapper__2c_20emscripten__val_____getCount_28_29_20const($2 + 687 | 0 | 0) | 0;
|
|
$120 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointer_emscripten__ret_val____ArgTypeList_btDebugDrawWrapper__2c_20emscripten__val_____getTypes_28_29_20const($2 + 687 | 0 | 0) | 0;
|
|
HEAP32[($2 + 736 | 0) >> 2] = HEAP32[($2 + 680 | 0) >> 2] | 0;
|
|
$125 = 0;
|
|
_embind_register_class_class_function($113 | 0, $114 | 0, $117 | 0, $120 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($2 + 680 | 0) >> 2] | 0 | 0, HEAP32[($2 + 688 | 0) >> 2] | 0 | 0, $125 | 0);
|
|
HEAP32[($2 + 716 | 0) >> 2] = $111;
|
|
$127 = $6 + 82233 | 0;
|
|
HEAP32[($2 + 712 | 0) >> 2] = $127;
|
|
HEAP32[($2 + 708 | 0) >> 2] = GOT_func_internal_emscripten__val_20emscripten__internal__wrapped_extend_btDebugDrawWrapper__28std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const__29;
|
|
$129 = GOT_func_internal_emscripten__internal__Invoker_emscripten__val_2c_20std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const____invoke_28emscripten__val_20_28__29_28std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const__29_2c_20emscripten__internal__BindingType_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___2c_20void____unnamed___2c_20emscripten___EM_VAL__29;
|
|
HEAP32[($2 + 700 | 0) >> 2] = $129;
|
|
$130 = emscripten__internal__TypeID_btDebugDraw_2c_20void___get_28_29() | 0;
|
|
$131 = HEAP32[($2 + 712 | 0) >> 2] | 0;
|
|
$134 = emscripten__internal__WithPolicies____ArgTypeList_emscripten__val_2c_20std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const____getCount_28_29_20const($2 + 707 | 0 | 0) | 0;
|
|
$137 = emscripten__internal__WithPolicies____ArgTypeList_emscripten__val_2c_20std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const____getTypes_28_29_20const($2 + 707 | 0 | 0) | 0;
|
|
HEAP32[($2 + 740 | 0) >> 2] = HEAP32[($2 + 700 | 0) >> 2] | 0;
|
|
_embind_register_class_class_function($130 | 0, $131 | 0, $134 | 0, $137 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($2 + 700 | 0) >> 2] | 0 | 0, HEAP32[($2 + 708 | 0) >> 2] | 0 | 0, $125 | 0);
|
|
HEAP32[($2 + 492 | 0) >> 2] = $2 + 306 | 0;
|
|
HEAP32[($2 + 488 | 0) >> 2] = $6 + 67478 | 0;
|
|
void_20emscripten__internal__NoBaseClass__verify_btControllerHitReport__28_29();
|
|
HEAP32[($2 + 484 | 0) >> 2] = GOT_func_internal_void_20const__20emscripten__internal__getActualType_btControllerHitReport__28btControllerHitReport__29;
|
|
(wasm2js_i32$0 = $2, wasm2js_i32$1 = void_20_28_emscripten__internal__NoBaseClass__getUpcaster_btControllerHitReport__28_29_29_28_29() | 0), HEAP32[(wasm2js_i32$0 + 480 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $2, wasm2js_i32$1 = void_20_28_emscripten__internal__NoBaseClass__getDowncaster_btControllerHitReport__28_29_29_28_29() | 0), HEAP32[(wasm2js_i32$0 + 476 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($2 + 472 | 0) >> 2] = GOT_func_internal_void_20emscripten__internal__raw_destructor_btControllerHitReport__28btControllerHitReport__29;
|
|
$150 = emscripten__internal__TypeID_btControllerHitReport_2c_20void___get_28_29() | 0;
|
|
$151 = emscripten__internal__TypeID_emscripten__internal__AllowedRawPointer_btControllerHitReport__2c_20void___get_28_29() | 0;
|
|
$152 = emscripten__internal__TypeID_emscripten__internal__AllowedRawPointer_btControllerHitReport_20const__2c_20void___get_28_29() | 0;
|
|
$153 = emscripten__internal__NoBaseClass__get_28_29() | 0;
|
|
HEAP32[($2 + 744 | 0) >> 2] = HEAP32[($2 + 484 | 0) >> 2] | 0;
|
|
$155 = char_20const__20emscripten__internal__getGenericSignature_int_2c_20int__28_29() | 0;
|
|
$156 = HEAP32[($2 + 484 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 628 | 0) >> 2] = HEAP32[($2 + 480 | 0) >> 2] | 0;
|
|
$158 = char_20const__20emscripten__internal__getGenericSignature_void__28_29() | 0;
|
|
$159 = HEAP32[($2 + 480 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 624 | 0) >> 2] = HEAP32[($2 + 476 | 0) >> 2] | 0;
|
|
$161 = char_20const__20emscripten__internal__getGenericSignature_void__28_29() | 0;
|
|
$162 = HEAP32[($2 + 476 | 0) >> 2] | 0;
|
|
$163 = HEAP32[($2 + 488 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 748 | 0) >> 2] = HEAP32[($2 + 472 | 0) >> 2] | 0;
|
|
_embind_register_class($150 | 0, $151 | 0, $152 | 0, $153 | 0, $155 | 0, $156 | 0, $158 | 0, $159 | 0, $161 | 0, $162 | 0, $163 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int__28_29() | 0 | 0, HEAP32[($2 + 472 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($2 + 300 | 0) >> 2] = $29;
|
|
$167 = 16;
|
|
HEAP32[($2 + 296 | 0) >> 2] = $167;
|
|
i64toi32_i32$0 = HEAP32[($2 + 296 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($2 + 300 | 0) >> 2] | 0;
|
|
$1782 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $2;
|
|
HEAP32[($2 + 496 | 0) >> 2] = $1782;
|
|
HEAP32[($2 + 500 | 0) >> 2] = i64toi32_i32$1;
|
|
$169 = HEAP32[($2 + 496 | 0) >> 2] | 0;
|
|
$170 = HEAP32[($2 + 500 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 528 | 0) >> 2] = $2 + 306 | 0;
|
|
HEAP32[($2 + 524 | 0) >> 2] = $6 + 67323 | 0;
|
|
HEAP32[($2 + 520 | 0) >> 2] = $170;
|
|
HEAP32[($2 + 516 | 0) >> 2] = $169;
|
|
$175 = HEAP32[($2 + 528 | 0) >> 2] | 0;
|
|
$176 = HEAP32[($2 + 524 | 0) >> 2] | 0;
|
|
$177 = HEAP32[($2 + 516 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 512 | 0) >> 2] = HEAP32[($2 + 520 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 508 | 0) >> 2] = $177;
|
|
i64toi32_i32$1 = HEAP32[($2 + 508 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($2 + 512 | 0) >> 2] | 0;
|
|
$1816 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $2;
|
|
HEAP32[($2 + 16 | 0) >> 2] = $1816;
|
|
HEAP32[($2 + 20 | 0) >> 2] = i64toi32_i32$0;
|
|
void_20emscripten__internal__RegisterClassMethod_void_20_28btControllerHitReport____29_28int_2c_20int_29___invoke_btControllerHitReport__28char_20const__2c_20void_20_28btControllerHitReport____29_28int_2c_20int_29_29($176 | 0, $2 + 16 | 0 | 0);
|
|
HEAP32[($2 + 540 | 0) >> 2] = $175;
|
|
HEAP32[($2 + 536 | 0) >> 2] = $6 + 71183 | 0;
|
|
$184 = HEAP32[($2 + 540 | 0) >> 2] | 0;
|
|
$185 = HEAP32[($2 + 536 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 772 | 0) >> 2] = $2 + 535 | 0;
|
|
HEAP32[($2 + 768 | 0) >> 2] = $185;
|
|
void_20emscripten__base_btControllerHitReport___verify_btControllerHitReportWrapper__28_29();
|
|
HEAP32[($2 + 764 | 0) >> 2] = GOT_func_internal_void_20const__20emscripten__internal__getActualType_btControllerHitReportWrapper__28btControllerHitReportWrapper__29;
|
|
(wasm2js_i32$0 = $2, wasm2js_i32$1 = btControllerHitReport__20_28_emscripten__base_btControllerHitReport___getUpcaster_btControllerHitReportWrapper__28_29_29_28btControllerHitReportWrapper__29() | 0), HEAP32[(wasm2js_i32$0 + 760 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $2, wasm2js_i32$1 = btControllerHitReportWrapper__20_28_emscripten__base_btControllerHitReport___getDowncaster_btControllerHitReportWrapper__28_29_29_28btControllerHitReport__29() | 0), HEAP32[(wasm2js_i32$0 + 756 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($2 + 752 | 0) >> 2] = GOT_func_internal_void_20emscripten__internal__raw_destructor_btControllerHitReportWrapper__28btControllerHitReportWrapper__29;
|
|
$192 = emscripten__internal__TypeID_btControllerHitReportWrapper_2c_20void___get_28_29() | 0;
|
|
$193 = emscripten__internal__TypeID_emscripten__internal__AllowedRawPointer_btControllerHitReportWrapper__2c_20void___get_28_29() | 0;
|
|
$194 = emscripten__internal__TypeID_emscripten__internal__AllowedRawPointer_btControllerHitReportWrapper_20const__2c_20void___get_28_29() | 0;
|
|
$195 = emscripten__base_btControllerHitReport___get_28_29() | 0;
|
|
HEAP32[($2 + 832 | 0) >> 2] = HEAP32[($2 + 764 | 0) >> 2] | 0;
|
|
$197 = char_20const__20emscripten__internal__getGenericSignature_int_2c_20int__28_29() | 0;
|
|
$198 = HEAP32[($2 + 764 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 836 | 0) >> 2] = HEAP32[($2 + 760 | 0) >> 2] | 0;
|
|
$200 = char_20const__20emscripten__internal__getGenericSignature_int_2c_20int__28_29() | 0;
|
|
$201 = HEAP32[($2 + 760 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 840 | 0) >> 2] = HEAP32[($2 + 756 | 0) >> 2] | 0;
|
|
$203 = char_20const__20emscripten__internal__getGenericSignature_int_2c_20int__28_29() | 0;
|
|
$204 = HEAP32[($2 + 756 | 0) >> 2] | 0;
|
|
$205 = HEAP32[($2 + 768 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 844 | 0) >> 2] = HEAP32[($2 + 752 | 0) >> 2] | 0;
|
|
_embind_register_class($192 | 0, $193 | 0, $194 | 0, $195 | 0, $197 | 0, $198 | 0, $200 | 0, $201 | 0, $203 | 0, $204 | 0, $205 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int__28_29() | 0 | 0, HEAP32[($2 + 752 | 0) >> 2] | 0 | 0);
|
|
$212 = void_20_28_emscripten__select_overload_void_20_28btControllerHitReportWrapper__29__28void_20_28__29_28btControllerHitReportWrapper__29_29_29_28btControllerHitReportWrapper__29(emscripten__class__btControllerHitReport_2c_20emscripten__internal__NoBaseClass__20const__20emscripten__class__btControllerHitReport_2c_20emscripten__internal__NoBaseClass___allow_subclass_btControllerHitReportWrapper__28char_20const__2c_20emscripten__constructor___29_20const___lambda__28btControllerHitReportWrapper__29__operator_20void_20_28__29_28btControllerHitReportWrapper__29_28_29_20const($2 + 534 | 0 | 0) | 0 | 0) | 0;
|
|
HEAP32[($2 + 784 | 0) >> 2] = $2 + 535 | 0;
|
|
HEAP32[($2 + 780 | 0) >> 2] = $105;
|
|
HEAP32[($2 + 776 | 0) >> 2] = $212;
|
|
void_20emscripten__internal__RegisterClassMethod_void_20_28__29_28btControllerHitReportWrapper__29___invoke_btControllerHitReportWrapper__28char_20const__2c_20void_20_28__29_28btControllerHitReportWrapper__29_29(HEAP32[($2 + 780 | 0) >> 2] | 0 | 0, HEAP32[($2 + 776 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($2 + 804 | 0) >> 2] = $184;
|
|
HEAP32[($2 + 800 | 0) >> 2] = $109;
|
|
HEAP32[($2 + 796 | 0) >> 2] = GOT_func_internal_btControllerHitReportWrapper__20emscripten__internal__wrapped_new_btControllerHitReportWrapper__2c_20btControllerHitReportWrapper_2c_20emscripten__val__28emscripten__val___29;
|
|
$218 = HEAP32[($2 + 804 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 788 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_btControllerHitReportWrapper__2c_20emscripten__val_____invoke_28btControllerHitReportWrapper__20_28__29_28emscripten__val___29_2c_20emscripten___EM_VAL__29;
|
|
$220 = emscripten__internal__TypeID_btControllerHitReport_2c_20void___get_28_29() | 0;
|
|
$221 = HEAP32[($2 + 800 | 0) >> 2] | 0;
|
|
$224 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointer_emscripten__ret_val____ArgTypeList_btControllerHitReportWrapper__2c_20emscripten__val_____getCount_28_29_20const($2 + 795 | 0 | 0) | 0;
|
|
$227 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointer_emscripten__ret_val____ArgTypeList_btControllerHitReportWrapper__2c_20emscripten__val_____getTypes_28_29_20const($2 + 795 | 0 | 0) | 0;
|
|
HEAP32[($2 + 848 | 0) >> 2] = HEAP32[($2 + 788 | 0) >> 2] | 0;
|
|
_embind_register_class_class_function($220 | 0, $221 | 0, $224 | 0, $227 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($2 + 788 | 0) >> 2] | 0 | 0, HEAP32[($2 + 796 | 0) >> 2] | 0 | 0, $125 | 0);
|
|
HEAP32[($2 + 824 | 0) >> 2] = $218;
|
|
HEAP32[($2 + 820 | 0) >> 2] = $127;
|
|
HEAP32[($2 + 816 | 0) >> 2] = GOT_func_internal_emscripten__val_20emscripten__internal__wrapped_extend_btControllerHitReportWrapper__28std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const__29;
|
|
HEAP32[($2 + 808 | 0) >> 2] = $129;
|
|
$233 = emscripten__internal__TypeID_btControllerHitReport_2c_20void___get_28_29() | 0;
|
|
$234 = HEAP32[($2 + 820 | 0) >> 2] | 0;
|
|
$237 = emscripten__internal__WithPolicies____ArgTypeList_emscripten__val_2c_20std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const____getCount_28_29_20const($2 + 815 | 0 | 0) | 0;
|
|
$240 = emscripten__internal__WithPolicies____ArgTypeList_emscripten__val_2c_20std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const____getTypes_28_29_20const($2 + 815 | 0 | 0) | 0;
|
|
HEAP32[($2 + 828 | 0) >> 2] = HEAP32[($2 + 808 | 0) >> 2] | 0;
|
|
_embind_register_class_class_function($233 | 0, $234 | 0, $237 | 0, $240 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($2 + 808 | 0) >> 2] | 0 | 0, HEAP32[($2 + 816 | 0) >> 2] | 0 | 0, $125 | 0);
|
|
HEAP32[($2 + 564 | 0) >> 2] = $2 + 294 | 0;
|
|
HEAP32[($2 + 560 | 0) >> 2] = $6 + 81279 | 0;
|
|
void_20emscripten__internal__NoBaseClass__verify_cc__ccMotionState__28_29();
|
|
HEAP32[($2 + 556 | 0) >> 2] = GOT_func_internal_void_20const__20emscripten__internal__getActualType_cc__ccMotionState__28cc__ccMotionState__29;
|
|
(wasm2js_i32$0 = $2, wasm2js_i32$1 = void_20_28_emscripten__internal__NoBaseClass__getUpcaster_cc__ccMotionState__28_29_29_28_29() | 0), HEAP32[(wasm2js_i32$0 + 552 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $2, wasm2js_i32$1 = void_20_28_emscripten__internal__NoBaseClass__getDowncaster_cc__ccMotionState__28_29_29_28_29() | 0), HEAP32[(wasm2js_i32$0 + 548 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($2 + 544 | 0) >> 2] = GOT_func_internal_void_20emscripten__internal__raw_destructor_cc__ccMotionState__28cc__ccMotionState__29;
|
|
$253 = emscripten__internal__TypeID_cc__ccMotionState_2c_20void___get_28_29() | 0;
|
|
$254 = emscripten__internal__TypeID_emscripten__internal__AllowedRawPointer_cc__ccMotionState__2c_20void___get_28_29() | 0;
|
|
$255 = emscripten__internal__TypeID_emscripten__internal__AllowedRawPointer_cc__ccMotionState_20const__2c_20void___get_28_29() | 0;
|
|
$256 = emscripten__internal__NoBaseClass__get_28_29() | 0;
|
|
HEAP32[($2 + 852 | 0) >> 2] = HEAP32[($2 + 556 | 0) >> 2] | 0;
|
|
$258 = char_20const__20emscripten__internal__getGenericSignature_int_2c_20int__28_29() | 0;
|
|
$259 = HEAP32[($2 + 556 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 620 | 0) >> 2] = HEAP32[($2 + 552 | 0) >> 2] | 0;
|
|
$261 = char_20const__20emscripten__internal__getGenericSignature_void__28_29() | 0;
|
|
$262 = HEAP32[($2 + 552 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 616 | 0) >> 2] = HEAP32[($2 + 548 | 0) >> 2] | 0;
|
|
$264 = char_20const__20emscripten__internal__getGenericSignature_void__28_29() | 0;
|
|
$265 = HEAP32[($2 + 548 | 0) >> 2] | 0;
|
|
$266 = HEAP32[($2 + 560 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 856 | 0) >> 2] = HEAP32[($2 + 544 | 0) >> 2] | 0;
|
|
_embind_register_class($253 | 0, $254 | 0, $255 | 0, $256 | 0, $258 | 0, $259 | 0, $261 | 0, $262 | 0, $264 | 0, $265 | 0, $266 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int__28_29() | 0 | 0, HEAP32[($2 + 544 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($2 + 288 | 0) >> 2] = $29;
|
|
HEAP32[($2 + 284 | 0) >> 2] = $167;
|
|
i64toi32_i32$0 = HEAP32[($2 + 284 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($2 + 288 | 0) >> 2] | 0;
|
|
$2078 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $2;
|
|
HEAP32[($2 + 568 | 0) >> 2] = $2078;
|
|
HEAP32[($2 + 572 | 0) >> 2] = i64toi32_i32$1;
|
|
$271 = HEAP32[($2 + 568 | 0) >> 2] | 0;
|
|
$272 = HEAP32[($2 + 572 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 596 | 0) >> 2] = $2 + 294 | 0;
|
|
HEAP32[($2 + 592 | 0) >> 2] = $6 + 70462 | 0;
|
|
HEAP32[($2 + 588 | 0) >> 2] = $272;
|
|
HEAP32[($2 + 584 | 0) >> 2] = $271;
|
|
$277 = HEAP32[($2 + 596 | 0) >> 2] | 0;
|
|
$278 = HEAP32[($2 + 592 | 0) >> 2] | 0;
|
|
$279 = HEAP32[($2 + 584 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 580 | 0) >> 2] = HEAP32[($2 + 588 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 576 | 0) >> 2] = $279;
|
|
i64toi32_i32$1 = HEAP32[($2 + 576 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($2 + 580 | 0) >> 2] | 0;
|
|
$2112 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $2;
|
|
HEAP32[($2 + 8 | 0) >> 2] = $2112;
|
|
HEAP32[($2 + 12 | 0) >> 2] = i64toi32_i32$0;
|
|
void_20emscripten__internal__RegisterClassMethod_void_20_28cc__ccMotionState____29_28int_29___invoke_cc__ccMotionState__28char_20const__2c_20void_20_28cc__ccMotionState____29_28int_29_29($278 | 0, $2 + 8 | 0 | 0);
|
|
HEAP32[($2 + 608 | 0) >> 2] = $277;
|
|
HEAP32[($2 + 604 | 0) >> 2] = $6 + 71210 | 0;
|
|
$286 = HEAP32[($2 + 608 | 0) >> 2] | 0;
|
|
$287 = HEAP32[($2 + 604 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 880 | 0) >> 2] = $2 + 603 | 0;
|
|
HEAP32[($2 + 876 | 0) >> 2] = $287;
|
|
void_20emscripten__base_cc__ccMotionState___verify_ccMotionStateWrapper__28_29();
|
|
HEAP32[($2 + 872 | 0) >> 2] = GOT_func_internal_void_20const__20emscripten__internal__getActualType_ccMotionStateWrapper__28ccMotionStateWrapper__29;
|
|
(wasm2js_i32$0 = $2, wasm2js_i32$1 = cc__ccMotionState__20_28_emscripten__base_cc__ccMotionState___getUpcaster_ccMotionStateWrapper__28_29_29_28ccMotionStateWrapper__29() | 0), HEAP32[(wasm2js_i32$0 + 868 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $2, wasm2js_i32$1 = ccMotionStateWrapper__20_28_emscripten__base_cc__ccMotionState___getDowncaster_ccMotionStateWrapper__28_29_29_28cc__ccMotionState__29() | 0), HEAP32[(wasm2js_i32$0 + 864 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($2 + 860 | 0) >> 2] = GOT_func_internal_void_20emscripten__internal__raw_destructor_ccMotionStateWrapper__28ccMotionStateWrapper__29;
|
|
$294 = emscripten__internal__TypeID_ccMotionStateWrapper_2c_20void___get_28_29() | 0;
|
|
$295 = emscripten__internal__TypeID_emscripten__internal__AllowedRawPointer_ccMotionStateWrapper__2c_20void___get_28_29() | 0;
|
|
$296 = emscripten__internal__TypeID_emscripten__internal__AllowedRawPointer_ccMotionStateWrapper_20const__2c_20void___get_28_29() | 0;
|
|
$297 = emscripten__base_cc__ccMotionState___get_28_29() | 0;
|
|
HEAP32[($2 + 940 | 0) >> 2] = HEAP32[($2 + 872 | 0) >> 2] | 0;
|
|
$299 = char_20const__20emscripten__internal__getGenericSignature_int_2c_20int__28_29() | 0;
|
|
$300 = HEAP32[($2 + 872 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 944 | 0) >> 2] = HEAP32[($2 + 868 | 0) >> 2] | 0;
|
|
$302 = char_20const__20emscripten__internal__getGenericSignature_int_2c_20int__28_29() | 0;
|
|
$303 = HEAP32[($2 + 868 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 948 | 0) >> 2] = HEAP32[($2 + 864 | 0) >> 2] | 0;
|
|
$305 = char_20const__20emscripten__internal__getGenericSignature_int_2c_20int__28_29() | 0;
|
|
$306 = HEAP32[($2 + 864 | 0) >> 2] | 0;
|
|
$307 = HEAP32[($2 + 876 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 952 | 0) >> 2] = HEAP32[($2 + 860 | 0) >> 2] | 0;
|
|
_embind_register_class($294 | 0, $295 | 0, $296 | 0, $297 | 0, $299 | 0, $300 | 0, $302 | 0, $303 | 0, $305 | 0, $306 | 0, $307 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int__28_29() | 0 | 0, HEAP32[($2 + 860 | 0) >> 2] | 0 | 0);
|
|
$314 = void_20_28_emscripten__select_overload_void_20_28ccMotionStateWrapper__29__28void_20_28__29_28ccMotionStateWrapper__29_29_29_28ccMotionStateWrapper__29(emscripten__class__cc__ccMotionState_2c_20emscripten__internal__NoBaseClass__20const__20emscripten__class__cc__ccMotionState_2c_20emscripten__internal__NoBaseClass___allow_subclass_ccMotionStateWrapper__28char_20const__2c_20emscripten__constructor___29_20const___lambda__28ccMotionStateWrapper__29__operator_20void_20_28__29_28ccMotionStateWrapper__29_28_29_20const($2 + 602 | 0 | 0) | 0 | 0) | 0;
|
|
HEAP32[($2 + 892 | 0) >> 2] = $2 + 603 | 0;
|
|
HEAP32[($2 + 888 | 0) >> 2] = $105;
|
|
HEAP32[($2 + 884 | 0) >> 2] = $314;
|
|
void_20emscripten__internal__RegisterClassMethod_void_20_28__29_28ccMotionStateWrapper__29___invoke_ccMotionStateWrapper__28char_20const__2c_20void_20_28__29_28ccMotionStateWrapper__29_29(HEAP32[($2 + 888 | 0) >> 2] | 0 | 0, HEAP32[($2 + 884 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($2 + 912 | 0) >> 2] = $286;
|
|
HEAP32[($2 + 908 | 0) >> 2] = $109;
|
|
HEAP32[($2 + 904 | 0) >> 2] = GOT_func_internal_ccMotionStateWrapper__20emscripten__internal__wrapped_new_ccMotionStateWrapper__2c_20ccMotionStateWrapper_2c_20emscripten__val__28emscripten__val___29;
|
|
$320 = HEAP32[($2 + 912 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 896 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_ccMotionStateWrapper__2c_20emscripten__val_____invoke_28ccMotionStateWrapper__20_28__29_28emscripten__val___29_2c_20emscripten___EM_VAL__29;
|
|
$322 = emscripten__internal__TypeID_cc__ccMotionState_2c_20void___get_28_29() | 0;
|
|
$323 = HEAP32[($2 + 908 | 0) >> 2] | 0;
|
|
$326 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointer_emscripten__ret_val____ArgTypeList_ccMotionStateWrapper__2c_20emscripten__val_____getCount_28_29_20const($2 + 903 | 0 | 0) | 0;
|
|
$329 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointer_emscripten__ret_val____ArgTypeList_ccMotionStateWrapper__2c_20emscripten__val_____getTypes_28_29_20const($2 + 903 | 0 | 0) | 0;
|
|
HEAP32[($2 + 956 | 0) >> 2] = HEAP32[($2 + 896 | 0) >> 2] | 0;
|
|
_embind_register_class_class_function($322 | 0, $323 | 0, $326 | 0, $329 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($2 + 896 | 0) >> 2] | 0 | 0, HEAP32[($2 + 904 | 0) >> 2] | 0 | 0, $125 | 0);
|
|
HEAP32[($2 + 932 | 0) >> 2] = $320;
|
|
HEAP32[($2 + 928 | 0) >> 2] = $127;
|
|
HEAP32[($2 + 924 | 0) >> 2] = GOT_func_internal_emscripten__val_20emscripten__internal__wrapped_extend_ccMotionStateWrapper__28std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const__29;
|
|
HEAP32[($2 + 916 | 0) >> 2] = $129;
|
|
$335 = emscripten__internal__TypeID_cc__ccMotionState_2c_20void___get_28_29() | 0;
|
|
$336 = HEAP32[($2 + 928 | 0) >> 2] | 0;
|
|
$340 = emscripten__internal__WithPolicies____ArgTypeList_emscripten__val_2c_20std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const____getCount_28_29_20const($2 + 923 | 0 | 0) | 0;
|
|
$344 = emscripten__internal__WithPolicies____ArgTypeList_emscripten__val_2c_20std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const____getTypes_28_29_20const($2 + 923 | 0 | 0) | 0;
|
|
HEAP32[($2 + 936 | 0) >> 2] = HEAP32[($2 + 916 | 0) >> 2] | 0;
|
|
_embind_register_class_class_function($335 | 0, $336 | 0, $340 | 0, $344 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($2 + 916 | 0) >> 2] | 0 | 0, HEAP32[($2 + 924 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
void_20emscripten__function_int_2c_20int__28char_20const__2c_20int_20_28__29_28int_29_29(GOT_data_internal___memory_base + 82822 | 0 | 0, GOT_func_internal__malloc_28int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int__28char_20const__2c_20void_20_28__29_28int_29_29(GOT_data_internal___memory_base + 81920 | 0 | 0, GOT_func_internal__free_28int_29 | 0);
|
|
void_20emscripten__function_float_2c_20int__28char_20const__2c_20float_20_28__29_28int_29_29(GOT_data_internal___memory_base + 85454 | 0 | 0, GOT_func_internal__read_f32_28int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float__28char_20const__2c_20void_20_28__29_28int_2c_20float_29_29(GOT_data_internal___memory_base + 85443 | 0 | 0, GOT_func_internal__write_f32_28int_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_29(GOT_data_internal___memory_base + 81178 | 0 | 0, GOT_func_internal__safe_delete_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_int_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67297 | 0 | 0, GOT_func_internal_Vec3_new_28float_2c_20float_2c_20float_29 | 0);
|
|
void_20emscripten__function_float_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20float_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66636 | 0 | 0, GOT_func_internal_Vec3_x_28int_29 | 0);
|
|
void_20emscripten__function_float_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20float_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66255 | 0 | 0, GOT_func_internal_Vec3_y_28int_29 | 0);
|
|
void_20emscripten__function_float_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20float_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 65543 | 0 | 0, GOT_func_internal_Vec3_z_28int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 68428 | 0 | 0, GOT_func_internal_Vec3_set_28int_2c_20float_2c_20float_2c_20float_29 | 0);
|
|
void_20emscripten__function_int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28float_2c_20float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66797 | 0 | 0, GOT_func_internal_Quat_new_28float_2c_20float_2c_20float_2c_20float_29 | 0);
|
|
void_20emscripten__function_float_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20float_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66629 | 0 | 0, GOT_func_internal_Quat_x_28int_29 | 0);
|
|
void_20emscripten__function_float_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20float_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66248 | 0 | 0, GOT_func_internal_Quat_y_28int_29 | 0);
|
|
void_20emscripten__function_float_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20float_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 65536 | 0 | 0, GOT_func_internal_Quat_z_28int_29 | 0);
|
|
void_20emscripten__function_float_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20float_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67316 | 0 | 0, GOT_func_internal_Quat_w_28int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 68404 | 0 | 0, GOT_func_internal_Quat_set_28int_2c_20float_2c_20float_2c_20float_2c_20float_29 | 0);
|
|
void_20emscripten__function_int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66926 | 0 | 0, GOT_func_internal_Transform_new_28_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 65706 | 0 | 0, GOT_func_internal_Transform_setIdentity_28int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 76623 | 0 | 0, GOT_func_internal_Transform_setRotation_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 76952 | 0 | 0, GOT_func_internal_Transform_getOrigin_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 76645 | 0 | 0, GOT_func_internal_Transform_getRotation_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 76972 | 0 | 0, GOT_func_internal_Transform_getRotationAndOrigin_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 77099 | 0 | 0, GOT_func_internal_MotionState_getWorldTransform | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 77007 | 0 | 0, GOT_func_internal_MotionState_setWorldTransform | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 71265 | 0 | 0, GOT_func_internal_ccMotionState_setup | 0);
|
|
void_20emscripten__function_int_2c_20int__28char_20const__2c_20int_20_28__29_28int_29_29(GOT_data_internal___memory_base + 80799 | 0 | 0, GOT_func_internal_int_array_size_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20int__28char_20const__2c_20int_20_28__29_28int_2c_20int_29_29(GOT_data_internal___memory_base + 68959 | 0 | 0, GOT_func_internal_int_array_at_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20int__28char_20const__2c_20int_20_28__29_28int_2c_20int_29_29(GOT_data_internal___memory_base + 68972 | 0 | 0, GOT_func_internal_Vec3_array_at_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66154 | 0 | 0, GOT_func_internal_TypedConstraint_getFixedBody_28_29 | 0);
|
|
void_20emscripten__function_float_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20float_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 80876 | 0 | 0, GOT_func_internal_TypedConstraint_getDbgDrawSize_28int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 80845 | 0 | 0, GOT_func_internal_TypedConstraint_setDbgDrawSize_28int_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 82695 | 0 | 0, GOT_func_internal_TypedConstraint_setMaxImpulseThreshold_28int_2c_20float_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_2c_20int_2c_20int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66686 | 0 | 0, GOT_func_internal_HingeConstraint_new_28int_2c_20int_2c_20int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 70077 | 0 | 0, GOT_func_internal_HingeConstraint_setFrames_28int_2c_20int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67939 | 0 | 0, GOT_func_internal_HingeConstraint_setLimit_28int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20bool_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20bool_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 70597 | 0 | 0, GOT_func_internal_HingeConstraint_enableMotor_28int_2c_20bool_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20bool_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20bool_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 65988 | 0 | 0, GOT_func_internal_HingeConstraint_setAngularOnly_28int_2c_20bool_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 81452 | 0 | 0, GOT_func_internal_HingeConstraint_setMaxMotorImpulse_28int_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 68548 | 0 | 0, GOT_func_internal_HingeConstraint_setMotorTarget_28int_2c_20float_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 65775 | 0 | 0, GOT_func_internal_HingeConstraint_setMotorVelocity_28int_2c_20float_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_2c_20int_2c_20int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66726 | 0 | 0, GOT_func_internal_P2PConstraint_new_28int_2c_20int_2c_20int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 84571 | 0 | 0, GOT_func_internal_P2PConstraint_setPivotA_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 84443 | 0 | 0, GOT_func_internal_P2PConstraint_setPivotB_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_2c_20int_2c_20int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66706 | 0 | 0, GOT_func_internal_FixedConstraint_new_28int_2c_20int_2c_20int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 70103 | 0 | 0, GOT_func_internal_FixedConstraint_setFrames_28int_2c_20int_2c_20int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_2c_20int_2c_20int_2c_20int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66744 | 0 | 0, GOT_func_internal_Generic6DofSpring2Constraint_new_28int_2c_20int_2c_20int_2c_20int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 70129 | 0 | 0, GOT_func_internal_Generic6DofSpring2Constraint_setFrames_28int_2c_20int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67964 | 0 | 0, GOT_func_internal_Generic6DofSpring2Constraint_setLimit_28int_2c_20int_2c_20float_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20bool_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20bool_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 80563 | 0 | 0, GOT_func_internal_Generic6DofSpring2Constraint_enableSpring_28int_2c_20int_2c_20bool_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 69315 | 0 | 0, GOT_func_internal_Generic6DofSpring2Constraint_setStiffness_28int_2c_20int_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 80646 | 0 | 0, GOT_func_internal_Generic6DofSpring2Constraint_setDamping_28int_2c_20int_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 82138 | 0 | 0, GOT_func_internal_Generic6DofSpring2Constraint_setBounce_28int_2c_20int_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67656 | 0 | 0, GOT_func_internal_Generic6DofSpring2Constraint_setEquilibriumPoint_28int_2c_20int_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20bool_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20bool_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 70625 | 0 | 0, GOT_func_internal_Generic6DofSpring2Constraint_enableMotor_28int_2c_20int_2c_20bool_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 82092 | 0 | 0, GOT_func_internal_Generic6DofSpring2Constraint_setMaxMotorForce_28int_2c_20int_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 65728 | 0 | 0, GOT_func_internal_Generic6DofSpring2Constraint_setTargetVelocity_28int_2c_20int_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20bool_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20bool_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 76151 | 0 | 0, GOT_func_internal_Generic6DofSpring2Constraint_setServo_28int_2c_20int_2c_20bool_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 68579 | 0 | 0, GOT_func_internal_Generic6DofSpring2Constraint_setServoTarget_28int_2c_20int_2c_20float_29 | 0);
|
|
void_20emscripten__function_bool_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20bool_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 82187 | 0 | 0, GOT_func_internal_CollisionShape_isCompound_28int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 80737 | 0 | 0, GOT_func_internal_CollisionShape_setLocalScaling_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 83768 | 0 | 0, GOT_func_internal_CollisionShape_calculateLocalInertia_28int_2c_20float_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 83038 | 0 | 0, GOT_func_internal_CollisionShape_getAabb_28int_2c_20int_2c_20int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 76927 | 0 | 0, GOT_func_internal_CollisionShape_setMargin_28int_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 77625 | 0 | 0, GOT_func_internal_CollisionShape_setMaterial_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 71141 | 0 | 0, GOT_func_internal_CollisionShape_setUserPointer_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 82977 | 0 | 0, GOT_func_internal_EmptyShape_static_28_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 69726 | 0 | 0, GOT_func_internal_ConvexInternalShape_getImplicitShapeDimensions_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66991 | 0 | 0, GOT_func_internal_BoxShape_new_28int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 69207 | 0 | 0, GOT_func_internal_BoxShape_setUnscaledHalfExtents_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67115 | 0 | 0, GOT_func_internal_SphereShape_new_28float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 69116 | 0 | 0, GOT_func_internal_SphereShape_setUnscaledRadius_28int_2c_20float_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67021 | 0 | 0, GOT_func_internal_CylinderShape_new_28int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20float_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20float_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 76029 | 0 | 0, GOT_func_internal_CylinderShape_updateProp_28int_2c_20float_2c_20float_2c_20int_29 | 0);
|
|
void_20emscripten__function_int_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67166 | 0 | 0, GOT_func_internal_CapsuleShape_new_28float_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20float_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20float_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 76054 | 0 | 0, GOT_func_internal_CapsuleShape_updateProp_28int_2c_20float_2c_20float_2c_20int_29 | 0);
|
|
void_20emscripten__function_int_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67131 | 0 | 0, GOT_func_internal_ConeShape_new_28float_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 69056 | 0 | 0, GOT_func_internal_ConeShape_setRadius_28int_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 68137 | 0 | 0, GOT_func_internal_ConeShape_setHeight_28int_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66485 | 0 | 0, GOT_func_internal_ConeShape_setConeUpIndex_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67145 | 0 | 0, GOT_func_internal_StaticPlaneShape_new_28int_2c_20float_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 77533 | 0 | 0, GOT_func_internal_StaticPlaneShape_getPlaneNormal_28int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67889 | 0 | 0, GOT_func_internal_StaticPlaneShape_setPlaneConstant_28int_2c_20float_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67039 | 0 | 0, GOT_func_internal_TerrainShape_new_28int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29 | 0);
|
|
void_20emscripten__function_int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66955 | 0 | 0, GOT_func_internal_TriangleMesh_new_28_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20bool_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20int_2c_20int_2c_20bool_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 81861 | 0 | 0, GOT_func_internal_TriangleMesh_addTriangle_28int_2c_20int_2c_20int_2c_20int_2c_20bool_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20bool_2c_20bool_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_2c_20bool_2c_20bool_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67090 | 0 | 0, GOT_func_internal_BvhTriangleMeshShape_new_28int_2c_20bool_2c_20bool_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 77809 | 0 | 0, GOT_func_internal_BvhTriangleMeshShape_getOptimizedBvh_28int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 77772 | 0 | 0, GOT_func_internal_BvhTriangleMeshShape_setOptimizedBvh_28int_2c_20int_2c_20float_2c_20float_2c_20float_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_2c_20float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67084 | 0 | 0, GOT_func_internal_ScaledBvhTriangleMeshShape_new_28int_2c_20float_2c_20float_2c_20float_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67056 | 0 | 0, GOT_func_internal_ConvexTriangleMeshShape_new_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67004 | 0 | 0, GOT_func_internal_SimplexShape_new_28_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66289 | 0 | 0, GOT_func_internal_SimplexShape_addVertex_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67183 | 0 | 0, GOT_func_internal_ccCompoundShape_new_28_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 70023 | 0 | 0, GOT_func_internal_CompoundShape_getNumChildShapes_28int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 81761 | 0 | 0, GOT_func_internal_CompoundShape_addChildShape_28int_2c_20int_2c_20int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 81684 | 0 | 0, GOT_func_internal_CompoundShape_getChildShape_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 81730 | 0 | 0, GOT_func_internal_CompoundShape_removeChildShape_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20int_2c_20bool_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20int_2c_20bool_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 77129 | 0 | 0, GOT_func_internal_CompoundShape_updateChildTransform_28int_2c_20int_2c_20int_2c_20bool_29 | 0);
|
|
void_20emscripten__function_int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66777 | 0 | 0, GOT_func_internal_CollisionObject_new_28_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 81583 | 0 | 0, GOT_func_internal_CollisionObject_getCollisionShape_28int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 81549 | 0 | 0, GOT_func_internal_CollisionObject_setCollisionShape_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 82612 | 0 | 0, GOT_func_internal_CollisionObject_setContactProcessingThreshold_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 80710 | 0 | 0, GOT_func_internal_CollisionObject_isSleeping_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 81291 | 0 | 0, GOT_func_internal_CollisionObject_getActivationState_28int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 81348 | 0 | 0, GOT_func_internal_CollisionObject_forceActivationState_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20bool_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20bool_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 81191 | 0 | 0, GOT_func_internal_CollisionObject_activate_28int_2c_20bool_29 | 0);
|
|
void_20emscripten__function_bool_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20bool_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 81078 | 0 | 0, GOT_func_internal_CollisionObject_isActive_28int_29 | 0);
|
|
void_20emscripten__function_bool_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20bool_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 68855 | 0 | 0, GOT_func_internal_CollisionObject_isKinematicObject_28int_29 | 0);
|
|
void_20emscripten__function_bool_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20bool_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 68824 | 0 | 0, GOT_func_internal_CollisionObject_isStaticObject_28int_29 | 0);
|
|
void_20emscripten__function_bool_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20bool_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 68889 | 0 | 0, GOT_func_internal_CollisionObject_isStaticOrKinematicObject_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 77065 | 0 | 0, GOT_func_internal_CollisionObject_getWorldTransform_28int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 69926 | 0 | 0, GOT_func_internal_CollisionObject_setCollisionFlags_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 69960 | 0 | 0, GOT_func_internal_CollisionObject_getCollisionFlags_28int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 82574 | 0 | 0, GOT_func_internal_CollisionObject_setCcdMotionThreshold_28int_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 69076 | 0 | 0, GOT_func_internal_CollisionObject_setCcdSweptSphereRadius_28int_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66427 | 0 | 0, GOT_func_internal_CollisionObject_setUserIndex_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66456 | 0 | 0, GOT_func_internal_CollisionObject_getUserIndex_28int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 77597 | 0 | 0, GOT_func_internal_CollisionObject_setMaterial_28int_2c_20float_2c_20float_2c_20float_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20bool_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20bool_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 77671 | 0 | 0, GOT_func_internal_CollisionObject_setIgnoreCollisionCheck_28int_2c_20int_2c_20bool_29 | 0);
|
|
void_20emscripten__function_int_2c_20float_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28float_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66672 | 0 | 0, GOT_func_internal_RigidBody_new_28float_2c_20int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 69907 | 0 | 0, GOT_func_internal_RigidBody_getFlags_28int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 69832 | 0 | 0, GOT_func_internal_RigidBody_setFlags_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 65660 | 0 | 0, GOT_func_internal_RigidBody_setGravity_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 80625 | 0 | 0, GOT_func_internal_RigidBody_setDamping_28int_2c_20float_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 69397 | 0 | 0, GOT_func_internal_RigidBody_setMass_28int_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 69626 | 0 | 0, GOT_func_internal_RigidBody_setMassProps_28int_2c_20float_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 70693 | 0 | 0, GOT_func_internal_RigidBody_setLinearFactor_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 70666 | 0 | 0, GOT_func_internal_RigidBody_setAngularFactor_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 65866 | 0 | 0, GOT_func_internal_RigidBody_setLinearVelocity_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 65894 | 0 | 0, GOT_func_internal_RigidBody_getLinearVelocity_28int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 65808 | 0 | 0, GOT_func_internal_RigidBody_setAngularVelocity_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 65837 | 0 | 0, GOT_func_internal_RigidBody_getAngularVelocity_28int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 81216 | 0 | 0, GOT_func_internal_RigidBody_clearState_28int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 70245 | 0 | 0, GOT_func_internal_RigidBody_clearForces_28int_29 | 0);
|
|
void_20emscripten__function_bool_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20bool_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 80686 | 0 | 0, GOT_func_internal_RigidBody_wantsSleeping_28int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 70366 | 0 | 0, GOT_func_internal_RigidBody_setSleepingThresholds_28int_2c_20float_2c_20float_29 | 0);
|
|
void_20emscripten__function_float_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20float_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 82658 | 0 | 0, GOT_func_internal_RigidBody_getLinearSleepingThreshold_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 81237 | 0 | 0, GOT_func_internal_RigidBody_getMotionState_28int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 81103 | 0 | 0, GOT_func_internal_RigidBody_applyTorque_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 82071 | 0 | 0, GOT_func_internal_RigidBody_applyForce_28int_2c_20int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 81429 | 0 | 0, GOT_func_internal_RigidBody_applyImpulse_28int_2c_20int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 77037 | 0 | 0, GOT_func_internal_RigidBody_getWorldTransform_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 82830 | 0 | 0, GOT_func_internal_DefaultCollisionConfiguration_static_28_29 | 0);
|
|
void_20emscripten__function_int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66902 | 0 | 0, GOT_func_internal_CollisionDispatcher_new_28_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 70435 | 0 | 0, GOT_func_internal_Dispatcher_getNumManifolds_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 77401 | 0 | 0, GOT_func_internal_Dispatcher_getManifoldByIndexInternal_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 85747 | 0 | 0, GOT_func_internal_ManifoldPoint_getShape0_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 85525 | 0 | 0, GOT_func_internal_ManifoldPoint_getShape1_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 85708 | 0 | 0, GOT_func_internal_ManifoldPoint_get_m_index0_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 85498 | 0 | 0, GOT_func_internal_ManifoldPoint_get_m_index1_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 85680 | 0 | 0, GOT_func_internal_PersistentManifold_getBody0_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 85470 | 0 | 0, GOT_func_internal_PersistentManifold_getBody1_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 69256 | 0 | 0, GOT_func_internal_PersistentManifold_getNumContacts_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67566 | 0 | 0, GOT_func_internal_PersistentManifold_getContactPoint_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 84595 | 0 | 0, GOT_func_internal_ManifoldPoint_get_m_localPointA_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 84467 | 0 | 0, GOT_func_internal_ManifoldPoint_get_m_localPointB_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 84627 | 0 | 0, GOT_func_internal_ManifoldPoint_get_m_positionWorldOnA_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 84499 | 0 | 0, GOT_func_internal_ManifoldPoint_get_m_positionWorldOnB_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 84536 | 0 | 0, GOT_func_internal_ManifoldPoint_get_m_normalWorldOnB_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 84499 | 0 | 0, GOT_func_internal_ManifoldPoint_get_m_positionWorldOnB_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66972 | 0 | 0, GOT_func_internal_DbvtBroadphase_new_28_29 | 0);
|
|
void_20emscripten__function_int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66806 | 0 | 0, GOT_func_internal_SequentialImpulseConstraintSolver_new_28_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 68790 | 0 | 0, GOT_func_internal_CollisionWorld_addCollisionObject_28int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 68753 | 0 | 0, GOT_func_internal_CollisionWorld_removeCollisionObject_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67374 | 0 | 0, GOT_func_internal_CollisionWorld_rayTest_28int_2c_20int_2c_20int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67397 | 0 | 0, GOT_func_internal_CollisionWorld_convexSweepTest_28int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 71111 | 0 | 0, GOT_func_internal_CollisionWorld_setDebugDrawer_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 82240 | 0 | 0, GOT_func_internal_CollisionWorld_debugDrawWorld_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_2c_20int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67203 | 0 | 0, GOT_func_internal_ccDiscreteDynamicsWorld_new_28int_2c_20int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20bool_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20bool_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 76113 | 0 | 0, GOT_func_internal_ccDiscreteDynamicsWorld_setAllowSleep_28int_2c_20bool_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 65681 | 0 | 0, GOT_func_internal_DynamicsWorld_setGravity_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 76731 | 0 | 0, GOT_func_internal_DynamicsWorld_stepSimulation_28int_2c_20float_2c_20int_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66127 | 0 | 0, GOT_func_internal_DynamicsWorld_addRigidBody_28int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66097 | 0 | 0, GOT_func_internal_DynamicsWorld_removeRigidBody_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20bool_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20bool_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67753 | 0 | 0, GOT_func_internal_DynamicsWorld_addConstraint_28int_2c_20int_2c_20bool_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67722 | 0 | 0, GOT_func_internal_DynamicsWorld_removeConstraint_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 76563 | 0 | 0, GOT_func_internal_DynamicsWorld_addAction_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 76536 | 0 | 0, GOT_func_internal_DynamicsWorld_removeAction_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 82016 | 0 | 0, GOT_func_internal_DebugDraw_setDebugMode_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 82039 | 0 | 0, GOT_func_internal_DebugDraw_getDebugMode_28int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 70947 | 0 | 0, GOT_func_internal_DebugDraw_setActiveObjectColor_28int_2c_20float_2c_20float_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 70914 | 0 | 0, GOT_func_internal_DebugDraw_setDeactiveObjectColor_28int_2c_20float_2c_20float_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 70784 | 0 | 0, GOT_func_internal_DebugDraw_setWantsDeactivationObjectColor_28int_2c_20float_2c_20float_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 70826 | 0 | 0, GOT_func_internal_DebugDraw_setDisabledDeactivationObjectColor_28int_2c_20float_2c_20float_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 70871 | 0 | 0, GOT_func_internal_DebugDraw_setDisabledSimulationObjectColor_28int_2c_20float_2c_20float_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 70978 | 0 | 0, GOT_func_internal_DebugDraw_setAABBColor_28int_2c_20float_2c_20float_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 70719 | 0 | 0, GOT_func_internal_DebugDraw_setContactPointColor_28int_2c_20float_2c_20float_2c_20float_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 70750 | 0 | 0, GOT_func_internal_DebugDraw_setConstraintLimitColor_28int_2c_20float_2c_20float_2c_20float_29 | 0);
|
|
void_20emscripten__function_bool_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20bool_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 68036 | 0 | 0, GOT_func_internal_RayCallback_hasHit_28int_29 | 0);
|
|
void_20emscripten__function_bool_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20bool_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 68055 | 0 | 0, GOT_func_internal_ConvexCallback_hasHit_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 82895 | 0 | 0, GOT_func_internal_ccAllRayCallback_static_28_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 69881 | 0 | 0, GOT_func_internal_ccAllRayCallback_setFlags_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 68325 | 0 | 0, GOT_func_internal_ccAllRayCallback_reset_28int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 82308 | 0 | 0, GOT_func_internal_ccAllRayCallback_getHitPointWorld_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 82459 | 0 | 0, GOT_func_internal_ccAllRayCallback_getHitNormalWorld_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 69415 | 0 | 0, GOT_func_internal_ccAllRayCallback_getCollisionShapePtrs_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 82867 | 0 | 0, GOT_func_internal_ccClosestRayCallback_static_28_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 69851 | 0 | 0, GOT_func_internal_ccClosestRayCallback_setFlags_28int_2c_20int_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 68298 | 0 | 0, GOT_func_internal_ccClosestRayCallback_reset_28int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 82270 | 0 | 0, GOT_func_internal_ccClosestRayCallback_getHitPointWorld_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 82420 | 0 | 0, GOT_func_internal_ccClosestRayCallback_getHitNormalWorld_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 70496 | 0 | 0, GOT_func_internal_ccClosestRayCallback_getCollisionShapePtr_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 82950 | 0 | 0, GOT_func_internal_ccAllConvexCallback_static_28_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 68378 | 0 | 0, GOT_func_internal_ccAllConvexCallback_reset_28int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 82383 | 0 | 0, GOT_func_internal_ccAllConvexCallback_getHitPointWorld_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 82536 | 0 | 0, GOT_func_internal_ccAllConvexCallback_getHitNormalWorld_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 69454 | 0 | 0, GOT_func_internal_ccAllConvexCallback_getCollisionShapePtrs_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 82919 | 0 | 0, GOT_func_internal_ccClosestConvexCallback_static_28_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 68348 | 0 | 0, GOT_func_internal_ccClosestConvexCallback_reset_28int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 82342 | 0 | 0, GOT_func_internal_ccClosestConvexCallback_getHitPointWorld_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 82494 | 0 | 0, GOT_func_internal_ccClosestConvexCallback_getHitNormalWorld_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 70538 | 0 | 0, GOT_func_internal_ccClosestConvexCallback_getCollisionShapePtr_28int_29 | 0);
|
|
void_20emscripten__function_int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66940 | 0 | 0, GOT_func_internal_ccMaterial_new_28_29 | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 68413 | 0 | 0, GOT_func_internal_ccMaterial_set_28int_2c_20float_2c_20float_2c_20float_2c_20float_29 | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 68634 | 0 | 0, GOT_func_internal_CharacterController_getGhostObject | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 81617 | 0 | 0, GOT_func_internal_CharacterController_getCollisionShape | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 69649 | 0 | 0, GOT_func_internal_ControllerHit_getHitWorldPos | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 77565 | 0 | 0, GOT_func_internal_ControllerHit_getHitWorldNormal | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 71081 | 0 | 0, GOT_func_internal_ControllerHit_getHitMotionDir | 0);
|
|
void_20emscripten__function_float_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20float_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 77846 | 0 | 0, GOT_func_internal_ControllerHit_getHitMotionLength | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 81518 | 0 | 0, GOT_func_internal_ControllerShapeHit_getHitShape | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 68712 | 0 | 0, GOT_func_internal_ControllerShapeHit_getHitCollisionObject | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_2c_20int_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 81053 | 0 | 0, GOT_func_internal_CharacterController_move | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 76302 | 0 | 0, GOT_func_internal_CharacterController_getPosition | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 68194 | 0 | 0, GOT_func_internal_CharacterController_setContactOffset | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 68231 | 0 | 0, GOT_func_internal_CharacterController_setStepOffset | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 68002 | 0 | 0, GOT_func_internal_CharacterController_setSlopeLimit | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20bool_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20bool_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 76789 | 0 | 0, GOT_func_internal_CharacterController_setCollision | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20bool_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20bool_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 65949 | 0 | 0, GOT_func_internal_CharacterController_setOverlapRecovery | 0);
|
|
void_20emscripten__function_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67262 | 0 | 0, GOT_func_internal_CapsuleCharacterControllerDesc_new | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_2c_20int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66871 | 0 | 0, GOT_func_internal_CapsuleCharacterController_new | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 69019 | 0 | 0, GOT_func_internal_CapsuleCharacterController_setRadius | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 68100 | 0 | 0, GOT_func_internal_CapsuleCharacterController_setHeight | 0);
|
|
void_20emscripten__function_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67231 | 0 | 0, GOT_func_internal_BoxCharacterControllerDesc_new | 0);
|
|
void_20emscripten__function_int_2c_20int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_2c_20int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 66844 | 0 | 0, GOT_func_internal_BoxCharacterController_new | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 68157 | 0 | 0, GOT_func_internal_BoxCharacterController_setHalfHeight | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67794 | 0 | 0, GOT_func_internal_BoxCharacterController_setHalfSideExtent | 0);
|
|
void_20emscripten__function_void_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29(GOT_data_internal___memory_base + 67835 | 0 | 0, GOT_func_internal_BoxCharacterController_setHalfForwardExtent | 0);
|
|
__stack_pointer = $2 + 960 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__InitFunc__InitFunc_28void_20_28__29_28_29_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = 0;
|
|
FUNCTION_TABLE[HEAP32[($4 + 8 | 0) >> 2] | 0 | 0]();
|
|
_embind_register_bindings($5 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__RayResultCallback__RayResultCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = GOT_data_internal_vtable_20for_20btCollisionWorld__RayResultCallback + 8 | 0;
|
|
HEAPF32[($4 + 4 | 0) >> 2] = Math_fround(1.0);
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function cc__ccClosestRayResultCallback___ccClosestRayResultCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
cc__ccClosestRayResultCallback___ccClosestRayResultCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function cc__ccClosestRayResultCallback__needsCollision_28btBroadphaseProxy__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $35 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[((HEAP32[($4 + 4 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) & (HEAP32[($5 + 12 | 0) >> 2] | 0) | 0)) {
|
|
break label$2
|
|
}
|
|
label$3 : {
|
|
if ((HEAPU8[($5 + 88 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
if (!((HEAP32[(HEAP32[($4 + 4 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[$4 >> 2] = HEAP32[(HEAP32[($4 + 4 | 0) >> 2] | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = (btCollisionObject__hasContactResponse_28_29_20const(HEAP32[$4 >> 2] | 0 | 0) | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 15 | 0) >> 0] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP8[($4 + 15 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP8[($4 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
}
|
|
$35 = (HEAPU8[($4 + 15 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $35 | 0;
|
|
}
|
|
|
|
function btCollisionObject__hasContactResponse_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return ((HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 204 | 0) >> 2] | 0) & 4 | 0 | 0) == (0 | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function cc__ccClosestRayResultCallback__addSingleResult_28btCollisionWorld__LocalRayResult__2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $7 = 0, $37 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 23 | 0) >> 0] = $2;
|
|
$7 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btCollisionObject__getCollisionShape_28_29_20const(HEAP32[(HEAP32[($5 + 24 | 0) >> 2] | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((btCollisionShape__isCompound_28_29_20const(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if (!((HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[(HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCollisionShape__getUserPointerAsInt_28_29_20const(btCompoundShape__getChildShape_28int_29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 84 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCollisionShape__getUserPointerAsInt_28_29_20const(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 84 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
$37 = Math_fround(btCollisionWorld__ClosestRayResultCallback__addSingleResult_28btCollisionWorld__LocalRayResult__2c_20bool_29($7 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0, (HEAPU8[($5 + 23 | 0) >> 0] | 0) & 1 | 0 | 0));
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return Math_fround($37);
|
|
}
|
|
|
|
function btCollisionObject__getCollisionShape_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 192 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btCompoundShape__getChildShape_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $10 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$10 = HEAP32[((btAlignedObjectArray_btCompoundShapeChild___operator_5b_5d_28int_29_20const((HEAP32[($4 + 12 | 0) >> 2] | 0) + 20 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) + 64 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__ClosestRayResultCallback__addSingleResult_28btCollisionWorld__LocalRayResult__2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $7 = 0, $15 = 0, $33 = 0, $35 = 0, $49 = 0, $51 = 0, $140 = 0, $150 = 0, $175 = 0, $188 = 0, $66 = Math_fround(0);
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 23 | 0) >> 0] = $2;
|
|
$7 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (Math_fround(HEAPF32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 24 | 0) >> 2]) <= Math_fround(HEAPF32[($7 + 4 | 0) >> 2]) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
$15 = GOT_data_internal___memory_base;
|
|
__assert_fail($15 + 76437 | 0 | 0, $15 + 79821 | 0 | 0, 275 | 0, $15 + 67923 | 0 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAPF32[($7 + 4 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 24 | 0) >> 2]);
|
|
HEAP32[($7 + 8 | 0) >> 2] = HEAP32[(HEAP32[($5 + 24 | 0) >> 2] | 0) >> 2] | 0;
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((HEAPU8[($5 + 23 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$33 = $7 + 52 | 0;
|
|
i64toi32_i32$2 = (HEAP32[($5 + 24 | 0) >> 2] | 0) + 8 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$140 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $33;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $140;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$35 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $35 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$150 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $33 + $35 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $150;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$2;
|
|
}
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($5 + 4 | 0 | 0, btTransform__getBasis_28_29_20const(btCollisionObject__getWorldTransform_28_29_20const(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, (HEAP32[($5 + 24 | 0) >> 2] | 0) + 8 | 0 | 0);
|
|
$49 = $7 + 52 | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
$175 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $49;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $175;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$51 = 8;
|
|
i64toi32_i32$2 = ($5 + 4 | 0) + $51 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$188 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $49 + $51 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $188;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
btVector3__setInterpolate3_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($7 + 68 | 0 | 0, $7 + 20 | 0 | 0, $7 + 36 | 0 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 24 | 0) >> 2])));
|
|
$66 = Math_fround(HEAPF32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 24 | 0) >> 2]);
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return Math_fround($66);
|
|
}
|
|
|
|
function btCollisionWorld__RayResultCallback___RayResultCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = GOT_data_internal_vtable_20for_20btCollisionWorld__RayResultCallback + 8 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__ClosestRayResultCallback___ClosestRayResultCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__ClosestRayResultCallback___ClosestRayResultCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__RayResultCallback__needsCollision_28btBroadphaseProxy__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $20 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 7 | 0) >> 0] = ((HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) & (HEAP32[($5 + 12 | 0) >> 2] | 0) | 0 | 0) != (0 | 0) & 1 | 0;
|
|
$20 = 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($4 + 7 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$20 = ((HEAP32[($5 + 12 | 0) >> 2] | 0) & (HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) | 0 | 0) != (0 | 0);
|
|
}
|
|
HEAP8[($4 + 7 | 0) >> 0] = $20 & 1 | 0;
|
|
return (HEAPU8[($4 + 7 | 0) >> 0] | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function btCollisionObject__getWorldTransform_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0 | 0;
|
|
}
|
|
|
|
function btTransform__getBasis_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btVector3__setInterpolate3_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAPF32[($6 + 12 | 0) >> 2] = Math_fround(Math_fround(1.0) - Math_fround(HEAPF32[($6 + 16 | 0) >> 2]));
|
|
HEAPF32[$7 >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($6 + 12 | 0) >> 2]) * Math_fround(HEAPF32[(HEAP32[($6 + 24 | 0) >> 2] | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($6 + 16 | 0) >> 2]) * Math_fround(HEAPF32[(HEAP32[($6 + 20 | 0) >> 2] | 0) >> 2])));
|
|
HEAPF32[($7 + 4 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($6 + 12 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($6 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($6 + 16 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($6 + 20 | 0) >> 2] | 0) + 4 | 0) >> 2])));
|
|
HEAPF32[($7 + 8 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($6 + 12 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($6 + 24 | 0) >> 2] | 0) + 8 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($6 + 16 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($6 + 20 | 0) >> 2] | 0) + 8 | 0) >> 2])));
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__RayResultCallback___RayResultCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btMatrix3x3__operator_5b_5d_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return (HEAP32[($4 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 4 | 0) | 0 | 0;
|
|
}
|
|
|
|
function btVector3__dot_28btVector3_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
return Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 8 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[$5 >> 2]) * Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2])))));
|
|
}
|
|
|
|
function btAlignedObjectArray_btCompoundShapeChild___operator_5b_5d_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $14 = 0, $29 = 0, $5 = 0, $40 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
$14 = GOT_data_internal___memory_base;
|
|
__assert_fail($14 + 85840 | 0 | 0, $14 + 78192 | 0 | 0, 176 | 0, $14 + 83901 | 0 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btCompoundShapeChild___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
$29 = GOT_data_internal___memory_base;
|
|
__assert_fail($29 + 87321 | 0 | 0, $29 + 78192 | 0 | 0, 177 | 0, $29 + 83901 | 0 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$40 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($4 + 8 | 0) >> 2] | 0, 80) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $40 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject_20const____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btCollisionObject_20const__2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btCollisionObject_20const____init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btVector3___btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btVector3_2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btVector3___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_float___btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_float_2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_float___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_int_2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_int___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function cc__ccAllHitsRayResultCallback___ccAllHitsRayResultCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
cc__ccAllHitsRayResultCallback___ccAllHitsRayResultCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function cc__ccAllHitsRayResultCallback__needsCollision_28btBroadphaseProxy__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $35 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[((HEAP32[($4 + 4 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) & (HEAP32[($5 + 12 | 0) >> 2] | 0) | 0)) {
|
|
break label$2
|
|
}
|
|
label$3 : {
|
|
if ((HEAPU8[($5 + 152 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
if (!((HEAP32[(HEAP32[($4 + 4 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[$4 >> 2] = HEAP32[(HEAP32[($4 + 4 | 0) >> 2] | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = (btCollisionObject__hasContactResponse_28_29_20const(HEAP32[$4 >> 2] | 0 | 0) | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 15 | 0) >> 0] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP8[($4 + 15 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP8[($4 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
}
|
|
$35 = (HEAPU8[($4 + 15 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $35 | 0;
|
|
}
|
|
|
|
function cc__ccAllHitsRayResultCallback__addSingleResult_28btCollisionWorld__LocalRayResult__2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $7 = 0, $45 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 23 | 0) >> 0] = $2;
|
|
$7 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btCollisionObject__getCollisionShape_28_29_20const(HEAP32[(HEAP32[($5 + 24 | 0) >> 2] | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((btCollisionShape__isCompound_28_29_20const(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if (!((HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[(HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btCollisionShape__getUserPointerAsInt_28_29_20const(btCompoundShape__getChildShape_28int_29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_int___push_back_28int_20const__29($7 + 132 | 0 | 0, $5 + 4 | 0 | 0);
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btCollisionShape__getUserPointerAsInt_28_29_20const(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_int___push_back_28int_20const__29($7 + 132 | 0 | 0, $5 | 0);
|
|
}
|
|
$45 = Math_fround(btCollisionWorld__AllHitsRayResultCallback__addSingleResult_28btCollisionWorld__LocalRayResult__2c_20bool_29($7 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0, (HEAPU8[($5 + 23 | 0) >> 0] | 0) & 1 | 0 | 0));
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return Math_fround($45);
|
|
}
|
|
|
|
function btAlignedObjectArray_int___push_back_28int_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_int___size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_int___capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_int___reserve_28int_29($5 | 0, btAlignedObjectArray_int___allocSize_28int_29($5 | 0, btAlignedObjectArray_int___size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__AllHitsRayResultCallback__addSingleResult_28btCollisionWorld__LocalRayResult__2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, $7 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $21 = 0, $22 = 0, $38 = 0, $128 = 0, $132 = 0, $166 = 0, $170 = 0, $68 = Math_fround(0);
|
|
$5 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 60 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 56 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 55 | 0) >> 0] = $2;
|
|
$7 = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 8 | 0) >> 2] = HEAP32[(HEAP32[($5 + 56 | 0) >> 2] | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btCollisionObject_20const____push_back_28btCollisionObject_20const__20const__29($7 + 20 | 0 | 0, HEAP32[($5 + 56 | 0) >> 2] | 0 | 0);
|
|
btVector3__btVector3_28_29($5 + 32 | 0 | 0) | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($5 + 55 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$21 = (HEAP32[($5 + 56 | 0) >> 2] | 0) + 8 | 0;
|
|
$22 = 8;
|
|
i64toi32_i32$2 = $21 + $22 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$128 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 32 | 0) + $22 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $128;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $21;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$132 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 32 | 0) >> 2] = $132;
|
|
HEAP32[($5 + 36 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$1;
|
|
}
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($5 + 16 | 0 | 0, btTransform__getBasis_28_29_20const(btCollisionObject__getWorldTransform_28_29_20const(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, (HEAP32[($5 + 56 | 0) >> 2] | 0) + 8 | 0 | 0);
|
|
$38 = 8;
|
|
i64toi32_i32$2 = ($5 + 16 | 0) + $38 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$166 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 32 | 0) + $38 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $166;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
$170 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 32 | 0) >> 2] = $170;
|
|
HEAP32[($5 + 36 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
btAlignedObjectArray_btVector3___push_back_28btVector3_20const__29($7 + 72 | 0 | 0, $5 + 32 | 0 | 0);
|
|
btVector3__btVector3_28_29($5 | 0) | 0;
|
|
btVector3__setInterpolate3_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($5 | 0, $7 + 40 | 0 | 0, $7 + 56 | 0 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 56 | 0) >> 2] | 0) + 24 | 0) >> 2])));
|
|
btAlignedObjectArray_btVector3___push_back_28btVector3_20const__29($7 + 92 | 0 | 0, $5 | 0);
|
|
btAlignedObjectArray_float___push_back_28float_20const__29($7 + 112 | 0 | 0, (HEAP32[($5 + 56 | 0) >> 2] | 0) + 24 | 0 | 0);
|
|
$68 = Math_fround(HEAPF32[($7 + 4 | 0) >> 2]);
|
|
__stack_pointer = $5 + 64 | 0;
|
|
return Math_fround($68);
|
|
}
|
|
|
|
function btAlignedAllocator_btCollisionObject_20const__2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject_20const____init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btVector3_2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btVector3___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_float_2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_float___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_float____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_float___clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btVector3____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btVector3___clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject_20const_____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btCollisionObject_20const____clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__AllHitsRayResultCallback___AllHitsRayResultCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__AllHitsRayResultCallback___AllHitsRayResultCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btVector3___push_back_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $22 = 0, $25 = 0, $88 = 0, $98 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btVector3___size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btVector3___capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btVector3___reserve_28int_29($5 | 0, btAlignedObjectArray_btVector3___allocSize_28int_29($5 | 0, btAlignedObjectArray_btVector3___size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
$22 = btVector3__operator_20new_28unsigned_20long_2c_20void__29(16 | 0, (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$88 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $88;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$25 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $25 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$98 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $25 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $98;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_float___push_back_28float_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_float___size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_float___capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_float___reserve_28int_29($5 | 0, btAlignedObjectArray_float___allocSize_28int_29($5 | 0, btAlignedObjectArray_float___size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
HEAPF32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2]);
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_float___clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_float___destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_float___size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_float___deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_float___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btVector3___clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btVector3___destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btVector3___size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btVector3___deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btVector3___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject_20const____clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btCollisionObject_20const____destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btCollisionObject_20const____size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btCollisionObject_20const____deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btCollisionObject_20const____init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_float___size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_float___destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_float___deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_float_2c_2016u___deallocate_28float__29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_float_2c_2016u___deallocate_28float__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btVector3___destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btVector3___deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btVector3_2c_2016u___deallocate_28btVector3__29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btVector3_2c_2016u___deallocate_28btVector3__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject_20const____destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject_20const____deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btCollisionObject_20const__2c_2016u___deallocate_28btCollisionObject_20const___29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btCollisionObject_20const__2c_2016u___deallocate_28btCollisionObject_20const___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject_20const____capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject_20const____allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject_20const____reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btCollisionObject_20const____capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btCollisionObject_20const____allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btCollisionObject_20const____copy_28int_2c_20int_2c_20btCollisionObject_20const___29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btCollisionObject_20const____size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btCollisionObject_20const____destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btCollisionObject_20const____size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btCollisionObject_20const____deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btVector3___capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btVector3___allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btVector3___reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btVector3___capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btVector3___allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btVector3___copy_28int_2c_20int_2c_20btVector3__29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btVector3___size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btVector3___destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btVector3___size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btVector3___deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btVector3__operator_20new_28unsigned_20long_2c_20void__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return HEAP32[($4 + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_float___capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_float___allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_float___reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_float___capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_float___allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_float___copy_28int_2c_20int_2c_20float__29_20const($5 | 0, 0 | 0, btAlignedObjectArray_float___size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_float___destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_float___size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_float___deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject_20const____allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btCollisionObject_20const__2c_2016u___allocate_28int_2c_20btCollisionObject_20const__20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject_20const____copy_28int_2c_20int_2c_20btCollisionObject_20const___29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[((HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[((HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btCollisionObject_20const__2c_2016u___allocate_28int_2c_20btCollisionObject_20const__20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btVector3___allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btVector3_2c_2016u___allocate_28int_2c_20btVector3_20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btVector3___copy_28int_2c_20int_2c_20btVector3__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $22 = 0, $29 = 0, $7 = 0, $97 = 0, $107 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$22 = btVector3__operator_20new_28unsigned_20long_2c_20void__29(16 | 0, (HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0;
|
|
i64toi32_i32$2 = (HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$97 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $97;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$29 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $29 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$107 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $29 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $107;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btVector3_2c_2016u___allocate_28int_2c_20btVector3_20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 4 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_float___allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_float_2c_2016u___allocate_28int_2c_20float_20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_float___copy_28int_2c_20int_2c_20float__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[((HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_float_2c_2016u___allocate_28int_2c_20float_20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_int___capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_int___allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_int___reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_int___capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_int___allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_int___copy_28int_2c_20int_2c_20int__29_20const($5 | 0, 0 | 0, btAlignedObjectArray_int___size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_int___destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_int___size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_int___deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_int___allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_int_2c_2016u___allocate_28int_2c_20int_20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_int___copy_28int_2c_20int_2c_20int__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[((HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[((HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_int___destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_int___deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_int_2c_2016u___deallocate_28int__29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_int_2c_2016u___allocate_28int_2c_20int_20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_int_2c_2016u___deallocate_28int__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_int___clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_int___destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_int___size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_int___deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_int___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__ConvexResultCallback__ConvexResultCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = GOT_data_internal_vtable_20for_20btCollisionWorld__ConvexResultCallback + 8 | 0;
|
|
HEAPF32[($4 + 4 | 0) >> 2] = Math_fround(1.0);
|
|
HEAP32[($4 + 8 | 0) >> 2] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = -1;
|
|
HEAP32[($4 + 16 | 0) >> 2] = 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function cc__ccClosestConvexResultCallback___ccClosestConvexResultCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
cc__ccClosestConvexResultCallback___ccClosestConvexResultCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function cc__ccClosestConvexResultCallback__needsCollision_28btBroadphaseProxy__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $35 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[((HEAP32[($4 + 4 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) & (HEAP32[($5 + 12 | 0) >> 2] | 0) | 0)) {
|
|
break label$2
|
|
}
|
|
label$3 : {
|
|
if ((HEAPU8[($5 + 88 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
if (!((HEAP32[(HEAP32[($4 + 4 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[$4 >> 2] = HEAP32[(HEAP32[($4 + 4 | 0) >> 2] | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = (btCollisionObject__hasContactResponse_28_29_20const(HEAP32[$4 >> 2] | 0 | 0) | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 15 | 0) >> 0] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP8[($4 + 15 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP8[($4 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
}
|
|
$35 = (HEAPU8[($4 + 15 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $35 | 0;
|
|
}
|
|
|
|
function cc__ccClosestConvexResultCallback__addSingleResult_28btCollisionWorld__LocalConvexResult__2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $7 = 0, $16 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 7 | 0) >> 0] = $2;
|
|
$7 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCollisionShape__getUserPointerAsInt_28_29_20const(HEAP32[((HEAP32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 84 | 0) >> 2] = wasm2js_i32$1;
|
|
$16 = Math_fround(btCollisionWorld__ClosestConvexResultCallback__addSingleResult_28btCollisionWorld__LocalConvexResult__2c_20bool_29($7 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, (HEAPU8[($5 + 7 | 0) >> 0] | 0) & 1 | 0 | 0));
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return Math_fround($16);
|
|
}
|
|
|
|
function btCollisionWorld__ClosestConvexResultCallback__addSingleResult_28btCollisionWorld__LocalConvexResult__2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $5 = 0, i64toi32_i32$2 = 0, $7 = 0, $15 = 0, $33 = 0, $35 = 0, $49 = 0, $51 = 0, $61 = 0, $63 = 0, $142 = 0, $152 = 0, $177 = 0, $190 = 0, $202 = 0, $212 = 0, $68 = Math_fround(0);
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 23 | 0) >> 0] = $2;
|
|
$7 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (Math_fround(HEAPF32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 40 | 0) >> 2]) <= Math_fround(HEAPF32[($7 + 4 | 0) >> 2]) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
$15 = GOT_data_internal___memory_base;
|
|
__assert_fail($15 + 76485 | 0 | 0, $15 + 79821 | 0 | 0, 408 | 0, $15 + 67923 | 0 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAPF32[($7 + 4 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 40 | 0) >> 2]);
|
|
HEAP32[($7 + 16 | 0) >> 2] = HEAP32[(HEAP32[($5 + 24 | 0) >> 2] | 0) >> 2] | 0;
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((HEAPU8[($5 + 23 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$33 = $7 + 52 | 0;
|
|
i64toi32_i32$2 = (HEAP32[($5 + 24 | 0) >> 2] | 0) + 8 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$142 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $33;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $142;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$35 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $35 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$152 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $33 + $35 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $152;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$2;
|
|
}
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($5 + 4 | 0 | 0, btTransform__getBasis_28_29_20const(btCollisionObject__getWorldTransform_28_29_20const(HEAP32[($7 + 16 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, (HEAP32[($5 + 24 | 0) >> 2] | 0) + 8 | 0 | 0);
|
|
$49 = $7 + 52 | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
$177 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $49;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $177;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$51 = 8;
|
|
i64toi32_i32$2 = ($5 + 4 | 0) + $51 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$190 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $49 + $51 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $190;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
$61 = $7 + 68 | 0;
|
|
i64toi32_i32$2 = (HEAP32[($5 + 24 | 0) >> 2] | 0) + 24 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$202 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $61;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $202;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$63 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $63 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$212 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $61 + $63 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $212;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$68 = Math_fround(HEAPF32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 40 | 0) >> 2]);
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return Math_fround($68);
|
|
}
|
|
|
|
function btCollisionWorld__ConvexResultCallback___ConvexResultCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__ClosestConvexResultCallback___ClosestConvexResultCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__ClosestConvexResultCallback___ClosestConvexResultCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__ConvexResultCallback__needsCollision_28btBroadphaseProxy__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $20 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 7 | 0) >> 0] = ((HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) & (HEAP32[($5 + 12 | 0) >> 2] | 0) | 0 | 0) != (0 | 0) & 1 | 0;
|
|
$20 = 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($4 + 7 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$20 = ((HEAP32[($5 + 8 | 0) >> 2] | 0) & (HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) | 0 | 0) != (0 | 0);
|
|
}
|
|
HEAP8[($4 + 7 | 0) >> 0] = $20 & 1 | 0;
|
|
return (HEAPU8[($4 + 7 | 0) >> 0] | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__ConvexResultCallback___ConvexResultCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function cc__ccAllHitsConvexResultCallback___ccAllHitsConvexResultCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
cc__ccAllHitsConvexResultCallback___ccAllHitsConvexResultCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function cc__ccAllHitsConvexResultCallback__needsCollision_28btBroadphaseProxy__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $35 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[((HEAP32[($4 + 4 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) & (HEAP32[($5 + 12 | 0) >> 2] | 0) | 0)) {
|
|
break label$2
|
|
}
|
|
label$3 : {
|
|
if ((HEAPU8[($5 + 152 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
if (!((HEAP32[(HEAP32[($4 + 4 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[$4 >> 2] = HEAP32[(HEAP32[($4 + 4 | 0) >> 2] | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = (btCollisionObject__hasContactResponse_28_29_20const(HEAP32[$4 >> 2] | 0 | 0) | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 15 | 0) >> 0] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP8[($4 + 15 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP8[($4 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
}
|
|
$35 = (HEAPU8[($4 + 15 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $35 | 0;
|
|
}
|
|
|
|
function cc__ccAllHitsConvexResultCallback__addSingleResult_28btCollisionWorld__LocalConvexResult__2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $7 = 0, $19 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 7 | 0) >> 0] = $2;
|
|
$7 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btCollisionShape__getUserPointerAsInt_28_29_20const(HEAP32[((HEAP32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_int___push_back_28int_20const__29($7 + 132 | 0 | 0, $5 | 0);
|
|
$19 = Math_fround(btCollisionWorld__AllHitsConvexResultCallback__addSingleResult_28btCollisionWorld__LocalConvexResult__2c_20bool_29($7 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, (HEAPU8[($5 + 7 | 0) >> 0] | 0) & 1 | 0 | 0));
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return Math_fround($19);
|
|
}
|
|
|
|
function btCollisionWorld__AllHitsConvexResultCallback__addSingleResult_28btCollisionWorld__LocalConvexResult__2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $7 = 0, $22 = 0, $23 = 0, $37 = 0, $120 = 0, $124 = 0, $152 = 0, $156 = 0, $59 = Math_fround(0);
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 39 | 0) >> 0] = $2;
|
|
$7 = HEAP32[($5 + 44 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 16 | 0) >> 2] = HEAP32[(HEAP32[($5 + 40 | 0) >> 2] | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btCollisionObject_20const____push_back_28btCollisionObject_20const__20const__29($7 + 20 | 0 | 0, $7 + 16 | 0 | 0);
|
|
btVector3__btVector3_28_29($5 + 16 | 0 | 0) | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($5 + 39 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$22 = (HEAP32[($5 + 40 | 0) >> 2] | 0) + 8 | 0;
|
|
$23 = 8;
|
|
i64toi32_i32$2 = $22 + $23 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$120 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 16 | 0) + $23 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $120;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $22;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$124 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 16 | 0) >> 2] = $124;
|
|
HEAP32[($5 + 20 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$1;
|
|
}
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($5 | 0, btTransform__getBasis_28_29_20const(btCollisionObject__getWorldTransform_28_29_20const(HEAP32[($7 + 16 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, (HEAP32[($5 + 40 | 0) >> 2] | 0) + 8 | 0 | 0);
|
|
$37 = 8;
|
|
i64toi32_i32$2 = $5 + $37 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$152 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 16 | 0) + $37 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $152;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[$5 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
$156 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 16 | 0) >> 2] = $156;
|
|
HEAP32[($5 + 20 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
btAlignedObjectArray_btVector3___push_back_28btVector3_20const__29($7 + 72 | 0 | 0, $5 + 16 | 0 | 0);
|
|
btAlignedObjectArray_btVector3___push_back_28btVector3_20const__29($7 + 92 | 0 | 0, (HEAP32[($5 + 40 | 0) >> 2] | 0) + 24 | 0 | 0);
|
|
btAlignedObjectArray_float___push_back_28float_20const__29($7 + 112 | 0 | 0, (HEAP32[($5 + 40 | 0) >> 2] | 0) + 40 | 0 | 0);
|
|
$59 = Math_fround(HEAPF32[($7 + 4 | 0) >> 2]);
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return Math_fround($59);
|
|
}
|
|
|
|
function btCollisionWorld__AllHitsConvexResultCallback___AllHitsConvexResultCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__AllHitsConvexResultCallback___AllHitsConvexResultCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject_20const____findLinearSearch_28btCollisionObject_20const__20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btCollisionObject_20const____size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[$4 >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$4 >> 2] | 0 | 0) < (btAlignedObjectArray_btCollisionObject_20const____size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$3 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[$4 >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0) == (HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[$4 >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[$4 >> 2] = (HEAP32[$4 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
$32 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject_20const____removeAtIndex_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btCollisionObject_20const____size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btCollisionObject_20const____swap_28int_2c_20int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, (btAlignedObjectArray_btCollisionObject_20const____size_28_29_20const($5 | 0) | 0) - 1 | 0 | 0);
|
|
btAlignedObjectArray_btCollisionObject_20const____pop_back_28_29($5 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject_20const____swap_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[$5 >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject_20const____pop_back_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $13 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) > (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
$13 = GOT_data_internal___memory_base;
|
|
__assert_fail($13 + 85800 | 0 | 0, $13 + 78192 | 0 | 0, 201 | 0, $13 + 77711 | 0 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + -1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btVector3__length2_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $5 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$5 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($4 | 0, $4 | 0));
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($5);
|
|
}
|
|
|
|
function btVector3__minAxis_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0, $18 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[$4 >> 2]) < Math_fround(HEAPF32[($4 + 4 | 0) >> 2]) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$18 = Math_fround(HEAPF32[$4 >> 2]) < Math_fround(HEAPF32[($4 + 8 | 0) >> 2]) & 1 | 0 ? 0 : 2;
|
|
break label$1;
|
|
}
|
|
$18 = Math_fround(HEAPF32[($4 + 4 | 0) >> 2]) < Math_fround(HEAPF32[($4 + 8 | 0) >> 2]) & 1 | 0 ? 1 : 2;
|
|
}
|
|
return $18 | 0;
|
|
}
|
|
|
|
function btConvexInternalShape__setSafeMargin_28float_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[$5 >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 8 | 0) >> 2]));
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[$5 >> 2]) < Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($6)) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 44 | 0) >> 2] | 0 | 0]($6, Math_fround(HEAPF32[$5 >> 2]));
|
|
}
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function cc__ccCompoundShape___ccCompoundShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCompoundShape___btCompoundShape_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function cc__ccCompoundShape___ccCompoundShape_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
cc__ccCompoundShape___ccCompoundShape_28_29($4 | 0) | 0;
|
|
cc__ccCompoundShape__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function cc__ccCompoundShape__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundShape__getLocalScaling_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 84 | 0 | 0;
|
|
}
|
|
|
|
function btCompoundShape__getName_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return GOT_data_internal___memory_base + 82224 | 0 | 0;
|
|
}
|
|
|
|
function btCollisionShape__getAnisotropicRollingFrictionDirection_28_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $1;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($4 + 4 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[$4 >> 2] = Math_fround(1.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $4 + 8 | 0 | 0, $4 + 4 | 0 | 0, $4 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundShape__setMargin_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 80 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function btCompoundShape__getMargin_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 80 | 0) >> 2]));
|
|
}
|
|
|
|
function btCompoundShape__calculateSerializeBufferSize_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 24 | 0;
|
|
}
|
|
|
|
function btFmod_28float_2c_20float_29($0, $1) {
|
|
$0 = Math_fround($0);
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $7 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAPF32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
$7 = Math_fround(fmodf(Math_fround(Math_fround(HEAPF32[($4 + 12 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2]))));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return Math_fround($7);
|
|
}
|
|
|
|
function btMatrix3x3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
$9 = $9 | 0;
|
|
var $12 = 0, $13 = 0;
|
|
$12 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $12;
|
|
HEAP32[($12 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($12 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($12 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($12 + 32 | 0) >> 2] = $3;
|
|
HEAP32[($12 + 28 | 0) >> 2] = $4;
|
|
HEAP32[($12 + 24 | 0) >> 2] = $5;
|
|
HEAP32[($12 + 20 | 0) >> 2] = $6;
|
|
HEAP32[($12 + 16 | 0) >> 2] = $7;
|
|
HEAP32[($12 + 12 | 0) >> 2] = $8;
|
|
HEAP32[($12 + 8 | 0) >> 2] = $9;
|
|
$13 = HEAP32[($12 + 44 | 0) >> 2] | 0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($13 | 0, HEAP32[($12 + 40 | 0) >> 2] | 0 | 0, HEAP32[($12 + 36 | 0) >> 2] | 0 | 0, HEAP32[($12 + 32 | 0) >> 2] | 0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($13 + 16 | 0 | 0, HEAP32[($12 + 28 | 0) >> 2] | 0 | 0, HEAP32[($12 + 24 | 0) >> 2] | 0 | 0, HEAP32[($12 + 20 | 0) >> 2] | 0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($13 + 32 | 0 | 0, HEAP32[($12 + 16 | 0) >> 2] | 0 | 0, HEAP32[($12 + 12 | 0) >> 2] | 0 | 0, HEAP32[($12 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $12 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuaternion__length2_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $5 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$5 = Math_fround(btQuaternion__dot_28btQuaternion_20const__29_20const($4 | 0, $4 | 0));
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($5);
|
|
}
|
|
|
|
function btQuaternion__dot_28btQuaternion_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $16 = Math_fround(0), $22 = Math_fround(0), $27 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$16 = Math_fround(Math_fround(Math_fround(HEAPF32[$5 >> 2]) * Math_fround(HEAPF32[(btQuadWord__x_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2]) * Math_fround(HEAPF32[(btQuadWord__y_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2])));
|
|
$22 = Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 8 | 0) >> 2]) * Math_fround(HEAPF32[(btQuadWord__z_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $16);
|
|
$27 = Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 12 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 12 | 0) >> 2])) + $22);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return Math_fround($27);
|
|
}
|
|
|
|
function btMatrix3x3__btMatrix3x3_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
$9 = $9 | 0;
|
|
var $12 = 0, $13 = 0, $16 = 0, $17 = 0, $19 = 0, $15 = 0, $34 = 0;
|
|
$12 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $12;
|
|
HEAP32[($12 + 40 | 0) >> 2] = $0;
|
|
HEAP32[($12 + 36 | 0) >> 2] = $1;
|
|
HEAP32[($12 + 32 | 0) >> 2] = $2;
|
|
HEAP32[($12 + 28 | 0) >> 2] = $3;
|
|
HEAP32[($12 + 24 | 0) >> 2] = $4;
|
|
HEAP32[($12 + 20 | 0) >> 2] = $5;
|
|
HEAP32[($12 + 16 | 0) >> 2] = $6;
|
|
HEAP32[($12 + 12 | 0) >> 2] = $7;
|
|
HEAP32[($12 + 8 | 0) >> 2] = $8;
|
|
HEAP32[($12 + 4 | 0) >> 2] = $9;
|
|
$13 = HEAP32[($12 + 40 | 0) >> 2] | 0;
|
|
HEAP32[($12 + 44 | 0) >> 2] = $13;
|
|
$15 = $13 + 48 | 0;
|
|
$16 = $13;
|
|
label$1 : while (1) {
|
|
$17 = $16;
|
|
btVector3__btVector3_28_29($17 | 0) | 0;
|
|
$19 = $17 + 16 | 0;
|
|
$16 = $19;
|
|
if (!(($19 | 0) == ($15 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
btMatrix3x3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($13 | 0, HEAP32[($12 + 36 | 0) >> 2] | 0 | 0, HEAP32[($12 + 32 | 0) >> 2] | 0 | 0, HEAP32[($12 + 28 | 0) >> 2] | 0 | 0, HEAP32[($12 + 24 | 0) >> 2] | 0 | 0, HEAP32[($12 + 20 | 0) >> 2] | 0 | 0, HEAP32[($12 + 16 | 0) >> 2] | 0 | 0, HEAP32[($12 + 12 | 0) >> 2] | 0 | 0, HEAP32[($12 + 8 | 0) >> 2] | 0 | 0, HEAP32[($12 + 4 | 0) >> 2] | 0 | 0);
|
|
$34 = HEAP32[($12 + 44 | 0) >> 2] | 0;
|
|
__stack_pointer = $12 + 48 | 0;
|
|
return $34 | 0;
|
|
}
|
|
|
|
function btMatrix3x3__btMatrix3x3_28btMatrix3x3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, $5 = 0, $8 = 0, $9 = 0, $11 = 0, $19 = 0, $27 = 0, $29 = 0, $37 = 0, $39 = 0, $7 = 0, $85 = 0, $95 = 0, $107 = 0, $117 = 0, $129 = 0, $139 = 0, $43 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $5;
|
|
$7 = $5 + 48 | 0;
|
|
$8 = $5;
|
|
label$1 : while (1) {
|
|
$9 = $8;
|
|
btVector3__btVector3_28_29($9 | 0) | 0;
|
|
$11 = $9 + 16 | 0;
|
|
$8 = $11;
|
|
if (!(($11 | 0) == ($7 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
i64toi32_i32$2 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$85 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $5;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $85;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$19 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $19 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$95 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5 + $19 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $95;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$27 = $5 + 16 | 0;
|
|
i64toi32_i32$2 = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 16 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$107 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $27;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $107;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$29 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $29 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$117 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $27 + $29 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $117;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$37 = $5 + 32 | 0;
|
|
i64toi32_i32$2 = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 32 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$129 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $37;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $129;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$39 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $39 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$139 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $37 + $39 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $139;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$43 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $43 | 0;
|
|
}
|
|
|
|
function btMotionState___btMotionState_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btTransform__inverse_28_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 96 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 92 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 88 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 88 | 0) >> 2] | 0;
|
|
btMatrix3x3__transpose_28_29_20const($4 + 40 | 0 | 0, $5 | 0);
|
|
operator__28btVector3_20const__29($4 + 8 | 0 | 0, $5 + 48 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($4 + 24 | 0 | 0, $4 + 40 | 0 | 0, $4 + 8 | 0 | 0);
|
|
btTransform__btTransform_28btMatrix3x3_20const__2c_20btVector3_20const__29($0 | 0, $4 + 40 | 0 | 0, $4 + 24 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 96 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTransform__operator__28btTransform_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 76 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 72 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 68 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 72 | 0) >> 2] | 0;
|
|
operator__28btMatrix3x3_20const__2c_20btMatrix3x3_20const__29($5 + 20 | 0 | 0, $6 | 0, HEAP32[($5 + 68 | 0) >> 2] | 0 | 0);
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($5 + 4 | 0 | 0, $6 | 0, (HEAP32[($5 + 68 | 0) >> 2] | 0) + 48 | 0 | 0);
|
|
btTransform__btTransform_28btMatrix3x3_20const__2c_20btVector3_20const__29($0 | 0, $5 + 20 | 0 | 0, $5 + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 80 | 0;
|
|
return;
|
|
}
|
|
|
|
function btMotionState___btMotionState_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function operator__28btMatrix3x3_20const__2c_20btMatrix3x3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 36 | 0) >> 2] = $2;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btMatrix3x3__tdotx_28btVector3_20const__29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btMatrix3x3__tdoty_28btVector3_20const__29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btMatrix3x3__tdotz_28btVector3_20const__29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btMatrix3x3__tdotx_28btVector3_20const__29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btMatrix3x3__tdoty_28btVector3_20const__29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btMatrix3x3__tdotz_28btVector3_20const__29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btMatrix3x3__tdotx_28btVector3_20const__29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btMatrix3x3__tdoty_28btVector3_20const__29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btMatrix3x3__tdotz_28btVector3_20const__29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
btMatrix3x3__btMatrix3x3_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $5 + 32 | 0 | 0, $5 + 28 | 0 | 0, $5 + 24 | 0 | 0, $5 + 20 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0, $5 + 8 | 0 | 0, $5 + 4 | 0 | 0, $5 | 0) | 0;
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTransform__operator_28_29_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
btVector3__dot3_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29_20const($5 + 8 | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29_20const($6 | 0, 0 | 0) | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29_20const($6 | 0, 1 | 0) | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29_20const($6 | 0, 2 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($0 | 0, $5 + 8 | 0 | 0, $6 + 48 | 0 | 0);
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btMatrix3x3__transpose_28_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
btMatrix3x3__btMatrix3x3_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, btVector3__x_28_29_20const($5 | 0) | 0 | 0, btVector3__x_28_29_20const($5 + 16 | 0 | 0) | 0 | 0, btVector3__x_28_29_20const($5 + 32 | 0 | 0) | 0 | 0, btVector3__y_28_29_20const($5 | 0) | 0 | 0, btVector3__y_28_29_20const($5 + 16 | 0 | 0) | 0 | 0, btVector3__y_28_29_20const($5 + 32 | 0 | 0) | 0 | 0, btVector3__z_28_29_20const($5 | 0) | 0 | 0, btVector3__z_28_29_20const($5 + 16 | 0 | 0) | 0 | 0, btVector3__z_28_29_20const($5 + 32 | 0 | 0) | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function operator__28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $1;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2]));
|
|
HEAPF32[($4 + 4 | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2]));
|
|
HEAPF32[$4 >> 2] = Math_fround(-Math_fround(HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2]));
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $4 + 8 | 0 | 0, $4 + 4 | 0 | 0, $4 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btMatrix3x3__operator__28btMatrix3x3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, $5 = 0, $8 = 0, $16 = 0, $18 = 0, $26 = 0, $28 = 0, $47 = 0, $57 = 0, $69 = 0, $79 = 0, $91 = 0, $101 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$47 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $5;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $47;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$8 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $8 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$57 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5 + $8 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $57;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$16 = $5 + 16 | 0;
|
|
i64toi32_i32$2 = (HEAP32[($4 + 8 | 0) >> 2] | 0) + 16 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$69 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $16;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $69;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$18 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $18 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$79 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $16 + $18 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $79;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$26 = $5 + 32 | 0;
|
|
i64toi32_i32$2 = (HEAP32[($4 + 8 | 0) >> 2] | 0) + 32 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$91 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $26;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $91;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$28 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $28 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$101 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $26 + $28 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $101;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btMatrix3x3__tdotx_28btVector3_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $20 = Math_fround(0), $29 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$20 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 + 16 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2])));
|
|
$29 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 + 32 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $20);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return Math_fround($29);
|
|
}
|
|
|
|
function btMatrix3x3__tdoty_28btVector3_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $20 = Math_fround(0), $29 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$20 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 + 16 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2])));
|
|
$29 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 + 32 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $20);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return Math_fround($29);
|
|
}
|
|
|
|
function btMatrix3x3__tdotz_28btVector3_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $20 = Math_fround(0), $29 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$20 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 + 16 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2])));
|
|
$29 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 + 32 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $20);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return Math_fround($29);
|
|
}
|
|
|
|
function btVector3__dot3_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29_20const($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 | 0, HEAP32[($7 + 24 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 | 0, HEAP32[($7 + 20 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 | 0, HEAP32[($7 + 16 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $7 + 12 | 0 | 0, $7 + 8 | 0 | 0, $7 + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function operator__28btVector3_20const__2c_20btVector3_20const__29_2($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $2;
|
|
HEAPF32[($5 + 20 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[(HEAP32[($5 + 28 | 0) >> 2] | 0) >> 2]) + Math_fround(HEAPF32[(HEAP32[($5 + 24 | 0) >> 2] | 0) >> 2]));
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 28 | 0) >> 2] | 0) + 4 | 0) >> 2]) + Math_fround(HEAPF32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2]));
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 28 | 0) >> 2] | 0) + 8 | 0) >> 2]) + Math_fround(HEAPF32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 8 | 0) >> 2]));
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $5 + 20 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__internal__NoBaseClass__verify_btDebugDraw__28_29() {
|
|
|
|
}
|
|
|
|
function void_20const__20emscripten__internal__getActualType_btDebugDraw__28btDebugDraw__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = void_20const__20emscripten__internal__getLightTypeID_btDebugDraw__28btDebugDraw_20const__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function void_20_28_emscripten__internal__NoBaseClass__getUpcaster_btDebugDraw__28_29_29_28_29() {
|
|
return 0 | 0;
|
|
}
|
|
|
|
function void_20_28_emscripten__internal__NoBaseClass__getDowncaster_btDebugDraw__28_29_29_28_29() {
|
|
return 0 | 0;
|
|
}
|
|
|
|
function void_20emscripten__internal__raw_destructor_btDebugDraw__28btDebugDraw__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (($4 | 0) == (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 4 | 0) >> 2] | 0 | 0]($4);
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__TypeID_btDebugDraw_2c_20void___get_28_29() {
|
|
return emscripten__internal__LightTypeID_btDebugDraw___get_28_29() | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__TypeID_emscripten__internal__AllowedRawPointer_btDebugDraw__2c_20void___get_28_29() {
|
|
return emscripten__internal__LightTypeID_btDebugDraw____get_28_29() | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__TypeID_emscripten__internal__AllowedRawPointer_btDebugDraw_20const__2c_20void___get_28_29() {
|
|
return emscripten__internal__LightTypeID_btDebugDraw_20const____get_28_29() | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__NoBaseClass__get_28_29() {
|
|
return 0 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_int_2c_20int__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int__28_29__signature | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_void__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void__28_29__signature | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_void_2c_20int__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int__28_29__signature | 0;
|
|
}
|
|
|
|
function void_20emscripten__internal__RegisterClassMethod_void_20_28btIDebugDraw____29_28_29___invoke_btDebugDraw__28char_20const__2c_20void_20_28btIDebugDraw____29_28_29_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $6 = 0, $8 = 0, $9 = 0, $13 = 0, $17 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
$5 = HEAP32[$1 >> 2] | 0;
|
|
$6 = HEAP32[($1 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $6;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $5;
|
|
HEAP32[($4 + 12 | 0) >> 2] = GOT_func_internal_emscripten__internal__MethodInvoker_void_20_28btIDebugDraw____29_28_29_2c_20void_2c_20btIDebugDraw____invoke_28void_20_28btIDebugDraw____20const__29_28_29_2c_20btIDebugDraw__29;
|
|
$8 = emscripten__internal__TypeID_btIDebugDraw_2c_20void___get_28_29() | 0;
|
|
$9 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
$13 = emscripten__internal__WithPolicies____ArgTypeList_void_2c_20emscripten__internal__AllowedRawPointer_btIDebugDraw____getCount_28_29_20const($4 + 11 | 0 | 0) | 0;
|
|
$17 = emscripten__internal__WithPolicies____ArgTypeList_void_2c_20emscripten__internal__AllowedRawPointer_btIDebugDraw____getTypes_28_29_20const($4 + 11 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
_embind_register_class_function($8 | 0, $9 | 0, $13 | 0, $17 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, void_20_28btIDebugDraw____emscripten__internal__getContext_void_20_28btIDebugDraw____29_28_29__28void_20_28btIDebugDraw____20const__29_28_29_29_29_28_29($4 + 16 | 0 | 0) | 0 | 0, 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__internal__RegisterClassMethod_void_20_28btDebugDraw____29_28int_2c_20int_2c_20int_29___invoke_btDebugDraw__28char_20const__2c_20void_20_28btDebugDraw____29_28int_2c_20int_2c_20int_29_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $6 = 0, $8 = 0, $9 = 0, $13 = 0, $17 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
$5 = HEAP32[$1 >> 2] | 0;
|
|
$6 = HEAP32[($1 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $6;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $5;
|
|
HEAP32[($4 + 12 | 0) >> 2] = GOT_func_internal_emscripten__internal__MethodInvoker_void_20_28btDebugDraw____29_28int_2c_20int_2c_20int_29_2c_20void_2c_20btDebugDraw__2c_20int_2c_20int_2c_20int___invoke_28void_20_28btDebugDraw____20const__29_28int_2c_20int_2c_20int_29_2c_20btDebugDraw__2c_20int_2c_20int_2c_20int_29;
|
|
$8 = emscripten__internal__TypeID_btDebugDraw_2c_20void___get_28_29() | 0;
|
|
$9 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
$13 = emscripten__internal__WithPolicies____ArgTypeList_void_2c_20emscripten__internal__AllowedRawPointer_btDebugDraw__2c_20int_2c_20int_2c_20int___getCount_28_29_20const($4 + 11 | 0 | 0) | 0;
|
|
$17 = emscripten__internal__WithPolicies____ArgTypeList_void_2c_20emscripten__internal__AllowedRawPointer_btDebugDraw__2c_20int_2c_20int_2c_20int___getTypes_28_29_20const($4 + 11 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
_embind_register_class_function($8 | 0, $9 | 0, $13 | 0, $17 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, void_20_28btDebugDraw____emscripten__internal__getContext_void_20_28btDebugDraw____29_28int_2c_20int_2c_20int_29__28void_20_28btDebugDraw____20const__29_28int_2c_20int_2c_20int_29_29_29_28int_2c_20int_2c_20int_29($4 + 16 | 0 | 0) | 0 | 0, 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__base_btDebugDraw___verify_btDebugDrawWrapper__28_29() {
|
|
|
|
}
|
|
|
|
function void_20const__20emscripten__internal__getActualType_btDebugDrawWrapper__28btDebugDrawWrapper__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = void_20const__20emscripten__internal__getLightTypeID_btDebugDrawWrapper__28btDebugDrawWrapper_20const__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btDebugDraw__20_28_emscripten__base_btDebugDraw___getUpcaster_btDebugDrawWrapper__28_29_29_28btDebugDrawWrapper__29() {
|
|
return GOT_func_internal_btDebugDraw__20emscripten__base_btDebugDraw___convertPointer_btDebugDrawWrapper_2c_20btDebugDraw__28btDebugDrawWrapper__29 | 0;
|
|
}
|
|
|
|
function btDebugDrawWrapper__20_28_emscripten__base_btDebugDraw___getDowncaster_btDebugDrawWrapper__28_29_29_28btDebugDraw__29() {
|
|
return GOT_func_internal_btDebugDrawWrapper__20emscripten__base_btDebugDraw___convertPointer_btDebugDraw_2c_20btDebugDrawWrapper__28btDebugDraw__29 | 0;
|
|
}
|
|
|
|
function void_20emscripten__internal__raw_destructor_btDebugDrawWrapper__28btDebugDrawWrapper__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (($4 | 0) == (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 4 | 0) >> 2] | 0 | 0]($4);
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__TypeID_btDebugDrawWrapper_2c_20void___get_28_29() {
|
|
return emscripten__internal__LightTypeID_btDebugDrawWrapper___get_28_29() | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__TypeID_emscripten__internal__AllowedRawPointer_btDebugDrawWrapper__2c_20void___get_28_29() {
|
|
return emscripten__internal__LightTypeID_btDebugDrawWrapper____get_28_29() | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__TypeID_emscripten__internal__AllowedRawPointer_btDebugDrawWrapper_20const__2c_20void___get_28_29() {
|
|
return emscripten__internal__LightTypeID_btDebugDrawWrapper_20const____get_28_29() | 0 | 0;
|
|
}
|
|
|
|
function emscripten__base_btDebugDraw___get_28_29() {
|
|
return emscripten__internal__TypeID_btDebugDraw_2c_20void___get_28_29() | 0 | 0;
|
|
}
|
|
|
|
function emscripten__class__btDebugDraw_2c_20emscripten__internal__NoBaseClass__20const__20emscripten__class__btDebugDraw_2c_20emscripten__internal__NoBaseClass___allow_subclass_btDebugDrawWrapper__28char_20const__2c_20emscripten__constructor___29_20const___lambda__28btDebugDrawWrapper__29__operator_20void_20_28__29_28btDebugDrawWrapper__29_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return GOT_func_internal_emscripten__class__btDebugDraw_2c_20emscripten__internal__NoBaseClass__20const__20emscripten__class__btDebugDraw_2c_20emscripten__internal__NoBaseClass___allow_subclass_btDebugDrawWrapper__28char_20const__2c_20emscripten__constructor___29_20const___lambda__28btDebugDrawWrapper__29____invoke_28btDebugDrawWrapper__29 | 0;
|
|
}
|
|
|
|
function void_20_28_emscripten__select_overload_void_20_28btDebugDrawWrapper__29__28void_20_28__29_28btDebugDrawWrapper__29_29_29_28btDebugDrawWrapper__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function void_20emscripten__internal__RegisterClassMethod_void_20_28__29_28btDebugDrawWrapper__29___invoke_btDebugDrawWrapper__28char_20const__2c_20void_20_28__29_28btDebugDrawWrapper__29_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $7 = 0, $11 = 0, $15 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = GOT_func_internal_emscripten__internal__FunctionInvoker_void_20_28__29_28btDebugDrawWrapper__29_2c_20void_2c_20btDebugDrawWrapper____invoke_28void_20_28___29_28btDebugDrawWrapper__29_2c_20btDebugDrawWrapper__29;
|
|
$6 = emscripten__internal__TypeID_btDebugDrawWrapper_2c_20void___get_28_29() | 0;
|
|
$7 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
$11 = emscripten__internal__WithPolicies____ArgTypeList_void_2c_20btDebugDrawWrapper____getCount_28_29_20const($4 + 19 | 0 | 0) | 0;
|
|
$15 = emscripten__internal__WithPolicies____ArgTypeList_void_2c_20btDebugDrawWrapper____getTypes_28_29_20const($4 + 19 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
_embind_register_class_function($6 | 0, $7 | 0, $11 | 0, $15 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, void_20_28__emscripten__internal__getContext_void_20_28__29_28btDebugDrawWrapper__29__28void_20_28__20const__29_28btDebugDrawWrapper__29_29_29_28btDebugDrawWrapper__29($4 + 20 | 0 | 0) | 0 | 0, 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDebugDrawWrapper__20emscripten__internal__wrapped_new_btDebugDrawWrapper__2c_20btDebugDrawWrapper_2c_20emscripten__val__28emscripten__val___29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = btDebugDraw__operator_20new_28unsigned_20long_29(144 | 0) | 0;
|
|
btDebugDrawWrapper__btDebugDrawWrapper___28emscripten__val___29($5 | 0, HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_btDebugDrawWrapper__2c_20emscripten__val_____invoke_28btDebugDrawWrapper__20_28__29_28emscripten__val___29_2c_20emscripten___EM_VAL__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
emscripten__internal__BindingType_emscripten__val___2c_20void___fromWireType_28emscripten___EM_VAL__29($4 + 4 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
$14 = emscripten__internal__BindingType_btDebugDrawWrapper__2c_20void___toWireType_28btDebugDrawWrapper__29(FUNCTION_TABLE[$5 | 0]($4 + 4 | 0) | 0 | 0) | 0;
|
|
emscripten__val___val_28_29($4 + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $14 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointer_emscripten__ret_val____ArgTypeList_btDebugDrawWrapper__2c_20emscripten__val_____getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 2 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointer_emscripten__ret_val____ArgTypeList_btDebugDrawWrapper__2c_20emscripten__val_____getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_emscripten__internal__AllowedRawPointer_btDebugDrawWrapper__2c_20emscripten__val______get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__val_20emscripten__internal__wrapped_extend_btDebugDrawWrapper__28std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
emscripten__val__take_ownership_28emscripten___EM_VAL__29($0 | 0, _embind_create_inheriting_constructor(std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____c_str_5babi_v160004_5d_28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0 | 0, emscripten__internal__TypeID_btDebugDrawWrapper_2c_20void___get_28_29() | 0 | 0, emscripten__val__as_handle_28_29_20const(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_emscripten__val_2c_20std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const____invoke_28emscripten__val_20_28__29_28std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const__29_2c_20emscripten__internal__BindingType_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___2c_20void____unnamed___2c_20emscripten___EM_VAL__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $23 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
emscripten__internal__BindingType_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___2c_20void___fromWireType_28emscripten__internal__BindingType_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___2c_20void____unnamed___29($5 + 4 | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
emscripten__internal__BindingType_emscripten__val_2c_20void___fromWireType_28emscripten___EM_VAL__29($5 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0);
|
|
FUNCTION_TABLE[$6 | 0]($5 + 16 | 0, $5 + 4 | 0, $5);
|
|
$23 = emscripten__internal__BindingType_emscripten__val_2c_20void___toWireType_28emscripten__val_20const__29($5 + 16 | 0 | 0) | 0;
|
|
emscripten__val___val_28_29($5 + 16 | 0 | 0) | 0;
|
|
emscripten__val___val_28_29($5 | 0) | 0;
|
|
std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char_____basic_string_28_29($5 + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return $23 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_emscripten__val_2c_20std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const____getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 3 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_emscripten__val_2c_20std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const____getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_emscripten__val_2c_20std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const_____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int__28_29__signature | 0;
|
|
}
|
|
|
|
function void_20emscripten__internal__NoBaseClass__verify_btControllerHitReport__28_29() {
|
|
|
|
}
|
|
|
|
function void_20const__20emscripten__internal__getActualType_btControllerHitReport__28btControllerHitReport__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = void_20const__20emscripten__internal__getLightTypeID_btControllerHitReport__28btControllerHitReport_20const__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function void_20_28_emscripten__internal__NoBaseClass__getUpcaster_btControllerHitReport__28_29_29_28_29() {
|
|
return 0 | 0;
|
|
}
|
|
|
|
function void_20_28_emscripten__internal__NoBaseClass__getDowncaster_btControllerHitReport__28_29_29_28_29() {
|
|
return 0 | 0;
|
|
}
|
|
|
|
function void_20emscripten__internal__raw_destructor_btControllerHitReport__28btControllerHitReport__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (($4 | 0) == (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($4);
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__TypeID_btControllerHitReport_2c_20void___get_28_29() {
|
|
return emscripten__internal__LightTypeID_btControllerHitReport___get_28_29() | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__TypeID_emscripten__internal__AllowedRawPointer_btControllerHitReport__2c_20void___get_28_29() {
|
|
return emscripten__internal__LightTypeID_btControllerHitReport____get_28_29() | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__TypeID_emscripten__internal__AllowedRawPointer_btControllerHitReport_20const__2c_20void___get_28_29() {
|
|
return emscripten__internal__LightTypeID_btControllerHitReport_20const____get_28_29() | 0 | 0;
|
|
}
|
|
|
|
function void_20emscripten__internal__RegisterClassMethod_void_20_28btControllerHitReport____29_28int_2c_20int_29___invoke_btControllerHitReport__28char_20const__2c_20void_20_28btControllerHitReport____29_28int_2c_20int_29_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $6 = 0, $8 = 0, $9 = 0, $13 = 0, $17 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
$5 = HEAP32[$1 >> 2] | 0;
|
|
$6 = HEAP32[($1 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $6;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $5;
|
|
HEAP32[($4 + 12 | 0) >> 2] = GOT_func_internal_emscripten__internal__MethodInvoker_void_20_28btControllerHitReport____29_28int_2c_20int_29_2c_20void_2c_20btControllerHitReport__2c_20int_2c_20int___invoke_28void_20_28btControllerHitReport____20const__29_28int_2c_20int_29_2c_20btControllerHitReport__2c_20int_2c_20int_29;
|
|
$8 = emscripten__internal__TypeID_btControllerHitReport_2c_20void___get_28_29() | 0;
|
|
$9 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
$13 = emscripten__internal__WithPolicies____ArgTypeList_void_2c_20emscripten__internal__AllowedRawPointer_btControllerHitReport__2c_20int_2c_20int___getCount_28_29_20const($4 + 11 | 0 | 0) | 0;
|
|
$17 = emscripten__internal__WithPolicies____ArgTypeList_void_2c_20emscripten__internal__AllowedRawPointer_btControllerHitReport__2c_20int_2c_20int___getTypes_28_29_20const($4 + 11 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
_embind_register_class_function($8 | 0, $9 | 0, $13 | 0, $17 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, void_20_28btControllerHitReport____emscripten__internal__getContext_void_20_28btControllerHitReport____29_28int_2c_20int_29__28void_20_28btControllerHitReport____20const__29_28int_2c_20int_29_29_29_28int_2c_20int_29($4 + 16 | 0 | 0) | 0 | 0, 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__base_btControllerHitReport___verify_btControllerHitReportWrapper__28_29() {
|
|
|
|
}
|
|
|
|
function void_20const__20emscripten__internal__getActualType_btControllerHitReportWrapper__28btControllerHitReportWrapper__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = void_20const__20emscripten__internal__getLightTypeID_btControllerHitReportWrapper__28btControllerHitReportWrapper_20const__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btControllerHitReport__20_28_emscripten__base_btControllerHitReport___getUpcaster_btControllerHitReportWrapper__28_29_29_28btControllerHitReportWrapper__29() {
|
|
return GOT_func_internal_btControllerHitReport__20emscripten__base_btControllerHitReport___convertPointer_btControllerHitReportWrapper_2c_20btControllerHitReport__28btControllerHitReportWrapper__29 | 0;
|
|
}
|
|
|
|
function btControllerHitReportWrapper__20_28_emscripten__base_btControllerHitReport___getDowncaster_btControllerHitReportWrapper__28_29_29_28btControllerHitReport__29() {
|
|
return GOT_func_internal_btControllerHitReportWrapper__20emscripten__base_btControllerHitReport___convertPointer_btControllerHitReport_2c_20btControllerHitReportWrapper__28btControllerHitReport__29 | 0;
|
|
}
|
|
|
|
function void_20emscripten__internal__raw_destructor_btControllerHitReportWrapper__28btControllerHitReportWrapper__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (($4 | 0) == (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($4);
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__TypeID_btControllerHitReportWrapper_2c_20void___get_28_29() {
|
|
return emscripten__internal__LightTypeID_btControllerHitReportWrapper___get_28_29() | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__TypeID_emscripten__internal__AllowedRawPointer_btControllerHitReportWrapper__2c_20void___get_28_29() {
|
|
return emscripten__internal__LightTypeID_btControllerHitReportWrapper____get_28_29() | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__TypeID_emscripten__internal__AllowedRawPointer_btControllerHitReportWrapper_20const__2c_20void___get_28_29() {
|
|
return emscripten__internal__LightTypeID_btControllerHitReportWrapper_20const____get_28_29() | 0 | 0;
|
|
}
|
|
|
|
function emscripten__base_btControllerHitReport___get_28_29() {
|
|
return emscripten__internal__TypeID_btControllerHitReport_2c_20void___get_28_29() | 0 | 0;
|
|
}
|
|
|
|
function emscripten__class__btControllerHitReport_2c_20emscripten__internal__NoBaseClass__20const__20emscripten__class__btControllerHitReport_2c_20emscripten__internal__NoBaseClass___allow_subclass_btControllerHitReportWrapper__28char_20const__2c_20emscripten__constructor___29_20const___lambda__28btControllerHitReportWrapper__29__operator_20void_20_28__29_28btControllerHitReportWrapper__29_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return GOT_func_internal_emscripten__class__btControllerHitReport_2c_20emscripten__internal__NoBaseClass__20const__20emscripten__class__btControllerHitReport_2c_20emscripten__internal__NoBaseClass___allow_subclass_btControllerHitReportWrapper__28char_20const__2c_20emscripten__constructor___29_20const___lambda__28btControllerHitReportWrapper__29____invoke_28btControllerHitReportWrapper__29 | 0;
|
|
}
|
|
|
|
function void_20_28_emscripten__select_overload_void_20_28btControllerHitReportWrapper__29__28void_20_28__29_28btControllerHitReportWrapper__29_29_29_28btControllerHitReportWrapper__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function void_20emscripten__internal__RegisterClassMethod_void_20_28__29_28btControllerHitReportWrapper__29___invoke_btControllerHitReportWrapper__28char_20const__2c_20void_20_28__29_28btControllerHitReportWrapper__29_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $7 = 0, $11 = 0, $15 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = GOT_func_internal_emscripten__internal__FunctionInvoker_void_20_28__29_28btControllerHitReportWrapper__29_2c_20void_2c_20btControllerHitReportWrapper____invoke_28void_20_28___29_28btControllerHitReportWrapper__29_2c_20btControllerHitReportWrapper__29;
|
|
$6 = emscripten__internal__TypeID_btControllerHitReportWrapper_2c_20void___get_28_29() | 0;
|
|
$7 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
$11 = emscripten__internal__WithPolicies____ArgTypeList_void_2c_20btControllerHitReportWrapper____getCount_28_29_20const($4 + 19 | 0 | 0) | 0;
|
|
$15 = emscripten__internal__WithPolicies____ArgTypeList_void_2c_20btControllerHitReportWrapper____getTypes_28_29_20const($4 + 19 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
_embind_register_class_function($6 | 0, $7 | 0, $11 | 0, $15 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, void_20_28__emscripten__internal__getContext_void_20_28__29_28btControllerHitReportWrapper__29__28void_20_28__20const__29_28btControllerHitReportWrapper__29_29_29_28btControllerHitReportWrapper__29($4 + 20 | 0 | 0) | 0 | 0, 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btControllerHitReportWrapper__20emscripten__internal__wrapped_new_btControllerHitReportWrapper__2c_20btControllerHitReportWrapper_2c_20emscripten__val__28emscripten__val___29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = operator_20new_28unsigned_20long_29(12 | 0) | 0;
|
|
btControllerHitReportWrapper__btControllerHitReportWrapper___28emscripten__val___29($5 | 0, HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_btControllerHitReportWrapper__2c_20emscripten__val_____invoke_28btControllerHitReportWrapper__20_28__29_28emscripten__val___29_2c_20emscripten___EM_VAL__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
emscripten__internal__BindingType_emscripten__val___2c_20void___fromWireType_28emscripten___EM_VAL__29($4 + 4 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
$14 = emscripten__internal__BindingType_btControllerHitReportWrapper__2c_20void___toWireType_28btControllerHitReportWrapper__29(FUNCTION_TABLE[$5 | 0]($4 + 4 | 0) | 0 | 0) | 0;
|
|
emscripten__val___val_28_29($4 + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $14 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointer_emscripten__ret_val____ArgTypeList_btControllerHitReportWrapper__2c_20emscripten__val_____getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 2 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointer_emscripten__ret_val____ArgTypeList_btControllerHitReportWrapper__2c_20emscripten__val_____getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_emscripten__internal__AllowedRawPointer_btControllerHitReportWrapper__2c_20emscripten__val______get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__val_20emscripten__internal__wrapped_extend_btControllerHitReportWrapper__28std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
emscripten__val__take_ownership_28emscripten___EM_VAL__29($0 | 0, _embind_create_inheriting_constructor(std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____c_str_5babi_v160004_5d_28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0 | 0, emscripten__internal__TypeID_btControllerHitReportWrapper_2c_20void___get_28_29() | 0 | 0, emscripten__val__as_handle_28_29_20const(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__internal__NoBaseClass__verify_cc__ccMotionState__28_29() {
|
|
|
|
}
|
|
|
|
function void_20const__20emscripten__internal__getActualType_cc__ccMotionState__28cc__ccMotionState__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = void_20const__20emscripten__internal__getLightTypeID_cc__ccMotionState__28cc__ccMotionState_20const__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function void_20_28_emscripten__internal__NoBaseClass__getUpcaster_cc__ccMotionState__28_29_29_28_29() {
|
|
return 0 | 0;
|
|
}
|
|
|
|
function void_20_28_emscripten__internal__NoBaseClass__getDowncaster_cc__ccMotionState__28_29_29_28_29() {
|
|
return 0 | 0;
|
|
}
|
|
|
|
function void_20emscripten__internal__raw_destructor_cc__ccMotionState__28cc__ccMotionState__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (($4 | 0) == (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 4 | 0) >> 2] | 0 | 0]($4);
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__TypeID_cc__ccMotionState_2c_20void___get_28_29() {
|
|
return emscripten__internal__LightTypeID_cc__ccMotionState___get_28_29() | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__TypeID_emscripten__internal__AllowedRawPointer_cc__ccMotionState__2c_20void___get_28_29() {
|
|
return emscripten__internal__LightTypeID_cc__ccMotionState____get_28_29() | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__TypeID_emscripten__internal__AllowedRawPointer_cc__ccMotionState_20const__2c_20void___get_28_29() {
|
|
return emscripten__internal__LightTypeID_cc__ccMotionState_20const____get_28_29() | 0 | 0;
|
|
}
|
|
|
|
function void_20emscripten__internal__RegisterClassMethod_void_20_28cc__ccMotionState____29_28int_29___invoke_cc__ccMotionState__28char_20const__2c_20void_20_28cc__ccMotionState____29_28int_29_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $6 = 0, $8 = 0, $9 = 0, $13 = 0, $17 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
$5 = HEAP32[$1 >> 2] | 0;
|
|
$6 = HEAP32[($1 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $6;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $5;
|
|
HEAP32[($4 + 12 | 0) >> 2] = GOT_func_internal_emscripten__internal__MethodInvoker_void_20_28cc__ccMotionState____29_28int_29_2c_20void_2c_20cc__ccMotionState__2c_20int___invoke_28void_20_28cc__ccMotionState____20const__29_28int_29_2c_20cc__ccMotionState__2c_20int_29;
|
|
$8 = emscripten__internal__TypeID_cc__ccMotionState_2c_20void___get_28_29() | 0;
|
|
$9 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
$13 = emscripten__internal__WithPolicies____ArgTypeList_void_2c_20emscripten__internal__AllowedRawPointer_cc__ccMotionState__2c_20int___getCount_28_29_20const($4 + 11 | 0 | 0) | 0;
|
|
$17 = emscripten__internal__WithPolicies____ArgTypeList_void_2c_20emscripten__internal__AllowedRawPointer_cc__ccMotionState__2c_20int___getTypes_28_29_20const($4 + 11 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
_embind_register_class_function($8 | 0, $9 | 0, $13 | 0, $17 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, void_20_28cc__ccMotionState____emscripten__internal__getContext_void_20_28cc__ccMotionState____29_28int_29__28void_20_28cc__ccMotionState____20const__29_28int_29_29_29_28int_29($4 + 16 | 0 | 0) | 0 | 0, 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__base_cc__ccMotionState___verify_ccMotionStateWrapper__28_29() {
|
|
|
|
}
|
|
|
|
function void_20const__20emscripten__internal__getActualType_ccMotionStateWrapper__28ccMotionStateWrapper__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = void_20const__20emscripten__internal__getLightTypeID_ccMotionStateWrapper__28ccMotionStateWrapper_20const__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function cc__ccMotionState__20_28_emscripten__base_cc__ccMotionState___getUpcaster_ccMotionStateWrapper__28_29_29_28ccMotionStateWrapper__29() {
|
|
return GOT_func_internal_cc__ccMotionState__20emscripten__base_cc__ccMotionState___convertPointer_ccMotionStateWrapper_2c_20cc__ccMotionState__28ccMotionStateWrapper__29 | 0;
|
|
}
|
|
|
|
function ccMotionStateWrapper__20_28_emscripten__base_cc__ccMotionState___getDowncaster_ccMotionStateWrapper__28_29_29_28cc__ccMotionState__29() {
|
|
return GOT_func_internal_ccMotionStateWrapper__20emscripten__base_cc__ccMotionState___convertPointer_cc__ccMotionState_2c_20ccMotionStateWrapper__28cc__ccMotionState__29 | 0;
|
|
}
|
|
|
|
function void_20emscripten__internal__raw_destructor_ccMotionStateWrapper__28ccMotionStateWrapper__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (($4 | 0) == (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 4 | 0) >> 2] | 0 | 0]($4);
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__TypeID_ccMotionStateWrapper_2c_20void___get_28_29() {
|
|
return emscripten__internal__LightTypeID_ccMotionStateWrapper___get_28_29() | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__TypeID_emscripten__internal__AllowedRawPointer_ccMotionStateWrapper__2c_20void___get_28_29() {
|
|
return emscripten__internal__LightTypeID_ccMotionStateWrapper____get_28_29() | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__TypeID_emscripten__internal__AllowedRawPointer_ccMotionStateWrapper_20const__2c_20void___get_28_29() {
|
|
return emscripten__internal__LightTypeID_ccMotionStateWrapper_20const____get_28_29() | 0 | 0;
|
|
}
|
|
|
|
function emscripten__base_cc__ccMotionState___get_28_29() {
|
|
return emscripten__internal__TypeID_cc__ccMotionState_2c_20void___get_28_29() | 0 | 0;
|
|
}
|
|
|
|
function emscripten__class__cc__ccMotionState_2c_20emscripten__internal__NoBaseClass__20const__20emscripten__class__cc__ccMotionState_2c_20emscripten__internal__NoBaseClass___allow_subclass_ccMotionStateWrapper__28char_20const__2c_20emscripten__constructor___29_20const___lambda__28ccMotionStateWrapper__29__operator_20void_20_28__29_28ccMotionStateWrapper__29_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return GOT_func_internal_emscripten__class__cc__ccMotionState_2c_20emscripten__internal__NoBaseClass__20const__20emscripten__class__cc__ccMotionState_2c_20emscripten__internal__NoBaseClass___allow_subclass_ccMotionStateWrapper__28char_20const__2c_20emscripten__constructor___29_20const___lambda__28ccMotionStateWrapper__29____invoke_28ccMotionStateWrapper__29 | 0;
|
|
}
|
|
|
|
function void_20_28_emscripten__select_overload_void_20_28ccMotionStateWrapper__29__28void_20_28__29_28ccMotionStateWrapper__29_29_29_28ccMotionStateWrapper__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function void_20emscripten__internal__RegisterClassMethod_void_20_28__29_28ccMotionStateWrapper__29___invoke_ccMotionStateWrapper__28char_20const__2c_20void_20_28__29_28ccMotionStateWrapper__29_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $7 = 0, $11 = 0, $15 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = GOT_func_internal_emscripten__internal__FunctionInvoker_void_20_28__29_28ccMotionStateWrapper__29_2c_20void_2c_20ccMotionStateWrapper____invoke_28void_20_28___29_28ccMotionStateWrapper__29_2c_20ccMotionStateWrapper__29;
|
|
$6 = emscripten__internal__TypeID_ccMotionStateWrapper_2c_20void___get_28_29() | 0;
|
|
$7 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
$11 = emscripten__internal__WithPolicies____ArgTypeList_void_2c_20ccMotionStateWrapper____getCount_28_29_20const($4 + 19 | 0 | 0) | 0;
|
|
$15 = emscripten__internal__WithPolicies____ArgTypeList_void_2c_20ccMotionStateWrapper____getTypes_28_29_20const($4 + 19 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
_embind_register_class_function($6 | 0, $7 | 0, $11 | 0, $15 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, void_20_28__emscripten__internal__getContext_void_20_28__29_28ccMotionStateWrapper__29__28void_20_28__20const__29_28ccMotionStateWrapper__29_29_29_28ccMotionStateWrapper__29($4 + 20 | 0 | 0) | 0 | 0, 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function ccMotionStateWrapper__20emscripten__internal__wrapped_new_ccMotionStateWrapper__2c_20ccMotionStateWrapper_2c_20emscripten__val__28emscripten__val___29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = operator_20new_28unsigned_20long_29(80 | 0) | 0;
|
|
ccMotionStateWrapper__ccMotionStateWrapper___28emscripten__val___29($5 | 0, HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_ccMotionStateWrapper__2c_20emscripten__val_____invoke_28ccMotionStateWrapper__20_28__29_28emscripten__val___29_2c_20emscripten___EM_VAL__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
emscripten__internal__BindingType_emscripten__val___2c_20void___fromWireType_28emscripten___EM_VAL__29($4 + 4 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
$14 = emscripten__internal__BindingType_ccMotionStateWrapper__2c_20void___toWireType_28ccMotionStateWrapper__29(FUNCTION_TABLE[$5 | 0]($4 + 4 | 0) | 0 | 0) | 0;
|
|
emscripten__val___val_28_29($4 + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $14 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointer_emscripten__ret_val____ArgTypeList_ccMotionStateWrapper__2c_20emscripten__val_____getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 2 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointer_emscripten__ret_val____ArgTypeList_ccMotionStateWrapper__2c_20emscripten__val_____getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_emscripten__internal__AllowedRawPointer_ccMotionStateWrapper__2c_20emscripten__val______get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__val_20emscripten__internal__wrapped_extend_ccMotionStateWrapper__28std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
emscripten__val__take_ownership_28emscripten___EM_VAL__29($0 | 0, _embind_create_inheriting_constructor(std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____c_str_5babi_v160004_5d_28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0 | 0, emscripten__internal__TypeID_ccMotionStateWrapper_2c_20void___get_28_29() | 0 | 0, emscripten__val__as_handle_28_29_20const(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_int_2c_20int__28char_20const__2c_20int_20_28__29_28int_29_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_int_2c_20int___invoke_28int_20_28__29_28int_29_2c_20int_29;
|
|
$6 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies____ArgTypeList_int_2c_20int___getCount_28_29_20const($4 + 19 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies____ArgTypeList_int_2c_20int___getTypes_28_29_20const($4 + 19 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, HEAP32[($4 + 20 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_void_2c_20int__28char_20const__2c_20void_20_28__29_28int_29_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_void_2c_20int___invoke_28void_20_28__29_28int_29_2c_20int_29;
|
|
$6 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies____ArgTypeList_void_2c_20int___getCount_28_29_20const($4 + 19 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies____ArgTypeList_void_2c_20int___getTypes_28_29_20const($4 + 19 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, HEAP32[($4 + 20 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_float_2c_20int__28char_20const__2c_20float_20_28__29_28int_29_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_float_2c_20int___invoke_28float_20_28__29_28int_29_2c_20int_29;
|
|
$6 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies____ArgTypeList_float_2c_20int___getCount_28_29_20const($4 + 19 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies____ArgTypeList_float_2c_20int___getTypes_28_29_20const($4 + 19 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_float_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, HEAP32[($4 + 20 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_void_2c_20int_2c_20float__28char_20const__2c_20void_20_28__29_28int_2c_20float_29_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20float___invoke_28void_20_28__29_28int_2c_20float_29_2c_20int_2c_20float_29;
|
|
$6 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies____ArgTypeList_void_2c_20int_2c_20float___getCount_28_29_20const($4 + 19 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies____ArgTypeList_void_2c_20int_2c_20float___getTypes_28_29_20const($4 + 19 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float__28_29() | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, HEAP32[($4 + 20 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_void_2c_20int_2c_20int__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20int___invoke_28void_20_28__29_28int_2c_20int_29_2c_20int_2c_20int_29;
|
|
$6 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies____ArgTypeList_void_2c_20int_2c_20int___getCount_28_29_20const($4 + 19 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies____ArgTypeList_void_2c_20int_2c_20int___getTypes_28_29_20const($4 + 19 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, HEAP32[($4 + 20 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_int_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_int_2c_20float_2c_20float_2c_20float___invoke_28int_20_28__29_28float_2c_20float_2c_20float_29_2c_20float_2c_20float_2c_20float_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float_2c_20float_2c_20float___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float_2c_20float_2c_20float___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float_2c_20float_2c_20float__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_float_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20float_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_float_2c_20int___invoke_28float_20_28__29_28int_29_2c_20int_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_float_2c_20int___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_float_2c_20int___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_float_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20float_2c_20float___invoke_28void_20_28__29_28int_2c_20float_2c_20float_2c_20float_29_2c_20int_2c_20float_2c_20float_2c_20float_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20float_2c_20float___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20float_2c_20float___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28float_2c_20float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_int_2c_20float_2c_20float_2c_20float_2c_20float___invoke_28int_20_28__29_28float_2c_20float_2c_20float_2c_20float_29_2c_20float_2c_20float_2c_20float_2c_20float_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float_2c_20float_2c_20float_2c_20float___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float_2c_20float_2c_20float_2c_20float___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float___invoke_28void_20_28__29_28int_2c_20float_2c_20float_2c_20float_2c_20float_29_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_int___invoke_28int_20_28__29_28_29_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_void_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_void_2c_20int___invoke_28void_20_28__29_28int_29_2c_20int_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_void_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20int___invoke_28void_20_28__29_28int_2c_20int_29_2c_20int_2c_20int_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_int_2c_20int___invoke_28int_20_28__29_28int_29_2c_20int_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_int_2c_20int_2c_20int___invoke_28int_20_28__29_28int_2c_20int_29_2c_20int_2c_20int_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20int___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20int___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_void_2c_20int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20int___invoke_28void_20_28__29_28int_2c_20int_2c_20int_29_2c_20int_2c_20int_2c_20int_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20int___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20int___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_int_2c_20int_2c_20int__28char_20const__2c_20int_20_28__29_28int_2c_20int_29_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_int_2c_20int_2c_20int___invoke_28int_20_28__29_28int_2c_20int_29_2c_20int_2c_20int_29;
|
|
$6 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies____ArgTypeList_int_2c_20int_2c_20int___getCount_28_29_20const($4 + 19 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies____ArgTypeList_int_2c_20int_2c_20int___getTypes_28_29_20const($4 + 19 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, HEAP32[($4 + 20 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_void_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20float___invoke_28void_20_28__29_28int_2c_20float_29_2c_20int_2c_20float_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_2c_20int_2c_20int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_int_2c_20int_2c_20int_2c_20int_2c_20int___invoke_28int_20_28__29_28int_2c_20int_2c_20int_2c_20int_29_2c_20int_2c_20int_2c_20int_2c_20int_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20int_2c_20int_2c_20int___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20int_2c_20int_2c_20int___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float___invoke_28void_20_28__29_28int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float_29_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_void_2c_20int_2c_20bool_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20bool_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20bool___invoke_28void_20_28__29_28int_2c_20bool_29_2c_20int_2c_20bool_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20bool___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20bool___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_void_2c_20int_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20float___invoke_28void_20_28__29_28int_2c_20float_2c_20float_29_2c_20int_2c_20float_2c_20float_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20float___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20float___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20float__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_2c_20int_2c_20int_2c_20int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int___invoke_28int_20_28__29_28int_2c_20int_2c_20int_2c_20int_2c_20int_29_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20float_2c_20float___invoke_28void_20_28__29_28int_2c_20int_2c_20float_2c_20float_29_2c_20int_2c_20int_2c_20float_2c_20float_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20float_2c_20float___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20float_2c_20float___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_void_2c_20int_2c_20int_2c_20bool_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20bool_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20bool___invoke_28void_20_28__29_28int_2c_20int_2c_20bool_29_2c_20int_2c_20int_2c_20bool_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20bool___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20bool___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_void_2c_20int_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20float___invoke_28void_20_28__29_28int_2c_20int_2c_20float_29_2c_20int_2c_20int_2c_20float_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20float___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20float___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20float__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_bool_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20bool_20_28__29_28int_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_bool_2c_20int___invoke_28bool_20_28__29_28int_29_2c_20int_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_bool_2c_20int___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_bool_2c_20int___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_void_2c_20int_2c_20float_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20int_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20int___invoke_28void_20_28__29_28int_2c_20float_2c_20int_29_2c_20int_2c_20float_2c_20int_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20int___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20int___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20int_2c_20int___invoke_28void_20_28__29_28int_2c_20int_2c_20int_2c_20int_29_2c_20int_2c_20int_2c_20int_2c_20int_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20int_2c_20int___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20int_2c_20int___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28float_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_int_2c_20float___invoke_28int_20_28__29_28float_29_2c_20float_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_void_2c_20int_2c_20float_2c_20float_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20float_2c_20int_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20float_2c_20int___invoke_28void_20_28__29_28int_2c_20float_2c_20float_2c_20int_29_2c_20int_2c_20float_2c_20float_2c_20int_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20float_2c_20int___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20float_2c_20int___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_int_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_int_2c_20float_2c_20float___invoke_28int_20_28__29_28float_2c_20float_29_2c_20float_2c_20float_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float_2c_20float___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float_2c_20float___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float_2c_20float__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_int_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_int_2c_20int_2c_20float___invoke_28int_20_28__29_28int_2c_20float_29_2c_20int_2c_20float_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20float___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20float___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20float__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_int_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_int_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float___invoke_28int_20_28__29_28int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20bool_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20int_2c_20int_2c_20bool_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20bool___invoke_28void_20_28__29_28int_2c_20int_2c_20int_2c_20int_2c_20bool_29_2c_20int_2c_20int_2c_20int_2c_20int_2c_20bool_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20bool___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20bool___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_int_2c_20int_2c_20bool_2c_20bool_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_2c_20bool_2c_20bool_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_int_2c_20int_2c_20bool_2c_20bool___invoke_28int_20_28__29_28int_2c_20bool_2c_20bool_29_2c_20int_2c_20bool_2c_20bool_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20bool_2c_20bool___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20bool_2c_20bool___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float___invoke_28void_20_28__29_28int_2c_20int_2c_20float_2c_20float_2c_20float_29_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_2c_20float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_int_2c_20int_2c_20float_2c_20float_2c_20float___invoke_28int_20_28__29_28int_2c_20float_2c_20float_2c_20float_29_2c_20int_2c_20float_2c_20float_2c_20float_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20float_2c_20float_2c_20float___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20float_2c_20float_2c_20float___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_void_2c_20int_2c_20int_2c_20int_2c_20bool_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20int_2c_20bool_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20int_2c_20bool___invoke_28void_20_28__29_28int_2c_20int_2c_20int_2c_20bool_29_2c_20int_2c_20int_2c_20int_2c_20bool_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20int_2c_20bool___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20int_2c_20bool___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_int_2c_20float_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28float_2c_20int_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_int_2c_20float_2c_20int___invoke_28int_20_28__29_28float_2c_20int_29_2c_20float_2c_20int_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float_2c_20int___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float_2c_20int___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_void_2c_20int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int___invoke_28void_20_28__29_28int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int_29_2c_20int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float___invoke_28void_20_28__29_28int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float_29_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_int_2c_20int_2c_20int_2c_20int_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_2c_20int_2c_20int_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_int_2c_20int_2c_20int_2c_20int___invoke_28int_20_28__29_28int_2c_20int_2c_20int_29_2c_20int_2c_20int_2c_20int_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20int_2c_20int___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20int_2c_20int___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_void_2c_20int_2c_20float_2c_20int_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20float_2c_20int_2c_20float_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20int_2c_20float___invoke_28void_20_28__29_28int_2c_20float_2c_20int_2c_20float_29_2c_20int_2c_20float_2c_20int_2c_20float_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20int_2c_20float___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20int_2c_20float___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20int_2c_20float__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_void_2c_20int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20void_20_28__29_28int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool___invoke_28void_20_28__29_28int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29_2c_20int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28int_2c_20int_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_int_2c_20int_2c_20int_2c_20float_2c_20float___invoke_28int_20_28__29_28int_2c_20int_2c_20float_2c_20float_29_2c_20int_2c_20int_2c_20float_2c_20float_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20int_2c_20float_2c_20float___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20int_2c_20float_2c_20float___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float___invoke_28int_20_28__29_28float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_29_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__function_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20emscripten__allow_raw_pointers__28char_20const__2c_20int_20_28__29_28float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29_2c_20emscripten__allow_raw_pointers_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = GOT_func_internal_emscripten__internal__Invoker_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float___invoke_28int_20_28__29_28float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29;
|
|
$6 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$10 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float___getCount_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
$14 = emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float___getTypes_28_29_20const($4 + 15 | 0 | 0) | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
_embind_register_function($6 | 0, $10 | 0, $14 | 0, char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float__28_29() | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_int_2c_20int___invoke_28int_20_28__29_28int_29_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $12 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[$5 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
$12 = emscripten__internal__BindingType_int_2c_20void___toWireType_28int_20const__29($4 + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $12 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_int_2c_20int___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 2 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_int_2c_20int___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_void_2c_20int___invoke_28void_20_28__29_28int_29_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[$5 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void_2c_20int___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 2 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void_2c_20int___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_float_2c_20int___invoke_28float_20_28__29_28int_29_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $12 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[$5 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$12 = Math_fround(emscripten__internal__BindingType_float_2c_20void___toWireType_28float_20const__29($4 + 4 | 0 | 0));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return Math_fround($12);
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_float_2c_20int___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 2 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_float_2c_20int___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_float_2c_20int____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_float_2c_20int_2c_20int__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_float_2c_20int_2c_20int__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_void_2c_20int_2c_20float___invoke_28void_20_28__29_28int_2c_20float_29_2c_20int_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[$6 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0, Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2])))));
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void_2c_20int_2c_20float___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 3 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void_2c_20int_2c_20float___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_void_2c_20int_2c_20int___invoke_28void_20_28__29_28int_2c_20int_29_2c_20int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[$6 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void_2c_20int_2c_20int___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 3 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void_2c_20int_2c_20int___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_int_2c_20float_2c_20float_2c_20float___invoke_28int_20_28__29_28float_2c_20float_2c_20float_29_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $7 = 0, $18 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = FUNCTION_TABLE[$7 | 0](Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($6 + 24 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($6 + 20 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($6 + 16 | 0) >> 2]))))) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$18 = emscripten__internal__BindingType_int_2c_20void___toWireType_28int_20const__29($6 + 12 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return $18 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float_2c_20float_2c_20float___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float_2c_20float_2c_20float___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float_2c_20float_2c_20float____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float_2c_20float_2c_20float__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float_2c_20float_2c_20float__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_float_2c_20int___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 2 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_float_2c_20int___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_float_2c_20int____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20float_2c_20float___invoke_28void_20_28__29_28int_2c_20float_2c_20float_2c_20float_29_2c_20int_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
$4 = Math_fround($4);
|
|
var $7 = 0, $8 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAPF32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAPF32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[$8 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($7 + 24 | 0) >> 2] | 0 | 0) | 0, Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($7 + 20 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($7 + 16 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($7 + 12 | 0) >> 2])))));
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20float_2c_20float___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 5 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20float_2c_20float___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20float_2c_20float____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_int_2c_20float_2c_20float_2c_20float_2c_20float___invoke_28int_20_28__29_28float_2c_20float_2c_20float_2c_20float_29_2c_20float_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
$4 = Math_fround($4);
|
|
var $7 = 0, $8 = 0, $21 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAPF32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAPF32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = FUNCTION_TABLE[$8 | 0](Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($7 + 24 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($7 + 20 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($7 + 16 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($7 + 12 | 0) >> 2]))))) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
$21 = emscripten__internal__BindingType_int_2c_20void___toWireType_28int_20const__29($7 + 8 | 0 | 0) | 0;
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return $21 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float_2c_20float_2c_20float_2c_20float___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 5 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float_2c_20float_2c_20float_2c_20float___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float_2c_20float_2c_20float_2c_20float____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float___invoke_28void_20_28__29_28int_2c_20float_2c_20float_2c_20float_2c_20float_29_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
$4 = Math_fround($4);
|
|
$5 = Math_fround($5);
|
|
var $8 = 0, $9 = 0;
|
|
$8 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($8 + 20 | 0) >> 2] = $2;
|
|
HEAPF32[($8 + 16 | 0) >> 2] = $3;
|
|
HEAPF32[($8 + 12 | 0) >> 2] = $4;
|
|
HEAPF32[($8 + 8 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 28 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[$9 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($8 + 24 | 0) >> 2] | 0 | 0) | 0, Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($8 + 20 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($8 + 16 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($8 + 12 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($8 + 8 | 0) >> 2])))));
|
|
__stack_pointer = $8 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 6 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_int___invoke_28int_20_28__29_28_29_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $9 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[($3 + 12 | 0) >> 2] | 0 | 0]() | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
$9 = emscripten__internal__BindingType_int_2c_20void___toWireType_28int_20const__29($3 + 8 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $9 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 1 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 2 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 3 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 2 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_int_2c_20int_2c_20int___invoke_28int_20_28__29_28int_2c_20int_29_2c_20int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $13 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[$6 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$13 = emscripten__internal__BindingType_int_2c_20void___toWireType_28int_20const__29($5 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $13 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20int___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 3 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20int___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20int____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20int___invoke_28void_20_28__29_28int_2c_20int_2c_20int_29_2c_20int_2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[$7 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($6 + 4 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[$6 >> 2] | 0 | 0) | 0);
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20int___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20int___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20int____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20int__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20int__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_int_2c_20int_2c_20int___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 3 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_int_2c_20int_2c_20int___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20int____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 3 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_int_2c_20int_2c_20int_2c_20int_2c_20int___invoke_28int_20_28__29_28int_2c_20int_2c_20int_2c_20int_29_2c_20int_2c_20int_2c_20int_2c_20int_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0, $21 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = FUNCTION_TABLE[$8 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($7 + 24 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($7 + 20 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($7 + 16 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
$21 = emscripten__internal__BindingType_int_2c_20void___toWireType_28int_20const__29($7 + 8 | 0 | 0) | 0;
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return $21 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20int_2c_20int_2c_20int___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 5 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20int_2c_20int_2c_20int___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20int_2c_20int_2c_20int____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float___invoke_28void_20_28__29_28int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float_29_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3, $4, $5, $6) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
$4 = Math_fround($4);
|
|
$5 = Math_fround($5);
|
|
$6 = Math_fround($6);
|
|
var $9 = 0, $10 = 0;
|
|
$9 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $9;
|
|
HEAP32[($9 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($9 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($9 + 20 | 0) >> 2] = $2;
|
|
HEAPF32[($9 + 16 | 0) >> 2] = $3;
|
|
HEAPF32[($9 + 12 | 0) >> 2] = $4;
|
|
HEAPF32[($9 + 8 | 0) >> 2] = $5;
|
|
HEAPF32[($9 + 4 | 0) >> 2] = $6;
|
|
$10 = HEAP32[($9 + 28 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[$10 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($9 + 24 | 0) >> 2] | 0 | 0) | 0, Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($9 + 20 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($9 + 16 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($9 + 12 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($9 + 8 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($9 + 4 | 0) >> 2])))));
|
|
__stack_pointer = $9 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 7 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_void_2c_20int_2c_20bool___invoke_28void_20_28__29_28int_2c_20bool_29_2c_20int_2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $7 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 7 | 0) >> 0] = $2;
|
|
$7 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[$7 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0, (emscripten__internal__BindingType_bool_2c_20void___fromWireType_28bool_29((HEAPU8[($5 + 7 | 0) >> 0] | 0) & 1 | 0 | 0) | 0) & 1 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20bool___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 3 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20bool___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20bool____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20float___invoke_28void_20_28__29_28int_2c_20float_2c_20float_29_2c_20int_2c_20float_2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAPF32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[$7 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0, Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($6 + 4 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[$6 >> 2])))));
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20float___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20float___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20float____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20float__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20float__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int___invoke_28int_20_28__29_28int_2c_20int_2c_20int_2c_20int_2c_20int_29_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, $9 = 0, $24 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$8 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 12 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 8 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = FUNCTION_TABLE[$9 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($8 + 24 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($8 + 20 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($8 + 16 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($8 + 12 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($8 + 8 | 0) >> 2] | 0 | 0) | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
$24 = emscripten__internal__BindingType_int_2c_20void___toWireType_28int_20const__29($8 + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $8 + 32 | 0;
|
|
return $24 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 6 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20float_2c_20float___invoke_28void_20_28__29_28int_2c_20int_2c_20float_2c_20float_29_2c_20int_2c_20int_2c_20float_2c_20float_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
$4 = Math_fround($4);
|
|
var $7 = 0, $8 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAPF32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAPF32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[$8 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($7 + 24 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($7 + 20 | 0) >> 2] | 0 | 0) | 0, Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($7 + 16 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($7 + 12 | 0) >> 2])))));
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20float_2c_20float___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 5 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20float_2c_20float___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20float_2c_20float____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20bool___invoke_28void_20_28__29_28int_2c_20int_2c_20bool_29_2c_20int_2c_20int_2c_20bool_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $8 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP8[($6 + 3 | 0) >> 0] = $3;
|
|
$8 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[$8 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($6 + 4 | 0) >> 2] | 0 | 0) | 0, (emscripten__internal__BindingType_bool_2c_20void___fromWireType_28bool_29((HEAPU8[($6 + 3 | 0) >> 0] | 0) & 1 | 0 | 0) | 0) & 1 | 0);
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20bool___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20bool___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20bool____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20float___invoke_28void_20_28__29_28int_2c_20int_2c_20float_29_2c_20int_2c_20int_2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAPF32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[$7 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($6 + 4 | 0) >> 2] | 0 | 0) | 0, Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[$6 >> 2])))));
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20float___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20float___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20float____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20float__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20float__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_bool_2c_20int___invoke_28bool_20_28__29_28int_29_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $13 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$13 = (emscripten__internal__BindingType_bool_2c_20void___toWireType_28bool_29((FUNCTION_TABLE[$5 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) | 0) & 1 | 0 | 0) | 0) & 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $13 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_bool_2c_20int___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 2 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_bool_2c_20int___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_bool_2c_20int____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20int___invoke_28void_20_28__29_28int_2c_20float_2c_20int_29_2c_20int_2c_20float_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[$7 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0, Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($6 + 4 | 0) >> 2])))), emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[$6 >> 2] | 0 | 0) | 0);
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20int___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20int___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20int____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20int__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20int__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20int_2c_20int___invoke_28void_20_28__29_28int_2c_20int_2c_20int_2c_20int_29_2c_20int_2c_20int_2c_20int_2c_20int_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[$8 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($7 + 24 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($7 + 20 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($7 + 16 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0);
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20int_2c_20int___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 5 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20int_2c_20int___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20int_2c_20int____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_int_2c_20float___invoke_28int_20_28__29_28float_29_2c_20float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $5 = 0, $12 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[$5 | 0](Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2]))))) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
$12 = emscripten__internal__BindingType_int_2c_20void___toWireType_28int_20const__29($4 + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $12 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 2 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20float_2c_20int___invoke_28void_20_28__29_28int_2c_20float_2c_20float_2c_20int_29_2c_20int_2c_20float_2c_20float_2c_20int_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAPF32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[$8 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($7 + 24 | 0) >> 2] | 0 | 0) | 0, Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($7 + 20 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($7 + 16 | 0) >> 2])))), emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0);
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20float_2c_20int___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 5 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20float_2c_20int___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20float_2c_20int____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20int__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20int__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_int_2c_20float_2c_20float___invoke_28int_20_28__29_28float_2c_20float_29_2c_20float_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $6 = 0, $13 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[$6 | 0](Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($5 + 8 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2]))))) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$13 = emscripten__internal__BindingType_int_2c_20void___toWireType_28int_20const__29($5 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $13 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float_2c_20float___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 3 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float_2c_20float___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float_2c_20float____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float_2c_20float__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float_2c_20float__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_int_2c_20int_2c_20float___invoke_28int_20_28__29_28int_2c_20float_29_2c_20int_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $6 = 0, $13 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[$6 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0, Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2]))))) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$13 = emscripten__internal__BindingType_int_2c_20void___toWireType_28int_20const__29($5 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $13 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20float___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 3 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20float___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20float____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20float__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20float__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_int_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float___invoke_28int_20_28__29_28int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3, $4, $5, $6) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = Math_fround($4);
|
|
$5 = Math_fround($5);
|
|
$6 = Math_fround($6);
|
|
var $9 = 0, $10 = 0, $25 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$9 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $9;
|
|
HEAP32[($9 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($9 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($9 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($9 + 16 | 0) >> 2] = $3;
|
|
HEAPF32[($9 + 12 | 0) >> 2] = $4;
|
|
HEAPF32[($9 + 8 | 0) >> 2] = $5;
|
|
HEAPF32[($9 + 4 | 0) >> 2] = $6;
|
|
$10 = HEAP32[($9 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $9, wasm2js_i32$1 = FUNCTION_TABLE[$10 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($9 + 24 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($9 + 20 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($9 + 16 | 0) >> 2] | 0 | 0) | 0, Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($9 + 12 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($9 + 8 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($9 + 4 | 0) >> 2]))))) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$25 = emscripten__internal__BindingType_int_2c_20void___toWireType_28int_20const__29($9 | 0) | 0;
|
|
__stack_pointer = $9 + 32 | 0;
|
|
return $25 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 7 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20bool___invoke_28void_20_28__29_28int_2c_20int_2c_20int_2c_20int_2c_20bool_29_2c_20int_2c_20int_2c_20int_2c_20int_2c_20bool_29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, $10 = 0;
|
|
$8 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 12 | 0) >> 2] = $4;
|
|
HEAP8[($8 + 11 | 0) >> 0] = $5;
|
|
$10 = HEAP32[($8 + 28 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[$10 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($8 + 24 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($8 + 20 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($8 + 16 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($8 + 12 | 0) >> 2] | 0 | 0) | 0, (emscripten__internal__BindingType_bool_2c_20void___fromWireType_28bool_29((HEAPU8[($8 + 11 | 0) >> 0] | 0) & 1 | 0 | 0) | 0) & 1 | 0);
|
|
__stack_pointer = $8 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20bool___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 6 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20bool___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20bool____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_int_2c_20int_2c_20bool_2c_20bool___invoke_28int_20_28__29_28int_2c_20bool_2c_20bool_29_2c_20int_2c_20bool_2c_20bool_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $9 = 0, $26 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP8[($6 + 7 | 0) >> 0] = $2;
|
|
HEAP8[($6 + 6 | 0) >> 0] = $3;
|
|
$9 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = FUNCTION_TABLE[$9 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0, (emscripten__internal__BindingType_bool_2c_20void___fromWireType_28bool_29((HEAPU8[($6 + 7 | 0) >> 0] | 0) & 1 | 0 | 0) | 0) & 1 | 0, (emscripten__internal__BindingType_bool_2c_20void___fromWireType_28bool_29((HEAPU8[($6 + 6 | 0) >> 0] | 0) & 1 | 0 | 0) | 0) & 1 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$26 = emscripten__internal__BindingType_int_2c_20void___toWireType_28int_20const__29($6 | 0) | 0;
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return $26 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20bool_2c_20bool___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20bool_2c_20bool___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20bool_2c_20bool____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int_2c_20int__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int_2c_20int__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float___invoke_28void_20_28__29_28int_2c_20int_2c_20float_2c_20float_2c_20float_29_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
$4 = Math_fround($4);
|
|
$5 = Math_fround($5);
|
|
var $8 = 0, $9 = 0;
|
|
$8 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 20 | 0) >> 2] = $2;
|
|
HEAPF32[($8 + 16 | 0) >> 2] = $3;
|
|
HEAPF32[($8 + 12 | 0) >> 2] = $4;
|
|
HEAPF32[($8 + 8 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 28 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[$9 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($8 + 24 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($8 + 20 | 0) >> 2] | 0 | 0) | 0, Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($8 + 16 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($8 + 12 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($8 + 8 | 0) >> 2])))));
|
|
__stack_pointer = $8 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 6 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_int_2c_20int_2c_20float_2c_20float_2c_20float___invoke_28int_20_28__29_28int_2c_20float_2c_20float_2c_20float_29_2c_20int_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
$4 = Math_fround($4);
|
|
var $7 = 0, $8 = 0, $21 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAPF32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAPF32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = FUNCTION_TABLE[$8 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($7 + 24 | 0) >> 2] | 0 | 0) | 0, Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($7 + 20 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($7 + 16 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($7 + 12 | 0) >> 2]))))) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
$21 = emscripten__internal__BindingType_int_2c_20void___toWireType_28int_20const__29($7 + 8 | 0 | 0) | 0;
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return $21 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20float_2c_20float_2c_20float___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 5 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20float_2c_20float_2c_20float___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20float_2c_20float_2c_20float____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20int_2c_20bool___invoke_28void_20_28__29_28int_2c_20int_2c_20int_2c_20bool_29_2c_20int_2c_20int_2c_20int_2c_20bool_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $9 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP8[($7 + 15 | 0) >> 0] = $4;
|
|
$9 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[$9 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($7 + 24 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($7 + 20 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($7 + 16 | 0) >> 2] | 0 | 0) | 0, (emscripten__internal__BindingType_bool_2c_20void___fromWireType_28bool_29((HEAPU8[($7 + 15 | 0) >> 0] | 0) & 1 | 0 | 0) | 0) & 1 | 0);
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20int_2c_20bool___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 5 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20int_2c_20bool___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20int_2c_20bool____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_int_2c_20float_2c_20int___invoke_28int_20_28__29_28float_2c_20int_29_2c_20float_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $13 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[$6 | 0](Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($5 + 8 | 0) >> 2])))), emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$13 = emscripten__internal__BindingType_int_2c_20void___toWireType_28int_20const__29($5 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $13 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float_2c_20int___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 3 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float_2c_20int___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float_2c_20int____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float_2c_20int__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float_2c_20int__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int___invoke_28void_20_28__29_28int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int_29_2c_20int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[$8 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($7 + 24 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($7 + 20 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_unsigned_20int_2c_20void___fromWireType_28unsigned_20int_29(HEAP32[($7 + 16 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_unsigned_20int_2c_20void___fromWireType_28unsigned_20int_29(HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0);
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 5 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float___invoke_28void_20_28__29_28int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float_29_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float_29($0, $1, $2, $3, $4, $5, $6) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = Math_fround($6);
|
|
var $9 = 0, $10 = 0;
|
|
$9 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $9;
|
|
HEAP32[($9 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($9 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($9 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($9 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($9 + 12 | 0) >> 2] = $4;
|
|
HEAP32[($9 + 8 | 0) >> 2] = $5;
|
|
HEAPF32[($9 + 4 | 0) >> 2] = $6;
|
|
$10 = HEAP32[($9 + 28 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[$10 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($9 + 24 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($9 + 20 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($9 + 16 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($9 + 12 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($9 + 8 | 0) >> 2] | 0 | 0) | 0, Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($9 + 4 | 0) >> 2])))));
|
|
__stack_pointer = $9 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 7 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_int_2c_20int_2c_20int_2c_20int___invoke_28int_20_28__29_28int_2c_20int_2c_20int_29_2c_20int_2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $18 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = FUNCTION_TABLE[$7 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$18 = emscripten__internal__BindingType_int_2c_20void___toWireType_28int_20const__29($6 + 12 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return $18 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20int_2c_20int___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20int_2c_20int___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20int_2c_20int____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20int_2c_20float___invoke_28void_20_28__29_28int_2c_20float_2c_20int_2c_20float_29_2c_20int_2c_20float_2c_20int_2c_20float_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = $3 | 0;
|
|
$4 = Math_fround($4);
|
|
var $7 = 0, $8 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAPF32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[$8 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($7 + 24 | 0) >> 2] | 0 | 0) | 0, Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($7 + 20 | 0) >> 2])))), emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($7 + 16 | 0) >> 2] | 0 | 0) | 0, Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($7 + 12 | 0) >> 2])))));
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20int_2c_20float___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 5 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20float_2c_20int_2c_20float___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20int_2c_20float____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20int_2c_20float__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_void_2c_20int_2c_20int_2c_20float_2c_20int_2c_20float__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool___invoke_28void_20_28__29_28int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29_2c_20int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, $10 = 0;
|
|
$8 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 12 | 0) >> 2] = $4;
|
|
HEAP8[($8 + 11 | 0) >> 0] = $5;
|
|
$10 = HEAP32[($8 + 28 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[$10 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($8 + 24 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($8 + 20 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($8 + 16 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_unsigned_20int_2c_20void___fromWireType_28unsigned_20int_29(HEAP32[($8 + 12 | 0) >> 2] | 0 | 0) | 0, (emscripten__internal__BindingType_bool_2c_20void___fromWireType_28bool_29((HEAPU8[($8 + 11 | 0) >> 0] | 0) & 1 | 0 | 0) | 0) & 1 | 0);
|
|
__stack_pointer = $8 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 6 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_void_2c_20int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_int_2c_20int_2c_20int_2c_20float_2c_20float___invoke_28int_20_28__29_28int_2c_20int_2c_20float_2c_20float_29_2c_20int_2c_20int_2c_20float_2c_20float_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
$4 = Math_fround($4);
|
|
var $7 = 0, $8 = 0, $21 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAPF32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAPF32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = FUNCTION_TABLE[$8 | 0](emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($7 + 24 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($7 + 20 | 0) >> 2] | 0 | 0) | 0, Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($7 + 16 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($7 + 12 | 0) >> 2]))))) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
$21 = emscripten__internal__BindingType_int_2c_20void___toWireType_28int_20const__29($7 + 8 | 0 | 0) | 0;
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return $21 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20int_2c_20float_2c_20float___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 5 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20int_2c_20int_2c_20float_2c_20float___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20int_2c_20float_2c_20float____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float___invoke_28int_20_28__29_28float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_29_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_29($0, $1, $2, $3, $4, $5, $6, $7, $8) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = Math_fround($7);
|
|
$8 = Math_fround($8);
|
|
var $11 = 0, $12 = 0, $33 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$11 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $11;
|
|
HEAP32[($11 + 44 | 0) >> 2] = $0;
|
|
HEAPF32[($11 + 40 | 0) >> 2] = $1;
|
|
HEAPF32[($11 + 36 | 0) >> 2] = $2;
|
|
HEAPF32[($11 + 32 | 0) >> 2] = $3;
|
|
HEAP32[($11 + 28 | 0) >> 2] = $4;
|
|
HEAP32[($11 + 24 | 0) >> 2] = $5;
|
|
HEAP32[($11 + 20 | 0) >> 2] = $6;
|
|
HEAPF32[($11 + 16 | 0) >> 2] = $7;
|
|
HEAPF32[($11 + 12 | 0) >> 2] = $8;
|
|
$12 = HEAP32[($11 + 44 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $11, wasm2js_i32$1 = FUNCTION_TABLE[$12 | 0](Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($11 + 40 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($11 + 36 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($11 + 32 | 0) >> 2])))), emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($11 + 28 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($11 + 24 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($11 + 20 | 0) >> 2] | 0 | 0) | 0, Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($11 + 16 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($11 + 12 | 0) >> 2]))))) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
$33 = emscripten__internal__BindingType_int_2c_20void___toWireType_28int_20const__29($11 + 8 | 0 | 0) | 0;
|
|
__stack_pointer = $11 + 48 | 0;
|
|
return $33 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 9 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float__28_29__signature | 0;
|
|
}
|
|
|
|
function emscripten__internal__Invoker_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float___invoke_28int_20_28__29_28float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = Math_fround($7);
|
|
$8 = Math_fround($8);
|
|
$9 = Math_fround($9);
|
|
var $12 = 0, $13 = 0, $36 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$12 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $12;
|
|
HEAP32[($12 + 44 | 0) >> 2] = $0;
|
|
HEAPF32[($12 + 40 | 0) >> 2] = $1;
|
|
HEAPF32[($12 + 36 | 0) >> 2] = $2;
|
|
HEAPF32[($12 + 32 | 0) >> 2] = $3;
|
|
HEAP32[($12 + 28 | 0) >> 2] = $4;
|
|
HEAP32[($12 + 24 | 0) >> 2] = $5;
|
|
HEAP32[($12 + 20 | 0) >> 2] = $6;
|
|
HEAPF32[($12 + 16 | 0) >> 2] = $7;
|
|
HEAPF32[($12 + 12 | 0) >> 2] = $8;
|
|
HEAPF32[($12 + 8 | 0) >> 2] = $9;
|
|
$13 = HEAP32[($12 + 44 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = FUNCTION_TABLE[$13 | 0](Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($12 + 40 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($12 + 36 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($12 + 32 | 0) >> 2])))), emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($12 + 28 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($12 + 24 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($12 + 20 | 0) >> 2] | 0 | 0) | 0, Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($12 + 16 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($12 + 12 | 0) >> 2])))), Math_fround(emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29(Math_fround(Math_fround(HEAPF32[($12 + 8 | 0) >> 2]))))) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
$36 = emscripten__internal__BindingType_int_2c_20void___toWireType_28int_20const__29($12 + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $12 + 48 | 0;
|
|
return $36 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 10 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies_emscripten__allow_raw_pointers___ArgTypeList_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float__28_29() {
|
|
return GOT_data_internal_char_20const__20emscripten__internal__getGenericSignature_int_2c_20int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float__28_29__signature | 0;
|
|
}
|
|
|
|
function void_20const__20emscripten__internal__getLightTypeID_btDebugDraw__28btDebugDraw_20const__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[(HEAP32[($3 + 12 | 0) >> 2] | 0) >> 2] | 0) + -4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__LightTypeID_btDebugDraw___get_28_29() {
|
|
return GOT_data_internal_typeinfo_20for_20btDebugDraw | 0;
|
|
}
|
|
|
|
function emscripten__internal__LightTypeID_btDebugDraw____get_28_29() {
|
|
return GOT_data_internal_typeinfo_20for_20btDebugDraw_ | 0;
|
|
}
|
|
|
|
function emscripten__internal__LightTypeID_btDebugDraw_20const____get_28_29() {
|
|
return GOT_data_internal_typeinfo_20for_20btDebugDraw_20const_ | 0;
|
|
}
|
|
|
|
function emscripten__internal__MethodInvoker_void_20_28btIDebugDraw____29_28_29_2c_20void_2c_20btIDebugDraw____invoke_28void_20_28btIDebugDraw____20const__29_28_29_2c_20btIDebugDraw__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $7 = 0, $8 = 0, $9 = 0, $12 = 0, $18 = 0, $6 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$6 = emscripten__internal__BindingType_btIDebugDraw__2c_20void___fromWireType_28btIDebugDraw__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
$7 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$8 = HEAP32[($7 + 4 | 0) >> 2] | 0;
|
|
$9 = HEAP32[$7 >> 2] | 0;
|
|
$12 = $6 + ($8 >> 1 | 0) | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!($8 & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$18 = HEAP32[((HEAP32[$12 >> 2] | 0) + $9 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
$18 = $9;
|
|
}
|
|
FUNCTION_TABLE[$18 | 0]($12);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__TypeID_btIDebugDraw_2c_20void___get_28_29() {
|
|
return emscripten__internal__LightTypeID_btIDebugDraw___get_28_29() | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void_2c_20emscripten__internal__AllowedRawPointer_btIDebugDraw____getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 2 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void_2c_20emscripten__internal__AllowedRawPointer_btIDebugDraw____getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20emscripten__internal__AllowedRawPointer_btIDebugDraw_____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function void_20_28btIDebugDraw____emscripten__internal__getContext_void_20_28btIDebugDraw____29_28_29__28void_20_28btIDebugDraw____20const__29_28_29_29_29_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0, $6 = 0, $7 = 0, $9 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = operator_20new_28unsigned_20long_29(8 | 0) | 0;
|
|
$6 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$7 = HEAP32[$6 >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = $7;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $9 | 0;
|
|
}
|
|
|
|
function emscripten__internal__BindingType_btIDebugDraw__2c_20void___fromWireType_28btIDebugDraw__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__LightTypeID_btIDebugDraw___get_28_29() {
|
|
return GOT_data_internal_typeinfo_20for_20btIDebugDraw | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20emscripten__internal__AllowedRawPointer_btIDebugDraw_____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20emscripten__internal__AllowedRawPointer_btIDebugDraw_____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__MethodInvoker_void_20_28btDebugDraw____29_28int_2c_20int_2c_20int_29_2c_20void_2c_20btDebugDraw__2c_20int_2c_20int_2c_20int___invoke_28void_20_28btDebugDraw____20const__29_28int_2c_20int_2c_20int_29_2c_20btDebugDraw__2c_20int_2c_20int_2c_20int_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $10 = 0, $11 = 0, $12 = 0, $15 = 0, $21 = 0, $9 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
$9 = emscripten__internal__BindingType_btDebugDraw__2c_20void___fromWireType_28btDebugDraw__29(HEAP32[($7 + 24 | 0) >> 2] | 0 | 0) | 0;
|
|
$10 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
$11 = HEAP32[($10 + 4 | 0) >> 2] | 0;
|
|
$12 = HEAP32[$10 >> 2] | 0;
|
|
$15 = $9 + ($11 >> 1 | 0) | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!($11 & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$21 = HEAP32[((HEAP32[$15 >> 2] | 0) + $12 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
$21 = $12;
|
|
}
|
|
FUNCTION_TABLE[$21 | 0]($15, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($7 + 20 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($7 + 16 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0);
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void_2c_20emscripten__internal__AllowedRawPointer_btDebugDraw__2c_20int_2c_20int_2c_20int___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 5 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void_2c_20emscripten__internal__AllowedRawPointer_btDebugDraw__2c_20int_2c_20int_2c_20int___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20emscripten__internal__AllowedRawPointer_btDebugDraw__2c_20int_2c_20int_2c_20int____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function void_20_28btDebugDraw____emscripten__internal__getContext_void_20_28btDebugDraw____29_28int_2c_20int_2c_20int_29__28void_20_28btDebugDraw____20const__29_28int_2c_20int_2c_20int_29_29_29_28int_2c_20int_2c_20int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0, $6 = 0, $7 = 0, $9 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = operator_20new_28unsigned_20long_29(8 | 0) | 0;
|
|
$6 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$7 = HEAP32[$6 >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = $7;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $9 | 0;
|
|
}
|
|
|
|
function emscripten__internal__BindingType_btDebugDraw__2c_20void___fromWireType_28btDebugDraw__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20emscripten__internal__AllowedRawPointer_btDebugDraw__2c_20int_2c_20int_2c_20int____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20emscripten__internal__AllowedRawPointer_btDebugDraw__2c_20int_2c_20int_2c_20int____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__class__btDebugDraw_2c_20emscripten__internal__NoBaseClass__20const__20emscripten__class__btDebugDraw_2c_20emscripten__internal__NoBaseClass___allow_subclass_btDebugDrawWrapper__28char_20const__2c_20emscripten__constructor___29_20const___lambda__28btDebugDrawWrapper__29____invoke_28btDebugDrawWrapper__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
emscripten__class__btDebugDraw_2c_20emscripten__internal__NoBaseClass__20const__20emscripten__class__btDebugDraw_2c_20emscripten__internal__NoBaseClass___allow_subclass_btDebugDrawWrapper__28char_20const__2c_20emscripten__constructor___29_20const___lambda__28btDebugDrawWrapper__29__operator_28_29_28btDebugDrawWrapper__29_20const($3 + 11 | 0 | 0, HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDebugDraw__operator_20new_28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btDebugDrawWrapper__btDebugDrawWrapper___28emscripten__val___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
emscripten__wrapper_btDebugDraw___wrapper___28emscripten__val___29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$5 >> 2] = GOT_data_internal_vtable_20for_20btDebugDrawWrapper + 8 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____c_str_5babi_v160004_5d_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____data_5babi_v160004_5d_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function emscripten__val__as_handle_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[(HEAP32[($3 + 12 | 0) >> 2] | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function emscripten__val__take_ownership_28emscripten___EM_VAL__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
emscripten__val__val_28emscripten___EM_VAL__29($0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20const__20emscripten__internal__getLightTypeID_btDebugDrawWrapper__28btDebugDrawWrapper_20const__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[(HEAP32[($3 + 12 | 0) >> 2] | 0) >> 2] | 0) + -4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btDebugDraw__20emscripten__base_btDebugDraw___convertPointer_btDebugDrawWrapper_2c_20btDebugDraw__28btDebugDrawWrapper__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btDebugDrawWrapper__20emscripten__base_btDebugDraw___convertPointer_btDebugDraw_2c_20btDebugDrawWrapper__28btDebugDraw__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__LightTypeID_btDebugDrawWrapper___get_28_29() {
|
|
return GOT_data_internal_typeinfo_20for_20btDebugDrawWrapper | 0;
|
|
}
|
|
|
|
function emscripten__internal__LightTypeID_btDebugDrawWrapper____get_28_29() {
|
|
return GOT_data_internal_typeinfo_20for_20btDebugDrawWrapper_ | 0;
|
|
}
|
|
|
|
function emscripten__internal__LightTypeID_btDebugDrawWrapper_20const____get_28_29() {
|
|
return GOT_data_internal_typeinfo_20for_20btDebugDrawWrapper_20const_ | 0;
|
|
}
|
|
|
|
function emscripten__internal__FunctionInvoker_void_20_28__29_28btDebugDrawWrapper__29_2c_20void_2c_20btDebugDrawWrapper____invoke_28void_20_28___29_28btDebugDrawWrapper__29_2c_20btDebugDrawWrapper__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$6 = HEAP32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[$6 | 0](emscripten__internal__GenericBindingType_btDebugDrawWrapper___fromWireType_28btDebugDrawWrapper__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void_2c_20btDebugDrawWrapper____getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 2 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void_2c_20btDebugDrawWrapper____getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20btDebugDrawWrapper_____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function void_20_28__emscripten__internal__getContext_void_20_28__29_28btDebugDrawWrapper__29__28void_20_28__20const__29_28btDebugDrawWrapper__29_29_29_28btDebugDrawWrapper__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0, $8 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = operator_20new_28unsigned_20long_29(4 | 0) | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[(HEAP32[($3 + 12 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $5;
|
|
$8 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function emscripten__internal__GenericBindingType_btDebugDrawWrapper___fromWireType_28btDebugDrawWrapper__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20btDebugDrawWrapper_____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20btDebugDrawWrapper_____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__class__btDebugDraw_2c_20emscripten__internal__NoBaseClass__20const__20emscripten__class__btDebugDraw_2c_20emscripten__internal__NoBaseClass___allow_subclass_btDebugDrawWrapper__28char_20const__2c_20emscripten__constructor___29_20const___lambda__28btDebugDrawWrapper__29__operator_28_29_28btDebugDrawWrapper__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
emscripten__internal__WrapperBase__setNotifyJSOnDestruction_28bool_29((HEAP32[($4 + 8 | 0) >> 2] | 0) + 136 | 0 | 0, 1 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WrapperBase__setNotifyJSOnDestruction_28bool_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP8[($4 + 11 | 0) >> 0] = $1;
|
|
HEAP8[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 0] = (HEAPU8[($4 + 11 | 0) >> 0] | 0) & 1 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__BindingType_emscripten__val___2c_20void___fromWireType_28emscripten___EM_VAL__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
emscripten__internal__BindingType_emscripten__val_2c_20void___fromWireType_28emscripten___EM_VAL__29($0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__BindingType_btDebugDrawWrapper__2c_20void___toWireType_28btDebugDrawWrapper__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function emscripten__val___val_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
_emval_decref(HEAP32[$4 >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_emscripten__internal__AllowedRawPointer_btDebugDrawWrapper__2c_20emscripten__val______get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_emscripten__internal__AllowedRawPointer_btDebugDrawWrapper__2c_20emscripten__val______get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__BindingType_emscripten__val_2c_20void___fromWireType_28emscripten___EM_VAL__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
emscripten__val__take_ownership_28emscripten___EM_VAL__29($0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__val__val_28emscripten___EM_VAL__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function emscripten__wrapper_btDebugDraw___wrapper___28emscripten__val___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $6 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$6 = 136;
|
|
__memset($5 | 0, 0 | 0, $6 | 0) | 0;
|
|
btDebugDraw__btDebugDraw_28_29($5 | 0) | 0;
|
|
emscripten__internal__WrapperBase__WrapperBase_28_29($5 + $6 | 0 | 0) | 0;
|
|
HEAP32[$5 >> 2] = GOT_data_internal_vtable_20for_20emscripten__wrapper_btDebugDraw_ + 8 | 0;
|
|
emscripten__val__val_28emscripten__val___29($5 + 140 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btDebugDraw__btDebugDraw_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btIDebugDraw__btIDebugDraw_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = GOT_data_internal_vtable_20for_20btDebugDraw + 8 | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
btIDebugDraw__DefaultColors__DefaultColors_28_29($4 + 8 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WrapperBase__WrapperBase_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[$4 >> 0] = 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__val__val_28emscripten__val___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] = 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btDebugDrawWrapper___btDebugDrawWrapper_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
emscripten__wrapper_btDebugDraw____wrapper_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__wrapper_btDebugDraw____wrapper_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $16 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
HEAP32[$4 >> 2] = GOT_data_internal_vtable_20for_20emscripten__wrapper_btDebugDraw_ + 8 | 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($4 + 136 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
void_20emscripten__wrapper_btDebugDraw___call_void__28char_20const__29_20const($4 | 0, GOT_data_internal___memory_base + 68623 | 0 | 0);
|
|
}
|
|
emscripten__val___val_28_29($4 + 140 | 0 | 0) | 0;
|
|
btDebugDraw___btDebugDraw_28_29($4 | 0) | 0;
|
|
$16 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $16 | 0;
|
|
}
|
|
|
|
function btDebugDrawWrapper___btDebugDrawWrapper_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btDebugDrawWrapper___btDebugDrawWrapper_28_29($4 | 0) | 0;
|
|
btDebugDraw__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDebugDraw__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDebugDraw__getDefaultColors_28_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $1;
|
|
__memcpy($0 | 0, (HEAP32[($4 + 12 | 0) >> 2] | 0) + 8 | 0 | 0, 128 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDebugDraw__setDefaultColors_28btIDebugDraw__DefaultColors_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
__memcpy((HEAP32[($4 + 12 | 0) >> 2] | 0) + 8 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 128 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDebugDraw__drawLine_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 108 | 0) >> 2] | 0 | 0]($7, HEAP32[($6 + 8 | 0) >> 2] | 0, HEAP32[($6 + 4 | 0) >> 2] | 0, HEAP32[$6 >> 2] | 0);
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btIDebugDraw__drawLine_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($8, HEAP32[($7 + 24 | 0) >> 2] | 0, HEAP32[($7 + 20 | 0) >> 2] | 0, HEAP32[($7 + 16 | 0) >> 2] | 0);
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btIDebugDraw__drawSphere_28float_2c_20btTransform_20const__2c_20btVector3_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, $7 = 0, i64toi32_i32$1 = 0, $9 = 0, $10 = 0, $115 = 0, $119 = 0;
|
|
$6 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 108 | 0) >> 2] = $0;
|
|
HEAPF32[($6 + 104 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 100 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 96 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 108 | 0) >> 2] | 0;
|
|
$9 = btTransform__getOrigin_28_29_20const(HEAP32[($6 + 100 | 0) >> 2] | 0 | 0) | 0;
|
|
$10 = 8;
|
|
i64toi32_i32$2 = $9 + $10 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$115 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 80 | 0) + $10 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $115;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$119 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 80 | 0) >> 2] = $119;
|
|
HEAP32[($6 + 84 | 0) >> 2] = i64toi32_i32$0;
|
|
btMatrix3x3__getColumn_28int_29_20const($6 + 64 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($6 + 100 | 0) >> 2] | 0 | 0) | 0 | 0, 1 | 0);
|
|
btMatrix3x3__getColumn_28int_29_20const($6 + 48 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($6 + 100 | 0) >> 2] | 0 | 0) | 0 | 0, 0 | 0);
|
|
HEAPF32[($6 + 44 | 0) >> 2] = Math_fround(-1.5707963705062866);
|
|
HEAPF32[($6 + 40 | 0) >> 2] = Math_fround(1.5707963705062866);
|
|
HEAPF32[($6 + 36 | 0) >> 2] = Math_fround(-1.5707963705062866);
|
|
HEAPF32[($6 + 32 | 0) >> 2] = Math_fround(1.5707963705062866);
|
|
HEAPF32[($6 + 28 | 0) >> 2] = Math_fround(30.0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 72 | 0) >> 2] | 0 | 0]($7, $6 + 80 | 0, $6 + 64 | 0, $6 + 48 | 0, Math_fround(HEAPF32[($6 + 104 | 0) >> 2]), Math_fround(HEAPF32[($6 + 44 | 0) >> 2]), Math_fround(HEAPF32[($6 + 40 | 0) >> 2]), Math_fround(HEAPF32[($6 + 36 | 0) >> 2]), Math_fround(HEAPF32[($6 + 32 | 0) >> 2]), HEAP32[($6 + 96 | 0) >> 2] | 0, Math_fround(HEAPF32[($6 + 28 | 0) >> 2]), 0 & 1 | 0);
|
|
operator__28btVector3_20const__29($6 + 12 | 0 | 0, $6 + 48 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 72 | 0) >> 2] | 0 | 0]($7, $6 + 80 | 0, $6 + 64 | 0, $6 + 12 | 0, Math_fround(HEAPF32[($6 + 104 | 0) >> 2]), Math_fround(HEAPF32[($6 + 44 | 0) >> 2]), Math_fround(HEAPF32[($6 + 40 | 0) >> 2]), Math_fround(HEAPF32[($6 + 36 | 0) >> 2]), Math_fround(HEAPF32[($6 + 32 | 0) >> 2]), HEAP32[($6 + 96 | 0) >> 2] | 0, Math_fround(HEAPF32[($6 + 28 | 0) >> 2]), 0 & 1 | 0);
|
|
__stack_pointer = $6 + 112 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTransform__getOrigin_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 48 | 0 | 0;
|
|
}
|
|
|
|
function btMatrix3x3__getColumn_28int_29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, (btVector3__operator_20float_20const__28_29_20const($6 | 0) | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const($6 + 16 | 0 | 0) | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const($6 + 32 | 0 | 0) | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btIDebugDraw__drawSphere_28btVector3_20const__2c_20float_2c_20btVector3_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 76 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 72 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 68 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 64 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 76 | 0) >> 2] | 0;
|
|
btTransform__btTransform_28_29($6 | 0) | 0;
|
|
btTransform__setIdentity_28_29($6 | 0);
|
|
btTransform__setOrigin_28btVector3_20const__29($6 | 0, HEAP32[($6 + 72 | 0) >> 2] | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 24 | 0) >> 2] | 0 | 0]($7, Math_fround(HEAPF32[($6 + 68 | 0) >> 2]), $6, HEAP32[($6 + 64 | 0) >> 2] | 0);
|
|
__stack_pointer = $6 + 80 | 0;
|
|
return;
|
|
}
|
|
|
|
function btIDebugDraw__drawTriangle_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_29($0, $1, $2, $3, $4, $5, $6, $7, $8) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
$8 = Math_fround($8);
|
|
var $11 = 0, $12 = 0;
|
|
$11 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $11;
|
|
HEAP32[($11 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($11 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($11 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($11 + 32 | 0) >> 2] = $3;
|
|
HEAP32[($11 + 28 | 0) >> 2] = $4;
|
|
HEAP32[($11 + 24 | 0) >> 2] = $5;
|
|
HEAP32[($11 + 20 | 0) >> 2] = $6;
|
|
HEAP32[($11 + 16 | 0) >> 2] = $7;
|
|
HEAPF32[($11 + 12 | 0) >> 2] = $8;
|
|
$12 = HEAP32[($11 + 44 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$12 >> 2] | 0) + 36 | 0) >> 2] | 0 | 0]($12, HEAP32[($11 + 40 | 0) >> 2] | 0, HEAP32[($11 + 36 | 0) >> 2] | 0, HEAP32[($11 + 32 | 0) >> 2] | 0, HEAP32[($11 + 16 | 0) >> 2] | 0, Math_fround(HEAPF32[($11 + 12 | 0) >> 2]));
|
|
__stack_pointer = $11 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btIDebugDraw__drawTriangle_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = Math_fround($5);
|
|
var $8 = 0, $9 = 0;
|
|
$8 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 12 | 0) >> 2] = $4;
|
|
HEAPF32[($8 + 8 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 28 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$9 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($9, HEAP32[($8 + 24 | 0) >> 2] | 0, HEAP32[($8 + 20 | 0) >> 2] | 0, HEAP32[($8 + 12 | 0) >> 2] | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$9 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($9, HEAP32[($8 + 20 | 0) >> 2] | 0, HEAP32[($8 + 16 | 0) >> 2] | 0, HEAP32[($8 + 12 | 0) >> 2] | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$9 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($9, HEAP32[($8 + 16 | 0) >> 2] | 0, HEAP32[($8 + 24 | 0) >> 2] | 0, HEAP32[($8 + 12 | 0) >> 2] | 0);
|
|
__stack_pointer = $8 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDebugDraw__drawContactPoint_28btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20int_2c_20btVector3_20const__29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, $9 = 0, $10 = 0, $11 = 0, $31 = 0, $32 = 0, $33 = 0;
|
|
$8 = __stack_pointer - 96 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 92 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 88 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 84 | 0) >> 2] = $2;
|
|
HEAPF32[($8 + 80 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 76 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 72 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 92 | 0) >> 2] | 0;
|
|
$10 = HEAP32[($8 + 88 | 0) >> 2] | 0;
|
|
$11 = HEAP32[($8 + 88 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($8 + 40 | 0 | 0, HEAP32[($8 + 84 | 0) >> 2] | 0 | 0, $8 + 80 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 56 | 0 | 0, $11 | 0, $8 + 40 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$9 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($9, $10, $8 + 56 | 0, HEAP32[($8 + 72 | 0) >> 2] | 0);
|
|
$31 = HEAP32[($8 + 88 | 0) >> 2] | 0;
|
|
$32 = HEAP32[($8 + 88 | 0) >> 2] | 0;
|
|
$33 = HEAP32[($8 + 84 | 0) >> 2] | 0;
|
|
HEAPF32[($8 + 4 | 0) >> 2] = Math_fround(.009999999776482582);
|
|
operator__28btVector3_20const__2c_20float_20const__29($8 + 8 | 0 | 0, $33 | 0, $8 + 4 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 24 | 0 | 0, $32 | 0, $8 + 8 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$9 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($9, $31, $8 + 24 | 0, HEAP32[($8 + 72 | 0) >> 2] | 0);
|
|
__stack_pointer = $8 + 96 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDebugDraw__reportErrorWarning_28char_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return;
|
|
}
|
|
|
|
function btDebugDraw__draw3dText_28btVector3_20const__2c_20char_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
return;
|
|
}
|
|
|
|
function btDebugDraw__setDebugMode_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btDebugDraw__getDebugMode_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btIDebugDraw__drawAabb_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $7 = 0, $120 = 0, $145 = 0, $194 = 0, $236 = 0, $259 = 0, $505 = 0, $509 = 0, $648 = 0, $652 = 0, $732 = 0, $736 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 256 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 252 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 248 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 244 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 240 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 252 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 208 | 0 | 0, HEAP32[($6 + 244 | 0) >> 2] | 0 | 0, HEAP32[($6 + 248 | 0) >> 2] | 0 | 0);
|
|
HEAPF32[($6 + 204 | 0) >> 2] = Math_fround(.5);
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 224 | 0 | 0, $6 + 208 | 0 | 0, $6 + 204 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 172 | 0 | 0, HEAP32[($6 + 244 | 0) >> 2] | 0 | 0, HEAP32[($6 + 248 | 0) >> 2] | 0 | 0);
|
|
HEAPF32[($6 + 168 | 0) >> 2] = Math_fround(.5);
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 188 | 0 | 0, $6 + 172 | 0 | 0, $6 + 168 | 0 | 0);
|
|
HEAPF32[($6 + 140 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($6 + 136 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($6 + 132 | 0) >> 2] = Math_fround(1.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 144 | 0 | 0, $6 + 140 | 0 | 0, $6 + 136 | 0 | 0, $6 + 132 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 112 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 96 | 0 | 0) | 0;
|
|
HEAP32[($6 + 164 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 164 | 0) >> 2] | 0 | 0) < (4 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($6 + 160 | 0) >> 2] = 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($6 + 160 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float__28_29($6 + 144 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__operator_20float__28_29($6 + 224 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 76 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 144 | 0 | 0) | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 224 | 0 | 0) | 0) + 4 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 72 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 144 | 0 | 0) | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 224 | 0 | 0) | 0) + 8 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 68 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 80 | 0 | 0, $6 + 76 | 0 | 0, $6 + 72 | 0 | 0, $6 + 68 | 0 | 0) | 0;
|
|
$120 = 8;
|
|
i64toi32_i32$2 = ($6 + 80 | 0) + $120 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$505 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 112 | 0) + $120 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $505;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 80 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 84 | 0) >> 2] | 0;
|
|
$509 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 112 | 0) >> 2] = $509;
|
|
HEAP32[($6 + 116 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__operator___28btVector3_20const__29_1($6 + 112 | 0 | 0, $6 + 188 | 0 | 0) | 0;
|
|
HEAP32[($6 + 64 | 0) >> 2] = (HEAP32[($6 + 160 | 0) >> 2] | 0 | 0) % (3 | 0) | 0;
|
|
$145 = (btVector3__operator_20float__28_29($6 + 144 | 0 | 0) | 0) + ((HEAP32[($6 + 64 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
HEAPF32[$145 >> 2] = Math_fround(Math_fround(HEAPF32[$145 >> 2]) * Math_fround(-1.0));
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float__28_29($6 + 144 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__operator_20float__28_29($6 + 224 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 144 | 0 | 0) | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 224 | 0 | 0) | 0) + 4 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 144 | 0 | 0) | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 224 | 0 | 0) | 0) + 8 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 48 | 0 | 0, $6 + 44 | 0 | 0, $6 + 40 | 0 | 0, $6 + 36 | 0 | 0) | 0;
|
|
$194 = 8;
|
|
i64toi32_i32$2 = ($6 + 48 | 0) + $194 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$648 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 96 | 0) + $194 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $648;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 52 | 0) >> 2] | 0;
|
|
$652 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 96 | 0) >> 2] = $652;
|
|
HEAP32[($6 + 100 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__operator___28btVector3_20const__29_1($6 + 96 | 0 | 0, $6 + 188 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($7, $6 + 112 | 0, $6 + 96 | 0, HEAP32[($6 + 240 | 0) >> 2] | 0);
|
|
HEAP32[($6 + 160 | 0) >> 2] = (HEAP32[($6 + 160 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
HEAPF32[($6 + 16 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[($6 + 12 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[($6 + 8 | 0) >> 2] = Math_fround(-1.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 20 | 0 | 0, $6 + 16 | 0 | 0, $6 + 12 | 0 | 0, $6 + 8 | 0 | 0) | 0;
|
|
$236 = 8;
|
|
i64toi32_i32$2 = ($6 + 20 | 0) + $236 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$732 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 144 | 0) + $236 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $732;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
$736 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 144 | 0) >> 2] = $736;
|
|
HEAP32[($6 + 148 | 0) >> 2] = i64toi32_i32$0;
|
|
label$5 : {
|
|
if (!((HEAP32[($6 + 164 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
$259 = (btVector3__operator_20float__28_29($6 + 144 | 0 | 0) | 0) + ((HEAP32[($6 + 164 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
HEAPF32[$259 >> 2] = Math_fround(Math_fround(HEAPF32[$259 >> 2]) * Math_fround(-1.0));
|
|
}
|
|
HEAP32[($6 + 164 | 0) >> 2] = (HEAP32[($6 + 164 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 256 | 0;
|
|
return;
|
|
}
|
|
|
|
function btIDebugDraw__drawTransform_28btTransform_20const__2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $8 = 0, $9 = 0, $224 = 0, $228 = 0, $17 = 0, $76 = 0, $135 = 0;
|
|
$5 = __stack_pointer - 288 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 284 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 280 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 276 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 284 | 0) >> 2] | 0;
|
|
$8 = btTransform__getOrigin_28_29_20const(HEAP32[($5 + 280 | 0) >> 2] | 0 | 0) | 0;
|
|
$9 = 8;
|
|
i64toi32_i32$2 = $8 + $9 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$224 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 256 | 0) + $9 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $224;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$228 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 256 | 0) >> 2] = $228;
|
|
HEAP32[($5 + 260 | 0) >> 2] = i64toi32_i32$0;
|
|
$17 = btTransform__getBasis_28_29_20const(HEAP32[($5 + 280 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($5 + 204 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 200 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 208 | 0 | 0, $5 + 276 | 0 | 0, $5 + 204 | 0 | 0, $5 + 200 | 0 | 0) | 0;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($5 + 224 | 0 | 0, $17 | 0, $5 + 208 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($5 + 240 | 0 | 0, $5 + 256 | 0 | 0, $5 + 224 | 0 | 0);
|
|
HEAPF32[($5 + 180 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($5 + 176 | 0) >> 2] = Math_fround(.30000001192092896);
|
|
HEAPF32[($5 + 172 | 0) >> 2] = Math_fround(.30000001192092896);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 184 | 0 | 0, $5 + 180 | 0 | 0, $5 + 176 | 0 | 0, $5 + 172 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($6, $5 + 256 | 0, $5 + 240 | 0, $5 + 184 | 0);
|
|
$76 = btTransform__getBasis_28_29_20const(HEAP32[($5 + 280 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($5 + 120 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 116 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 124 | 0 | 0, $5 + 120 | 0 | 0, $5 + 276 | 0 | 0, $5 + 116 | 0 | 0) | 0;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($5 + 140 | 0 | 0, $76 | 0, $5 + 124 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($5 + 156 | 0 | 0, $5 + 256 | 0 | 0, $5 + 140 | 0 | 0);
|
|
HEAPF32[($5 + 96 | 0) >> 2] = Math_fround(.30000001192092896);
|
|
HEAPF32[($5 + 92 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($5 + 88 | 0) >> 2] = Math_fround(.30000001192092896);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 100 | 0 | 0, $5 + 96 | 0 | 0, $5 + 92 | 0 | 0, $5 + 88 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($6, $5 + 256 | 0, $5 + 156 | 0, $5 + 100 | 0);
|
|
$135 = btTransform__getBasis_28_29_20const(HEAP32[($5 + 280 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($5 + 36 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 32 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 40 | 0 | 0, $5 + 36 | 0 | 0, $5 + 32 | 0 | 0, $5 + 276 | 0 | 0) | 0;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($5 + 56 | 0 | 0, $135 | 0, $5 + 40 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($5 + 72 | 0 | 0, $5 + 256 | 0 | 0, $5 + 56 | 0 | 0);
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(.30000001192092896);
|
|
HEAPF32[($5 + 8 | 0) >> 2] = Math_fround(.30000001192092896);
|
|
HEAPF32[($5 + 4 | 0) >> 2] = Math_fround(1.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 16 | 0 | 0, $5 + 12 | 0 | 0, $5 + 8 | 0 | 0, $5 + 4 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($6, $5 + 256 | 0, $5 + 72 | 0, $5 + 16 | 0);
|
|
__stack_pointer = $5 + 288 | 0;
|
|
return;
|
|
}
|
|
|
|
function btIDebugDraw__drawArc_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20float_2c_20float_2c_20float_2c_20btVector3_20const__2c_20bool_2c_20float_29($0, $1, $2, $3, $4, $5, $6, $7, $8, $9, $10) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = Math_fround($4);
|
|
$5 = Math_fround($5);
|
|
$6 = Math_fround($6);
|
|
$7 = Math_fround($7);
|
|
$8 = $8 | 0;
|
|
$9 = $9 | 0;
|
|
$10 = Math_fround($10);
|
|
var $13 = 0, $15 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $30 = Math_fround(0), $36 = 0, $185 = 0, $41 = 0, $124 = 0, $590 = 0, $594 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$13 = __stack_pointer - 288 | 0;
|
|
__stack_pointer = $13;
|
|
HEAP32[($13 + 284 | 0) >> 2] = $0;
|
|
HEAP32[($13 + 280 | 0) >> 2] = $1;
|
|
HEAP32[($13 + 276 | 0) >> 2] = $2;
|
|
HEAP32[($13 + 272 | 0) >> 2] = $3;
|
|
HEAPF32[($13 + 268 | 0) >> 2] = $4;
|
|
HEAPF32[($13 + 264 | 0) >> 2] = $5;
|
|
HEAPF32[($13 + 260 | 0) >> 2] = $6;
|
|
HEAPF32[($13 + 256 | 0) >> 2] = $7;
|
|
HEAP32[($13 + 252 | 0) >> 2] = $8;
|
|
HEAP8[($13 + 251 | 0) >> 0] = $9;
|
|
HEAPF32[($13 + 244 | 0) >> 2] = $10;
|
|
$15 = HEAP32[($13 + 284 | 0) >> 2] | 0;
|
|
HEAP32[($13 + 240 | 0) >> 2] = HEAP32[($13 + 272 | 0) >> 2] | 0;
|
|
btVector3__cross_28btVector3_20const__29_20const($13 + 224 | 0 | 0, HEAP32[($13 + 276 | 0) >> 2] | 0 | 0, HEAP32[($13 + 272 | 0) >> 2] | 0 | 0);
|
|
HEAPF32[($13 + 220 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($13 + 244 | 0) >> 2]) * Math_fround(.01745329238474369));
|
|
$30 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[($13 + 256 | 0) >> 2]) - Math_fround(HEAPF32[($13 + 260 | 0) >> 2])) / Math_fround(HEAPF32[($13 + 220 | 0) >> 2])))));
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(Math_abs($30)) < Math_fround(2147483648.0))) {
|
|
break label$2
|
|
}
|
|
$36 = ~~$30;
|
|
break label$1;
|
|
}
|
|
$36 = -2147483648;
|
|
}
|
|
HEAP32[($13 + 216 | 0) >> 2] = $36;
|
|
label$3 : {
|
|
if (HEAP32[($13 + 216 | 0) >> 2] | 0) {
|
|
break label$3
|
|
}
|
|
HEAP32[($13 + 216 | 0) >> 2] = 1;
|
|
}
|
|
$41 = HEAP32[($13 + 280 | 0) >> 2] | 0;
|
|
operator__28float_20const__2c_20btVector3_20const__29($13 + 152 | 0 | 0, $13 + 268 | 0 | 0, HEAP32[($13 + 240 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $13, wasm2js_f32$0 = Math_fround(btCos_28float_29(Math_fround(Math_fround(HEAPF32[($13 + 260 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 148 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($13 + 168 | 0 | 0, $13 + 152 | 0 | 0, $13 + 148 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($13 + 184 | 0 | 0, $41 | 0, $13 + 168 | 0 | 0);
|
|
operator__28float_20const__2c_20btVector3_20const__29($13 + 116 | 0 | 0, $13 + 264 | 0 | 0, $13 + 224 | 0 | 0);
|
|
(wasm2js_i32$0 = $13, wasm2js_f32$0 = Math_fround(btSin_28float_29(Math_fround(Math_fround(HEAPF32[($13 + 260 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 112 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($13 + 132 | 0 | 0, $13 + 116 | 0 | 0, $13 + 112 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($13 + 200 | 0 | 0, $13 + 184 | 0 | 0, $13 + 132 | 0 | 0);
|
|
label$4 : {
|
|
if (!((HEAPU8[($13 + 251 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$15 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($15, HEAP32[($13 + 280 | 0) >> 2] | 0, $13 + 200 | 0, HEAP32[($13 + 252 | 0) >> 2] | 0);
|
|
}
|
|
HEAP32[($13 + 108 | 0) >> 2] = 1;
|
|
label$5 : {
|
|
label$6 : while (1) {
|
|
if (!((HEAP32[($13 + 108 | 0) >> 2] | 0 | 0) <= (HEAP32[($13 + 216 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAPF32[($13 + 104 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($13 + 260 | 0) >> 2]) + Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[($13 + 256 | 0) >> 2]) - Math_fround(HEAPF32[($13 + 260 | 0) >> 2])) * Math_fround(HEAP32[($13 + 108 | 0) >> 2] | 0 | 0)) / Math_fround(HEAP32[($13 + 216 | 0) >> 2] | 0 | 0)));
|
|
$124 = HEAP32[($13 + 280 | 0) >> 2] | 0;
|
|
operator__28float_20const__2c_20btVector3_20const__29($13 + 40 | 0 | 0, $13 + 268 | 0 | 0, HEAP32[($13 + 240 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $13, wasm2js_f32$0 = Math_fround(btCos_28float_29(Math_fround(Math_fround(HEAPF32[($13 + 104 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($13 + 56 | 0 | 0, $13 + 40 | 0 | 0, $13 + 36 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($13 + 72 | 0 | 0, $124 | 0, $13 + 56 | 0 | 0);
|
|
operator__28float_20const__2c_20btVector3_20const__29($13 + 4 | 0 | 0, $13 + 264 | 0 | 0, $13 + 224 | 0 | 0);
|
|
(wasm2js_i32$0 = $13, wasm2js_f32$0 = Math_fround(btSin_28float_29(Math_fround(Math_fround(HEAPF32[($13 + 104 | 0) >> 2]))))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($13 + 20 | 0 | 0, $13 + 4 | 0 | 0, $13 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($13 + 88 | 0 | 0, $13 + 72 | 0 | 0, $13 + 20 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$15 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($15, $13 + 200 | 0, $13 + 88 | 0, HEAP32[($13 + 252 | 0) >> 2] | 0);
|
|
$185 = 8;
|
|
i64toi32_i32$2 = ($13 + 88 | 0) + $185 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$590 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($13 + 200 | 0) + $185 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $590;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $13;
|
|
i64toi32_i32$1 = HEAP32[($13 + 88 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($13 + 92 | 0) >> 2] | 0;
|
|
$594 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $13;
|
|
HEAP32[($13 + 200 | 0) >> 2] = $594;
|
|
HEAP32[($13 + 204 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($13 + 108 | 0) >> 2] = (HEAP32[($13 + 108 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$6;
|
|
};
|
|
}
|
|
label$7 : {
|
|
if (!((HEAPU8[($13 + 251 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$15 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($15, HEAP32[($13 + 280 | 0) >> 2] | 0, $13 + 200 | 0, HEAP32[($13 + 252 | 0) >> 2] | 0);
|
|
}
|
|
__stack_pointer = $13 + 288 | 0;
|
|
return;
|
|
}
|
|
|
|
function btFabs_28float_29($0) {
|
|
$0 = Math_fround($0);
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAPF32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(Math_abs(Math_fround(HEAPF32[($3 + 12 | 0) >> 2]))));
|
|
}
|
|
|
|
function operator__28float_20const__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $2;
|
|
operator__28btVector3_20const__2c_20float_20const__29($0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCos_28float_29($0) {
|
|
$0 = Math_fround($0);
|
|
var $3 = 0, $5 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAPF32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = Math_fround(cosf(Math_fround(Math_fround(HEAPF32[($3 + 12 | 0) >> 2]))));
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($5);
|
|
}
|
|
|
|
function btSin_28float_29($0) {
|
|
$0 = Math_fround($0);
|
|
var $3 = 0, $5 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAPF32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = Math_fround(sinf(Math_fround(Math_fround(HEAPF32[($3 + 12 | 0) >> 2]))));
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($5);
|
|
}
|
|
|
|
function btIDebugDraw__drawSpherePatch_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20float_2c_20float_2c_20float_2c_20float_2c_20btVector3_20const__2c_20float_2c_20bool_29($0, $1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = Math_fround($4);
|
|
$5 = Math_fround($5);
|
|
$6 = Math_fround($6);
|
|
$7 = Math_fround($7);
|
|
$8 = Math_fround($8);
|
|
$9 = $9 | 0;
|
|
$10 = Math_fround($10);
|
|
$11 = $11 | 0;
|
|
var $14 = 0, i64toi32_i32$0 = 0, $16 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $19 = 0, $22 = 0, $23 = 0, $25 = 0, $33 = 0, $36 = 0, $37 = 0, $39 = 0, $129 = Math_fround(0), $135 = 0, $180 = Math_fround(0), $186 = 0, $305 = 0, $307 = 0, $361 = 0, $362 = 0, $21 = 0, $35 = 0, $51 = 0, $65 = 0, $247 = 0, $1091 = 0, $1104 = 0, $1232 = 0, $1236 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$14 = __stack_pointer - 2704 | 0;
|
|
__stack_pointer = $14;
|
|
HEAP32[($14 + 2700 | 0) >> 2] = $0;
|
|
HEAP32[($14 + 2696 | 0) >> 2] = $1;
|
|
HEAP32[($14 + 2692 | 0) >> 2] = $2;
|
|
HEAP32[($14 + 2688 | 0) >> 2] = $3;
|
|
HEAPF32[($14 + 2684 | 0) >> 2] = $4;
|
|
HEAPF32[($14 + 2680 | 0) >> 2] = $5;
|
|
HEAPF32[($14 + 2676 | 0) >> 2] = $6;
|
|
HEAPF32[($14 + 2672 | 0) >> 2] = $7;
|
|
HEAPF32[($14 + 2668 | 0) >> 2] = $8;
|
|
HEAP32[($14 + 2664 | 0) >> 2] = $9;
|
|
HEAPF32[($14 + 2660 | 0) >> 2] = $10;
|
|
HEAP8[($14 + 2659 | 0) >> 0] = $11;
|
|
$16 = HEAP32[($14 + 2700 | 0) >> 2] | 0;
|
|
$19 = $14 + 1472 | 0;
|
|
$21 = $19 + 1184 | 0;
|
|
$22 = $19;
|
|
label$1 : while (1) {
|
|
$23 = $22;
|
|
btVector3__btVector3_28_29($23 | 0) | 0;
|
|
$25 = $23 + 16 | 0;
|
|
$22 = $25;
|
|
if (!(($25 | 0) == ($21 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
$33 = $14 + 288 | 0;
|
|
$35 = $33 + 1184 | 0;
|
|
$36 = $33;
|
|
label$2 : while (1) {
|
|
$37 = $36;
|
|
btVector3__btVector3_28_29($37 | 0) | 0;
|
|
$39 = $37 + 16 | 0;
|
|
$36 = $39;
|
|
if (!(($39 | 0) == ($35 | 0) & 1 | 0)) {
|
|
continue label$2
|
|
}
|
|
break label$2;
|
|
};
|
|
HEAP32[($14 + 284 | 0) >> 2] = $14 + 1472 | 0;
|
|
HEAP32[($14 + 280 | 0) >> 2] = $14 + 288 | 0;
|
|
$51 = HEAP32[($14 + 2696 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($14 + 244 | 0 | 0, HEAP32[($14 + 2692 | 0) >> 2] | 0 | 0, $14 + 2684 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($14 + 260 | 0 | 0, $51 | 0, $14 + 244 | 0 | 0);
|
|
$65 = HEAP32[($14 + 2696 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($14 + 212 | 0 | 0, HEAP32[($14 + 2692 | 0) >> 2] | 0 | 0, $14 + 2684 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($14 + 228 | 0 | 0, $65 | 0, $14 + 212 | 0 | 0);
|
|
btVector3__btVector3_28_29($14 + 192 | 0 | 0) | 0;
|
|
HEAPF32[($14 + 188 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($14 + 2660 | 0) >> 2]) * Math_fround(.01745329238474369));
|
|
HEAP32[($14 + 184 | 0) >> 2] = HEAP32[($14 + 2692 | 0) >> 2] | 0;
|
|
HEAP32[($14 + 180 | 0) >> 2] = HEAP32[($14 + 2688 | 0) >> 2] | 0;
|
|
btVector3__cross_28btVector3_20const__29_20const($14 + 164 | 0 | 0, HEAP32[($14 + 184 | 0) >> 2] | 0 | 0, HEAP32[($14 + 180 | 0) >> 2] | 0 | 0);
|
|
HEAP8[($14 + 163 | 0) >> 0] = 0;
|
|
HEAP8[($14 + 162 | 0) >> 0] = 0;
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($14 + 2680 | 0) >> 2]) <= Math_fround(-1.5707963705062866) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAPF32[($14 + 2680 | 0) >> 2] = Math_fround(Math_fround(-1.5707963705062866) + Math_fround(HEAPF32[($14 + 188 | 0) >> 2]));
|
|
HEAP8[($14 + 163 | 0) >> 0] = 1;
|
|
}
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[($14 + 2676 | 0) >> 2]) >= Math_fround(1.5707963705062866) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAPF32[($14 + 2676 | 0) >> 2] = Math_fround(Math_fround(1.5707963705062866) - Math_fround(HEAPF32[($14 + 188 | 0) >> 2]));
|
|
HEAP8[($14 + 162 | 0) >> 0] = 1;
|
|
}
|
|
label$5 : {
|
|
if (!(Math_fround(HEAPF32[($14 + 2680 | 0) >> 2]) > Math_fround(HEAPF32[($14 + 2676 | 0) >> 2]) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAPF32[($14 + 2680 | 0) >> 2] = Math_fround(Math_fround(-1.5707963705062866) + Math_fround(HEAPF32[($14 + 188 | 0) >> 2]));
|
|
HEAPF32[($14 + 2676 | 0) >> 2] = Math_fround(Math_fround(1.5707963705062866) - Math_fround(HEAPF32[($14 + 188 | 0) >> 2]));
|
|
HEAP8[($14 + 162 | 0) >> 0] = 1;
|
|
HEAP8[($14 + 163 | 0) >> 0] = 1;
|
|
}
|
|
$129 = Math_fround(Math_fround(Math_fround(HEAPF32[($14 + 2676 | 0) >> 2]) - Math_fround(HEAPF32[($14 + 2680 | 0) >> 2])) / Math_fround(HEAPF32[($14 + 188 | 0) >> 2]));
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!(Math_fround(Math_abs($129)) < Math_fround(2147483648.0))) {
|
|
break label$7
|
|
}
|
|
$135 = ~~$129;
|
|
break label$6;
|
|
}
|
|
$135 = -2147483648;
|
|
}
|
|
HEAP32[($14 + 156 | 0) >> 2] = $135 + 1 | 0;
|
|
label$8 : {
|
|
if (!((HEAP32[($14 + 156 | 0) >> 2] | 0 | 0) < (2 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
HEAP32[($14 + 156 | 0) >> 2] = 2;
|
|
}
|
|
HEAPF32[($14 + 152 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($14 + 2676 | 0) >> 2]) - Math_fround(HEAPF32[($14 + 2680 | 0) >> 2])) / Math_fround((HEAP32[($14 + 156 | 0) >> 2] | 0) - 1 | 0 | 0));
|
|
HEAP8[($14 + 151 | 0) >> 0] = 0;
|
|
label$9 : {
|
|
label$10 : {
|
|
if (!(Math_fround(HEAPF32[($14 + 2672 | 0) >> 2]) > Math_fround(HEAPF32[($14 + 2668 | 0) >> 2]) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
HEAPF32[($14 + 2672 | 0) >> 2] = Math_fround(Math_fround(-3.1415927410125732) + Math_fround(HEAPF32[($14 + 188 | 0) >> 2]));
|
|
HEAPF32[($14 + 2668 | 0) >> 2] = Math_fround(3.1415927410125732);
|
|
HEAP8[($14 + 151 | 0) >> 0] = 1;
|
|
break label$9;
|
|
}
|
|
label$11 : {
|
|
label$12 : {
|
|
if (!(Math_fround(Math_fround(HEAPF32[($14 + 2668 | 0) >> 2]) - Math_fround(HEAPF32[($14 + 2672 | 0) >> 2])) >= Math_fround(6.2831854820251465) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
HEAP8[($14 + 151 | 0) >> 0] = 1;
|
|
break label$11;
|
|
}
|
|
HEAP8[($14 + 151 | 0) >> 0] = 0;
|
|
}
|
|
}
|
|
$180 = Math_fround(Math_fround(Math_fround(HEAPF32[($14 + 2668 | 0) >> 2]) - Math_fround(HEAPF32[($14 + 2672 | 0) >> 2])) / Math_fround(HEAPF32[($14 + 188 | 0) >> 2]));
|
|
label$13 : {
|
|
label$14 : {
|
|
if (!(Math_fround(Math_abs($180)) < Math_fround(2147483648.0))) {
|
|
break label$14
|
|
}
|
|
$186 = ~~$180;
|
|
break label$13;
|
|
}
|
|
$186 = -2147483648;
|
|
}
|
|
HEAP32[($14 + 144 | 0) >> 2] = $186 + 1 | 0;
|
|
label$15 : {
|
|
if (!((HEAP32[($14 + 144 | 0) >> 2] | 0 | 0) < (2 | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
HEAP32[($14 + 144 | 0) >> 2] = 2;
|
|
}
|
|
HEAPF32[($14 + 140 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($14 + 2668 | 0) >> 2]) - Math_fround(HEAPF32[($14 + 2672 | 0) >> 2])) / Math_fround((HEAP32[($14 + 144 | 0) >> 2] | 0) - 1 | 0 | 0));
|
|
HEAP32[($14 + 136 | 0) >> 2] = 0;
|
|
label$16 : {
|
|
label$17 : while (1) {
|
|
if (!((HEAP32[($14 + 136 | 0) >> 2] | 0 | 0) < (HEAP32[($14 + 156 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
HEAPF32[($14 + 132 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAP32[($14 + 136 | 0) >> 2] | 0 | 0) * Math_fround(HEAPF32[($14 + 152 | 0) >> 2])) + Math_fround(HEAPF32[($14 + 2680 | 0) >> 2]));
|
|
(wasm2js_i32$0 = $14, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[($14 + 2684 | 0) >> 2]) * Math_fround(btSin_28float_29(Math_fround(Math_fround(HEAPF32[($14 + 132 | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 128 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $14, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[($14 + 2684 | 0) >> 2]) * Math_fround(btCos_28float_29(Math_fround(Math_fround(HEAPF32[($14 + 132 | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 124 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP32[($14 + 120 | 0) >> 2] = 0;
|
|
label$18 : {
|
|
label$19 : while (1) {
|
|
if (!((HEAP32[($14 + 120 | 0) >> 2] | 0 | 0) < (HEAP32[($14 + 144 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$18
|
|
}
|
|
HEAPF32[($14 + 116 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAP32[($14 + 120 | 0) >> 2] | 0 | 0) * Math_fround(HEAPF32[($14 + 140 | 0) >> 2])) + Math_fround(HEAPF32[($14 + 2672 | 0) >> 2]));
|
|
(wasm2js_i32$0 = $14, wasm2js_f32$0 = Math_fround(btSin_28float_29(Math_fround(Math_fround(HEAPF32[($14 + 116 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 112 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $14, wasm2js_f32$0 = Math_fround(btCos_28float_29(Math_fround(Math_fround(HEAPF32[($14 + 116 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 108 | 0) >> 2] = wasm2js_f32$0;
|
|
$247 = HEAP32[($14 + 2696 | 0) >> 2] | 0;
|
|
HEAPF32[($14 + 40 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($14 + 124 | 0) >> 2]) * Math_fround(HEAPF32[($14 + 108 | 0) >> 2]));
|
|
operator__28float_20const__2c_20btVector3_20const__29($14 + 44 | 0 | 0, $14 + 40 | 0 | 0, HEAP32[($14 + 180 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($14 + 60 | 0 | 0, $247 | 0, $14 + 44 | 0 | 0);
|
|
HEAPF32[($14 + 20 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($14 + 124 | 0) >> 2]) * Math_fround(HEAPF32[($14 + 112 | 0) >> 2]));
|
|
operator__28float_20const__2c_20btVector3_20const__29($14 + 24 | 0 | 0, $14 + 20 | 0 | 0, $14 + 164 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($14 + 76 | 0 | 0, $14 + 60 | 0 | 0, $14 + 24 | 0 | 0);
|
|
operator__28float_20const__2c_20btVector3_20const__29($14 + 4 | 0 | 0, $14 + 128 | 0 | 0, HEAP32[($14 + 184 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($14 + 92 | 0 | 0, $14 + 76 | 0 | 0, $14 + 4 | 0 | 0);
|
|
$305 = (HEAP32[($14 + 280 | 0) >> 2] | 0) + ((HEAP32[($14 + 120 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = $14;
|
|
i64toi32_i32$0 = HEAP32[($14 + 92 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($14 + 96 | 0) >> 2] | 0;
|
|
$1091 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $305;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1091;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$307 = 8;
|
|
i64toi32_i32$2 = ($14 + 92 | 0) + $307 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1104 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $305 + $307 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1104;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
label$20 : {
|
|
label$21 : {
|
|
if (!(HEAP32[($14 + 136 | 0) >> 2] | 0)) {
|
|
break label$21
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$16 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($16, (HEAP32[($14 + 284 | 0) >> 2] | 0) + ((HEAP32[($14 + 120 | 0) >> 2] | 0) << 4 | 0) | 0, (HEAP32[($14 + 280 | 0) >> 2] | 0) + ((HEAP32[($14 + 120 | 0) >> 2] | 0) << 4 | 0) | 0, HEAP32[($14 + 2664 | 0) >> 2] | 0);
|
|
break label$20;
|
|
}
|
|
label$22 : {
|
|
if (!((HEAPU8[($14 + 162 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$22
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$16 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($16, $14 + 228 | 0, (HEAP32[($14 + 280 | 0) >> 2] | 0) + ((HEAP32[($14 + 120 | 0) >> 2] | 0) << 4 | 0) | 0, HEAP32[($14 + 2664 | 0) >> 2] | 0);
|
|
}
|
|
}
|
|
label$23 : {
|
|
label$24 : {
|
|
if (!(HEAP32[($14 + 120 | 0) >> 2] | 0)) {
|
|
break label$24
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$16 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($16, (HEAP32[($14 + 280 | 0) >> 2] | 0) + (((HEAP32[($14 + 120 | 0) >> 2] | 0) - 1 | 0) << 4 | 0) | 0, (HEAP32[($14 + 280 | 0) >> 2] | 0) + ((HEAP32[($14 + 120 | 0) >> 2] | 0) << 4 | 0) | 0, HEAP32[($14 + 2664 | 0) >> 2] | 0);
|
|
break label$23;
|
|
}
|
|
$361 = (HEAP32[($14 + 280 | 0) >> 2] | 0) + ((HEAP32[($14 + 120 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
$362 = 8;
|
|
i64toi32_i32$2 = $361 + $362 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1232 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($14 + 192 | 0) + $362 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1232;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $361;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1236 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $14;
|
|
HEAP32[($14 + 192 | 0) >> 2] = $1236;
|
|
HEAP32[($14 + 196 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
label$25 : {
|
|
if (!((HEAP32[($14 + 136 | 0) >> 2] | 0 | 0) == ((HEAP32[($14 + 156 | 0) >> 2] | 0) - 1 | 0 | 0) & 1 | 0)) {
|
|
break label$25
|
|
}
|
|
if (!((HEAPU8[($14 + 163 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$25
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$16 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($16, $14 + 260 | 0, (HEAP32[($14 + 280 | 0) >> 2] | 0) + ((HEAP32[($14 + 120 | 0) >> 2] | 0) << 4 | 0) | 0, HEAP32[($14 + 2664 | 0) >> 2] | 0);
|
|
}
|
|
label$26 : {
|
|
if (!((HEAPU8[($14 + 2659 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$26
|
|
}
|
|
label$27 : {
|
|
label$28 : {
|
|
if (!((HEAPU8[($14 + 151 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$28
|
|
}
|
|
label$29 : {
|
|
if (!((HEAP32[($14 + 120 | 0) >> 2] | 0 | 0) == ((HEAP32[($14 + 144 | 0) >> 2] | 0) - 1 | 0 | 0) & 1 | 0)) {
|
|
break label$29
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$16 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($16, $14 + 192 | 0, (HEAP32[($14 + 280 | 0) >> 2] | 0) + ((HEAP32[($14 + 120 | 0) >> 2] | 0) << 4 | 0) | 0, HEAP32[($14 + 2664 | 0) >> 2] | 0);
|
|
}
|
|
break label$27;
|
|
}
|
|
label$30 : {
|
|
label$31 : {
|
|
if (!(HEAP32[($14 + 136 | 0) >> 2] | 0)) {
|
|
break label$31
|
|
}
|
|
if (!((HEAP32[($14 + 136 | 0) >> 2] | 0 | 0) == ((HEAP32[($14 + 156 | 0) >> 2] | 0) - 1 | 0 | 0) & 1 | 0)) {
|
|
break label$30
|
|
}
|
|
}
|
|
label$32 : {
|
|
if (!(HEAP32[($14 + 120 | 0) >> 2] | 0)) {
|
|
break label$32
|
|
}
|
|
if (!((HEAP32[($14 + 120 | 0) >> 2] | 0 | 0) == ((HEAP32[($14 + 144 | 0) >> 2] | 0) - 1 | 0 | 0) & 1 | 0)) {
|
|
break label$30
|
|
}
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$16 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($16, HEAP32[($14 + 2696 | 0) >> 2] | 0, (HEAP32[($14 + 280 | 0) >> 2] | 0) + ((HEAP32[($14 + 120 | 0) >> 2] | 0) << 4 | 0) | 0, HEAP32[($14 + 2664 | 0) >> 2] | 0);
|
|
}
|
|
}
|
|
}
|
|
HEAP32[($14 + 120 | 0) >> 2] = (HEAP32[($14 + 120 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$19;
|
|
};
|
|
}
|
|
HEAP32[($14 + 276 | 0) >> 2] = HEAP32[($14 + 284 | 0) >> 2] | 0;
|
|
HEAP32[($14 + 284 | 0) >> 2] = HEAP32[($14 + 280 | 0) >> 2] | 0;
|
|
HEAP32[($14 + 280 | 0) >> 2] = HEAP32[($14 + 276 | 0) >> 2] | 0;
|
|
HEAP32[($14 + 136 | 0) >> 2] = (HEAP32[($14 + 136 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$17;
|
|
};
|
|
}
|
|
__stack_pointer = $14 + 2704 | 0;
|
|
return;
|
|
}
|
|
|
|
function btIDebugDraw__drawBox_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 400 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 396 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 392 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 388 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 384 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 396 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 368 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 352 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($7, $6 + 368 | 0, $6 + 352 | 0, HEAP32[($6 + 384 | 0) >> 2] | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 336 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 320 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($7, $6 + 336 | 0, $6 + 320 | 0, HEAP32[($6 + 384 | 0) >> 2] | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 304 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 288 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($7, $6 + 304 | 0, $6 + 288 | 0, HEAP32[($6 + 384 | 0) >> 2] | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 272 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 256 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($7, $6 + 272 | 0, $6 + 256 | 0, HEAP32[($6 + 384 | 0) >> 2] | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 240 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 224 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($7, $6 + 240 | 0, $6 + 224 | 0, HEAP32[($6 + 384 | 0) >> 2] | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 208 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 192 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($7, $6 + 208 | 0, $6 + 192 | 0, HEAP32[($6 + 384 | 0) >> 2] | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 176 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 160 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($7, $6 + 176 | 0, $6 + 160 | 0, HEAP32[($6 + 384 | 0) >> 2] | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 144 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 128 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($7, $6 + 144 | 0, $6 + 128 | 0, HEAP32[($6 + 384 | 0) >> 2] | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 112 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 96 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($7, $6 + 112 | 0, $6 + 96 | 0, HEAP32[($6 + 384 | 0) >> 2] | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 80 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 64 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($7, $6 + 80 | 0, $6 + 64 | 0, HEAP32[($6 + 384 | 0) >> 2] | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 48 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 32 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($7, $6 + 48 | 0, $6 + 32 | 0, HEAP32[($6 + 384 | 0) >> 2] | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 16 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 392 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 388 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($7, $6 + 16 | 0, $6, HEAP32[($6 + 384 | 0) >> 2] | 0);
|
|
__stack_pointer = $6 + 400 | 0;
|
|
return;
|
|
}
|
|
|
|
function btIDebugDraw__drawBox_28btVector3_20const__2c_20btVector3_20const__2c_20btTransform_20const__2c_20btVector3_20const__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0, $9 = 0, $29 = 0, $58 = 0, $78 = 0, $107 = 0, $127 = 0, $156 = 0, $176 = 0, $205 = 0, $225 = 0, $254 = 0, $274 = 0, $303 = 0, $323 = 0, $352 = 0, $372 = 0, $401 = 0, $421 = 0, $450 = 0, $470 = 0, $499 = 0, $519 = 0, $548 = 0, $568 = 0;
|
|
$7 = __stack_pointer - 800 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 796 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 792 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 788 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 784 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 780 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 796 | 0) >> 2] | 0;
|
|
$9 = HEAP32[($7 + 784 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 748 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 764 | 0 | 0, $9 | 0, $7 + 748 | 0 | 0);
|
|
$29 = HEAP32[($7 + 784 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 716 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 732 | 0 | 0, $29 | 0, $7 + 716 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($8, $7 + 764 | 0, $7 + 732 | 0, HEAP32[($7 + 780 | 0) >> 2] | 0);
|
|
$58 = HEAP32[($7 + 784 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 684 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 700 | 0 | 0, $58 | 0, $7 + 684 | 0 | 0);
|
|
$78 = HEAP32[($7 + 784 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 652 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 668 | 0 | 0, $78 | 0, $7 + 652 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($8, $7 + 700 | 0, $7 + 668 | 0, HEAP32[($7 + 780 | 0) >> 2] | 0);
|
|
$107 = HEAP32[($7 + 784 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 620 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 636 | 0 | 0, $107 | 0, $7 + 620 | 0 | 0);
|
|
$127 = HEAP32[($7 + 784 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 588 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 604 | 0 | 0, $127 | 0, $7 + 588 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($8, $7 + 636 | 0, $7 + 604 | 0, HEAP32[($7 + 780 | 0) >> 2] | 0);
|
|
$156 = HEAP32[($7 + 784 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 556 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 572 | 0 | 0, $156 | 0, $7 + 556 | 0 | 0);
|
|
$176 = HEAP32[($7 + 784 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 524 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 540 | 0 | 0, $176 | 0, $7 + 524 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($8, $7 + 572 | 0, $7 + 540 | 0, HEAP32[($7 + 780 | 0) >> 2] | 0);
|
|
$205 = HEAP32[($7 + 784 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 492 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 508 | 0 | 0, $205 | 0, $7 + 492 | 0 | 0);
|
|
$225 = HEAP32[($7 + 784 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 460 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 476 | 0 | 0, $225 | 0, $7 + 460 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($8, $7 + 508 | 0, $7 + 476 | 0, HEAP32[($7 + 780 | 0) >> 2] | 0);
|
|
$254 = HEAP32[($7 + 784 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 428 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 444 | 0 | 0, $254 | 0, $7 + 428 | 0 | 0);
|
|
$274 = HEAP32[($7 + 784 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 396 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 412 | 0 | 0, $274 | 0, $7 + 396 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($8, $7 + 444 | 0, $7 + 412 | 0, HEAP32[($7 + 780 | 0) >> 2] | 0);
|
|
$303 = HEAP32[($7 + 784 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 364 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 380 | 0 | 0, $303 | 0, $7 + 364 | 0 | 0);
|
|
$323 = HEAP32[($7 + 784 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 332 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 348 | 0 | 0, $323 | 0, $7 + 332 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($8, $7 + 380 | 0, $7 + 348 | 0, HEAP32[($7 + 780 | 0) >> 2] | 0);
|
|
$352 = HEAP32[($7 + 784 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 300 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 316 | 0 | 0, $352 | 0, $7 + 300 | 0 | 0);
|
|
$372 = HEAP32[($7 + 784 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 268 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 284 | 0 | 0, $372 | 0, $7 + 268 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($8, $7 + 316 | 0, $7 + 284 | 0, HEAP32[($7 + 780 | 0) >> 2] | 0);
|
|
$401 = HEAP32[($7 + 784 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 236 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 252 | 0 | 0, $401 | 0, $7 + 236 | 0 | 0);
|
|
$421 = HEAP32[($7 + 784 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 204 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 220 | 0 | 0, $421 | 0, $7 + 204 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($8, $7 + 252 | 0, $7 + 220 | 0, HEAP32[($7 + 780 | 0) >> 2] | 0);
|
|
$450 = HEAP32[($7 + 784 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 172 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 188 | 0 | 0, $450 | 0, $7 + 172 | 0 | 0);
|
|
$470 = HEAP32[($7 + 784 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 140 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 156 | 0 | 0, $470 | 0, $7 + 140 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($8, $7 + 188 | 0, $7 + 156 | 0, HEAP32[($7 + 780 | 0) >> 2] | 0);
|
|
$499 = HEAP32[($7 + 784 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 108 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 124 | 0 | 0, $499 | 0, $7 + 108 | 0 | 0);
|
|
$519 = HEAP32[($7 + 784 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 76 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 92 | 0 | 0, $519 | 0, $7 + 76 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($8, $7 + 124 | 0, $7 + 92 | 0, HEAP32[($7 + 780 | 0) >> 2] | 0);
|
|
$548 = HEAP32[($7 + 784 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 44 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 60 | 0 | 0, $548 | 0, $7 + 44 | 0 | 0);
|
|
$568 = HEAP32[($7 + 784 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 12 | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 792 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($7 + 788 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 28 | 0 | 0, $568 | 0, $7 + 12 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($8, $7 + 60 | 0, $7 + 28 | 0, HEAP32[($7 + 780 | 0) >> 2] | 0);
|
|
__stack_pointer = $7 + 800 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTransform__operator__28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $2;
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btIDebugDraw__drawCapsule_28float_2c_20float_2c_20int_2c_20btTransform_20const__2c_20btVector3_20const__29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $9 = 0, $80 = 0, $82 = 0, $91 = 0, $92 = 0, $165 = 0, $167 = 0, $176 = 0, $177 = 0, $231 = 0, $232 = 0, $253 = Math_fround(0), $284 = Math_fround(0), $30 = Math_fround(0), $57 = Math_fround(0), $513 = 0, $526 = 0, $545 = 0, $549 = 0, $683 = 0, $696 = 0, $715 = 0, $719 = 0, $828 = 0, $832 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$8 = __stack_pointer - 480 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 476 | 0) >> 2] = $0;
|
|
HEAPF32[($8 + 472 | 0) >> 2] = $1;
|
|
HEAPF32[($8 + 468 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 464 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 460 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 456 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 476 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 452 | 0) >> 2] = 30;
|
|
HEAPF32[($8 + 432 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 428 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 424 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 436 | 0 | 0, $8 + 432 | 0 | 0, $8 + 428 | 0 | 0, $8 + 424 | 0 | 0) | 0;
|
|
$30 = Math_fround(-Math_fround(HEAPF32[($8 + 468 | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($8 + 436 | 0 | 0) | 0) + ((HEAP32[($8 + 464 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $30), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($8 + 404 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 400 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 396 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 408 | 0 | 0, $8 + 404 | 0 | 0, $8 + 400 | 0 | 0, $8 + 396 | 0 | 0) | 0;
|
|
$57 = Math_fround(HEAPF32[($8 + 468 | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($8 + 408 | 0 | 0) | 0) + ((HEAP32[($8 + 464 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $57), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
btTransform__btTransform_28btTransform_20const__29($8 + 332 | 0 | 0, HEAP32[($8 + 460 | 0) >> 2] | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($8 + 316 | 0 | 0, HEAP32[($8 + 460 | 0) >> 2] | 0 | 0, $8 + 436 | 0 | 0);
|
|
$80 = btTransform__getOrigin_28_29($8 + 332 | 0 | 0) | 0;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$0 = HEAP32[($8 + 316 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($8 + 320 | 0) >> 2] | 0;
|
|
$513 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $80;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $513;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$82 = 8;
|
|
i64toi32_i32$2 = ($8 + 316 | 0) + $82 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$526 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $80 + $82 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $526;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$91 = btTransform__getOrigin_28_29($8 + 332 | 0 | 0) | 0;
|
|
$92 = 8;
|
|
i64toi32_i32$2 = $91 + $92 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$545 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 296 | 0) + $92 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $545;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $91;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$549 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 296 | 0) >> 2] = $549;
|
|
HEAP32[($8 + 300 | 0) >> 2] = i64toi32_i32$0;
|
|
btMatrix3x3__getColumn_28int_29_20const($8 + 280 | 0 | 0, btTransform__getBasis_28_29($8 + 332 | 0 | 0) | 0 | 0, ((HEAP32[($8 + 464 | 0) >> 2] | 0) + 1 | 0 | 0) % (3 | 0) | 0 | 0);
|
|
btMatrix3x3__getColumn_28int_29_20const($8 + 248 | 0 | 0, btTransform__getBasis_28_29($8 + 332 | 0 | 0) | 0 | 0, HEAP32[($8 + 464 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__29($8 + 264 | 0 | 0, $8 + 248 | 0 | 0);
|
|
HEAPF32[($8 + 244 | 0) >> 2] = Math_fround(-1.5707963705062866);
|
|
HEAPF32[($8 + 240 | 0) >> 2] = Math_fround(1.5707963705062866);
|
|
HEAPF32[($8 + 236 | 0) >> 2] = Math_fround(-1.5707963705062866);
|
|
HEAPF32[($8 + 232 | 0) >> 2] = Math_fround(1.5707963705062866);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$9 >> 2] | 0) + 72 | 0) >> 2] | 0 | 0]($9, $8 + 296 | 0, $8 + 280 | 0, $8 + 264 | 0, Math_fround(HEAPF32[($8 + 472 | 0) >> 2]), Math_fround(HEAPF32[($8 + 244 | 0) >> 2]), Math_fround(HEAPF32[($8 + 240 | 0) >> 2]), Math_fround(HEAPF32[($8 + 236 | 0) >> 2]), Math_fround(HEAPF32[($8 + 232 | 0) >> 2]), HEAP32[($8 + 456 | 0) >> 2] | 0, Math_fround(HEAP32[($8 + 452 | 0) >> 2] | 0 | 0), 0 & 1 | 0);
|
|
btTransform__btTransform_28btTransform_20const__29($8 + 168 | 0 | 0, HEAP32[($8 + 460 | 0) >> 2] | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($8 + 152 | 0 | 0, HEAP32[($8 + 460 | 0) >> 2] | 0 | 0, $8 + 408 | 0 | 0);
|
|
$165 = btTransform__getOrigin_28_29($8 + 168 | 0 | 0) | 0;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$0 = HEAP32[($8 + 152 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($8 + 156 | 0) >> 2] | 0;
|
|
$683 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $165;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $683;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$167 = 8;
|
|
i64toi32_i32$2 = ($8 + 152 | 0) + $167 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$696 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $165 + $167 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $696;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$176 = btTransform__getOrigin_28_29($8 + 168 | 0 | 0) | 0;
|
|
$177 = 8;
|
|
i64toi32_i32$2 = $176 + $177 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$715 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 136 | 0) + $177 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $715;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $176;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$719 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 136 | 0) >> 2] = $719;
|
|
HEAP32[($8 + 140 | 0) >> 2] = i64toi32_i32$0;
|
|
btMatrix3x3__getColumn_28int_29_20const($8 + 120 | 0 | 0, btTransform__getBasis_28_29($8 + 168 | 0 | 0) | 0 | 0, ((HEAP32[($8 + 464 | 0) >> 2] | 0) + 1 | 0 | 0) % (3 | 0) | 0 | 0);
|
|
btMatrix3x3__getColumn_28int_29_20const($8 + 104 | 0 | 0, btTransform__getBasis_28_29($8 + 168 | 0 | 0) | 0 | 0, HEAP32[($8 + 464 | 0) >> 2] | 0 | 0);
|
|
HEAPF32[($8 + 100 | 0) >> 2] = Math_fround(-1.5707963705062866);
|
|
HEAPF32[($8 + 96 | 0) >> 2] = Math_fround(1.5707963705062866);
|
|
HEAPF32[($8 + 92 | 0) >> 2] = Math_fround(-1.5707963705062866);
|
|
HEAPF32[($8 + 88 | 0) >> 2] = Math_fround(1.5707963705062866);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$9 >> 2] | 0) + 72 | 0) >> 2] | 0 | 0]($9, $8 + 136 | 0, $8 + 120 | 0, $8 + 104 | 0, Math_fround(HEAPF32[($8 + 472 | 0) >> 2]), Math_fround(HEAPF32[($8 + 100 | 0) >> 2]), Math_fround(HEAPF32[($8 + 96 | 0) >> 2]), Math_fround(HEAPF32[($8 + 92 | 0) >> 2]), Math_fround(HEAPF32[($8 + 88 | 0) >> 2]), HEAP32[($8 + 456 | 0) >> 2] | 0, Math_fround(HEAP32[($8 + 452 | 0) >> 2] | 0 | 0), 0 & 1 | 0);
|
|
$231 = btTransform__getOrigin_28_29_20const(HEAP32[($8 + 460 | 0) >> 2] | 0 | 0) | 0;
|
|
$232 = 8;
|
|
i64toi32_i32$2 = $231 + $232 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$828 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 72 | 0) + $232 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $828;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $231;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$832 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 72 | 0) >> 2] = $832;
|
|
HEAP32[($8 + 76 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($8 + 68 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($8 + 68 | 0) >> 2] | 0 | 0) < (360 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$253 = Math_fround(Math_fround(btSin_28float_29(Math_fround(Math_fround(Math_fround(HEAP32[($8 + 68 | 0) >> 2] | 0 | 0) * Math_fround(.01745329238474369))))) * Math_fround(HEAPF32[($8 + 472 | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($8 + 436 | 0 | 0) | 0) + ((((HEAP32[($8 + 464 | 0) >> 2] | 0) + 1 | 0 | 0) % (3 | 0) | 0) << 2 | 0) | 0, wasm2js_f32$0 = $253), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($8 + 408 | 0 | 0) | 0) + ((((HEAP32[($8 + 464 | 0) >> 2] | 0) + 1 | 0 | 0) % (3 | 0) | 0) << 2 | 0) | 0, wasm2js_f32$0 = $253), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$284 = Math_fround(Math_fround(btCos_28float_29(Math_fround(Math_fround(Math_fround(HEAP32[($8 + 68 | 0) >> 2] | 0 | 0) * Math_fround(.01745329238474369))))) * Math_fround(HEAPF32[($8 + 472 | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($8 + 436 | 0 | 0) | 0) + ((((HEAP32[($8 + 464 | 0) >> 2] | 0) + 2 | 0 | 0) % (3 | 0) | 0) << 2 | 0) | 0, wasm2js_f32$0 = $284), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($8 + 408 | 0 | 0) | 0) + ((((HEAP32[($8 + 464 | 0) >> 2] | 0) + 2 | 0 | 0) % (3 | 0) | 0) << 2 | 0) | 0, wasm2js_f32$0 = $284), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 36 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 460 | 0) >> 2] | 0 | 0) | 0 | 0, $8 + 436 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 52 | 0 | 0, $8 + 72 | 0 | 0, $8 + 36 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 4 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 460 | 0) >> 2] | 0 | 0) | 0 | 0, $8 + 408 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 20 | 0 | 0, $8 + 72 | 0 | 0, $8 + 4 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$9 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($9, $8 + 52 | 0, $8 + 20 | 0, HEAP32[($8 + 456 | 0) >> 2] | 0);
|
|
HEAP32[($8 + 68 | 0) >> 2] = (HEAP32[($8 + 68 | 0) >> 2] | 0) + (HEAP32[($8 + 452 | 0) >> 2] | 0) | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $8 + 480 | 0;
|
|
return;
|
|
}
|
|
|
|
function btIDebugDraw__drawCylinder_28float_2c_20float_2c_20int_2c_20btTransform_20const__2c_20btVector3_20const__29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, $9 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $11 = 0, $12 = 0, $116 = Math_fround(0), $147 = Math_fround(0), $421 = 0, $425 = 0, $37 = Math_fround(0), $66 = Math_fround(0), $93 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$8 = __stack_pointer - 384 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 380 | 0) >> 2] = $0;
|
|
HEAPF32[($8 + 376 | 0) >> 2] = $1;
|
|
HEAPF32[($8 + 372 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 368 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 364 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 360 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 380 | 0) >> 2] | 0;
|
|
$11 = btTransform__getOrigin_28_29_20const(HEAP32[($8 + 364 | 0) >> 2] | 0 | 0) | 0;
|
|
$12 = 8;
|
|
i64toi32_i32$2 = $11 + $12 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$421 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 344 | 0) + $12 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $421;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $11;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$425 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 344 | 0) >> 2] = $425;
|
|
HEAP32[($8 + 348 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($8 + 324 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 320 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 316 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 328 | 0 | 0, $8 + 324 | 0 | 0, $8 + 320 | 0 | 0, $8 + 316 | 0 | 0) | 0;
|
|
$37 = Math_fround(HEAPF32[($8 + 372 | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($8 + 328 | 0 | 0) | 0) + ((HEAP32[($8 + 368 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $37), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP32[($8 + 312 | 0) >> 2] = 30;
|
|
HEAPF32[($8 + 292 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 288 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 284 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 296 | 0 | 0, $8 + 292 | 0 | 0, $8 + 288 | 0 | 0, $8 + 284 | 0 | 0) | 0;
|
|
$66 = Math_fround(-Math_fround(HEAPF32[($8 + 372 | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($8 + 296 | 0 | 0) | 0) + ((HEAP32[($8 + 368 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $66), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($8 + 264 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 260 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 256 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 268 | 0 | 0, $8 + 264 | 0 | 0, $8 + 260 | 0 | 0, $8 + 256 | 0 | 0) | 0;
|
|
$93 = Math_fround(HEAPF32[($8 + 372 | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($8 + 268 | 0 | 0) | 0) + ((HEAP32[($8 + 368 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $93), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP32[($8 + 252 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($8 + 252 | 0) >> 2] | 0 | 0) < (360 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$116 = Math_fround(Math_fround(btSin_28float_29(Math_fround(Math_fround(Math_fround(HEAP32[($8 + 252 | 0) >> 2] | 0 | 0) * Math_fround(.01745329238474369))))) * Math_fround(HEAPF32[($8 + 376 | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($8 + 296 | 0 | 0) | 0) + ((((HEAP32[($8 + 368 | 0) >> 2] | 0) + 1 | 0 | 0) % (3 | 0) | 0) << 2 | 0) | 0, wasm2js_f32$0 = $116), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($8 + 268 | 0 | 0) | 0) + ((((HEAP32[($8 + 368 | 0) >> 2] | 0) + 1 | 0 | 0) % (3 | 0) | 0) << 2 | 0) | 0, wasm2js_f32$0 = $116), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$147 = Math_fround(Math_fround(btCos_28float_29(Math_fround(Math_fround(Math_fround(HEAP32[($8 + 252 | 0) >> 2] | 0 | 0) * Math_fround(.01745329238474369))))) * Math_fround(HEAPF32[($8 + 376 | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($8 + 296 | 0 | 0) | 0) + ((((HEAP32[($8 + 368 | 0) >> 2] | 0) + 2 | 0 | 0) % (3 | 0) | 0) << 2 | 0) | 0, wasm2js_f32$0 = $147), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($8 + 268 | 0 | 0) | 0) + ((((HEAP32[($8 + 368 | 0) >> 2] | 0) + 2 | 0 | 0) % (3 | 0) | 0) << 2 | 0) | 0, wasm2js_f32$0 = $147), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 220 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 364 | 0) >> 2] | 0 | 0) | 0 | 0, $8 + 296 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 236 | 0 | 0, $8 + 344 | 0 | 0, $8 + 220 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 188 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 364 | 0) >> 2] | 0 | 0) | 0 | 0, $8 + 268 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 204 | 0 | 0, $8 + 344 | 0 | 0, $8 + 188 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$9 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($9, $8 + 236 | 0, $8 + 204 | 0, HEAP32[($8 + 360 | 0) >> 2] | 0);
|
|
HEAP32[($8 + 252 | 0) >> 2] = (HEAP32[($8 + 252 | 0) >> 2] | 0) + (HEAP32[($8 + 312 | 0) >> 2] | 0) | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
HEAPF32[($8 + 168 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 164 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 160 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 172 | 0 | 0, $8 + 168 | 0 | 0, $8 + 164 | 0 | 0, $8 + 160 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($8 + 172 | 0 | 0) | 0) + ((HEAP32[($8 + 368 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = Math_fround(1.0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($8 + 140 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 136 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 132 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 144 | 0 | 0, $8 + 140 | 0 | 0, $8 + 136 | 0 | 0, $8 + 132 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($8 + 144 | 0 | 0) | 0) + ((((HEAP32[($8 + 368 | 0) >> 2] | 0) + 1 | 0 | 0) % (3 | 0) | 0) << 2 | 0) | 0, wasm2js_f32$0 = Math_fround(1.0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 100 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 364 | 0) >> 2] | 0 | 0) | 0 | 0, $8 + 328 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 116 | 0 | 0, $8 + 344 | 0 | 0, $8 + 100 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 84 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 364 | 0) >> 2] | 0 | 0) | 0 | 0, $8 + 172 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 68 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 364 | 0) >> 2] | 0 | 0) | 0 | 0, $8 + 144 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$9 >> 2] | 0) + 68 | 0) >> 2] | 0 | 0]($9, $8 + 116 | 0, $8 + 84 | 0, $8 + 68 | 0, Math_fround(HEAPF32[($8 + 376 | 0) >> 2]), Math_fround(HEAPF32[($8 + 376 | 0) >> 2]), Math_fround(0 | 0), Math_fround(6.2831854820251465), HEAP32[($8 + 360 | 0) >> 2] | 0, 0 & 1 | 0, Math_fround(10.0));
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 36 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 364 | 0) >> 2] | 0 | 0) | 0 | 0, $8 + 328 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 52 | 0 | 0, $8 + 344 | 0 | 0, $8 + 36 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 20 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 364 | 0) >> 2] | 0 | 0) | 0 | 0, $8 + 172 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 4 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 364 | 0) >> 2] | 0 | 0) | 0 | 0, $8 + 144 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$9 >> 2] | 0) + 68 | 0) >> 2] | 0 | 0]($9, $8 + 52 | 0, $8 + 20 | 0, $8 + 4 | 0, Math_fround(HEAPF32[($8 + 376 | 0) >> 2]), Math_fround(HEAPF32[($8 + 376 | 0) >> 2]), Math_fround(0 | 0), Math_fround(6.2831854820251465), HEAP32[($8 + 360 | 0) >> 2] | 0, 0 & 1 | 0, Math_fround(10.0));
|
|
__stack_pointer = $8 + 384 | 0;
|
|
return;
|
|
}
|
|
|
|
function btIDebugDraw__drawCone_28float_2c_20float_2c_20int_2c_20btTransform_20const__2c_20btVector3_20const__29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, $9 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $12 = 0, $13 = 0, $611 = 0, $615 = 0, $41 = Math_fround(0), $68 = Math_fround(0), $99 = Math_fround(0), $131 = Math_fround(0), $154 = Math_fround(0), $173 = Math_fround(0), $250 = 0, $308 = 0, $366 = 0, $424 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$8 = __stack_pointer - 736 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 732 | 0) >> 2] = $0;
|
|
HEAPF32[($8 + 728 | 0) >> 2] = $1;
|
|
HEAPF32[($8 + 724 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 720 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 716 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 712 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 732 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 708 | 0) >> 2] = 30;
|
|
$12 = btTransform__getOrigin_28_29_20const(HEAP32[($8 + 716 | 0) >> 2] | 0 | 0) | 0;
|
|
$13 = 8;
|
|
i64toi32_i32$2 = $12 + $13 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$611 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 688 | 0) + $13 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $611;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$615 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 688 | 0) >> 2] = $615;
|
|
HEAP32[($8 + 692 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($8 + 668 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 664 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 660 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 672 | 0 | 0, $8 + 668 | 0 | 0, $8 + 664 | 0 | 0, $8 + 660 | 0 | 0) | 0;
|
|
HEAPF32[($8 + 656 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($8 + 724 | 0) >> 2]) * Math_fround(.5));
|
|
$41 = Math_fround(HEAPF32[($8 + 656 | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($8 + 672 | 0 | 0) | 0) + ((HEAP32[($8 + 720 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $41), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($8 + 636 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 632 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 628 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 640 | 0 | 0, $8 + 636 | 0 | 0, $8 + 632 | 0 | 0, $8 + 628 | 0 | 0) | 0;
|
|
$68 = Math_fround(HEAPF32[($8 + 728 | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($8 + 640 | 0 | 0) | 0) + ((((HEAP32[($8 + 720 | 0) >> 2] | 0) + 1 | 0 | 0) % (3 | 0) | 0) << 2 | 0) | 0, wasm2js_f32$0 = $68), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($8 + 608 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 604 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 600 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 612 | 0 | 0, $8 + 608 | 0 | 0, $8 + 604 | 0 | 0, $8 + 600 | 0 | 0) | 0;
|
|
$99 = Math_fround(HEAPF32[($8 + 728 | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($8 + 612 | 0 | 0) | 0) + ((((HEAP32[($8 + 720 | 0) >> 2] | 0) + 2 | 0 | 0) % (3 | 0) | 0) << 2 | 0) | 0, wasm2js_f32$0 = $99), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($8 + 580 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 576 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 572 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 584 | 0 | 0, $8 + 580 | 0 | 0, $8 + 576 | 0 | 0, $8 + 572 | 0 | 0) | 0;
|
|
$131 = Math_fround(-Math_fround(HEAPF32[($8 + 656 | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($8 + 584 | 0 | 0) | 0) + ((HEAP32[($8 + 720 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $131), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP32[($8 + 568 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($8 + 568 | 0) >> 2] | 0 | 0) < (360 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$154 = Math_fround(Math_fround(btSin_28float_29(Math_fround(Math_fround(Math_fround(HEAP32[($8 + 568 | 0) >> 2] | 0 | 0) * Math_fround(.01745329238474369))))) * Math_fround(HEAPF32[($8 + 728 | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($8 + 584 | 0 | 0) | 0) + ((((HEAP32[($8 + 720 | 0) >> 2] | 0) + 1 | 0 | 0) % (3 | 0) | 0) << 2 | 0) | 0, wasm2js_f32$0 = $154), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$173 = Math_fround(Math_fround(btCos_28float_29(Math_fround(Math_fround(Math_fround(HEAP32[($8 + 568 | 0) >> 2] | 0 | 0) * Math_fround(.01745329238474369))))) * Math_fround(HEAPF32[($8 + 728 | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($8 + 584 | 0 | 0) | 0) + ((((HEAP32[($8 + 720 | 0) >> 2] | 0) + 2 | 0 | 0) % (3 | 0) | 0) << 2 | 0) | 0, wasm2js_f32$0 = $173), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 536 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 716 | 0) >> 2] | 0 | 0) | 0 | 0, $8 + 672 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 552 | 0 | 0, $8 + 688 | 0 | 0, $8 + 536 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 504 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 716 | 0) >> 2] | 0 | 0) | 0 | 0, $8 + 584 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 520 | 0 | 0, $8 + 688 | 0 | 0, $8 + 504 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$9 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($9, $8 + 552 | 0, $8 + 520 | 0, HEAP32[($8 + 712 | 0) >> 2] | 0);
|
|
HEAP32[($8 + 568 | 0) >> 2] = (HEAP32[($8 + 568 | 0) >> 2] | 0) + (HEAP32[($8 + 708 | 0) >> 2] | 0) | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 472 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 716 | 0) >> 2] | 0 | 0) | 0 | 0, $8 + 672 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 488 | 0 | 0, $8 + 688 | 0 | 0, $8 + 472 | 0 | 0);
|
|
$250 = btTransform__getBasis_28_29_20const(HEAP32[($8 + 716 | 0) >> 2] | 0 | 0) | 0;
|
|
operator__28btVector3_20const__29($8 + 408 | 0 | 0, $8 + 672 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 424 | 0 | 0, $8 + 408 | 0 | 0, $8 + 640 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 440 | 0 | 0, $250 | 0, $8 + 424 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 456 | 0 | 0, $8 + 688 | 0 | 0, $8 + 440 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$9 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($9, $8 + 488 | 0, $8 + 456 | 0, HEAP32[($8 + 712 | 0) >> 2] | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 376 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 716 | 0) >> 2] | 0 | 0) | 0 | 0, $8 + 672 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 392 | 0 | 0, $8 + 688 | 0 | 0, $8 + 376 | 0 | 0);
|
|
$308 = btTransform__getBasis_28_29_20const(HEAP32[($8 + 716 | 0) >> 2] | 0 | 0) | 0;
|
|
operator__28btVector3_20const__29($8 + 312 | 0 | 0, $8 + 672 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 328 | 0 | 0, $8 + 312 | 0 | 0, $8 + 640 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 344 | 0 | 0, $308 | 0, $8 + 328 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 360 | 0 | 0, $8 + 688 | 0 | 0, $8 + 344 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$9 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($9, $8 + 392 | 0, $8 + 360 | 0, HEAP32[($8 + 712 | 0) >> 2] | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 280 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 716 | 0) >> 2] | 0 | 0) | 0 | 0, $8 + 672 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 296 | 0 | 0, $8 + 688 | 0 | 0, $8 + 280 | 0 | 0);
|
|
$366 = btTransform__getBasis_28_29_20const(HEAP32[($8 + 716 | 0) >> 2] | 0 | 0) | 0;
|
|
operator__28btVector3_20const__29($8 + 216 | 0 | 0, $8 + 672 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 232 | 0 | 0, $8 + 216 | 0 | 0, $8 + 612 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 248 | 0 | 0, $366 | 0, $8 + 232 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 264 | 0 | 0, $8 + 688 | 0 | 0, $8 + 248 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$9 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($9, $8 + 296 | 0, $8 + 264 | 0, HEAP32[($8 + 712 | 0) >> 2] | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 184 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 716 | 0) >> 2] | 0 | 0) | 0 | 0, $8 + 672 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 200 | 0 | 0, $8 + 688 | 0 | 0, $8 + 184 | 0 | 0);
|
|
$424 = btTransform__getBasis_28_29_20const(HEAP32[($8 + 716 | 0) >> 2] | 0 | 0) | 0;
|
|
operator__28btVector3_20const__29($8 + 120 | 0 | 0, $8 + 672 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 136 | 0 | 0, $8 + 120 | 0 | 0, $8 + 612 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 152 | 0 | 0, $424 | 0, $8 + 136 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 168 | 0 | 0, $8 + 688 | 0 | 0, $8 + 152 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$9 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($9, $8 + 200 | 0, $8 + 168 | 0, HEAP32[($8 + 712 | 0) >> 2] | 0);
|
|
HEAPF32[($8 + 100 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 96 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 92 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 104 | 0 | 0, $8 + 100 | 0 | 0, $8 + 96 | 0 | 0, $8 + 92 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($8 + 104 | 0 | 0) | 0) + ((HEAP32[($8 + 720 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = Math_fround(1.0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($8 + 72 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 68 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 64 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 76 | 0 | 0, $8 + 72 | 0 | 0, $8 + 68 | 0 | 0, $8 + 64 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($8 + 76 | 0 | 0) | 0) + ((((HEAP32[($8 + 720 | 0) >> 2] | 0) + 1 | 0 | 0) % (3 | 0) | 0) << 2 | 0) | 0, wasm2js_f32$0 = Math_fround(1.0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 32 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 716 | 0) >> 2] | 0 | 0) | 0 | 0, $8 + 672 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 48 | 0 | 0, $8 + 688 | 0 | 0, $8 + 32 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 16 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 716 | 0) >> 2] | 0 | 0) | 0 | 0, $8 + 104 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 716 | 0) >> 2] | 0 | 0) | 0 | 0, $8 + 76 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$9 >> 2] | 0) + 68 | 0) >> 2] | 0 | 0]($9, $8 + 48 | 0, $8 + 16 | 0, $8, Math_fround(HEAPF32[($8 + 728 | 0) >> 2]), Math_fround(HEAPF32[($8 + 728 | 0) >> 2]), Math_fround(0 | 0), Math_fround(6.2831854820251465), HEAP32[($8 + 712 | 0) >> 2] | 0, 0 & 1 | 0, Math_fround(10.0));
|
|
__stack_pointer = $8 + 736 | 0;
|
|
return;
|
|
}
|
|
|
|
function btIDebugDraw__drawPlane_28btVector3_20const__2c_20float_2c_20btTransform_20const__2c_20btVector3_20const__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0;
|
|
$7 = __stack_pointer - 272 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 268 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 264 | 0) >> 2] = $1;
|
|
HEAPF32[($7 + 260 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 256 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 252 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 268 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($7 + 236 | 0 | 0, HEAP32[($7 + 264 | 0) >> 2] | 0 | 0, $7 + 260 | 0 | 0);
|
|
btVector3__btVector3_28_29($7 + 220 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($7 + 204 | 0 | 0) | 0;
|
|
void_20btPlaneSpace1_btVector3__28btVector3_20const__2c_20btVector3__2c_20btVector3__29(HEAP32[($7 + 264 | 0) >> 2] | 0 | 0, $7 + 220 | 0 | 0, $7 + 204 | 0 | 0);
|
|
HEAPF32[($7 + 200 | 0) >> 2] = Math_fround(100.0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($7 + 168 | 0 | 0, $7 + 220 | 0 | 0, $7 + 200 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($7 + 184 | 0 | 0, $7 + 236 | 0 | 0, $7 + 168 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($7 + 136 | 0 | 0, $7 + 220 | 0 | 0, $7 + 200 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($7 + 152 | 0 | 0, $7 + 236 | 0 | 0, $7 + 136 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($7 + 104 | 0 | 0, $7 + 204 | 0 | 0, $7 + 200 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($7 + 120 | 0 | 0, $7 + 236 | 0 | 0, $7 + 104 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($7 + 72 | 0 | 0, $7 + 204 | 0 | 0, $7 + 200 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($7 + 88 | 0 | 0, $7 + 236 | 0 | 0, $7 + 72 | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 56 | 0 | 0, HEAP32[($7 + 256 | 0) >> 2] | 0 | 0, $7 + 184 | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 40 | 0 | 0, HEAP32[($7 + 256 | 0) >> 2] | 0 | 0, $7 + 152 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($8, $7 + 56 | 0, $7 + 40 | 0, HEAP32[($7 + 252 | 0) >> 2] | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 24 | 0 | 0, HEAP32[($7 + 256 | 0) >> 2] | 0 | 0, $7 + 120 | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 8 | 0 | 0, HEAP32[($7 + 256 | 0) >> 2] | 0 | 0, $7 + 88 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($8, $7 + 24 | 0, $7 + 8 | 0, HEAP32[($7 + 252 | 0) >> 2] | 0);
|
|
__stack_pointer = $7 + 272 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20btPlaneSpace1_btVector3__28btVector3_20const__2c_20btVector3__2c_20btVector3__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $42 = Math_fround(0), $49 = Math_fround(0), $54 = Math_fround(0), $64 = Math_fround(0), $73 = Math_fround(0), $100 = Math_fround(0), $107 = Math_fround(0), $121 = Math_fround(0), $130 = Math_fround(0), $135 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2])))) > Math_fround(.7071067690849304) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2])))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(1.0) / Math_fround(btSqrt_28float_29(Math_fround(Math_fround(HEAPF32[($5 + 16 | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$42 = Math_fround(Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2])) * Math_fround(HEAPF32[($5 + 12 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $42), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$49 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 12 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $49), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
$54 = Math_fround(Math_fround(HEAPF32[($5 + 16 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 12 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $54), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$64 = Math_fround(Math_fround(-Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2])) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $64), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$73 = Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $73), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2])))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(1.0) / Math_fround(btSqrt_28float_29(Math_fround(Math_fround(HEAPF32[($5 + 8 | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$100 = Math_fround(Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2])) * Math_fround(HEAPF32[($5 + 4 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $100), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$107 = Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($5 + 4 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $107), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
$121 = Math_fround(Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2])) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $121), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$130 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__operator_20float__28_29(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $130), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$135 = Math_fround(Math_fround(HEAPF32[($5 + 8 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 4 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $135), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDebugDrawWrapper__clearLines_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
void_20emscripten__wrapper_btDebugDraw___call_void__28char_20const__29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0, GOT_data_internal___memory_base + 70055 | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__wrapper_btDebugDraw___call_void__28char_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
void_20emscripten__val__call_void__28char_20const__29_20const((HEAP32[($4 + 12 | 0) >> 2] | 0) + 140 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDebugDrawWrapper__flushLines_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
void_20emscripten__wrapper_btDebugDraw___call_void__28char_20const__29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0, GOT_data_internal___memory_base + 70066 | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDebugDrawWrapper__onDebugDrawLine_28int_2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
void_20emscripten__wrapper_btDebugDraw___call_void_2c_20int_20const__2c_20int_20const__2c_20int___28char_20const__2c_20int_20const__2c_20int_20const__2c_20int__29_20const(HEAP32[($6 + 12 | 0) >> 2] | 0 | 0, GOT_data_internal___memory_base + 81794 | 0 | 0, $6 + 8 | 0 | 0, $6 + 4 | 0 | 0, $6 | 0);
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__wrapper_btDebugDraw___call_void_2c_20int_20const__2c_20int_20const__2c_20int___28char_20const__2c_20int_20const__2c_20int_20const__2c_20int__29_20const($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
void_20emscripten__val__call_void_2c_20int_20const__2c_20int_20const__2c_20int___28char_20const__2c_20int_20const__2c_20int_20const__2c_20int__29_20const((HEAP32[($7 + 28 | 0) >> 2] | 0) + 140 | 0 | 0, HEAP32[($7 + 24 | 0) >> 2] | 0 | 0, HEAP32[($7 + 20 | 0) >> 2] | 0 | 0, HEAP32[($7 + 16 | 0) >> 2] | 0 | 0, HEAP32[($7 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btIDebugDraw__btIDebugDraw_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = GOT_data_internal_vtable_20for_20btIDebugDraw + 8 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btIDebugDraw__DefaultColors__DefaultColors_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 108 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 108 | 0) >> 2] | 0;
|
|
HEAPF32[($3 + 104 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($3 + 100 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($3 + 96 | 0) >> 2] = Math_fround(1.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 | 0, $3 + 104 | 0 | 0, $3 + 100 | 0 | 0, $3 + 96 | 0 | 0) | 0;
|
|
HEAPF32[($3 + 92 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 88 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($3 + 84 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 16 | 0 | 0, $3 + 92 | 0 | 0, $3 + 88 | 0 | 0, $3 + 84 | 0 | 0) | 0;
|
|
HEAPF32[($3 + 80 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 76 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($3 + 72 | 0) >> 2] = Math_fround(1.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 32 | 0 | 0, $3 + 80 | 0 | 0, $3 + 76 | 0 | 0, $3 + 72 | 0 | 0) | 0;
|
|
HEAPF32[($3 + 68 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($3 + 64 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 60 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 48 | 0 | 0, $3 + 68 | 0 | 0, $3 + 64 | 0 | 0, $3 + 60 | 0 | 0) | 0;
|
|
HEAPF32[($3 + 56 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($3 + 52 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($3 + 48 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 64 | 0 | 0, $3 + 56 | 0 | 0, $3 + 52 | 0 | 0, $3 + 48 | 0 | 0) | 0;
|
|
HEAPF32[($3 + 44 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($3 + 40 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 36 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 80 | 0 | 0, $3 + 44 | 0 | 0, $3 + 40 | 0 | 0, $3 + 36 | 0 | 0) | 0;
|
|
HEAPF32[($3 + 32 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($3 + 28 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($3 + 24 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 96 | 0 | 0, $3 + 32 | 0 | 0, $3 + 28 | 0 | 0, $3 + 24 | 0 | 0) | 0;
|
|
HEAPF32[($3 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 112 | 0 | 0, $3 + 20 | 0 | 0, $3 + 16 | 0 | 0, $3 + 12 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 112 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btDebugDraw___btDebugDraw_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btIDebugDraw___btIDebugDraw_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__wrapper_btDebugDraw____wrapper_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btIDebugDraw__clearLines_28_29($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return;
|
|
}
|
|
|
|
function btIDebugDraw__flushLines_28_29($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return;
|
|
}
|
|
|
|
function btIDebugDraw___btIDebugDraw_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btDebugDraw___btDebugDraw_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btIDebugDraw___btIDebugDraw_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btIDebugDraw__getDefaultColors_28_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $1;
|
|
btIDebugDraw__DefaultColors__DefaultColors_28_29($0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btIDebugDraw__setDefaultColors_28btIDebugDraw__DefaultColors_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__val__call_void__28char_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
emscripten__internal__MethodCaller_void___call_28emscripten___EM_VAL__2c_20char_20const__29(HEAP32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__MethodCaller_void___call_28emscripten___EM_VAL__2c_20char_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = emscripten__internal__Signature_void___get_method_caller_28_29() | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
emscripten__internal__WireTypePack____WireTypePack_28_29($4 + 8 | 0 | 0) | 0;
|
|
_emval_call_void_method(HEAP32[($4 + 20 | 0) >> 2] | 0 | 0, HEAP32[($4 + 28 | 0) >> 2] | 0 | 0, HEAP32[($4 + 24 | 0) >> 2] | 0 | 0, emscripten__internal__WireTypePack____operator_20void_20const__28_29_20const($4 + 8 | 0 | 0) | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__Signature_void___get_method_caller_28_29() {
|
|
var $2 = 0, $26 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$2 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $2;
|
|
label$1 : {
|
|
if (!((((HEAPU8[GOT_data_internal_guard_20variable_20for_20emscripten__internal__Signature_void___get_method_caller_28_29__mc >> 0] | 0) & 1 | 0) & 255 | 0 | 0) == (0 & 255 | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = GOT_data_internal_emscripten__internal__Signature_void___get_method_caller_28_29__mc, wasm2js_i32$1 = _emval_get_method_caller(emscripten__internal__WithPolicies____ArgTypeList_void___getCount_28_29_20const($2 + 15 | 0 | 0) | 0 | 0, emscripten__internal__WithPolicies____ArgTypeList_void___getTypes_28_29_20const($2 + 15 | 0 | 0) | 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP8[GOT_data_internal_guard_20variable_20for_20emscripten__internal__Signature_void___get_method_caller_28_29__mc >> 0] = 1;
|
|
}
|
|
$26 = HEAP32[GOT_data_internal_emscripten__internal__Signature_void___get_method_caller_28_29__mc >> 2] | 0;
|
|
__stack_pointer = $2 + 16 | 0;
|
|
return $26 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WireTypePack____WireTypePack_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = std____2__array_emscripten__internal__GenericWireType_2c_200ul___data_5babi_v160004_5d_28_29($4 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
emscripten__internal__writeGenericWireTypes_28emscripten__internal__GenericWireType___29($3 + 8 | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WireTypePack____operator_20void_20const__28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = std____2__array_emscripten__internal__GenericWireType_2c_200ul___data_5babi_v160004_5d_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 1 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function std____2__array_emscripten__internal__GenericWireType_2c_200ul___data_5babi_v160004_5d_28_29($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__writeGenericWireTypes_28emscripten__internal__GenericWireType___29($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return;
|
|
}
|
|
|
|
function std____2__array_emscripten__internal__GenericWireType_2c_200ul___data_5babi_v160004_5d_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void____get_28_29__types | 0;
|
|
}
|
|
|
|
function void_20emscripten__val__call_void_2c_20int_20const__2c_20int_20const__2c_20int___28char_20const__2c_20int_20const__2c_20int_20const__2c_20int__29_20const($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
emscripten__internal__MethodCaller_void_2c_20int_20const__2c_20int_20const__2c_20int____call_28emscripten___EM_VAL__2c_20char_20const__2c_20int_20const__2c_20int_20const__2c_20int__29(HEAP32[(HEAP32[($7 + 28 | 0) >> 2] | 0) >> 2] | 0 | 0, HEAP32[($7 + 24 | 0) >> 2] | 0 | 0, HEAP32[($7 + 20 | 0) >> 2] | 0 | 0, HEAP32[($7 + 16 | 0) >> 2] | 0 | 0, HEAP32[($7 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__MethodCaller_void_2c_20int_20const__2c_20int_20const__2c_20int____call_28emscripten___EM_VAL__2c_20char_20const__2c_20int_20const__2c_20int_20const__2c_20int__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$7 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 32 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $4;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = emscripten__internal__Signature_void_2c_20int_20const__2c_20int_20const__2c_20int____get_method_caller_28_29() | 0), HEAP32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_i32$1;
|
|
emscripten__internal__WireTypePack_int_20const__2c_20int_20const__2c_20int____WireTypePack_28int_20const__2c_20int_20const__2c_20int__29($7 | 0, HEAP32[($7 + 36 | 0) >> 2] | 0 | 0, HEAP32[($7 + 32 | 0) >> 2] | 0 | 0, HEAP32[($7 + 28 | 0) >> 2] | 0 | 0) | 0;
|
|
_emval_call_void_method(HEAP32[($7 + 24 | 0) >> 2] | 0 | 0, HEAP32[($7 + 44 | 0) >> 2] | 0 | 0, HEAP32[($7 + 40 | 0) >> 2] | 0 | 0, emscripten__internal__WireTypePack_int_20const__2c_20int_20const__2c_20int____operator_20void_20const__28_29_20const($7 | 0) | 0 | 0);
|
|
__stack_pointer = $7 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__Signature_void_2c_20int_20const__2c_20int_20const__2c_20int____get_method_caller_28_29() {
|
|
var $2 = 0, $26 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$2 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $2;
|
|
label$1 : {
|
|
if (!((((HEAPU8[GOT_data_internal_guard_20variable_20for_20emscripten__internal__Signature_void_2c_20int_20const__2c_20int_20const__2c_20int____get_method_caller_28_29__mc >> 0] | 0) & 1 | 0) & 255 | 0 | 0) == (0 & 255 | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = GOT_data_internal_emscripten__internal__Signature_void_2c_20int_20const__2c_20int_20const__2c_20int____get_method_caller_28_29__mc, wasm2js_i32$1 = _emval_get_method_caller(emscripten__internal__WithPolicies____ArgTypeList_void_2c_20int_20const__2c_20int_20const__2c_20int____getCount_28_29_20const($2 + 15 | 0 | 0) | 0 | 0, emscripten__internal__WithPolicies____ArgTypeList_void_2c_20int_20const__2c_20int_20const__2c_20int____getTypes_28_29_20const($2 + 15 | 0 | 0) | 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP8[GOT_data_internal_guard_20variable_20for_20emscripten__internal__Signature_void_2c_20int_20const__2c_20int_20const__2c_20int____get_method_caller_28_29__mc >> 0] = 1;
|
|
}
|
|
$26 = HEAP32[GOT_data_internal_emscripten__internal__Signature_void_2c_20int_20const__2c_20int_20const__2c_20int____get_method_caller_28_29__mc >> 2] | 0;
|
|
__stack_pointer = $2 + 16 | 0;
|
|
return $26 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WireTypePack_int_20const__2c_20int_20const__2c_20int____WireTypePack_28int_20const__2c_20int_20const__2c_20int__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $9 = 0, $10 = 0, $11 = 0, $19 = 0, $20 = 0, $25 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = std____2__array_emscripten__internal__GenericWireType_2c_203ul___data_5babi_v160004_5d_28_29($7 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
$9 = HEAP32[($6 + 20 | 0) >> 2] | 0;
|
|
$10 = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
$11 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 40 | 0) >> 2] = $6 + 8 | 0;
|
|
HEAP32[($6 + 36 | 0) >> 2] = $9;
|
|
HEAP32[($6 + 32 | 0) >> 2] = $10;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $11;
|
|
void_20emscripten__internal__writeGenericWireType_int__28emscripten__internal__GenericWireType___2c_20int_29(HEAP32[($6 + 40 | 0) >> 2] | 0 | 0, emscripten__internal__BindingType_int_2c_20void___toWireType_28int_20const__29(HEAP32[($6 + 36 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$19 = HEAP32[($6 + 32 | 0) >> 2] | 0;
|
|
$20 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 52 | 0) >> 2] = HEAP32[($6 + 40 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 48 | 0) >> 2] = $19;
|
|
HEAP32[($6 + 44 | 0) >> 2] = $20;
|
|
void_20emscripten__internal__writeGenericWireType_int__28emscripten__internal__GenericWireType___2c_20int_29(HEAP32[($6 + 52 | 0) >> 2] | 0 | 0, emscripten__internal__BindingType_int_2c_20void___toWireType_28int_20const__29(HEAP32[($6 + 48 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$25 = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 60 | 0) >> 2] = HEAP32[($6 + 52 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 56 | 0) >> 2] = $25;
|
|
void_20emscripten__internal__writeGenericWireType_int__28emscripten__internal__GenericWireType___2c_20int_29(HEAP32[($6 + 60 | 0) >> 2] | 0 | 0, emscripten__internal__BindingType_int_2c_20void___toWireType_28int_20const__29(HEAP32[($6 + 56 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
emscripten__internal__writeGenericWireTypes_28emscripten__internal__GenericWireType___29(HEAP32[($6 + 60 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $6 + 64 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WireTypePack_int_20const__2c_20int_20const__2c_20int____operator_20void_20const__28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = std____2__array_emscripten__internal__GenericWireType_2c_203ul___data_5babi_v160004_5d_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void_2c_20int_20const__2c_20int_20const__2c_20int____getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void_2c_20int_20const__2c_20int_20const__2c_20int____getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_20const__2c_20int_20const__2c_20int_____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function std____2__array_emscripten__internal__GenericWireType_2c_203ul___data_5babi_v160004_5d_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__BindingType_int_2c_20void___toWireType_28int_20const__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[(HEAP32[($3 + 12 | 0) >> 2] | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function void_20emscripten__internal__writeGenericWireType_int__28emscripten__internal__GenericWireType___2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $8 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[(HEAP32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
$8 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$8 >> 2] = (HEAP32[$8 >> 2] | 0) + 8 | 0;
|
|
return;
|
|
}
|
|
|
|
function std____2__array_emscripten__internal__GenericWireType_2c_203ul___data_5babi_v160004_5d_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_20const__2c_20int_20const__2c_20int_____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_20const__2c_20int_20const__2c_20int_____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__BindingType_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___2c_20void___fromWireType_28emscripten__internal__BindingType_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___2c_20void____unnamed___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____basic_string_5babi_v160004_5d_28char_20const__2c_20unsigned_20long_29($0 | 0, (HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0 | 0, HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__BindingType_emscripten__val_2c_20void___toWireType_28emscripten__val_20const__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $7 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
_emval_incref(HEAP32[(HEAP32[($3 + 12 | 0) >> 2] | 0) >> 2] | 0 | 0);
|
|
$7 = HEAP32[(HEAP32[($3 + 12 | 0) >> 2] | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_emscripten__val_2c_20std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const_____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_emscripten__val_2c_20std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const_____get_28_29__types | 0;
|
|
}
|
|
|
|
function std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____basic_string_5babi_v160004_5d_28char_20const__2c_20unsigned_20long_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $15 = 0, $23 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 16 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $6;
|
|
std____2____compressed_pair_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_20std____2__allocator_char______compressed_pair_5babi_v160004_5d_std____2____default_init_tag_2c_20std____2____default_init_tag__28std____2____default_init_tag___2c_20std____2____default_init_tag___29($6 | 0, $5 + 15 | 0 | 0, $5 + 14 | 0 | 0) | 0;
|
|
$15 = 1;
|
|
label$1 : {
|
|
if (!(HEAP32[($5 + 16 | 0) >> 2] | 0)) {
|
|
break label$1
|
|
}
|
|
$15 = (HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) != (0 | 0);
|
|
}
|
|
std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______init_28char_20const__2c_20unsigned_20long_29($6 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0, HEAP32[($5 + 16 | 0) >> 2] | 0 | 0);
|
|
void_20std____2____debug_db_insert_c_5babi_v160004_5d_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____28std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____29($6 | 0);
|
|
$23 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return $23 | 0;
|
|
}
|
|
|
|
function std____2____compressed_pair_elem_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_200_2c_20false_____compressed_pair_elem_5babi_v160004_5d_28std____2____default_init_tag_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function std____2____compressed_pair_elem_std____2__allocator_char__2c_201_2c_20true_____compressed_pair_elem_5babi_v160004_5d_28std____2____default_init_tag_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
std____2__allocator_char___allocator_5babi_v160004_5d_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function std____2__allocator_char___allocator_5babi_v160004_5d_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
std____2____non_trivial_if_true_2c_20std____2__allocator_char______non_trivial_if_5babi_v160004_5d_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function std____2____non_trivial_if_true_2c_20std____2__allocator_char______non_trivial_if_5babi_v160004_5d_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____data_5babi_v160004_5d_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = char_20const__20std____2____to_address_5babi_v160004_5d_char_20const__28char_20const__29(std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______get_pointer_5babi_v160004_5d_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______get_pointer_5babi_v160004_5d_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $9 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______is_long_5babi_v160004_5d_28_29_20const($4 | 0) | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______get_long_pointer_5babi_v160004_5d_28_29_20const($4 | 0) | 0;
|
|
break label$1;
|
|
}
|
|
$9 = std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______get_short_pointer_5babi_v160004_5d_28_29_20const($4 | 0) | 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $9 | 0;
|
|
}
|
|
|
|
function char_20const__20std____2____to_address_5babi_v160004_5d_char_20const__28char_20const__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______is_long_5babi_v160004_5d_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $16 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$16 = (((HEAPU8[((std____2____compressed_pair_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_20std____2__allocator_char____first_5babi_v160004_5d_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0) + 11 | 0) >> 0] | 0) >>> 7 | 0) & 255 | 0 | 0) != (0 & 255 | 0 | 0) & 1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $16 | 0;
|
|
}
|
|
|
|
function std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______get_long_pointer_5babi_v160004_5d_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = HEAP32[(std____2____compressed_pair_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_20std____2__allocator_char____first_5babi_v160004_5d_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______get_short_pointer_5babi_v160004_5d_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = std____2__pointer_traits_char_20const____pointer_to_5babi_v160004_5d_28char_20const__29(std____2____compressed_pair_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_20std____2__allocator_char____first_5babi_v160004_5d_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function std____2____compressed_pair_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_20std____2__allocator_char____first_5babi_v160004_5d_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = std____2____compressed_pair_elem_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_200_2c_20false_____get_5babi_v160004_5d_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function std____2__pointer_traits_char_20const____pointer_to_5babi_v160004_5d_28char_20const__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function std____2____compressed_pair_elem_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_200_2c_20false_____get_5babi_v160004_5d_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function void_20const__20emscripten__internal__getLightTypeID_btControllerHitReport__28btControllerHitReport_20const__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[(HEAP32[($3 + 12 | 0) >> 2] | 0) >> 2] | 0) + -4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__LightTypeID_btControllerHitReport___get_28_29() {
|
|
return GOT_data_internal_typeinfo_20for_20btControllerHitReport | 0;
|
|
}
|
|
|
|
function emscripten__internal__LightTypeID_btControllerHitReport____get_28_29() {
|
|
return GOT_data_internal_typeinfo_20for_20btControllerHitReport_ | 0;
|
|
}
|
|
|
|
function emscripten__internal__LightTypeID_btControllerHitReport_20const____get_28_29() {
|
|
return GOT_data_internal_typeinfo_20for_20btControllerHitReport_20const_ | 0;
|
|
}
|
|
|
|
function emscripten__internal__MethodInvoker_void_20_28btControllerHitReport____29_28int_2c_20int_29_2c_20void_2c_20btControllerHitReport__2c_20int_2c_20int___invoke_28void_20_28btControllerHitReport____20const__29_28int_2c_20int_29_2c_20btControllerHitReport__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $9 = 0, $10 = 0, $11 = 0, $14 = 0, $20 = 0, $8 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$8 = emscripten__internal__BindingType_btControllerHitReport__2c_20void___fromWireType_28btControllerHitReport__29(HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
$9 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
$10 = HEAP32[($9 + 4 | 0) >> 2] | 0;
|
|
$11 = HEAP32[$9 >> 2] | 0;
|
|
$14 = $8 + ($10 >> 1 | 0) | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!($10 & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$20 = HEAP32[((HEAP32[$14 >> 2] | 0) + $11 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
$20 = $11;
|
|
}
|
|
FUNCTION_TABLE[$20 | 0]($14, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($6 + 4 | 0) >> 2] | 0 | 0) | 0, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[$6 >> 2] | 0 | 0) | 0);
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void_2c_20emscripten__internal__AllowedRawPointer_btControllerHitReport__2c_20int_2c_20int___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 4 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void_2c_20emscripten__internal__AllowedRawPointer_btControllerHitReport__2c_20int_2c_20int___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20emscripten__internal__AllowedRawPointer_btControllerHitReport__2c_20int_2c_20int____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function void_20_28btControllerHitReport____emscripten__internal__getContext_void_20_28btControllerHitReport____29_28int_2c_20int_29__28void_20_28btControllerHitReport____20const__29_28int_2c_20int_29_29_29_28int_2c_20int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0, $6 = 0, $7 = 0, $9 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = operator_20new_28unsigned_20long_29(8 | 0) | 0;
|
|
$6 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$7 = HEAP32[$6 >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = $7;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $9 | 0;
|
|
}
|
|
|
|
function emscripten__internal__BindingType_btControllerHitReport__2c_20void___fromWireType_28btControllerHitReport__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20emscripten__internal__AllowedRawPointer_btControllerHitReport__2c_20int_2c_20int____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20emscripten__internal__AllowedRawPointer_btControllerHitReport__2c_20int_2c_20int____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__class__btControllerHitReport_2c_20emscripten__internal__NoBaseClass__20const__20emscripten__class__btControllerHitReport_2c_20emscripten__internal__NoBaseClass___allow_subclass_btControllerHitReportWrapper__28char_20const__2c_20emscripten__constructor___29_20const___lambda__28btControllerHitReportWrapper__29____invoke_28btControllerHitReportWrapper__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
emscripten__class__btControllerHitReport_2c_20emscripten__internal__NoBaseClass__20const__20emscripten__class__btControllerHitReport_2c_20emscripten__internal__NoBaseClass___allow_subclass_btControllerHitReportWrapper__28char_20const__2c_20emscripten__constructor___29_20const___lambda__28btControllerHitReportWrapper__29__operator_28_29_28btControllerHitReportWrapper__29_20const($3 + 11 | 0 | 0, HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btControllerHitReportWrapper__btControllerHitReportWrapper___28emscripten__val___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
emscripten__wrapper_btControllerHitReport___wrapper___28emscripten__val___29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$5 >> 2] = GOT_data_internal_vtable_20for_20btControllerHitReportWrapper + 8 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function void_20const__20emscripten__internal__getLightTypeID_btControllerHitReportWrapper__28btControllerHitReportWrapper_20const__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[(HEAP32[($3 + 12 | 0) >> 2] | 0) >> 2] | 0) + -4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btControllerHitReport__20emscripten__base_btControllerHitReport___convertPointer_btControllerHitReportWrapper_2c_20btControllerHitReport__28btControllerHitReportWrapper__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btControllerHitReportWrapper__20emscripten__base_btControllerHitReport___convertPointer_btControllerHitReport_2c_20btControllerHitReportWrapper__28btControllerHitReport__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__LightTypeID_btControllerHitReportWrapper___get_28_29() {
|
|
return GOT_data_internal_typeinfo_20for_20btControllerHitReportWrapper | 0;
|
|
}
|
|
|
|
function emscripten__internal__LightTypeID_btControllerHitReportWrapper____get_28_29() {
|
|
return GOT_data_internal_typeinfo_20for_20btControllerHitReportWrapper_ | 0;
|
|
}
|
|
|
|
function emscripten__internal__LightTypeID_btControllerHitReportWrapper_20const____get_28_29() {
|
|
return GOT_data_internal_typeinfo_20for_20btControllerHitReportWrapper_20const_ | 0;
|
|
}
|
|
|
|
function emscripten__internal__FunctionInvoker_void_20_28__29_28btControllerHitReportWrapper__29_2c_20void_2c_20btControllerHitReportWrapper____invoke_28void_20_28___29_28btControllerHitReportWrapper__29_2c_20btControllerHitReportWrapper__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$6 = HEAP32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[$6 | 0](emscripten__internal__GenericBindingType_btControllerHitReportWrapper___fromWireType_28btControllerHitReportWrapper__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void_2c_20btControllerHitReportWrapper____getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 2 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void_2c_20btControllerHitReportWrapper____getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20btControllerHitReportWrapper_____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function void_20_28__emscripten__internal__getContext_void_20_28__29_28btControllerHitReportWrapper__29__28void_20_28__20const__29_28btControllerHitReportWrapper__29_29_29_28btControllerHitReportWrapper__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0, $8 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = operator_20new_28unsigned_20long_29(4 | 0) | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[(HEAP32[($3 + 12 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $5;
|
|
$8 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function emscripten__internal__GenericBindingType_btControllerHitReportWrapper___fromWireType_28btControllerHitReportWrapper__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20btControllerHitReportWrapper_____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20btControllerHitReportWrapper_____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__class__btControllerHitReport_2c_20emscripten__internal__NoBaseClass__20const__20emscripten__class__btControllerHitReport_2c_20emscripten__internal__NoBaseClass___allow_subclass_btControllerHitReportWrapper__28char_20const__2c_20emscripten__constructor___29_20const___lambda__28btControllerHitReportWrapper__29__operator_28_29_28btControllerHitReportWrapper__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
emscripten__internal__WrapperBase__setNotifyJSOnDestruction_28bool_29((HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0 | 0, 1 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__BindingType_btControllerHitReportWrapper__2c_20void___toWireType_28btControllerHitReportWrapper__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_emscripten__internal__AllowedRawPointer_btControllerHitReportWrapper__2c_20emscripten__val______get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_emscripten__internal__AllowedRawPointer_btControllerHitReportWrapper__2c_20emscripten__val______get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__wrapper_btControllerHitReport___wrapper___28emscripten__val___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = 0;
|
|
btControllerHitReport__btControllerHitReport_28_29($5 | 0) | 0;
|
|
emscripten__internal__WrapperBase__WrapperBase_28_29($5 + 4 | 0 | 0) | 0;
|
|
HEAP32[$5 >> 2] = GOT_data_internal_vtable_20for_20emscripten__wrapper_btControllerHitReport_ + 8 | 0;
|
|
emscripten__val__val_28emscripten__val___29($5 + 8 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btControllerHitReport__btControllerHitReport_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btUserControllerHitReport__btUserControllerHitReport_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = GOT_data_internal_vtable_20for_20btControllerHitReport + 8 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btControllerHitReport__onShapeHit_28btControllerShapeHit_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($5, HEAP32[($4 + 8 | 0) >> 2] | 0, HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btControllerHitReport__onControllerHit_28btControllersHit_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return;
|
|
}
|
|
|
|
function btControllerHitReportWrapper___btControllerHitReportWrapper_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
emscripten__wrapper_btControllerHitReport____wrapper_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__wrapper_btControllerHitReport____wrapper_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $16 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
HEAP32[$4 >> 2] = GOT_data_internal_vtable_20for_20emscripten__wrapper_btControllerHitReport_ + 8 | 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($4 + 4 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
void_20emscripten__wrapper_btControllerHitReport___call_void__28char_20const__29_20const($4 | 0, GOT_data_internal___memory_base + 68623 | 0 | 0);
|
|
}
|
|
emscripten__val___val_28_29($4 + 8 | 0 | 0) | 0;
|
|
btControllerHitReport___btControllerHitReport_28_29($4 | 0) | 0;
|
|
$16 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $16 | 0;
|
|
}
|
|
|
|
function btControllerHitReportWrapper___btControllerHitReportWrapper_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btControllerHitReportWrapper___btControllerHitReportWrapper_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btControllerHitReportWrapper__onShapeHitExt_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
void_20emscripten__wrapper_btControllerHitReport___call_void_2c_20int_20const__2c_20int_20const___28char_20const__2c_20int_20const__2c_20int_20const__29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0, GOT_data_internal___memory_base + 67323 | 0 | 0, $5 + 8 | 0 | 0, $5 + 4 | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__wrapper_btControllerHitReport___call_void_2c_20int_20const__2c_20int_20const___28char_20const__2c_20int_20const__2c_20int_20const__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
void_20emscripten__val__call_void_2c_20int_20const__2c_20int_20const___28char_20const__2c_20int_20const__2c_20int_20const__29_20const((HEAP32[($6 + 12 | 0) >> 2] | 0) + 8 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0, HEAP32[($6 + 4 | 0) >> 2] | 0 | 0, HEAP32[$6 >> 2] | 0 | 0);
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btUserControllerHitReport__btUserControllerHitReport_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = GOT_data_internal_vtable_20for_20btUserControllerHitReport + 8 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function void_20emscripten__wrapper_btControllerHitReport___call_void__28char_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
void_20emscripten__val__call_void__28char_20const__29_20const((HEAP32[($4 + 12 | 0) >> 2] | 0) + 8 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btControllerHitReport___btControllerHitReport_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btUserControllerHitReport___btUserControllerHitReport_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__wrapper_btControllerHitReport____wrapper_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btUserControllerHitReport___btUserControllerHitReport_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btControllerHitReport___btControllerHitReport_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btUserControllerHitReport___btUserControllerHitReport_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function void_20emscripten__val__call_void_2c_20int_20const__2c_20int_20const___28char_20const__2c_20int_20const__2c_20int_20const__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
emscripten__internal__MethodCaller_void_2c_20int_20const__2c_20int_20const____call_28emscripten___EM_VAL__2c_20char_20const__2c_20int_20const__2c_20int_20const__29(HEAP32[(HEAP32[($6 + 12 | 0) >> 2] | 0) >> 2] | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0, HEAP32[($6 + 4 | 0) >> 2] | 0 | 0, HEAP32[$6 >> 2] | 0 | 0);
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__MethodCaller_void_2c_20int_20const__2c_20int_20const____call_28emscripten___EM_VAL__2c_20char_20const__2c_20int_20const__2c_20int_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 32 | 0) >> 2] = $3;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = emscripten__internal__Signature_void_2c_20int_20const__2c_20int_20const____get_method_caller_28_29() | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
emscripten__internal__WireTypePack_int_20const__2c_20int_20const____WireTypePack_28int_20const__2c_20int_20const__29($6 + 8 | 0 | 0, HEAP32[($6 + 36 | 0) >> 2] | 0 | 0, HEAP32[($6 + 32 | 0) >> 2] | 0 | 0) | 0;
|
|
_emval_call_void_method(HEAP32[($6 + 28 | 0) >> 2] | 0 | 0, HEAP32[($6 + 44 | 0) >> 2] | 0 | 0, HEAP32[($6 + 40 | 0) >> 2] | 0 | 0, emscripten__internal__WireTypePack_int_20const__2c_20int_20const____operator_20void_20const__28_29_20const($6 + 8 | 0 | 0) | 0 | 0);
|
|
__stack_pointer = $6 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__Signature_void_2c_20int_20const__2c_20int_20const____get_method_caller_28_29() {
|
|
var $2 = 0, $26 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$2 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $2;
|
|
label$1 : {
|
|
if (!((((HEAPU8[GOT_data_internal_guard_20variable_20for_20emscripten__internal__Signature_void_2c_20int_20const__2c_20int_20const____get_method_caller_28_29__mc >> 0] | 0) & 1 | 0) & 255 | 0 | 0) == (0 & 255 | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = GOT_data_internal_emscripten__internal__Signature_void_2c_20int_20const__2c_20int_20const____get_method_caller_28_29__mc, wasm2js_i32$1 = _emval_get_method_caller(emscripten__internal__WithPolicies____ArgTypeList_void_2c_20int_20const__2c_20int_20const____getCount_28_29_20const($2 + 15 | 0 | 0) | 0 | 0, emscripten__internal__WithPolicies____ArgTypeList_void_2c_20int_20const__2c_20int_20const____getTypes_28_29_20const($2 + 15 | 0 | 0) | 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP8[GOT_data_internal_guard_20variable_20for_20emscripten__internal__Signature_void_2c_20int_20const__2c_20int_20const____get_method_caller_28_29__mc >> 0] = 1;
|
|
}
|
|
$26 = HEAP32[GOT_data_internal_emscripten__internal__Signature_void_2c_20int_20const__2c_20int_20const____get_method_caller_28_29__mc >> 2] | 0;
|
|
__stack_pointer = $2 + 16 | 0;
|
|
return $26 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WireTypePack_int_20const__2c_20int_20const____WireTypePack_28int_20const__2c_20int_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $8 = 0, $9 = 0, $17 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 16 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = std____2__array_emscripten__internal__GenericWireType_2c_202ul___data_5babi_v160004_5d_28_29($6 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$8 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
$9 = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 36 | 0) >> 2] = $5 + 12 | 0;
|
|
HEAP32[($5 + 32 | 0) >> 2] = $8;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $9;
|
|
void_20emscripten__internal__writeGenericWireType_int__28emscripten__internal__GenericWireType___2c_20int_29(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, emscripten__internal__BindingType_int_2c_20void___toWireType_28int_20const__29(HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$17 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 44 | 0) >> 2] = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $17;
|
|
void_20emscripten__internal__writeGenericWireType_int__28emscripten__internal__GenericWireType___2c_20int_29(HEAP32[($5 + 44 | 0) >> 2] | 0 | 0, emscripten__internal__BindingType_int_2c_20void___toWireType_28int_20const__29(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
emscripten__internal__writeGenericWireTypes_28emscripten__internal__GenericWireType___29(HEAP32[($5 + 44 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WireTypePack_int_20const__2c_20int_20const____operator_20void_20const__28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = std____2__array_emscripten__internal__GenericWireType_2c_202ul___data_5babi_v160004_5d_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void_2c_20int_20const__2c_20int_20const____getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 3 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void_2c_20int_20const__2c_20int_20const____getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_20const__2c_20int_20const_____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function std____2__array_emscripten__internal__GenericWireType_2c_202ul___data_5babi_v160004_5d_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function std____2__array_emscripten__internal__GenericWireType_2c_202ul___data_5babi_v160004_5d_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_20const__2c_20int_20const_____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_20const__2c_20int_20const_____get_28_29__types | 0;
|
|
}
|
|
|
|
function void_20const__20emscripten__internal__getLightTypeID_cc__ccMotionState__28cc__ccMotionState_20const__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[(HEAP32[($3 + 12 | 0) >> 2] | 0) >> 2] | 0) + -4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__LightTypeID_cc__ccMotionState___get_28_29() {
|
|
return GOT_data_internal_typeinfo_20for_20cc__ccMotionState | 0;
|
|
}
|
|
|
|
function emscripten__internal__LightTypeID_cc__ccMotionState____get_28_29() {
|
|
return GOT_data_internal_typeinfo_20for_20cc__ccMotionState_ | 0;
|
|
}
|
|
|
|
function emscripten__internal__LightTypeID_cc__ccMotionState_20const____get_28_29() {
|
|
return GOT_data_internal_typeinfo_20for_20cc__ccMotionState_20const_ | 0;
|
|
}
|
|
|
|
function emscripten__internal__MethodInvoker_void_20_28cc__ccMotionState____29_28int_29_2c_20void_2c_20cc__ccMotionState__2c_20int___invoke_28void_20_28cc__ccMotionState____20const__29_28int_29_2c_20cc__ccMotionState__2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $8 = 0, $9 = 0, $10 = 0, $13 = 0, $19 = 0, $7 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$7 = emscripten__internal__BindingType_cc__ccMotionState__2c_20void___fromWireType_28cc__ccMotionState__29(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
$8 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
$9 = HEAP32[($8 + 4 | 0) >> 2] | 0;
|
|
$10 = HEAP32[$8 >> 2] | 0;
|
|
$13 = $7 + ($9 >> 1 | 0) | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!($9 & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$19 = HEAP32[((HEAP32[$13 >> 2] | 0) + $10 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
$19 = $10;
|
|
}
|
|
FUNCTION_TABLE[$19 | 0]($13, emscripten__internal__BindingType_int_2c_20void___fromWireType_28int_29(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void_2c_20emscripten__internal__AllowedRawPointer_cc__ccMotionState__2c_20int___getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 3 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void_2c_20emscripten__internal__AllowedRawPointer_cc__ccMotionState__2c_20int___getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20emscripten__internal__AllowedRawPointer_cc__ccMotionState__2c_20int____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function void_20_28cc__ccMotionState____emscripten__internal__getContext_void_20_28cc__ccMotionState____29_28int_29__28void_20_28cc__ccMotionState____20const__29_28int_29_29_29_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0, $6 = 0, $7 = 0, $9 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = operator_20new_28unsigned_20long_29(8 | 0) | 0;
|
|
$6 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$7 = HEAP32[$6 >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = $7;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $9 | 0;
|
|
}
|
|
|
|
function emscripten__internal__BindingType_cc__ccMotionState__2c_20void___fromWireType_28cc__ccMotionState__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20emscripten__internal__AllowedRawPointer_cc__ccMotionState__2c_20int____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20emscripten__internal__AllowedRawPointer_cc__ccMotionState__2c_20int____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__class__cc__ccMotionState_2c_20emscripten__internal__NoBaseClass__20const__20emscripten__class__cc__ccMotionState_2c_20emscripten__internal__NoBaseClass___allow_subclass_ccMotionStateWrapper__28char_20const__2c_20emscripten__constructor___29_20const___lambda__28ccMotionStateWrapper__29____invoke_28ccMotionStateWrapper__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
emscripten__class__cc__ccMotionState_2c_20emscripten__internal__NoBaseClass__20const__20emscripten__class__cc__ccMotionState_2c_20emscripten__internal__NoBaseClass___allow_subclass_ccMotionStateWrapper__28char_20const__2c_20emscripten__constructor___29_20const___lambda__28ccMotionStateWrapper__29__operator_28_29_28ccMotionStateWrapper__29_20const($3 + 11 | 0 | 0, HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function ccMotionStateWrapper__ccMotionStateWrapper___28emscripten__val___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
emscripten__wrapper_cc__ccMotionState___wrapper___28emscripten__val___29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$5 >> 2] = GOT_data_internal_vtable_20for_20ccMotionStateWrapper + 8 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function void_20const__20emscripten__internal__getLightTypeID_ccMotionStateWrapper__28ccMotionStateWrapper_20const__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[(HEAP32[($3 + 12 | 0) >> 2] | 0) >> 2] | 0) + -4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function cc__ccMotionState__20emscripten__base_cc__ccMotionState___convertPointer_ccMotionStateWrapper_2c_20cc__ccMotionState__28ccMotionStateWrapper__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function ccMotionStateWrapper__20emscripten__base_cc__ccMotionState___convertPointer_cc__ccMotionState_2c_20ccMotionStateWrapper__28cc__ccMotionState__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__LightTypeID_ccMotionStateWrapper___get_28_29() {
|
|
return GOT_data_internal_typeinfo_20for_20ccMotionStateWrapper | 0;
|
|
}
|
|
|
|
function emscripten__internal__LightTypeID_ccMotionStateWrapper____get_28_29() {
|
|
return GOT_data_internal_typeinfo_20for_20ccMotionStateWrapper_ | 0;
|
|
}
|
|
|
|
function emscripten__internal__LightTypeID_ccMotionStateWrapper_20const____get_28_29() {
|
|
return GOT_data_internal_typeinfo_20for_20ccMotionStateWrapper_20const_ | 0;
|
|
}
|
|
|
|
function emscripten__internal__FunctionInvoker_void_20_28__29_28ccMotionStateWrapper__29_2c_20void_2c_20ccMotionStateWrapper____invoke_28void_20_28___29_28ccMotionStateWrapper__29_2c_20ccMotionStateWrapper__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$6 = HEAP32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[$6 | 0](emscripten__internal__GenericBindingType_ccMotionStateWrapper___fromWireType_28ccMotionStateWrapper__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void_2c_20ccMotionStateWrapper____getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 2 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void_2c_20ccMotionStateWrapper____getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20ccMotionStateWrapper_____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function void_20_28__emscripten__internal__getContext_void_20_28__29_28ccMotionStateWrapper__29__28void_20_28__20const__29_28ccMotionStateWrapper__29_29_29_28ccMotionStateWrapper__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0, $8 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = operator_20new_28unsigned_20long_29(4 | 0) | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[(HEAP32[($3 + 12 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $5;
|
|
$8 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function emscripten__internal__GenericBindingType_ccMotionStateWrapper___fromWireType_28ccMotionStateWrapper__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20ccMotionStateWrapper_____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20ccMotionStateWrapper_____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__class__cc__ccMotionState_2c_20emscripten__internal__NoBaseClass__20const__20emscripten__class__cc__ccMotionState_2c_20emscripten__internal__NoBaseClass___allow_subclass_ccMotionStateWrapper__28char_20const__2c_20emscripten__constructor___29_20const___lambda__28ccMotionStateWrapper__29__operator_28_29_28ccMotionStateWrapper__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
emscripten__internal__WrapperBase__setNotifyJSOnDestruction_28bool_29((HEAP32[($4 + 8 | 0) >> 2] | 0) + 72 | 0 | 0, 1 & 1 | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__BindingType_ccMotionStateWrapper__2c_20void___toWireType_28ccMotionStateWrapper__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_emscripten__internal__AllowedRawPointer_ccMotionStateWrapper__2c_20emscripten__val______get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_emscripten__internal__AllowedRawPointer_ccMotionStateWrapper__2c_20emscripten__val______get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__wrapper_cc__ccMotionState___wrapper___28emscripten__val___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
cc__ccMotionState__ccMotionState_28_29($5 | 0) | 0;
|
|
emscripten__internal__WrapperBase__WrapperBase_28_29($5 + 72 | 0 | 0) | 0;
|
|
HEAP32[$5 >> 2] = GOT_data_internal_vtable_20for_20emscripten__wrapper_cc__ccMotionState_ + 8 | 0;
|
|
emscripten__val__val_28emscripten__val___29($5 + 76 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function cc__ccMotionState__ccMotionState_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btMotionState__btMotionState_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = GOT_data_internal_vtable_20for_20cc__ccMotionState + 8 | 0;
|
|
btTransform__btTransform_28_29($4 + 8 | 0 | 0) | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = -1;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function ccMotionStateWrapper___ccMotionStateWrapper_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
emscripten__wrapper_cc__ccMotionState____wrapper_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__wrapper_cc__ccMotionState____wrapper_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $16 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
HEAP32[$4 >> 2] = GOT_data_internal_vtable_20for_20emscripten__wrapper_cc__ccMotionState_ + 8 | 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($4 + 72 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
void_20emscripten__wrapper_cc__ccMotionState___call_void__28char_20const__29_20const($4 | 0, GOT_data_internal___memory_base + 68623 | 0 | 0);
|
|
}
|
|
emscripten__val___val_28_29($4 + 76 | 0 | 0) | 0;
|
|
cc__ccMotionState___ccMotionState_28_29($4 | 0) | 0;
|
|
$16 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $16 | 0;
|
|
}
|
|
|
|
function ccMotionStateWrapper___ccMotionStateWrapper_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
ccMotionStateWrapper___ccMotionStateWrapper_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function cc__ccMotionState__getWorldTransform_28btTransform__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btTransform__operator__28btTransform_20const__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, (HEAP32[($4 + 12 | 0) >> 2] | 0) + 8 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function cc__ccMotionState__setWorldTransform_28btTransform_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btTransform__operator__28btTransform_20const__29($5 + 8 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($5, HEAP32[($5 + 4 | 0) >> 2] | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function ccMotionStateWrapper__syncPhysicsToGraphics_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
void_20emscripten__wrapper_cc__ccMotionState___call_void_2c_20int_20const___28char_20const__2c_20int_20const__29_20const(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, GOT_data_internal___memory_base + 70462 | 0 | 0, $4 + 8 | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__wrapper_cc__ccMotionState___call_void_2c_20int_20const___28char_20const__2c_20int_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
void_20emscripten__val__call_void_2c_20int_20const___28char_20const__2c_20int_20const__29_20const((HEAP32[($5 + 12 | 0) >> 2] | 0) + 76 | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20emscripten__wrapper_cc__ccMotionState___call_void__28char_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
void_20emscripten__val__call_void__28char_20const__29_20const((HEAP32[($4 + 12 | 0) >> 2] | 0) + 76 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function cc__ccMotionState___ccMotionState_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btMotionState___btMotionState_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function emscripten__wrapper_cc__ccMotionState____wrapper_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function cc__ccMotionState___ccMotionState_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function void_20emscripten__val__call_void_2c_20int_20const___28char_20const__2c_20int_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
emscripten__internal__MethodCaller_void_2c_20int_20const____call_28emscripten___EM_VAL__2c_20char_20const__2c_20int_20const__29(HEAP32[(HEAP32[($5 + 12 | 0) >> 2] | 0) >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__MethodCaller_void_2c_20int_20const____call_28emscripten___EM_VAL__2c_20char_20const__2c_20int_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = emscripten__internal__Signature_void_2c_20int_20const____get_method_caller_28_29() | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
emscripten__internal__WireTypePack_int_20const____WireTypePack_28int_20const__29($5 + 8 | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0;
|
|
_emval_call_void_method(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0, HEAP32[($5 + 28 | 0) >> 2] | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0, emscripten__internal__WireTypePack_int_20const____operator_20void_20const__28_29_20const($5 + 8 | 0 | 0) | 0 | 0);
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function emscripten__internal__Signature_void_2c_20int_20const____get_method_caller_28_29() {
|
|
var $2 = 0, $26 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$2 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $2;
|
|
label$1 : {
|
|
if (!((((HEAPU8[GOT_data_internal_guard_20variable_20for_20emscripten__internal__Signature_void_2c_20int_20const____get_method_caller_28_29__mc >> 0] | 0) & 1 | 0) & 255 | 0 | 0) == (0 & 255 | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = GOT_data_internal_emscripten__internal__Signature_void_2c_20int_20const____get_method_caller_28_29__mc, wasm2js_i32$1 = _emval_get_method_caller(emscripten__internal__WithPolicies____ArgTypeList_void_2c_20int_20const____getCount_28_29_20const($2 + 15 | 0 | 0) | 0 | 0, emscripten__internal__WithPolicies____ArgTypeList_void_2c_20int_20const____getTypes_28_29_20const($2 + 15 | 0 | 0) | 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP8[GOT_data_internal_guard_20variable_20for_20emscripten__internal__Signature_void_2c_20int_20const____get_method_caller_28_29__mc >> 0] = 1;
|
|
}
|
|
$26 = HEAP32[GOT_data_internal_emscripten__internal__Signature_void_2c_20int_20const____get_method_caller_28_29__mc >> 2] | 0;
|
|
__stack_pointer = $2 + 16 | 0;
|
|
return $26 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WireTypePack_int_20const____WireTypePack_28int_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $7 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = std____2__array_emscripten__internal__GenericWireType_2c_201ul___data_5babi_v160004_5d_28_29($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$7 = HEAP32[($4 + 16 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $4 + 12 | 0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $7;
|
|
void_20emscripten__internal__writeGenericWireType_int__28emscripten__internal__GenericWireType___2c_20int_29(HEAP32[($4 + 28 | 0) >> 2] | 0 | 0, emscripten__internal__BindingType_int_2c_20void___toWireType_28int_20const__29(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
emscripten__internal__writeGenericWireTypes_28emscripten__internal__GenericWireType___29(HEAP32[($4 + 28 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WireTypePack_int_20const____operator_20void_20const__28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = std____2__array_emscripten__internal__GenericWireType_2c_201ul___data_5babi_v160004_5d_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void_2c_20int_20const____getCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 2 | 0;
|
|
}
|
|
|
|
function emscripten__internal__WithPolicies____ArgTypeList_void_2c_20int_20const____getTypes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_20const_____get_28_29() | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function std____2__array_emscripten__internal__GenericWireType_2c_201ul___data_5babi_v160004_5d_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function std____2__array_emscripten__internal__GenericWireType_2c_201ul___data_5babi_v160004_5d_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_20const_____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_20const_____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__BindingType_float_2c_20void___toWireType_28float_20const__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[(HEAP32[($3 + 12 | 0) >> 2] | 0) >> 2]));
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_float_2c_20int____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_float_2c_20int____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__BindingType_float_2c_20void___fromWireType_28float_29($0) {
|
|
$0 = Math_fround($0);
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAPF32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[($3 + 12 | 0) >> 2]));
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float_2c_20float_2c_20float____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float_2c_20float_2c_20float____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20float_2c_20float____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20float_2c_20float____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float_2c_20float_2c_20float_2c_20float____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float_2c_20float_2c_20float_2c_20float____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20int____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20int____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20int____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20int____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20int_2c_20int_2c_20int____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20int_2c_20int_2c_20int____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__BindingType_bool_2c_20void___fromWireType_28bool_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP8[($3 + 15 | 0) >> 0] = $0;
|
|
return (HEAPU8[($3 + 15 | 0) >> 0] | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20bool____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20bool____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20float____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20float____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20float_2c_20float____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20float_2c_20float____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20bool____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20bool____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20float____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20float____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__BindingType_bool_2c_20void___toWireType_28bool_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP8[($3 + 15 | 0) >> 0] = $0;
|
|
return (HEAPU8[($3 + 15 | 0) >> 0] | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_bool_2c_20int____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_bool_2c_20int____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20int____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20int____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20int_2c_20int____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20int_2c_20int____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20float_2c_20int____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20float_2c_20int____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float_2c_20float____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float_2c_20float____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20float____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20float____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20bool____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20bool____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20bool_2c_20bool____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20bool_2c_20bool____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20float_2c_20float_2c_20float____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20float_2c_20float_2c_20float____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20int_2c_20bool____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20int_2c_20bool____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float_2c_20int____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float_2c_20int____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__BindingType_unsigned_20int_2c_20void___fromWireType_28unsigned_20int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20int_2c_20int____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20int_2c_20int____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20int_2c_20float____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20float_2c_20int_2c_20float____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_void_2c_20int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20int_2c_20float_2c_20float____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20int_2c_20int_2c_20float_2c_20float____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float____get_28_29__types | 0;
|
|
}
|
|
|
|
function emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float____get_28_29() {
|
|
return GOT_data_internal_emscripten__internal__ArgArrayGetter_emscripten__internal__TypeList_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float____get_28_29__types | 0;
|
|
}
|
|
|
|
function std____2____constexpr_strlen_5babi_v160004_5d_28char_20const__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = strlen(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_BulletWebBindings_cpp() {
|
|
__cxx_global_var_init();
|
|
__cxx_global_var_init_1();
|
|
__cxx_global_var_init_12();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_2() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(113920 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocDefault_28unsigned_20long_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $32 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[(0 + 112816 | 0) >> 2] | 0 | 0](((HEAP32[($4 + 12 | 0) >> 2] | 0) + 4 | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) - 1 | 0) | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[$4 >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = char__20btAlignPointer_char__28char__2c_20unsigned_20long_29((HEAP32[$4 >> 2] | 0) + 4 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[((HEAP32[($4 + 4 | 0) >> 2] | 0) + -4 | 0) >> 2] = HEAP32[$4 >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[$4 >> 2] | 0;
|
|
}
|
|
$32 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btAlignedFreeDefault_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
label$1 : {
|
|
if (!((HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + -4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(0 + 112820 | 0) >> 2] | 0 | 0](HEAP32[($3 + 8 | 0) >> 2] | 0);
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function char__20btAlignPointer_char__28char__2c_20unsigned_20long_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[$4 >> 2] = ((HEAP32[($4 + 8 | 0) >> 2] | 0) - 1 | 0) ^ -1 | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) - 1 | 0) | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) & (HEAP32[$4 >> 2] | 0) | 0;
|
|
return HEAP32[($4 + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAllocDefault_28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = dlmalloc(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btFreeDefault_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
dlfree(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocInternal_28unsigned_20long_2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $15 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[(0 + 113924 | 0) >> 2] = (HEAP32[(0 + 113924 | 0) >> 2] | 0) + 1 | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[(0 + 112808 | 0) >> 2] | 0 | 0](HEAP32[($4 + 12 | 0) >> 2] | 0, HEAP32[($4 + 8 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
$15 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $15 | 0;
|
|
}
|
|
|
|
function btAlignedFreeInternal_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if ((HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
break label$1;
|
|
}
|
|
HEAP32[(0 + 113928 | 0) >> 2] = (HEAP32[(0 + 113928 | 0) >> 2] | 0) + 1 | 0;
|
|
FUNCTION_TABLE[HEAP32[(0 + 112812 | 0) >> 2] | 0 | 0](HEAP32[($3 + 12 | 0) >> 2] | 0);
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btAlignedAllocator_cpp() {
|
|
__cxx_global_var_init_2();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_3() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(113932 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvt__btDbvt_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btDbvt__sStkNN___btAlignedObjectArray_28_29($4 + 20 | 0 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = -1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvt__sStkNN___btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btDbvt__sStkNN_2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btDbvt__sStkNN___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_btDbvt__sStkNN_2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvt__sStkNN___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvt___btDbvt_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btDbvt__clear_28_29($4 | 0);
|
|
btAlignedObjectArray_btDbvt__sStkNN____btAlignedObjectArray_28_29($4 + 20 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btDbvt__clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[$4 >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
recursedeletenode_28btDbvt__2c_20btDbvtNode__29($4 | 0, HEAP32[$4 >> 2] | 0 | 0);
|
|
}
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = -1;
|
|
btAlignedObjectArray_btDbvt__sStkNN___clear_28_29($4 + 20 | 0 | 0);
|
|
HEAP32[($4 + 16 | 0) >> 2] = 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvt__sStkNN____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btDbvt__sStkNN___clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function recursedeletenode_28btDbvt__2c_20btDbvtNode__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
if ((btDbvtNode__isleaf_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
recursedeletenode_28btDbvt__2c_20btDbvtNode__29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0 | 0);
|
|
recursedeletenode_28btDbvt__2c_20btDbvtNode__29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0 | 0);
|
|
}
|
|
label$2 : {
|
|
if (!((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) == (HEAP32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] = 0;
|
|
}
|
|
deletenode_28btDbvt__2c_20btDbvtNode__29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvt__sStkNN___clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btDbvt__sStkNN___destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btDbvt__sStkNN___size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btDbvt__sStkNN___deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btDbvt__sStkNN___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function deletenode_28btDbvt__2c_20btDbvtNode__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0);
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function createnode_28btDbvt__2c_20btDbvtNode__2c_20btDbvtAabbMm_20const__2c_20btDbvtAabbMm_20const__2c_20void__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $15 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = createnode_28btDbvt__2c_20btDbvtNode__2c_20void__29(HEAP32[($7 + 28 | 0) >> 2] | 0 | 0, HEAP32[($7 + 24 | 0) >> 2] | 0 | 0, HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
Merge_28btDbvtAabbMm_20const__2c_20btDbvtAabbMm_20const__2c_20btDbvtAabbMm__29(HEAP32[($7 + 20 | 0) >> 2] | 0 | 0, HEAP32[($7 + 16 | 0) >> 2] | 0 | 0, HEAP32[($7 + 8 | 0) >> 2] | 0 | 0);
|
|
$15 = HEAP32[($7 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return $15 | 0;
|
|
}
|
|
|
|
function btDot_28btVector3_20const__2c_20btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $7 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$7 = Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return Math_fround($7);
|
|
}
|
|
|
|
function createnode_28btDbvt__2c_20btDbvtNode__2c_20btDbvtAabbMm_20const__2c_20void__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $12 = 0, $11 = 0, $14 = 0, $18 = 0, $22 = 0, $61 = 0, $71 = 0, $81 = 0, $91 = 0, $26 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = createnode_28btDbvt__2c_20btDbvtNode__2c_20void__29(HEAP32[($6 + 28 | 0) >> 2] | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$11 = HEAP32[($6 + 20 | 0) >> 2] | 0;
|
|
$12 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $11;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$61 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $12;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $61;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$14 = 24;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $14 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$71 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $12 + $14 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $71;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$18 = 16;
|
|
i64toi32_i32$2 = $11 + $18 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$81 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $12 + $18 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $81;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$22 = 8;
|
|
i64toi32_i32$2 = $11 + $22 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$91 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $12 + $22 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $91;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$26 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return $26 | 0;
|
|
}
|
|
|
|
function btDbvt__optimizeIncremental_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $59 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($4 + 8 | 0) >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
}
|
|
label$2 : {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if (!((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) > (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
label$3 : while (1) {
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[$5 >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 0;
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((btDbvtNode__isinternal_28_29_20const(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[(((sort_28btDbvtNode__2c_20btDbvtNode___29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, $5 | 0) | 0) + 36 | 0) + ((((HEAP32[($5 + 16 | 0) >> 2] | 0) >>> (HEAP32[$4 >> 2] | 0) | 0) & 1 | 0) << 2 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[$4 >> 2] = ((HEAP32[$4 >> 2] | 0) + 1 | 0) & 31 | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
btDbvt__update_28btDbvtNode__2c_20int_29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, -1 | 0);
|
|
HEAP32[($5 + 16 | 0) >> 2] = (HEAP32[($5 + 16 | 0) >> 2] | 0) + 1 | 0;
|
|
$59 = (HEAP32[($4 + 8 | 0) >> 2] | 0) + -1 | 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $59;
|
|
if ($59) {
|
|
continue label$3
|
|
}
|
|
break label$3;
|
|
};
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function sort_28btDbvtNode__2c_20btDbvtNode___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $62 = 0, $111 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 16 | 0) >> 2] = HEAP32[((HEAP32[($4 + 24 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((btDbvtNode__isinternal_28_29_20const(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(87305 | 0, 71457 | 0, 406 | 0, 67455 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((HEAP32[($4 + 16 | 0) >> 2] | 0) >>> 0 > (HEAP32[($4 + 24 | 0) >> 2] | 0) >>> 0 & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = indexof_28btDbvtNode_20const__29(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 1 - (HEAP32[($4 + 12 | 0) >> 2] | 0) | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[(((HEAP32[($4 + 16 | 0) >> 2] | 0) + 36 | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = HEAP32[((HEAP32[($4 + 16 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0;
|
|
label$4 : {
|
|
if ((HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) == (HEAP32[(((HEAP32[($4 + 16 | 0) >> 2] | 0) + 36 | 0) + ((HEAP32[($4 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
__assert_fail(83885 | 0, 71457 | 0, 413 | 0, 67455 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!((HEAP32[$4 >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$62 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = ((HEAP32[$4 >> 2] | 0) + 36 | 0) + ((indexof_28btDbvtNode_20const__29(HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) | 0) << 2 | 0) | 0, wasm2js_i32$1 = $62), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
break label$5;
|
|
}
|
|
HEAP32[(HEAP32[($4 + 20 | 0) >> 2] | 0) >> 2] = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[((HEAP32[($4 + 4 | 0) >> 2] | 0) + 32 | 0) >> 2] = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($4 + 16 | 0) >> 2] | 0) + 32 | 0) >> 2] = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($4 + 24 | 0) >> 2] | 0) + 32 | 0) >> 2] = HEAP32[$4 >> 2] | 0;
|
|
HEAP32[((HEAP32[($4 + 16 | 0) >> 2] | 0) + 36 | 0) >> 2] = HEAP32[((HEAP32[($4 + 24 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($4 + 16 | 0) >> 2] | 0) + 40 | 0) >> 2] = HEAP32[((HEAP32[($4 + 24 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[((HEAP32[($4 + 24 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0) + 32 | 0) >> 2] = HEAP32[($4 + 16 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[((HEAP32[($4 + 24 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0) + 32 | 0) >> 2] = HEAP32[($4 + 16 | 0) >> 2] | 0;
|
|
HEAP32[(((HEAP32[($4 + 24 | 0) >> 2] | 0) + 36 | 0) + ((HEAP32[($4 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[($4 + 16 | 0) >> 2] | 0;
|
|
HEAP32[(((HEAP32[($4 + 24 | 0) >> 2] | 0) + 36 | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
void_20btSwap_btDbvtAabbMm__28btDbvtAabbMm__2c_20btDbvtAabbMm__29(HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, HEAP32[($4 + 24 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 16 | 0) >> 2] | 0;
|
|
break label$2;
|
|
}
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
}
|
|
$111 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return $111 | 0;
|
|
}
|
|
|
|
function btDbvt__update_28btDbvtNode__2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $32 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = removeleaf_28btDbvt__2c_20btDbvtNode__29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = 0;
|
|
label$4 : while (1) {
|
|
$32 = 0;
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
$32 = (HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0 | 0) != (0 | 0);
|
|
}
|
|
label$6 : {
|
|
if (!($32 & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAP32[($5 + 16 | 0) >> 2] = HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
}
|
|
break label$4;
|
|
};
|
|
break label$2;
|
|
}
|
|
HEAP32[($5 + 16 | 0) >> 2] = HEAP32[$6 >> 2] | 0;
|
|
}
|
|
}
|
|
insertleaf_28btDbvt__2c_20btDbvtNode__2c_20btDbvtNode__29($6 | 0, HEAP32[($5 + 16 | 0) >> 2] | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function indexof_28btDbvtNode_20const__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[((HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0 | 0) == (HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function void_20btSwap_btDbvtAabbMm__28btDbvtAabbMm__2c_20btDbvtAabbMm__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, $4 = 0, $5 = 0, $26 = 0, $40 = 0, $25 = 0, $6 = 0, $12 = 0, $18 = 0, $28 = 0, $32 = 0, $36 = 0, $42 = 0, $48 = 0, $54 = 0, $82 = 0, $95 = 0, $108 = 0, $112 = 0, $120 = 0, $130 = 0, $140 = 0, $150 = 0, $156 = 0, $169 = 0, $182 = 0, $195 = 0;
|
|
$4 = __stack_pointer - 48 | 0;
|
|
HEAP32[($4 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 40 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 44 | 0) >> 2] | 0;
|
|
$6 = 24;
|
|
i64toi32_i32$2 = $5 + $6 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$82 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 8 | 0) + $6 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $82;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$12 = 16;
|
|
i64toi32_i32$2 = $5 + $12 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$95 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($4 + 8 | 0) + $12 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $95;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$18 = 8;
|
|
i64toi32_i32$2 = $5 + $18 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$108 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 8 | 0) + $18 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $108;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$112 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[(i64toi32_i32$1 + 8 | 0) >> 2] = $112;
|
|
HEAP32[(i64toi32_i32$1 + 12 | 0) >> 2] = i64toi32_i32$0;
|
|
$25 = HEAP32[(i64toi32_i32$1 + 40 | 0) >> 2] | 0;
|
|
$26 = HEAP32[(i64toi32_i32$1 + 44 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $25;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$120 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $26;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $120;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$28 = 24;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $28 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$130 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $26 + $28 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $130;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$32 = 16;
|
|
i64toi32_i32$2 = $25 + $32 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$140 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $26 + $32 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $140;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$36 = 8;
|
|
i64toi32_i32$2 = $25 + $36 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$150 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $26 + $36 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $150;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$40 = HEAP32[($4 + 40 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 12 | 0) >> 2] | 0;
|
|
$156 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $40;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $156;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$42 = 24;
|
|
i64toi32_i32$2 = (i64toi32_i32$2 + 8 | 0) + $42 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$169 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $40 + $42 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $169;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$48 = 16;
|
|
i64toi32_i32$2 = ($4 + 8 | 0) + $48 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$182 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $40 + $48 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $182;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$54 = 8;
|
|
i64toi32_i32$2 = ($4 + 8 | 0) + $54 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$195 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $40 + $54 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $195;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function removeleaf_28btDbvt__2c_20btDbvtNode__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $58 = 0, $59 = 0, $65 = 0, $71 = 0, $100 = 0, $38 = 0, $249 = 0, $262 = 0, $275 = 0, $279 = 0, $112 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 56 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 52 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($4 + 52 | 0) >> 2] | 0 | 0) == (HEAP32[(HEAP32[($4 + 56 | 0) >> 2] | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[(HEAP32[($4 + 56 | 0) >> 2] | 0) >> 2] = 0;
|
|
HEAP32[($4 + 60 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 48 | 0) >> 2] = HEAP32[((HEAP32[($4 + 52 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 44 | 0) >> 2] = HEAP32[((HEAP32[($4 + 48 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[(((HEAP32[($4 + 48 | 0) >> 2] | 0) + 36 | 0) + ((1 - (indexof_28btDbvtNode_20const__29(HEAP32[($4 + 52 | 0) >> 2] | 0 | 0) | 0) | 0) << 2 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_i32$1;
|
|
label$3 : {
|
|
if (!((HEAP32[($4 + 44 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$38 = HEAP32[($4 + 40 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = ((HEAP32[($4 + 44 | 0) >> 2] | 0) + 36 | 0) + ((indexof_28btDbvtNode_20const__29(HEAP32[($4 + 48 | 0) >> 2] | 0 | 0) | 0) << 2 | 0) | 0, wasm2js_i32$1 = $38), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[((HEAP32[($4 + 40 | 0) >> 2] | 0) + 32 | 0) >> 2] = HEAP32[($4 + 44 | 0) >> 2] | 0;
|
|
deletenode_28btDbvt__2c_20btDbvtNode__29(HEAP32[($4 + 56 | 0) >> 2] | 0 | 0, HEAP32[($4 + 48 | 0) >> 2] | 0 | 0);
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((HEAP32[($4 + 44 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$58 = HEAP32[($4 + 44 | 0) >> 2] | 0;
|
|
$59 = 24;
|
|
i64toi32_i32$2 = $58 + $59 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$249 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 8 | 0) + $59 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $249;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$65 = 16;
|
|
i64toi32_i32$2 = $58 + $65 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$262 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($4 + 8 | 0) + $65 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $262;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$71 = 8;
|
|
i64toi32_i32$2 = $58 + $71 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$275 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 8 | 0) + $71 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $275;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $58;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$279 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $279;
|
|
HEAP32[($4 + 12 | 0) >> 2] = i64toi32_i32$0;
|
|
Merge_28btDbvtAabbMm_20const__2c_20btDbvtAabbMm_20const__2c_20btDbvtAabbMm__29(HEAP32[((HEAP32[($4 + 44 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($4 + 44 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0 | 0, HEAP32[($4 + 44 | 0) >> 2] | 0 | 0);
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!((NotEqual_28btDbvtAabbMm_20const__2c_20btDbvtAabbMm_20const__29($4 + 8 | 0 | 0, HEAP32[($4 + 44 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAP32[($4 + 44 | 0) >> 2] = HEAP32[((HEAP32[($4 + 44 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0;
|
|
break label$6;
|
|
}
|
|
break label$4;
|
|
}
|
|
continue label$5;
|
|
};
|
|
}
|
|
label$8 : {
|
|
label$9 : {
|
|
if (!((HEAP32[($4 + 44 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
$100 = HEAP32[($4 + 44 | 0) >> 2] | 0;
|
|
break label$8;
|
|
}
|
|
$100 = HEAP32[(HEAP32[($4 + 56 | 0) >> 2] | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($4 + 60 | 0) >> 2] = $100;
|
|
break label$1;
|
|
}
|
|
HEAP32[(HEAP32[($4 + 56 | 0) >> 2] | 0) >> 2] = HEAP32[($4 + 40 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($4 + 40 | 0) >> 2] | 0) + 32 | 0) >> 2] = 0;
|
|
deletenode_28btDbvt__2c_20btDbvtNode__29(HEAP32[($4 + 56 | 0) >> 2] | 0 | 0, HEAP32[($4 + 48 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($4 + 60 | 0) >> 2] = HEAP32[(HEAP32[($4 + 56 | 0) >> 2] | 0) >> 2] | 0;
|
|
}
|
|
$112 = HEAP32[($4 + 60 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 64 | 0;
|
|
return $112 | 0;
|
|
}
|
|
|
|
function insertleaf_28btDbvt__2c_20btDbvtNode__2c_20btDbvtNode__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $85 = 0, $56 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
label$1 : {
|
|
label$2 : {
|
|
if ((HEAP32[(HEAP32[($5 + 28 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
HEAP32[(HEAP32[($5 + 28 | 0) >> 2] | 0) >> 2] = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 20 | 0) >> 2] | 0) + 32 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
if ((btDbvtNode__isleaf_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
label$4 : while (1) {
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = HEAP32[(((HEAP32[($5 + 24 | 0) >> 2] | 0) + 36 | 0) + ((Select_28btDbvtAabbMm_20const__2c_20btDbvtAabbMm_20const__2c_20btDbvtAabbMm_20const__29(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0 | 0) | 0) << 2 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_i32$1;
|
|
if (((btDbvtNode__isleaf_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) ^ -1 | 0) & 1 | 0) {
|
|
continue label$4
|
|
}
|
|
break label$4;
|
|
};
|
|
}
|
|
HEAP32[($5 + 16 | 0) >> 2] = HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = createnode_28btDbvt__2c_20btDbvtNode__2c_20btDbvtAabbMm_20const__2c_20btDbvtAabbMm_20const__2c_20void__29(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0, HEAP32[($5 + 16 | 0) >> 2] | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!((HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$56 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = ((HEAP32[($5 + 16 | 0) >> 2] | 0) + 36 | 0) + ((indexof_28btDbvtNode_20const__29(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) << 2 | 0) | 0, wasm2js_i32$1 = $56), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + 36 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 32 | 0) >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + 40 | 0) >> 2] = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 20 | 0) >> 2] | 0) + 32 | 0) >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
label$7 : {
|
|
label$8 : while (1) {
|
|
label$9 : {
|
|
label$10 : {
|
|
if ((btDbvtAabbMm__Contain_28btDbvtAabbMm_20const__29_20const(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$10
|
|
}
|
|
Merge_28btDbvtAabbMm_20const__2c_20btDbvtAabbMm_20const__2c_20btDbvtAabbMm__29(HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0 | 0, HEAP32[($5 + 16 | 0) >> 2] | 0 | 0);
|
|
break label$9;
|
|
}
|
|
break label$7;
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
$85 = HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 16 | 0) >> 2] = $85;
|
|
if ((0 | 0) != ($85 | 0) & 1 | 0) {
|
|
continue label$8
|
|
}
|
|
break label$8;
|
|
};
|
|
}
|
|
break label$5;
|
|
}
|
|
HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + 36 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 32 | 0) >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + 40 | 0) >> 2] = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 20 | 0) >> 2] | 0) + 32 | 0) >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($5 + 28 | 0) >> 2] | 0) >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
}
|
|
}
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvt__insert_28btDbvtAabbMm_20const__2c_20void__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $16 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = createnode_28btDbvt__2c_20btDbvtNode__2c_20btDbvtAabbMm_20const__2c_20void__29($6 | 0, 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
insertleaf_28btDbvt__2c_20btDbvtNode__2c_20btDbvtNode__29($6 | 0, HEAP32[$6 >> 2] | 0 | 0, HEAP32[$5 >> 2] | 0 | 0);
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
$16 = HEAP32[$5 >> 2] | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $16 | 0;
|
|
}
|
|
|
|
function createnode_28btDbvt__2c_20btDbvtNode__2c_20void__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$1 = 0, $20 = 0, i64toi32_i32$0 = 0, $21 = 0, $39 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[$5 >> 2] = HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
$20 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(44 | 0, 16 | 0) | 0;
|
|
i64toi32_i32$0 = 0;
|
|
$21 = 0;
|
|
i64toi32_i32$1 = $20;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $21;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[(i64toi32_i32$1 + 40 | 0) >> 2] = 0;
|
|
i64toi32_i32$1 = i64toi32_i32$1 + 32 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $21;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $20 + 24 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $21;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $20 + 16 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $21;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $20 + 8 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $21;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btDbvtNode__btDbvtNode_28_29($20 | 0) | 0;
|
|
HEAP32[$5 >> 2] = $20;
|
|
}
|
|
HEAP32[((HEAP32[$5 >> 2] | 0) + 32 | 0) >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[$5 >> 2] | 0) + 36 | 0) >> 2] = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[$5 >> 2] | 0) + 40 | 0) >> 2] = 0;
|
|
$39 = HEAP32[$5 >> 2] | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $39 | 0;
|
|
}
|
|
|
|
function Select_28btDbvtAabbMm_20const__2c_20btDbvtAabbMm_20const__2c_20btDbvtAabbMm_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $17 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$17 = Math_fround(Proximity_28btDbvtAabbMm_20const__2c_20btDbvtAabbMm_20const__29(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0)) < Math_fround(Proximity_28btDbvtAabbMm_20const__2c_20btDbvtAabbMm_20const__29(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0)) & 1 | 0 ? 0 : 1;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $17 | 0;
|
|
}
|
|
|
|
function btDbvtAabbMm__Contain_28btDbvtAabbMm_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $15 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$15 = 0;
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 | 0) | 0) >> 2]) <= Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$15 = 0;
|
|
if (!(Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 | 0) | 0) >> 2]) <= Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$15 = 0;
|
|
if (!(Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 | 0) | 0) >> 2]) <= Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$15 = 0;
|
|
if (!(Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 + 16 | 0 | 0) | 0) >> 2]) >= Math_fround(HEAPF32[(btVector3__x_28_29_20const((HEAP32[($4 + 8 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$15 = 0;
|
|
if (!(Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 + 16 | 0 | 0) | 0) >> 2]) >= Math_fround(HEAPF32[(btVector3__y_28_29_20const((HEAP32[($4 + 8 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$15 = Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 + 16 | 0 | 0) | 0) >> 2]) >= Math_fround(HEAPF32[(btVector3__z_28_29_20const((HEAP32[($4 + 8 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) >> 2]);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $15 & 1 | 0 | 0;
|
|
}
|
|
|
|
function NotEqual_28btDbvtAabbMm_20const__2c_20btDbvtAabbMm_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $15 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$15 = 1;
|
|
label$1 : {
|
|
if (Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2]) != Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2]) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
$15 = 1;
|
|
if (Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2]) != Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2]) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
$15 = 1;
|
|
if (Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2]) != Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2]) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
$15 = 1;
|
|
if (Math_fround(HEAPF32[(btVector3__x_28_29_20const((HEAP32[($4 + 12 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) >> 2]) != Math_fround(HEAPF32[(btVector3__x_28_29_20const((HEAP32[($4 + 8 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) >> 2]) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
$15 = 1;
|
|
if (Math_fround(HEAPF32[(btVector3__y_28_29_20const((HEAP32[($4 + 12 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) >> 2]) != Math_fround(HEAPF32[(btVector3__y_28_29_20const((HEAP32[($4 + 8 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) >> 2]) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
$15 = Math_fround(HEAPF32[(btVector3__z_28_29_20const((HEAP32[($4 + 12 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) >> 2]) != Math_fround(HEAPF32[(btVector3__z_28_29_20const((HEAP32[($4 + 8 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) >> 2]);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $15 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btDbvt__update_28btDbvtNode__2c_20btDbvtAabbMm__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $6 = 0, $49 = 0, $48 = 0, $32 = 0, $51 = 0, $55 = 0, $59 = 0, $168 = 0, $178 = 0, $188 = 0, $198 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = removeleaf_28btDbvt__2c_20btDbvtNode__29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = 0;
|
|
label$4 : while (1) {
|
|
$32 = 0;
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
$32 = (HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0 | 0) != (0 | 0);
|
|
}
|
|
label$6 : {
|
|
if (!($32 & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAP32[($5 + 16 | 0) >> 2] = HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
}
|
|
break label$4;
|
|
};
|
|
break label$2;
|
|
}
|
|
HEAP32[($5 + 16 | 0) >> 2] = HEAP32[$6 >> 2] | 0;
|
|
}
|
|
}
|
|
$48 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
$49 = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $48;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$168 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $49;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $168;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$51 = 24;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $51 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$178 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $49 + $51 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $178;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$55 = 16;
|
|
i64toi32_i32$2 = $48 + $55 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$188 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $49 + $55 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $188;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$59 = 8;
|
|
i64toi32_i32$2 = $48 + $59 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$198 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $49 + $59 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $198;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
insertleaf_28btDbvt__2c_20btDbvtNode__2c_20btDbvtNode__29($6 | 0, HEAP32[($5 + 16 | 0) >> 2] | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvt__update_28btDbvtNode__2c_20btDbvtAabbMm__2c_20btVector3_20const__2c_20float_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = Math_fround($4);
|
|
var $7 = 0, $23 = 0, $8 = 0, $17 = 0, $36 = 0;
|
|
$7 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 40 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 36 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 32 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $3;
|
|
HEAPF32[($7 + 24 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 40 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((btDbvtAabbMm__Contain_28btDbvtAabbMm_20const__29_20const(HEAP32[($7 + 36 | 0) >> 2] | 0 | 0, HEAP32[($7 + 32 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP8[($7 + 47 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
$17 = HEAP32[($7 + 32 | 0) >> 2] | 0;
|
|
$23 = $7 + 24 | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 8 | 0 | 0, $23 | 0, $23 | 0, $23 | 0) | 0;
|
|
btDbvtAabbMm__Expand_28btVector3_20const__29($17 | 0, $7 + 8 | 0 | 0);
|
|
btDbvtAabbMm__SignedExpand_28btVector3_20const__29(HEAP32[($7 + 32 | 0) >> 2] | 0 | 0, HEAP32[($7 + 28 | 0) >> 2] | 0 | 0);
|
|
btDbvt__update_28btDbvtNode__2c_20btDbvtAabbMm__29($8 | 0, HEAP32[($7 + 36 | 0) >> 2] | 0 | 0, HEAP32[($7 + 32 | 0) >> 2] | 0 | 0);
|
|
HEAP8[($7 + 47 | 0) >> 0] = 1 & 1 | 0;
|
|
}
|
|
$36 = (HEAPU8[($7 + 47 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $7 + 48 | 0;
|
|
return $36 | 0;
|
|
}
|
|
|
|
function btDbvtAabbMm__Expand_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btVector3__operator___28btVector3_20const__29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($5 + 16 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvtAabbMm__SignedExpand_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btVector3__setX_28float_29($5 + 16 | 0 | 0, Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 + 16 | 0 | 0) | 0) >> 2]) + Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2]))));
|
|
break label$1;
|
|
}
|
|
btVector3__setX_28float_29($5 | 0, Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 | 0) | 0) >> 2]) + Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2]))));
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
btVector3__setY_28float_29($5 + 16 | 0 | 0, Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 + 16 | 0 | 0) | 0) >> 2]) + Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2]))));
|
|
break label$3;
|
|
}
|
|
btVector3__setY_28float_29($5 | 0, Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 | 0) | 0) >> 2]) + Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2]))));
|
|
}
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
btVector3__setZ_28float_29($5 + 16 | 0 | 0, Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 + 16 | 0 | 0) | 0) >> 2]) + Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2]))));
|
|
break label$5;
|
|
}
|
|
btVector3__setZ_28float_29($5 | 0, Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 | 0) | 0) >> 2]) + Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2]))));
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvt__remove_28btDbvtNode__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
removeleaf_28btDbvt__2c_20btDbvtNode__29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
deletenode_28btDbvt__2c_20btDbvtNode__29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + -1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvtNode__btDbvtNode_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btDbvtAabbMm__btDbvtAabbMm_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function Proximity_28btDbvtAabbMm_20const__2c_20btDbvtAabbMm_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $47 = Math_fround(0);
|
|
$4 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 60 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 56 | 0) >> 2] = $1;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($4 + 24 | 0 | 0, HEAP32[($4 + 60 | 0) >> 2] | 0 | 0, (HEAP32[($4 + 60 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($4 + 8 | 0 | 0, HEAP32[($4 + 56 | 0) >> 2] | 0 | 0, (HEAP32[($4 + 56 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 40 | 0 | 0, $4 + 24 | 0 | 0, $4 + 8 | 0 | 0);
|
|
$47 = Math_fround(Math_fround(Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($4 + 40 | 0 | 0) | 0) >> 2])))) + Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($4 + 40 | 0 | 0) | 0) >> 2]))))) + Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($4 + 40 | 0 | 0) | 0) >> 2])))));
|
|
__stack_pointer = $4 + 64 | 0;
|
|
return Math_fround($47);
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btDbvt_cpp() {
|
|
__cxx_global_var_init_3();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_4() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(113936 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvtBroadphase__btDbvtBroadphase_28btOverlappingPairCache__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, $66 = 0, $10 = 0, $13 = 0, $14 = 0, $16 = 0, $61 = 0, $64 = 0, $12 = 0, $54 = 0, $98 = 0;
|
|
$4 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 40 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 36 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 40 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 44 | 0) >> 2] = $5;
|
|
btBroadphaseInterface__btBroadphaseInterface_28_29($5 | 0) | 0;
|
|
HEAP32[$5 >> 2] = 90076 + 8 | 0;
|
|
$10 = $5 + 4 | 0;
|
|
$12 = $10 + 80 | 0;
|
|
$13 = $10;
|
|
label$1 : while (1) {
|
|
$14 = $13;
|
|
btDbvt__btDbvt_28_29($14 | 0) | 0;
|
|
$16 = $14 + 40 | 0;
|
|
$13 = $16;
|
|
if (!(($16 | 0) == ($12 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____btAlignedObjectArray_28_29($5 + 156 | 0 | 0) | 0;
|
|
HEAP8[($5 + 153 | 0) >> 0] = 0;
|
|
HEAP8[($5 + 154 | 0) >> 0] = 1;
|
|
HEAP8[($5 + 152 | 0) >> 0] = ((HEAP32[($4 + 36 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0 ? 0 : 1) & 1 | 0;
|
|
HEAPF32[($5 + 100 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP32[($5 + 104 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 124 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 108 | 0) >> 2] = 1;
|
|
HEAP32[($5 + 112 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 116 | 0) >> 2] = 10;
|
|
HEAP32[($5 + 120 | 0) >> 2] = 1;
|
|
HEAP32[($5 + 128 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 132 | 0) >> 2] = 0;
|
|
HEAPF32[($5 + 136 | 0) >> 2] = Math_fround(0 | 0);
|
|
$54 = (HEAP32[($4 + 36 | 0) >> 2] | 0 | 0) != (0 | 0);
|
|
HEAP8[($4 + 27 | 0) >> 0] = 0 & 1 | 0;
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!($54 & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$61 = HEAP32[($4 + 36 | 0) >> 2] | 0;
|
|
break label$2;
|
|
}
|
|
$64 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(72 | 0, 16 | 0) | 0;
|
|
$66 = btHashedOverlappingPairCache__operator_20new_28unsigned_20long_2c_20void__29(72 | 0, $64 | 0) | 0;
|
|
HEAP32[($4 + 32 | 0) >> 2] = $66;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $64;
|
|
HEAP8[($4 + 27 | 0) >> 0] = 1 & 1 | 0;
|
|
btHashedOverlappingPairCache__btHashedOverlappingPairCache_28_29($66 | 0) | 0;
|
|
$61 = $66;
|
|
}
|
|
HEAP32[($5 + 96 | 0) >> 2] = $61;
|
|
HEAP32[($5 + 148 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 140 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 144 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = 0;
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((HEAP32[($4 + 20 | 0) >> 2] | 0 | 0) <= (2 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP32[(($5 + 84 | 0) + ((HEAP32[($4 + 20 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = 0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = (HEAP32[($4 + 20 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
btAlignedObjectArray_btDbvtNode_20const____btAlignedObjectArray_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____resize_28int_2c_20btAlignedObjectArray_btDbvtNode_20const___20const__29($5 + 156 | 0 | 0, 1 | 0, $4 | 0);
|
|
btAlignedObjectArray_btDbvtNode_20const_____btAlignedObjectArray_28_29($4 | 0) | 0;
|
|
$98 = HEAP32[($4 + 44 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 48 | 0;
|
|
return $98 | 0;
|
|
}
|
|
|
|
function btBroadphaseInterface__btBroadphaseInterface_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 90204 + 8 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btAlignedObjectArray_btDbvtNode_20const___2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__operator_20new_28unsigned_20long_2c_20void__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return HEAP32[($4 + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvtNode_20const____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btDbvtNode_20const__2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btDbvtNode_20const____init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____resize_28int_2c_20btAlignedObjectArray_btDbvtNode_20const___20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____size_28_29_20const($6 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
btAlignedObjectArray_btDbvtNode_20const_____btAlignedObjectArray_28_29((HEAP32[($6 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 12 | 0) >> 2] | 0, 20) | 0 | 0) | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) > (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____reserve_28int_29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
btAlignedObjectArray_btDbvtNode_20const____btAlignedObjectArray_28btAlignedObjectArray_btDbvtNode_20const___20const__29((HEAP32[($6 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 8 | 0) >> 2] | 0, 20) | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvtNode_20const_____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btDbvtNode_20const____clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_btAlignedObjectArray_btDbvtNode_20const___2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____copy_28int_2c_20int_2c_20btAlignedObjectArray_btDbvtNode_20const____29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvtNode_20const____btAlignedObjectArray_28btAlignedObjectArray_btDbvtNode_20const___20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $8 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btDbvtNode_20const__2c_2016u___btAlignedAllocator_28_29($5 | 0) | 0;
|
|
btAlignedObjectArray_btDbvtNode_20const____init_28_29($5 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btDbvtNode_20const____size_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
$8 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 0;
|
|
btAlignedObjectArray_btDbvtNode_20const____resize_28int_2c_20btDbvtNode_20const__20const__29($5 | 0, $8 | 0, $4 | 0);
|
|
btAlignedObjectArray_btDbvtNode_20const____copy_28int_2c_20int_2c_20btDbvtNode_20const___29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_btDbvtNode_20const__2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvtNode_20const____init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvtNode_20const____clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btDbvtNode_20const____destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btDbvtNode_20const____size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btDbvtNode_20const____deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btDbvtNode_20const____init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvtBroadphase___btDbvtBroadphase_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0, $24 = 0, $11 = 0, $18 = 0, $21 = 0, $30 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
HEAP32[$4 >> 2] = 90076 + 8 | 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($4 + 152 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$11 = HEAP32[($4 + 96 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$11 >> 2] | 0) >> 2] | 0 | 0]($11) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 96 | 0) >> 2] | 0 | 0);
|
|
}
|
|
btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const______btAlignedObjectArray_28_29($4 + 156 | 0 | 0) | 0;
|
|
$18 = $4 + 4 | 0;
|
|
$21 = $18 + 80 | 0;
|
|
label$2 : while (1) {
|
|
$24 = $21 + -40 | 0;
|
|
btDbvt___btDbvt_28_29($24 | 0) | 0;
|
|
$21 = $24;
|
|
if (!(($24 | 0) == ($18 | 0) & 1 | 0)) {
|
|
continue label$2
|
|
}
|
|
break label$2;
|
|
};
|
|
btBroadphaseInterface___btBroadphaseInterface_28_29($4 | 0) | 0;
|
|
$30 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $30 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const______btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btBroadphaseInterface___btBroadphaseInterface_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvtBroadphase___btDbvtBroadphase_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[443 | 0]($4) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvtBroadphase__createProxy_28btVector3_20const__2c_20btVector3_20const__2c_20int_2c_20void__2c_20int_2c_20int_2c_20btDispatcher__29($0, $1, $2, $3, $4, $5, $6, $7) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
var $10 = 0, $11 = 0, $16 = 0, $31 = 0, $39 = 0, $70 = 0;
|
|
$10 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $10;
|
|
HEAP32[($10 + 76 | 0) >> 2] = $0;
|
|
HEAP32[($10 + 72 | 0) >> 2] = $1;
|
|
HEAP32[($10 + 68 | 0) >> 2] = $2;
|
|
HEAP32[($10 + 64 | 0) >> 2] = $3;
|
|
HEAP32[($10 + 60 | 0) >> 2] = $4;
|
|
HEAP32[($10 + 56 | 0) >> 2] = $5;
|
|
HEAP32[($10 + 52 | 0) >> 2] = $6;
|
|
HEAP32[($10 + 48 | 0) >> 2] = $7;
|
|
$11 = HEAP32[($10 + 76 | 0) >> 2] | 0;
|
|
$16 = btBroadphaseProxy__operator_20new_28unsigned_20long_2c_20void__29(64 | 0, btAlignedAllocInternal_28unsigned_20long_2c_20int_29(64 | 0, 16 | 0) | 0 | 0) | 0;
|
|
btDbvtProxy__btDbvtProxy_28btVector3_20const__2c_20btVector3_20const__2c_20void__2c_20int_2c_20int_29($16 | 0, HEAP32[($10 + 72 | 0) >> 2] | 0 | 0, HEAP32[($10 + 68 | 0) >> 2] | 0 | 0, HEAP32[($10 + 60 | 0) >> 2] | 0 | 0, HEAP32[($10 + 56 | 0) >> 2] | 0 | 0, HEAP32[($10 + 52 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($10 + 44 | 0) >> 2] = $16;
|
|
btDbvtAabbMm__FromMM_28btVector3_20const__2c_20btVector3_20const__29($10 + 12 | 0 | 0, HEAP32[($10 + 72 | 0) >> 2] | 0 | 0, HEAP32[($10 + 68 | 0) >> 2] | 0 | 0);
|
|
HEAP32[((HEAP32[($10 + 44 | 0) >> 2] | 0) + 60 | 0) >> 2] = HEAP32[($11 + 104 | 0) >> 2] | 0;
|
|
$31 = (HEAP32[($11 + 148 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($11 + 148 | 0) >> 2] = $31;
|
|
HEAP32[((HEAP32[($10 + 44 | 0) >> 2] | 0) + 12 | 0) >> 2] = $31;
|
|
$39 = btDbvt__insert_28btDbvtAabbMm_20const__2c_20void__29($11 + 4 | 0 | 0, $10 + 12 | 0 | 0, HEAP32[($10 + 44 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[((HEAP32[($10 + 44 | 0) >> 2] | 0) + 48 | 0) >> 2] = $39;
|
|
void_20listappend_btDbvtProxy__28btDbvtProxy__2c_20btDbvtProxy___29(HEAP32[($10 + 44 | 0) >> 2] | 0 | 0, ($11 + 84 | 0) + ((HEAP32[($11 + 104 | 0) >> 2] | 0) << 2 | 0) | 0 | 0);
|
|
label$1 : {
|
|
if ((HEAPU8[($11 + 153 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
btDbvtTreeCollider__btDbvtTreeCollider_28btDbvtBroadphase__29($10 | 0, $11 | 0) | 0;
|
|
HEAP32[($10 + 8 | 0) >> 2] = HEAP32[($10 + 44 | 0) >> 2] | 0;
|
|
btDbvt__collideTV_28btDbvtNode_20const__2c_20btDbvtAabbMm_20const__2c_20btDbvt__ICollide__29_20const($11 + 4 | 0 | 0, HEAP32[($11 + 4 | 0) >> 2] | 0 | 0, $10 + 12 | 0 | 0, $10 | 0);
|
|
btDbvt__collideTV_28btDbvtNode_20const__2c_20btDbvtAabbMm_20const__2c_20btDbvt__ICollide__29_20const(($11 + 4 | 0) + 40 | 0 | 0, HEAP32[($11 + 44 | 0) >> 2] | 0 | 0, $10 + 12 | 0 | 0, $10 | 0);
|
|
btDbvtTreeCollider___btDbvtTreeCollider_28_29($10 | 0) | 0;
|
|
}
|
|
$70 = HEAP32[($10 + 44 | 0) >> 2] | 0;
|
|
__stack_pointer = $10 + 80 | 0;
|
|
return $70 | 0;
|
|
}
|
|
|
|
function btBroadphaseProxy__operator_20new_28unsigned_20long_2c_20void__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return HEAP32[($4 + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btDbvtProxy__btDbvtProxy_28btVector3_20const__2c_20btVector3_20const__2c_20void__2c_20int_2c_20int_29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, $9 = 0;
|
|
$8 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 12 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 8 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 28 | 0) >> 2] | 0;
|
|
btBroadphaseProxy__btBroadphaseProxy_28btVector3_20const__2c_20btVector3_20const__2c_20void__2c_20int_2c_20int_29($9 | 0, HEAP32[($8 + 24 | 0) >> 2] | 0 | 0, HEAP32[($8 + 20 | 0) >> 2] | 0 | 0, HEAP32[($8 + 16 | 0) >> 2] | 0 | 0, HEAP32[($8 + 12 | 0) >> 2] | 0 | 0, HEAP32[($8 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($9 + 56 | 0) >> 2] = 0;
|
|
HEAP32[($9 + 52 | 0) >> 2] = 0;
|
|
__stack_pointer = $8 + 32 | 0;
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btDbvtAabbMm__FromMM_28btVector3_20const__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $5 = 0, $8 = 0, $14 = 0, $16 = 0, $38 = 0, $48 = 0, $57 = 0, $67 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $2;
|
|
btDbvtAabbMm__btDbvtAabbMm_28_29($0 | 0) | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$38 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $38;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$8 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $8 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$48 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0 + $8 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $48;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$14 = $0 + 16 | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$57 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $14;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $57;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$16 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $16 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$67 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $14 + $16 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $67;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20listappend_btDbvtProxy__28btDbvtProxy__2c_20btDbvtProxy___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 52 | 0) >> 2] = 0;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 56 | 0) >> 2] = HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[((HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0) + 52 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvtTreeCollider__btDbvtTreeCollider_28btDbvtBroadphase__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btDbvt__ICollide__ICollide_28_29($5 | 0) | 0;
|
|
HEAP32[$5 >> 2] = 90268 + 8 | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btDbvt__collideTV_28btDbvtNode_20const__2c_20btDbvtAabbMm_20const__2c_20btDbvt__ICollide__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $14 = 0, $15 = 0, $21 = 0, $27 = 0, $98 = 0, $156 = 0, $169 = 0, $182 = 0, $186 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 352 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 348 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 344 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 340 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 336 | 0) >> 2] = $3;
|
|
label$1 : {
|
|
if (!((HEAP32[($6 + 344 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$14 = HEAP32[($6 + 340 | 0) >> 2] | 0;
|
|
$15 = 24;
|
|
i64toi32_i32$2 = $14 + $15 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$156 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 304 | 0) + $15 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $156;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$21 = 16;
|
|
i64toi32_i32$2 = $14 + $21 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$169 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($6 + 304 | 0) + $21 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $169;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$27 = 8;
|
|
i64toi32_i32$2 = $14 + $27 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$182 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 304 | 0) + $27 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $182;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $14;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$186 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 304 | 0) >> 2] = $186;
|
|
HEAP32[($6 + 308 | 0) >> 2] = i64toi32_i32$0;
|
|
btAlignedObjectArray_btDbvtNode_20const____btAlignedObjectArray_28_29($6 + 284 | 0 | 0) | 0;
|
|
HEAP32[($6 + 280 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btDbvtNode_20const____resize_28int_2c_20btDbvtNode_20const__20const__29($6 + 284 | 0 | 0, 0 | 0, $6 + 280 | 0 | 0);
|
|
btAlignedObjectArray_btDbvtNode_20const____initializeFromBuffer_28void__2c_20int_2c_20int_29($6 + 284 | 0 | 0, $6 + 16 | 0 | 0, 0 | 0, 64 | 0);
|
|
btAlignedObjectArray_btDbvtNode_20const____push_back_28btDbvtNode_20const__20const__29($6 + 284 | 0 | 0, $6 + 344 | 0 | 0);
|
|
label$2 : while (1) {
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btDbvtNode_20const____operator_5b_5d_28int_29($6 + 284 | 0 | 0, (btAlignedObjectArray_btDbvtNode_20const____size_28_29_20const($6 + 284 | 0 | 0) | 0) - 1 | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btDbvtNode_20const____pop_back_28_29($6 + 284 | 0 | 0);
|
|
label$3 : {
|
|
if (!((Intersect_28btDbvtAabbMm_20const__2c_20btDbvtAabbMm_20const__29(HEAP32[($6 + 12 | 0) >> 2] | 0 | 0, $6 + 304 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!((btDbvtNode__isinternal_28_29_20const(HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btAlignedObjectArray_btDbvtNode_20const____push_back_28btDbvtNode_20const__20const__29($6 + 284 | 0 | 0, (HEAP32[($6 + 12 | 0) >> 2] | 0) + 36 | 0 | 0);
|
|
btAlignedObjectArray_btDbvtNode_20const____push_back_28btDbvtNode_20const__20const__29($6 + 284 | 0 | 0, ((HEAP32[($6 + 12 | 0) >> 2] | 0) + 36 | 0) + 4 | 0 | 0);
|
|
break label$4;
|
|
}
|
|
$98 = HEAP32[($6 + 336 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$98 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($98, HEAP32[($6 + 12 | 0) >> 2] | 0);
|
|
}
|
|
}
|
|
if ((btAlignedObjectArray_btDbvtNode_20const____size_28_29_20const($6 + 284 | 0 | 0) | 0 | 0) > (0 | 0) & 1 | 0) {
|
|
continue label$2
|
|
}
|
|
break label$2;
|
|
};
|
|
btAlignedObjectArray_btDbvtNode_20const_____btAlignedObjectArray_28_29($6 + 284 | 0 | 0) | 0;
|
|
}
|
|
__stack_pointer = $6 + 352 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvtTreeCollider___btDbvtTreeCollider_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btDbvt__ICollide___ICollide_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btBroadphaseProxy__btBroadphaseProxy_28btVector3_20const__2c_20btVector3_20const__2c_20void__2c_20int_2c_20int_29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $8 = 0, $9 = 0, $14 = 0, $17 = 0, $22 = 0, $25 = 0, $67 = 0, $77 = 0, $86 = 0, $96 = 0;
|
|
$8 = __stack_pointer - 32 | 0;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 12 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 8 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 28 | 0) >> 2] | 0;
|
|
HEAP32[$9 >> 2] = HEAP32[($8 + 16 | 0) >> 2] | 0;
|
|
HEAP32[($9 + 4 | 0) >> 2] = HEAP32[($8 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($9 + 8 | 0) >> 2] = HEAP32[($8 + 8 | 0) >> 2] | 0;
|
|
$14 = $9 + 16 | 0;
|
|
i64toi32_i32$2 = HEAP32[($8 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$67 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $14;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $67;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$17 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $17 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$77 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $14 + $17 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $77;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$22 = $9 + 32 | 0;
|
|
i64toi32_i32$2 = HEAP32[($8 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$86 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $86;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$25 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $25 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$96 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $25 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $96;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btDbvtAabbMm__btDbvtAabbMm_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($4 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 16 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btDbvt__ICollide__ICollide_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 90364 + 8 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvtNode_20const____resize_28int_2c_20btDbvtNode_20const__20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btDbvtNode_20const____size_28_29_20const($6 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) > (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btAlignedObjectArray_btDbvtNode_20const____reserve_28int_29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[(HEAP32[($5 + 20 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvtNode_20const____initializeFromBuffer_28void__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btDbvtNode_20const____clear_28_29($7 | 0);
|
|
HEAP8[($7 + 16 | 0) >> 0] = 0;
|
|
HEAP32[($7 + 12 | 0) >> 2] = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 8 | 0) >> 2] = HEAP32[$6 >> 2] | 0;
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvtNode_20const____push_back_28btDbvtNode_20const__20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btDbvtNode_20const____size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btDbvtNode_20const____capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btDbvtNode_20const____reserve_28int_29($5 | 0, btAlignedObjectArray_btDbvtNode_20const____allocSize_28int_29($5 | 0, btAlignedObjectArray_btDbvtNode_20const____size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvtNode_20const____size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvtNode_20const____operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btDbvtNode_20const____size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvtNode_20const____pop_back_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) > (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85800 | 0, 78192 | 0, 201 | 0, 77711 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + -1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function Intersect_28btDbvtAabbMm_20const__2c_20btDbvtAabbMm_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $17 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$17 = 0;
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2]) <= Math_fround(HEAPF32[(btVector3__x_28_29_20const((HEAP32[($4 + 8 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$17 = 0;
|
|
if (!(Math_fround(HEAPF32[(btVector3__x_28_29_20const((HEAP32[($4 + 12 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) >> 2]) >= Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$17 = 0;
|
|
if (!(Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2]) <= Math_fround(HEAPF32[(btVector3__y_28_29_20const((HEAP32[($4 + 8 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$17 = 0;
|
|
if (!(Math_fround(HEAPF32[(btVector3__y_28_29_20const((HEAP32[($4 + 12 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) >> 2]) >= Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$17 = 0;
|
|
if (!(Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2]) <= Math_fround(HEAPF32[(btVector3__z_28_29_20const((HEAP32[($4 + 8 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$17 = Math_fround(HEAPF32[(btVector3__z_28_29_20const((HEAP32[($4 + 12 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) >> 2]) >= Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2]);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $17 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btDbvtNode__isinternal_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $9 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$9 = ((btDbvtNode__isleaf_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0) ^ -1 | 0) & 1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btDbvt__ICollide___ICollide_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btDbvtBroadphase__destroyProxy_28btBroadphaseProxy__2c_20btDispatcher__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $34 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[((HEAP32[$5 >> 2] | 0) + 60 | 0) >> 2] | 0 | 0) == (2 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btDbvt__remove_28btDbvtNode__29(($6 + 4 | 0) + 40 | 0 | 0, HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0);
|
|
break label$1;
|
|
}
|
|
btDbvt__remove_28btDbvtNode__29($6 + 4 | 0 | 0, HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0);
|
|
}
|
|
void_20listremove_btDbvtProxy__28btDbvtProxy__2c_20btDbvtProxy___29(HEAP32[$5 >> 2] | 0 | 0, ($6 + 84 | 0) + ((HEAP32[((HEAP32[$5 >> 2] | 0) + 60 | 0) >> 2] | 0) << 2 | 0) | 0 | 0);
|
|
$34 = HEAP32[($6 + 96 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$34 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($34, HEAP32[$5 >> 2] | 0, HEAP32[($5 + 4 | 0) >> 2] | 0);
|
|
btAlignedFreeInternal_28void__29(HEAP32[$5 >> 2] | 0 | 0);
|
|
HEAP8[($6 + 154 | 0) >> 0] = 1;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20listremove_btDbvtProxy__28btDbvtProxy__2c_20btDbvtProxy___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 52 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[((HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 52 | 0) >> 2] | 0) + 56 | 0) >> 2] = HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 56 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] = HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 56 | 0) >> 2] | 0;
|
|
}
|
|
label$3 : {
|
|
if (!((HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 56 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[((HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 56 | 0) >> 2] | 0) + 52 | 0) >> 2] = HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 52 | 0) >> 2] | 0;
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btDbvtBroadphase__getAabb_28btBroadphaseProxy__2c_20btVector3__2c_20btVector3__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, $11 = 0, $13 = 0, $20 = 0, $22 = 0, $52 = 0, $62 = 0, $73 = 0, $83 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
$11 = HEAP32[($6 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 16 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$52 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $11;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $52;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$13 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $13 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$62 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11 + $13 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $62;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$20 = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 32 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$73 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $20;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $73;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$22 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $22 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$83 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $20 + $22 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $83;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function btDbvtBroadphase__rayTest_28btVector3_20const__2c_20btVector3_20const__2c_20btBroadphaseRayCallback__2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, $9 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$8 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 32 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 24 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 44 | 0) >> 2] | 0;
|
|
BroadphaseRayTester__BroadphaseRayTester_28btBroadphaseRayCallback__29($8 + 16 | 0 | 0, HEAP32[($8 + 32 | 0) >> 2] | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____operator_5b_5d_28int_29($9 + 156 | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
btDbvt__rayTestInternal_28btDbvtNode_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20unsigned_20int__2c_20float_2c_20btVector3_20const__2c_20btVector3_20const__2c_20btAlignedObjectArray_btDbvtNode_20const____2c_20btDbvt__ICollide__29_20const($9 + 4 | 0 | 0, HEAP32[($9 + 4 | 0) >> 2] | 0 | 0, HEAP32[($8 + 40 | 0) >> 2] | 0 | 0, HEAP32[($8 + 36 | 0) >> 2] | 0 | 0, (HEAP32[($8 + 32 | 0) >> 2] | 0) + 4 | 0 | 0, (HEAP32[($8 + 32 | 0) >> 2] | 0) + 20 | 0 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($8 + 32 | 0) >> 2] | 0) + 32 | 0) >> 2])), HEAP32[($8 + 28 | 0) >> 2] | 0 | 0, HEAP32[($8 + 24 | 0) >> 2] | 0 | 0, HEAP32[($8 + 12 | 0) >> 2] | 0 | 0, $8 + 16 | 0 | 0);
|
|
btDbvt__rayTestInternal_28btDbvtNode_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20unsigned_20int__2c_20float_2c_20btVector3_20const__2c_20btVector3_20const__2c_20btAlignedObjectArray_btDbvtNode_20const____2c_20btDbvt__ICollide__29_20const(($9 + 4 | 0) + 40 | 0 | 0, HEAP32[($9 + 44 | 0) >> 2] | 0 | 0, HEAP32[($8 + 40 | 0) >> 2] | 0 | 0, HEAP32[($8 + 36 | 0) >> 2] | 0 | 0, (HEAP32[($8 + 32 | 0) >> 2] | 0) + 4 | 0 | 0, (HEAP32[($8 + 32 | 0) >> 2] | 0) + 20 | 0 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($8 + 32 | 0) >> 2] | 0) + 32 | 0) >> 2])), HEAP32[($8 + 28 | 0) >> 2] | 0 | 0, HEAP32[($8 + 24 | 0) >> 2] | 0 | 0, HEAP32[($8 + 12 | 0) >> 2] | 0 | 0, $8 + 16 | 0 | 0);
|
|
BroadphaseRayTester___BroadphaseRayTester_28_29($8 + 16 | 0 | 0) | 0;
|
|
__stack_pointer = $8 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function BroadphaseRayTester__BroadphaseRayTester_28btBroadphaseRayCallback__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btDbvt__ICollide__ICollide_28_29($5 | 0) | 0;
|
|
HEAP32[$5 >> 2] = 90400 + 8 | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($4 + 8 | 0) >> 2] | 0, 20) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btDbvt__rayTestInternal_28btDbvtNode_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20unsigned_20int__2c_20float_2c_20btVector3_20const__2c_20btVector3_20const__2c_20btAlignedObjectArray_btDbvtNode_20const____2c_20btDbvt__ICollide__29_20const($0, $1, $2, $3, $4, $5, $6, $7, $8, $9, $10) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = Math_fround($6);
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
$9 = $9 | 0;
|
|
$10 = $10 | 0;
|
|
var $13 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $38 = 0, $41 = 0, $42 = 0, $44 = 0, $53 = 0, $64 = 0, $66 = 0, $82 = 0, $84 = 0, $136 = 0, $143 = 0, $147 = 0, $26 = 0, $32 = 0, $40 = 0, $50 = 0, $284 = 0, $297 = 0, $321 = 0, $334 = 0, $120 = 0, $124 = 0, $134 = 0, $135 = 0, $141 = 0, $142 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$13 = __stack_pointer - 176 | 0;
|
|
__stack_pointer = $13;
|
|
HEAP32[($13 + 172 | 0) >> 2] = $0;
|
|
HEAP32[($13 + 168 | 0) >> 2] = $1;
|
|
HEAP32[($13 + 164 | 0) >> 2] = $2;
|
|
HEAP32[($13 + 160 | 0) >> 2] = $3;
|
|
HEAP32[($13 + 156 | 0) >> 2] = $4;
|
|
HEAP32[($13 + 152 | 0) >> 2] = $5;
|
|
HEAPF32[($13 + 148 | 0) >> 2] = $6;
|
|
HEAP32[($13 + 144 | 0) >> 2] = $7;
|
|
HEAP32[($13 + 140 | 0) >> 2] = $8;
|
|
HEAP32[($13 + 136 | 0) >> 2] = $9;
|
|
HEAP32[($13 + 132 | 0) >> 2] = $10;
|
|
label$1 : {
|
|
if (!((HEAP32[($13 + 168 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btVector3__btVector3_28_29($13 + 116 | 0 | 0) | 0;
|
|
HEAP32[($13 + 112 | 0) >> 2] = 1;
|
|
HEAP32[($13 + 108 | 0) >> 2] = 126;
|
|
$26 = HEAP32[($13 + 136 | 0) >> 2] | 0;
|
|
HEAP32[($13 + 104 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btDbvtNode_20const____resize_28int_2c_20btDbvtNode_20const__20const__29($26 | 0, 128 | 0, $13 + 104 | 0 | 0);
|
|
$32 = HEAP32[($13 + 168 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btDbvtNode_20const____operator_5b_5d_28int_29(HEAP32[($13 + 136 | 0) >> 2] | 0 | 0, 0 | 0) | 0, wasm2js_i32$1 = $32), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$38 = $13 + 64 | 0;
|
|
$40 = $38 + 32 | 0;
|
|
$41 = $38;
|
|
label$2 : while (1) {
|
|
$42 = $41;
|
|
btVector3__btVector3_28_29($42 | 0) | 0;
|
|
$44 = $42 + 16 | 0;
|
|
$41 = $44;
|
|
if (!(($44 | 0) == ($40 | 0) & 1 | 0)) {
|
|
continue label$2
|
|
}
|
|
break label$2;
|
|
};
|
|
label$3 : while (1) {
|
|
$50 = HEAP32[($13 + 136 | 0) >> 2] | 0;
|
|
$53 = (HEAP32[($13 + 112 | 0) >> 2] | 0) + -1 | 0;
|
|
HEAP32[($13 + 112 | 0) >> 2] = $53;
|
|
(wasm2js_i32$0 = $13, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btDbvtNode_20const____operator_5b_5d_28int_29($50 | 0, $53 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 60 | 0) >> 2] = wasm2js_i32$1;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($13 + 44 | 0 | 0, btDbvtAabbMm__Mins_28_29_20const(HEAP32[($13 + 60 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($13 + 140 | 0) >> 2] | 0 | 0);
|
|
$64 = $13 + 64 | 0;
|
|
i64toi32_i32$2 = $13;
|
|
i64toi32_i32$0 = HEAP32[($13 + 44 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($13 + 48 | 0) >> 2] | 0;
|
|
$284 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $64;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $284;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$66 = 8;
|
|
i64toi32_i32$2 = ($13 + 44 | 0) + $66 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$297 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $64 + $66 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $297;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($13 + 28 | 0 | 0, btDbvtAabbMm__Maxs_28_29_20const(HEAP32[($13 + 60 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($13 + 144 | 0) >> 2] | 0 | 0);
|
|
$82 = ($13 + 64 | 0) + 16 | 0;
|
|
i64toi32_i32$2 = $13;
|
|
i64toi32_i32$0 = HEAP32[($13 + 28 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($13 + 32 | 0) >> 2] | 0;
|
|
$321 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $82;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $321;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$84 = 8;
|
|
i64toi32_i32$2 = ($13 + 28 | 0) + $84 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$334 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $82 + $84 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $334;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($13 + 24 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($13 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP32[($13 + 16 | 0) >> 2] = 0;
|
|
(wasm2js_i32$0 = $13, wasm2js_i32$1 = (btRayAabb2_28btVector3_20const__2c_20btVector3_20const__2c_20unsigned_20int_20const__2c_20btVector3_20const__2c_20float__2c_20float_2c_20float_29(HEAP32[($13 + 164 | 0) >> 2] | 0 | 0, HEAP32[($13 + 156 | 0) >> 2] | 0 | 0, HEAP32[($13 + 152 | 0) >> 2] | 0 | 0, $13 + 64 | 0 | 0, $13 + 24 | 0 | 0, Math_fround(Math_fround(HEAPF32[($13 + 20 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($13 + 148 | 0) >> 2]))) | 0) & 1 | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$4 : {
|
|
if (!(HEAP32[($13 + 16 | 0) >> 2] | 0)) {
|
|
break label$4
|
|
}
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!((btDbvtNode__isinternal_28_29_20const(HEAP32[($13 + 60 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
label$7 : {
|
|
if (!((HEAP32[($13 + 112 | 0) >> 2] | 0 | 0) > (HEAP32[($13 + 108 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
$120 = HEAP32[($13 + 136 | 0) >> 2] | 0;
|
|
$124 = (btAlignedObjectArray_btDbvtNode_20const____size_28_29_20const(HEAP32[($13 + 136 | 0) >> 2] | 0 | 0) | 0) << 1 | 0;
|
|
HEAP32[($13 + 12 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btDbvtNode_20const____resize_28int_2c_20btDbvtNode_20const__20const__29($120 | 0, $124 | 0, $13 + 12 | 0 | 0);
|
|
(wasm2js_i32$0 = $13, wasm2js_i32$1 = (btAlignedObjectArray_btDbvtNode_20const____size_28_29_20const(HEAP32[($13 + 136 | 0) >> 2] | 0 | 0) | 0) - 2 | 0), HEAP32[(wasm2js_i32$0 + 108 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
$134 = HEAP32[((HEAP32[($13 + 60 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0;
|
|
$135 = HEAP32[($13 + 136 | 0) >> 2] | 0;
|
|
$136 = HEAP32[($13 + 112 | 0) >> 2] | 0;
|
|
HEAP32[($13 + 112 | 0) >> 2] = $136 + 1 | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btDbvtNode_20const____operator_5b_5d_28int_29($135 | 0, $136 | 0) | 0, wasm2js_i32$1 = $134), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$141 = HEAP32[((HEAP32[($13 + 60 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0;
|
|
$142 = HEAP32[($13 + 136 | 0) >> 2] | 0;
|
|
$143 = HEAP32[($13 + 112 | 0) >> 2] | 0;
|
|
HEAP32[($13 + 112 | 0) >> 2] = $143 + 1 | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btDbvtNode_20const____operator_5b_5d_28int_29($142 | 0, $143 | 0) | 0, wasm2js_i32$1 = $141), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
break label$5;
|
|
}
|
|
$147 = HEAP32[($13 + 132 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$147 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($147, HEAP32[($13 + 60 | 0) >> 2] | 0);
|
|
}
|
|
}
|
|
if (HEAP32[($13 + 112 | 0) >> 2] | 0) {
|
|
continue label$3
|
|
}
|
|
break label$3;
|
|
};
|
|
}
|
|
__stack_pointer = $13 + 176 | 0;
|
|
return;
|
|
}
|
|
|
|
function BroadphaseRayTester___BroadphaseRayTester_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btDbvt__ICollide___ICollide_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btDbvtAabbMm__Mins_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btDbvtAabbMm__Maxs_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 16 | 0 | 0;
|
|
}
|
|
|
|
function btRayAabb2_28btVector3_20const__2c_20btVector3_20const__2c_20unsigned_20int_20const__2c_20btVector3_20const__2c_20float__2c_20float_2c_20float_29($0, $1, $2, $3, $4, $5, $6) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = Math_fround($5);
|
|
$6 = Math_fround($6);
|
|
var $9 = 0, $176 = 0, $25 = Math_fround(0), $185 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$9 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $9;
|
|
HEAP32[($9 + 56 | 0) >> 2] = $0;
|
|
HEAP32[($9 + 52 | 0) >> 2] = $1;
|
|
HEAP32[($9 + 48 | 0) >> 2] = $2;
|
|
HEAP32[($9 + 44 | 0) >> 2] = $3;
|
|
HEAP32[($9 + 40 | 0) >> 2] = $4;
|
|
HEAPF32[($9 + 36 | 0) >> 2] = $5;
|
|
HEAPF32[($9 + 32 | 0) >> 2] = $6;
|
|
$25 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__getX_28_29_20const((HEAP32[($9 + 44 | 0) >> 2] | 0) + ((HEAP32[(HEAP32[($9 + 48 | 0) >> 2] | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0) >> 2]) - Math_fround(HEAPF32[(btVector3__getX_28_29_20const(HEAP32[($9 + 56 | 0) >> 2] | 0 | 0) | 0) >> 2])) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const(HEAP32[($9 + 52 | 0) >> 2] | 0 | 0) | 0) >> 2]));
|
|
HEAPF32[(HEAP32[($9 + 40 | 0) >> 2] | 0) >> 2] = $25;
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__getX_28_29_20const((HEAP32[($9 + 44 | 0) >> 2] | 0) + ((1 - (HEAP32[(HEAP32[($9 + 48 | 0) >> 2] | 0) >> 2] | 0) | 0) << 4 | 0) | 0 | 0) | 0) >> 2]) - Math_fround(HEAPF32[(btVector3__getX_28_29_20const(HEAP32[($9 + 56 | 0) >> 2] | 0 | 0) | 0) >> 2])) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const(HEAP32[($9 + 52 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__getY_28_29_20const((HEAP32[($9 + 44 | 0) >> 2] | 0) + ((HEAP32[((HEAP32[($9 + 48 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0) >> 2]) - Math_fround(HEAPF32[(btVector3__getY_28_29_20const(HEAP32[($9 + 56 | 0) >> 2] | 0 | 0) | 0) >> 2])) * Math_fround(HEAPF32[(btVector3__getY_28_29_20const(HEAP32[($9 + 52 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__getY_28_29_20const((HEAP32[($9 + 44 | 0) >> 2] | 0) + ((1 - (HEAP32[((HEAP32[($9 + 48 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) | 0) << 4 | 0) | 0 | 0) | 0) >> 2]) - Math_fround(HEAPF32[(btVector3__getY_28_29_20const(HEAP32[($9 + 56 | 0) >> 2] | 0 | 0) | 0) >> 2])) * Math_fround(HEAPF32[(btVector3__getY_28_29_20const(HEAP32[($9 + 52 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : {
|
|
if (Math_fround(HEAPF32[(HEAP32[($9 + 40 | 0) >> 2] | 0) >> 2]) > Math_fround(HEAPF32[($9 + 20 | 0) >> 2]) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
if (!(Math_fround(HEAPF32[($9 + 24 | 0) >> 2]) > Math_fround(HEAPF32[($9 + 28 | 0) >> 2]) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
}
|
|
HEAP8[($9 + 63 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[($9 + 24 | 0) >> 2]) > Math_fround(HEAPF32[(HEAP32[($9 + 40 | 0) >> 2] | 0) >> 2]) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAPF32[(HEAP32[($9 + 40 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[($9 + 24 | 0) >> 2]);
|
|
}
|
|
label$5 : {
|
|
if (!(Math_fround(HEAPF32[($9 + 20 | 0) >> 2]) < Math_fround(HEAPF32[($9 + 28 | 0) >> 2]) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAPF32[($9 + 28 | 0) >> 2] = Math_fround(HEAPF32[($9 + 20 | 0) >> 2]);
|
|
}
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__getZ_28_29_20const((HEAP32[($9 + 44 | 0) >> 2] | 0) + ((HEAP32[((HEAP32[($9 + 48 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0) >> 2]) - Math_fround(HEAPF32[(btVector3__getZ_28_29_20const(HEAP32[($9 + 56 | 0) >> 2] | 0 | 0) | 0) >> 2])) * Math_fround(HEAPF32[(btVector3__getZ_28_29_20const(HEAP32[($9 + 52 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__getZ_28_29_20const((HEAP32[($9 + 44 | 0) >> 2] | 0) + ((1 - (HEAP32[((HEAP32[($9 + 48 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) | 0) << 4 | 0) | 0 | 0) | 0) >> 2]) - Math_fround(HEAPF32[(btVector3__getZ_28_29_20const(HEAP32[($9 + 56 | 0) >> 2] | 0 | 0) | 0) >> 2])) * Math_fround(HEAPF32[(btVector3__getZ_28_29_20const(HEAP32[($9 + 52 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
label$6 : {
|
|
label$7 : {
|
|
if (Math_fround(HEAPF32[(HEAP32[($9 + 40 | 0) >> 2] | 0) >> 2]) > Math_fround(HEAPF32[($9 + 12 | 0) >> 2]) & 1 | 0) {
|
|
break label$7
|
|
}
|
|
if (!(Math_fround(HEAPF32[($9 + 16 | 0) >> 2]) > Math_fround(HEAPF32[($9 + 28 | 0) >> 2]) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
}
|
|
HEAP8[($9 + 63 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
label$8 : {
|
|
if (!(Math_fround(HEAPF32[($9 + 16 | 0) >> 2]) > Math_fround(HEAPF32[(HEAP32[($9 + 40 | 0) >> 2] | 0) >> 2]) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
HEAPF32[(HEAP32[($9 + 40 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[($9 + 16 | 0) >> 2]);
|
|
}
|
|
label$9 : {
|
|
if (!(Math_fround(HEAPF32[($9 + 12 | 0) >> 2]) < Math_fround(HEAPF32[($9 + 28 | 0) >> 2]) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
HEAPF32[($9 + 28 | 0) >> 2] = Math_fround(HEAPF32[($9 + 12 | 0) >> 2]);
|
|
}
|
|
$176 = 0;
|
|
label$10 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($9 + 40 | 0) >> 2] | 0) >> 2]) < Math_fround(HEAPF32[($9 + 32 | 0) >> 2]) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
$176 = Math_fround(HEAPF32[($9 + 28 | 0) >> 2]) > Math_fround(HEAPF32[($9 + 36 | 0) >> 2]);
|
|
}
|
|
HEAP8[($9 + 63 | 0) >> 0] = $176 & 1 | 0;
|
|
}
|
|
$185 = (HEAPU8[($9 + 63 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $9 + 64 | 0;
|
|
return $185 | 0;
|
|
}
|
|
|
|
function btDbvtBroadphase__aabbTest_28btVector3_20const__2c_20btVector3_20const__2c_20btBroadphaseAabbCallback__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 60 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 56 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 52 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 48 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 60 | 0) >> 2] | 0;
|
|
BroadphaseAabbTester__BroadphaseAabbTester_28btBroadphaseAabbCallback__29($6 + 40 | 0 | 0, HEAP32[($6 + 48 | 0) >> 2] | 0 | 0) | 0;
|
|
btDbvtAabbMm__FromMM_28btVector3_20const__2c_20btVector3_20const__29($6 + 8 | 0 | 0, HEAP32[($6 + 56 | 0) >> 2] | 0 | 0, HEAP32[($6 + 52 | 0) >> 2] | 0 | 0);
|
|
btDbvt__collideTV_28btDbvtNode_20const__2c_20btDbvtAabbMm_20const__2c_20btDbvt__ICollide__29_20const($7 + 4 | 0 | 0, HEAP32[($7 + 4 | 0) >> 2] | 0 | 0, $6 + 8 | 0 | 0, $6 + 40 | 0 | 0);
|
|
btDbvt__collideTV_28btDbvtNode_20const__2c_20btDbvtAabbMm_20const__2c_20btDbvt__ICollide__29_20const(($7 + 4 | 0) + 40 | 0 | 0, HEAP32[($7 + 44 | 0) >> 2] | 0 | 0, $6 + 8 | 0 | 0, $6 + 40 | 0 | 0);
|
|
BroadphaseAabbTester___BroadphaseAabbTester_28_29($6 + 40 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function BroadphaseAabbTester__BroadphaseAabbTester_28btBroadphaseAabbCallback__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btDbvt__ICollide__ICollide_28_29($5 | 0) | 0;
|
|
HEAP32[$5 >> 2] = 90472 + 8 | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function BroadphaseAabbTester___BroadphaseAabbTester_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btDbvt__ICollide___ICollide_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btDbvtBroadphase__setAabb_28btBroadphaseProxy__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btDispatcher__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $184 = 0, $186 = 0, $193 = 0, $195 = 0, $36 = 0, $99 = Math_fround(0), $119 = Math_fround(0), $139 = Math_fround(0), $598 = 0, $608 = 0, $619 = 0, $629 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$7 = __stack_pointer - 144 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 140 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 136 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 132 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 128 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 124 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 140 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 120 | 0) >> 2] = HEAP32[($7 + 136 | 0) >> 2] | 0;
|
|
btDbvtAabbMm__FromMM_28btVector3_20const__2c_20btVector3_20const__29($7 + 88 | 0 | 0, HEAP32[($7 + 132 | 0) >> 2] | 0 | 0, HEAP32[($7 + 128 | 0) >> 2] | 0 | 0);
|
|
HEAP8[($7 + 87 | 0) >> 0] = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + 60 | 0) >> 2] | 0 | 0) == (2 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btDbvt__remove_28btDbvtNode__29(($8 + 4 | 0) + 40 | 0 | 0, HEAP32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + 48 | 0) >> 2] | 0 | 0);
|
|
$36 = btDbvt__insert_28btDbvtAabbMm_20const__2c_20void__29($8 + 4 | 0 | 0, $7 + 88 | 0 | 0, HEAP32[($7 + 120 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + 48 | 0) >> 2] = $36;
|
|
HEAP8[($7 + 87 | 0) >> 0] = 1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($8 + 128 | 0) >> 2] = (HEAP32[($8 + 128 | 0) >> 2] | 0) + 1 | 0;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((Intersect_28btDbvtAabbMm_20const__2c_20btDbvtAabbMm_20const__29(HEAP32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + 48 | 0) >> 2] | 0 | 0, $7 + 88 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($7 + 68 | 0 | 0, HEAP32[($7 + 132 | 0) >> 2] | 0 | 0, (HEAP32[($7 + 120 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($7 + 20 | 0 | 0, (HEAP32[($7 + 120 | 0) >> 2] | 0) + 32 | 0 | 0, (HEAP32[($7 + 120 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
HEAPF32[($7 + 16 | 0) >> 2] = Math_fround(2.0);
|
|
operator__28btVector3_20const__2c_20float_20const__29_1($7 + 36 | 0 | 0, $7 + 20 | 0 | 0, $7 + 16 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($7 + 52 | 0 | 0, $7 + 36 | 0 | 0, $8 + 100 | 0 | 0);
|
|
label$5 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const($7 + 68 | 0 | 0) | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
$99 = Math_fround(-Math_fround(HEAPF32[(btVector3__operator_20float__28_29($7 + 52 | 0 | 0) | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($7 + 52 | 0 | 0) | 0, wasm2js_f32$0 = $99), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
}
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($7 + 68 | 0 | 0) | 0) + 4 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$119 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float__28_29($7 + 52 | 0 | 0) | 0) + 4 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($7 + 52 | 0 | 0) | 0, wasm2js_f32$0 = $119), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
label$7 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($7 + 68 | 0 | 0) | 0) + 8 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
$139 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float__28_29($7 + 52 | 0 | 0) | 0) + 8 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($7 + 52 | 0 | 0) | 0, wasm2js_f32$0 = $139), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
label$8 : {
|
|
if (!((btDbvt__update_28btDbvtNode__2c_20btDbvtAabbMm__2c_20btVector3_20const__2c_20float_29($8 + 4 | 0 | 0, HEAP32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + 48 | 0) >> 2] | 0 | 0, $7 + 88 | 0 | 0, $7 + 52 | 0 | 0, Math_fround(Math_fround(.05000000074505806))) | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
HEAP32[($8 + 132 | 0) >> 2] = (HEAP32[($8 + 132 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP8[($7 + 87 | 0) >> 0] = 1;
|
|
}
|
|
break label$3;
|
|
}
|
|
btDbvt__update_28btDbvtNode__2c_20btDbvtAabbMm__29($8 + 4 | 0 | 0, HEAP32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + 48 | 0) >> 2] | 0 | 0, $7 + 88 | 0 | 0);
|
|
HEAP32[($8 + 132 | 0) >> 2] = (HEAP32[($8 + 132 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP8[($7 + 87 | 0) >> 0] = 1;
|
|
}
|
|
}
|
|
void_20listremove_btDbvtProxy__28btDbvtProxy__2c_20btDbvtProxy___29(HEAP32[($7 + 120 | 0) >> 2] | 0 | 0, ($8 + 84 | 0) + ((HEAP32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + 60 | 0) >> 2] | 0) << 2 | 0) | 0 | 0);
|
|
$184 = (HEAP32[($7 + 120 | 0) >> 2] | 0) + 16 | 0;
|
|
i64toi32_i32$2 = HEAP32[($7 + 132 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$598 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $184;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $598;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$186 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $186 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$608 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $184 + $186 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $608;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$193 = (HEAP32[($7 + 120 | 0) >> 2] | 0) + 32 | 0;
|
|
i64toi32_i32$2 = HEAP32[($7 + 128 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$619 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $193;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $619;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$195 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $195 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$629 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $193 + $195 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $629;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + 60 | 0) >> 2] = HEAP32[($8 + 104 | 0) >> 2] | 0;
|
|
void_20listappend_btDbvtProxy__28btDbvtProxy__2c_20btDbvtProxy___29(HEAP32[($7 + 120 | 0) >> 2] | 0 | 0, ($8 + 84 | 0) + ((HEAP32[($8 + 104 | 0) >> 2] | 0) << 2 | 0) | 0 | 0);
|
|
label$9 : {
|
|
if (!((HEAPU8[($7 + 87 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
HEAP8[($8 + 154 | 0) >> 0] = 1;
|
|
label$10 : {
|
|
if ((HEAPU8[($8 + 153 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$10
|
|
}
|
|
btDbvtTreeCollider__btDbvtTreeCollider_28btDbvtBroadphase__29($7 + 4 | 0 | 0, $8 | 0) | 0;
|
|
btDbvt__collideTTpersistentStack_28btDbvtNode_20const__2c_20btDbvtNode_20const__2c_20btDbvt__ICollide__29(($8 + 4 | 0) + 40 | 0 | 0, HEAP32[($8 + 44 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + 48 | 0) >> 2] | 0 | 0, $7 + 4 | 0 | 0);
|
|
btDbvt__collideTTpersistentStack_28btDbvtNode_20const__2c_20btDbvtNode_20const__2c_20btDbvt__ICollide__29($8 + 4 | 0 | 0, HEAP32[($8 + 4 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + 48 | 0) >> 2] | 0 | 0, $7 + 4 | 0 | 0);
|
|
btDbvtTreeCollider___btDbvtTreeCollider_28_29($7 + 4 | 0 | 0) | 0;
|
|
}
|
|
}
|
|
__stack_pointer = $7 + 144 | 0;
|
|
return;
|
|
}
|
|
|
|
function operator__28btVector3_20const__2c_20float_20const__29_1($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[(HEAP32[($5 + 8 | 0) >> 2] | 0) >> 2]));
|
|
operator__28btVector3_20const__2c_20float_20const__29($0 | 0, $6 | 0, $5 + 4 | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvt__collideTTpersistentStack_28btDbvtNode_20const__2c_20btDbvtNode_20const__2c_20btDbvt__ICollide__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $7 = 0, i64toi32_i32$2 = 0, $47 = 0, $95 = 0, $109 = 0, $123 = 0, $150 = 0, $164 = 0, $178 = 0, $192 = 0, $205 = 0, $218 = 0, $235 = 0, $246 = 0, $251 = 0, $41 = 0, $339 = 0, $356 = 0, $63 = 0, $98 = 0, $460 = 0, $112 = 0, $493 = 0, $126 = 0, $526 = 0, $153 = 0, $589 = 0, $167 = 0, $622 = 0, $181 = 0, $655 = 0, $195 = 0, $688 = 0, $208 = 0, $719 = 0, $221 = 0, $750 = 0, $238 = 0, $790 = 0, $249 = 0, $818 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 144 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 140 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 136 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 132 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 128 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 140 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($6 + 136 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
if (!((HEAP32[($6 + 132 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($6 + 124 | 0) >> 2] = 1;
|
|
HEAP32[($6 + 120 | 0) >> 2] = 124;
|
|
btDbvt__sStkNN__sStkNN_28_29($6 + 112 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btDbvt__sStkNN___resize_28int_2c_20btDbvt__sStkNN_20const__29($7 + 20 | 0 | 0, 128 | 0, $6 + 112 | 0 | 0);
|
|
btDbvt__sStkNN__sStkNN_28btDbvtNode_20const__2c_20btDbvtNode_20const__29($6 + 104 | 0 | 0, HEAP32[($6 + 136 | 0) >> 2] | 0 | 0, HEAP32[($6 + 132 | 0) >> 2] | 0 | 0) | 0;
|
|
$41 = btAlignedObjectArray_btDbvt__sStkNN___operator_5b_5d_28int_29($7 + 20 | 0 | 0, 0 | 0) | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 104 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 108 | 0) >> 2] | 0;
|
|
$339 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $41;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $339;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
label$2 : while (1) {
|
|
$47 = (HEAP32[($6 + 124 | 0) >> 2] | 0) + -1 | 0;
|
|
HEAP32[($6 + 124 | 0) >> 2] = $47;
|
|
i64toi32_i32$2 = btAlignedObjectArray_btDbvt__sStkNN___operator_5b_5d_28int_29($7 + 20 | 0 | 0, $47 | 0) | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$356 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 96 | 0) >> 2] = $356;
|
|
HEAP32[($6 + 100 | 0) >> 2] = i64toi32_i32$0;
|
|
label$3 : {
|
|
if (!((HEAP32[($6 + 124 | 0) >> 2] | 0 | 0) > (HEAP32[($6 + 120 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$63 = (btAlignedObjectArray_btDbvt__sStkNN___size_28_29_20const($7 + 20 | 0 | 0) | 0) << 1 | 0;
|
|
btDbvt__sStkNN__sStkNN_28_29($6 + 88 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btDbvt__sStkNN___resize_28int_2c_20btDbvt__sStkNN_20const__29($7 + 20 | 0 | 0, $63 | 0, $6 + 88 | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = (btAlignedObjectArray_btDbvt__sStkNN___size_28_29_20const($7 + 20 | 0 | 0) | 0) - 4 | 0), HEAP32[(wasm2js_i32$0 + 120 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!((HEAP32[($6 + 96 | 0) >> 2] | 0 | 0) == (HEAP32[($6 + 100 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
label$6 : {
|
|
if (!((btDbvtNode__isinternal_28_29_20const(HEAP32[($6 + 96 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
btDbvt__sStkNN__sStkNN_28btDbvtNode_20const__2c_20btDbvtNode_20const__29($6 + 80 | 0 | 0, HEAP32[((HEAP32[($6 + 96 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($6 + 96 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0 | 0) | 0;
|
|
$95 = HEAP32[($6 + 124 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 124 | 0) >> 2] = $95 + 1 | 0;
|
|
$98 = btAlignedObjectArray_btDbvt__sStkNN___operator_5b_5d_28int_29($7 + 20 | 0 | 0, $95 | 0) | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 80 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 84 | 0) >> 2] | 0;
|
|
$460 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $98;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $460;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
btDbvt__sStkNN__sStkNN_28btDbvtNode_20const__2c_20btDbvtNode_20const__29($6 + 72 | 0 | 0, HEAP32[((HEAP32[($6 + 96 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($6 + 96 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0 | 0) | 0;
|
|
$109 = HEAP32[($6 + 124 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 124 | 0) >> 2] = $109 + 1 | 0;
|
|
$112 = btAlignedObjectArray_btDbvt__sStkNN___operator_5b_5d_28int_29($7 + 20 | 0 | 0, $109 | 0) | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 72 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 76 | 0) >> 2] | 0;
|
|
$493 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $112;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $493;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btDbvt__sStkNN__sStkNN_28btDbvtNode_20const__2c_20btDbvtNode_20const__29($6 + 64 | 0 | 0, HEAP32[((HEAP32[($6 + 96 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($6 + 96 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0 | 0) | 0;
|
|
$123 = HEAP32[($6 + 124 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 124 | 0) >> 2] = $123 + 1 | 0;
|
|
$126 = btAlignedObjectArray_btDbvt__sStkNN___operator_5b_5d_28int_29($7 + 20 | 0 | 0, $123 | 0) | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 64 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 68 | 0) >> 2] | 0;
|
|
$526 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $126;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $526;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
}
|
|
break label$4;
|
|
}
|
|
label$7 : {
|
|
if (!((Intersect_28btDbvtAabbMm_20const__2c_20btDbvtAabbMm_20const__29(HEAP32[($6 + 96 | 0) >> 2] | 0 | 0, HEAP32[($6 + 100 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
label$8 : {
|
|
label$9 : {
|
|
if (!((btDbvtNode__isinternal_28_29_20const(HEAP32[($6 + 96 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
label$10 : {
|
|
label$11 : {
|
|
if (!((btDbvtNode__isinternal_28_29_20const(HEAP32[($6 + 100 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
btDbvt__sStkNN__sStkNN_28btDbvtNode_20const__2c_20btDbvtNode_20const__29($6 + 56 | 0 | 0, HEAP32[((HEAP32[($6 + 96 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($6 + 100 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0 | 0) | 0;
|
|
$150 = HEAP32[($6 + 124 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 124 | 0) >> 2] = $150 + 1 | 0;
|
|
$153 = btAlignedObjectArray_btDbvt__sStkNN___operator_5b_5d_28int_29($7 + 20 | 0 | 0, $150 | 0) | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 56 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 60 | 0) >> 2] | 0;
|
|
$589 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $153;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $589;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btDbvt__sStkNN__sStkNN_28btDbvtNode_20const__2c_20btDbvtNode_20const__29($6 + 48 | 0 | 0, HEAP32[((HEAP32[($6 + 96 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($6 + 100 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0 | 0) | 0;
|
|
$164 = HEAP32[($6 + 124 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 124 | 0) >> 2] = $164 + 1 | 0;
|
|
$167 = btAlignedObjectArray_btDbvt__sStkNN___operator_5b_5d_28int_29($7 + 20 | 0 | 0, $164 | 0) | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 52 | 0) >> 2] | 0;
|
|
$622 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $167;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $622;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
btDbvt__sStkNN__sStkNN_28btDbvtNode_20const__2c_20btDbvtNode_20const__29($6 + 40 | 0 | 0, HEAP32[((HEAP32[($6 + 96 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($6 + 100 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0 | 0) | 0;
|
|
$178 = HEAP32[($6 + 124 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 124 | 0) >> 2] = $178 + 1 | 0;
|
|
$181 = btAlignedObjectArray_btDbvt__sStkNN___operator_5b_5d_28int_29($7 + 20 | 0 | 0, $178 | 0) | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 40 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
$655 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $181;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $655;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btDbvt__sStkNN__sStkNN_28btDbvtNode_20const__2c_20btDbvtNode_20const__29($6 + 32 | 0 | 0, HEAP32[((HEAP32[($6 + 96 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($6 + 100 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0 | 0) | 0;
|
|
$192 = HEAP32[($6 + 124 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 124 | 0) >> 2] = $192 + 1 | 0;
|
|
$195 = btAlignedObjectArray_btDbvt__sStkNN___operator_5b_5d_28int_29($7 + 20 | 0 | 0, $192 | 0) | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 36 | 0) >> 2] | 0;
|
|
$688 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $195;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $688;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
break label$10;
|
|
}
|
|
btDbvt__sStkNN__sStkNN_28btDbvtNode_20const__2c_20btDbvtNode_20const__29($6 + 24 | 0 | 0, HEAP32[((HEAP32[($6 + 96 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0 | 0, HEAP32[($6 + 100 | 0) >> 2] | 0 | 0) | 0;
|
|
$205 = HEAP32[($6 + 124 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 124 | 0) >> 2] = $205 + 1 | 0;
|
|
$208 = btAlignedObjectArray_btDbvt__sStkNN___operator_5b_5d_28int_29($7 + 20 | 0 | 0, $205 | 0) | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
$719 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $208;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $719;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btDbvt__sStkNN__sStkNN_28btDbvtNode_20const__2c_20btDbvtNode_20const__29($6 + 16 | 0 | 0, HEAP32[((HEAP32[($6 + 96 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0 | 0, HEAP32[($6 + 100 | 0) >> 2] | 0 | 0) | 0;
|
|
$218 = HEAP32[($6 + 124 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 124 | 0) >> 2] = $218 + 1 | 0;
|
|
$221 = btAlignedObjectArray_btDbvt__sStkNN___operator_5b_5d_28int_29($7 + 20 | 0 | 0, $218 | 0) | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 20 | 0) >> 2] | 0;
|
|
$750 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $221;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $750;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
}
|
|
break label$8;
|
|
}
|
|
label$12 : {
|
|
label$13 : {
|
|
if (!((btDbvtNode__isinternal_28_29_20const(HEAP32[($6 + 100 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
btDbvt__sStkNN__sStkNN_28btDbvtNode_20const__2c_20btDbvtNode_20const__29($6 + 8 | 0 | 0, HEAP32[($6 + 96 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($6 + 100 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0 | 0) | 0;
|
|
$235 = HEAP32[($6 + 124 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 124 | 0) >> 2] = $235 + 1 | 0;
|
|
$238 = btAlignedObjectArray_btDbvt__sStkNN___operator_5b_5d_28int_29($7 + 20 | 0 | 0, $235 | 0) | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
$790 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $238;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $790;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btDbvt__sStkNN__sStkNN_28btDbvtNode_20const__2c_20btDbvtNode_20const__29($6 | 0, HEAP32[($6 + 96 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($6 + 100 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0 | 0) | 0;
|
|
$246 = HEAP32[($6 + 124 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 124 | 0) >> 2] = $246 + 1 | 0;
|
|
$249 = btAlignedObjectArray_btDbvt__sStkNN___operator_5b_5d_28int_29($7 + 20 | 0 | 0, $246 | 0) | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[$6 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
$818 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $249;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $818;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
break label$12;
|
|
}
|
|
$251 = HEAP32[($6 + 128 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$251 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($251, HEAP32[($6 + 96 | 0) >> 2] | 0, HEAP32[($6 + 100 | 0) >> 2] | 0);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if (HEAP32[($6 + 124 | 0) >> 2] | 0) {
|
|
continue label$2
|
|
}
|
|
break label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 144 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvt__sStkNN__sStkNN_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvt__sStkNN___resize_28int_2c_20btDbvt__sStkNN_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $162 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btDbvt__sStkNN___size_28_29_20const($6 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) > (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btAlignedObjectArray_btDbvt__sStkNN___reserve_28int_29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
i64toi32_i32$2 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$162 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = (HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 3 | 0) | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $162;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvt__sStkNN__sStkNN_28btDbvtNode_20const__2c_20btDbvtNode_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$6 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvt__sStkNN___operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btDbvt__sStkNN___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 3 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvt__sStkNN___size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btDbvtBroadphase__calculateOverlappingPairs_28btDispatcher__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btDbvtBroadphase__collide_28btDispatcher__29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
btDbvtBroadphase__performDeferredRemoval_28btDispatcher__29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvtBroadphase__collide_28btDispatcher__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $144 = 0, $202 = 0, $101 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 108 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 104 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 108 | 0) >> 2] | 0;
|
|
btDbvt__optimizeIncremental_28int_29($5 + 4 | 0 | 0, ((Math_imul(HEAP32[($5 + 16 | 0) >> 2] | 0, HEAP32[($5 + 112 | 0) >> 2] | 0) | 0) / (100 | 0) | 0) + 1 | 0 | 0);
|
|
label$1 : {
|
|
if (!(HEAP32[($5 + 124 | 0) >> 2] | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($4 + 100 | 0) >> 2] = ((Math_imul(HEAP32[($5 + 56 | 0) >> 2] | 0, HEAP32[($5 + 108 | 0) >> 2] | 0) | 0) / (100 | 0) | 0) + 1 | 0;
|
|
btDbvt__optimizeIncremental_28int_29(($5 + 4 | 0) + 40 | 0 | 0, ((Math_imul(HEAP32[($5 + 56 | 0) >> 2] | 0, HEAP32[($5 + 108 | 0) >> 2] | 0) | 0) / (100 | 0) | 0) + 1 | 0 | 0);
|
|
HEAP32[($4 + 96 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 92 | 0) >> 2] = (HEAP32[($5 + 124 | 0) >> 2] | 0) - (HEAP32[($4 + 100 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = HEAP32[(int_20const__20btMax_int__28int_20const__2c_20int_20const__29($4 + 96 | 0 | 0, $4 + 92 | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 124 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
HEAP32[($5 + 104 | 0) >> 2] = ((HEAP32[($5 + 104 | 0) >> 2] | 0) + 1 | 0 | 0) % (2 | 0) | 0;
|
|
HEAP32[($4 + 88 | 0) >> 2] = HEAP32[(($5 + 84 | 0) + ((HEAP32[($5 + 104 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
label$2 : {
|
|
if (!((HEAP32[($4 + 88 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
label$3 : while (1) {
|
|
HEAP32[($4 + 84 | 0) >> 2] = HEAP32[((HEAP32[($4 + 88 | 0) >> 2] | 0) + 56 | 0) >> 2] | 0;
|
|
void_20listremove_btDbvtProxy__28btDbvtProxy__2c_20btDbvtProxy___29(HEAP32[($4 + 88 | 0) >> 2] | 0 | 0, ($5 + 84 | 0) + ((HEAP32[((HEAP32[($4 + 88 | 0) >> 2] | 0) + 60 | 0) >> 2] | 0) << 2 | 0) | 0 | 0);
|
|
void_20listappend_btDbvtProxy__28btDbvtProxy__2c_20btDbvtProxy___29(HEAP32[($4 + 88 | 0) >> 2] | 0 | 0, ($5 + 84 | 0) + 8 | 0 | 0);
|
|
btDbvt__remove_28btDbvtNode__29($5 + 4 | 0 | 0, HEAP32[((HEAP32[($4 + 88 | 0) >> 2] | 0) + 48 | 0) >> 2] | 0 | 0);
|
|
btDbvtAabbMm__FromMM_28btVector3_20const__2c_20btVector3_20const__29($4 + 52 | 0 | 0, (HEAP32[($4 + 88 | 0) >> 2] | 0) + 16 | 0 | 0, (HEAP32[($4 + 88 | 0) >> 2] | 0) + 32 | 0 | 0);
|
|
$101 = btDbvt__insert_28btDbvtAabbMm_20const__2c_20void__29(($5 + 4 | 0) + 40 | 0 | 0, $4 + 52 | 0 | 0, HEAP32[($4 + 88 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[((HEAP32[($4 + 88 | 0) >> 2] | 0) + 48 | 0) >> 2] = $101;
|
|
HEAP32[((HEAP32[($4 + 88 | 0) >> 2] | 0) + 60 | 0) >> 2] = 2;
|
|
HEAP32[($4 + 88 | 0) >> 2] = HEAP32[($4 + 84 | 0) >> 2] | 0;
|
|
if ((HEAP32[($4 + 88 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
continue label$3
|
|
}
|
|
break label$3;
|
|
};
|
|
HEAP32[($5 + 124 | 0) >> 2] = HEAP32[($5 + 56 | 0) >> 2] | 0;
|
|
HEAP8[($5 + 154 | 0) >> 0] = 1;
|
|
}
|
|
btDbvtTreeCollider__btDbvtTreeCollider_28btDbvtBroadphase__29($4 + 40 | 0 | 0, $5 | 0) | 0;
|
|
label$4 : {
|
|
if (!((HEAPU8[($5 + 153 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
btDbvt__collideTTpersistentStack_28btDbvtNode_20const__2c_20btDbvtNode_20const__2c_20btDbvt__ICollide__29($5 + 4 | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0, HEAP32[($5 + 44 | 0) >> 2] | 0 | 0, $4 + 40 | 0 | 0);
|
|
}
|
|
label$5 : {
|
|
if (!((HEAPU8[($5 + 153 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btDbvt__collideTTpersistentStack_28btDbvtNode_20const__2c_20btDbvtNode_20const__2c_20btDbvt__ICollide__29($5 + 4 | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0, $4 + 40 | 0 | 0);
|
|
}
|
|
btDbvtTreeCollider___btDbvtTreeCollider_28_29($4 + 40 | 0 | 0) | 0;
|
|
label$6 : {
|
|
if (!((HEAPU8[($5 + 154 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$144 = HEAP32[($5 + 96 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$144 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($144) | 0), HEAP32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_i32$1;
|
|
label$7 : {
|
|
if (!((btAlignedObjectArray_btBroadphasePair___size_28_29_20const(HEAP32[($4 + 36 | 0) >> 2] | 0 | 0) | 0 | 0) > (0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btBroadphasePair___size_28_29_20const(HEAP32[($4 + 36 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = (Math_imul(btAlignedObjectArray_btBroadphasePair___size_28_29_20const(HEAP32[($4 + 36 | 0) >> 2] | 0 | 0) | 0, HEAP32[($5 + 116 | 0) >> 2] | 0) | 0) / (100 | 0) | 0), HEAP32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[(int_20const__20btMin_int__28int_20const__2c_20int_20const__29($4 + 28 | 0 | 0, int_20const__20btMax_int__28int_20const__2c_20int_20const__29($5 + 120 | 0 | 0, $4 + 24 | 0 | 0) | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 20 | 0) >> 2] = 0;
|
|
label$8 : {
|
|
label$9 : while (1) {
|
|
if (!((HEAP32[($4 + 20 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 32 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btBroadphasePair___operator_5b_5d_28int_29(HEAP32[($4 + 36 | 0) >> 2] | 0 | 0, ((HEAP32[($5 + 144 | 0) >> 2] | 0) + (HEAP32[($4 + 20 | 0) >> 2] | 0) | 0 | 0) % (btAlignedObjectArray_btBroadphasePair___size_28_29_20const(HEAP32[($4 + 36 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = HEAP32[(HEAP32[($4 + 16 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = HEAP32[((HEAP32[($4 + 16 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
label$10 : {
|
|
if ((Intersect_28btDbvtAabbMm_20const__2c_20btDbvtAabbMm_20const__29(HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 48 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 48 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$10
|
|
}
|
|
$202 = HEAP32[($5 + 96 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$202 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($202, HEAP32[($4 + 12 | 0) >> 2] | 0, HEAP32[($4 + 8 | 0) >> 2] | 0, HEAP32[($4 + 104 | 0) >> 2] | 0) | 0;
|
|
HEAP32[($4 + 32 | 0) >> 2] = (HEAP32[($4 + 32 | 0) >> 2] | 0) + -1 | 0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = (HEAP32[($4 + 20 | 0) >> 2] | 0) + -1 | 0;
|
|
}
|
|
HEAP32[($4 + 20 | 0) >> 2] = (HEAP32[($4 + 20 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$9;
|
|
};
|
|
}
|
|
label$11 : {
|
|
label$12 : {
|
|
if (!((btAlignedObjectArray_btBroadphasePair___size_28_29_20const(HEAP32[($4 + 36 | 0) >> 2] | 0 | 0) | 0 | 0) > (0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = ((HEAP32[($5 + 144 | 0) >> 2] | 0) + (HEAP32[($4 + 32 | 0) >> 2] | 0) | 0 | 0) % (btAlignedObjectArray_btBroadphasePair___size_28_29_20const(HEAP32[($4 + 36 | 0) >> 2] | 0 | 0) | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 144 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$11;
|
|
}
|
|
HEAP32[($5 + 144 | 0) >> 2] = 0;
|
|
}
|
|
}
|
|
}
|
|
HEAP32[($5 + 140 | 0) >> 2] = (HEAP32[($5 + 140 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($5 + 120 | 0) >> 2] = 1;
|
|
HEAP8[($5 + 154 | 0) >> 0] = 0;
|
|
label$13 : {
|
|
label$14 : {
|
|
if (!((HEAP32[($5 + 128 | 0) >> 2] | 0) >>> 0 > 0 >>> 0 & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
HEAPF32[($5 + 136 | 0) >> 2] = Math_fround(Math_fround((HEAP32[($5 + 132 | 0) >> 2] | 0) >>> 0) / Math_fround((HEAP32[($5 + 128 | 0) >> 2] | 0) >>> 0));
|
|
break label$13;
|
|
}
|
|
HEAPF32[($5 + 136 | 0) >> 2] = Math_fround(0 | 0);
|
|
}
|
|
HEAP32[($5 + 132 | 0) >> 2] = (HEAP32[($5 + 132 | 0) >> 2] | 0) >>> 1 | 0;
|
|
HEAP32[($5 + 128 | 0) >> 2] = (HEAP32[($5 + 128 | 0) >> 2] | 0) >>> 1 | 0;
|
|
__stack_pointer = $4 + 112 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvtBroadphase__performDeferredRemoval_28btDispatcher__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $5 = 0, $6 = 0, $12 = 0, $46 = 0, $47 = 0, $90 = 0, $235 = 0, $239 = 0, $109 = 0, $113 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 76 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 72 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 76 | 0) >> 2] | 0;
|
|
$6 = HEAP32[($5 + 96 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($6) | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$12 = HEAP32[($5 + 96 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$12 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($12) | 0), HEAP32[(wasm2js_i32$0 + 68 | 0) >> 2] = wasm2js_i32$1;
|
|
void_20btAlignedObjectArray_btBroadphasePair___quickSort_btBroadphasePairSortPredicate__28btBroadphasePairSortPredicate_20const__29(HEAP32[($4 + 68 | 0) >> 2] | 0 | 0, $4 + 67 | 0 | 0);
|
|
HEAP32[($4 + 60 | 0) >> 2] = 0;
|
|
btBroadphasePair__btBroadphasePair_28_29($4 + 40 | 0 | 0) | 0;
|
|
HEAP32[($4 + 40 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 44 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 48 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 56 | 0) >> 2] = 0;
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($4 + 56 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btBroadphasePair___size_28_29_20const(HEAP32[($4 + 68 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btBroadphasePair___operator_5b_5d_28int_29(HEAP32[($4 + 68 | 0) >> 2] | 0 | 0, HEAP32[($4 + 56 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = (operator___28btBroadphasePair_20const__2c_20btBroadphasePair_20const__29(HEAP32[($4 + 36 | 0) >> 2] | 0 | 0, $4 + 40 | 0 | 0) | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 35 | 0) >> 0] = wasm2js_i32$1;
|
|
$46 = HEAP32[($4 + 36 | 0) >> 2] | 0;
|
|
$47 = 8;
|
|
i64toi32_i32$2 = $46 + $47 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$235 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 40 | 0) + $47 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $235;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $46;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$239 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 40 | 0) >> 2] = $239;
|
|
HEAP32[($4 + 44 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP8[($4 + 34 | 0) >> 0] = 0;
|
|
label$4 : {
|
|
label$5 : {
|
|
if ((HEAPU8[($4 + 35 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$5
|
|
}
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[(HEAP32[($4 + 36 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = HEAP32[((HEAP32[($4 + 36 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = (Intersect_28btDbvtAabbMm_20const__2c_20btDbvtAabbMm_20const__29(HEAP32[((HEAP32[($4 + 28 | 0) >> 2] | 0) + 48 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($4 + 24 | 0) >> 2] | 0) + 48 | 0) >> 2] | 0 | 0) | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 23 | 0) >> 0] = wasm2js_i32$1;
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!((HEAPU8[($4 + 23 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAP8[($4 + 34 | 0) >> 0] = 0;
|
|
break label$6;
|
|
}
|
|
HEAP8[($4 + 34 | 0) >> 0] = 1;
|
|
}
|
|
break label$4;
|
|
}
|
|
HEAP8[($4 + 34 | 0) >> 0] = 1;
|
|
label$8 : {
|
|
if (!((HEAP32[((HEAP32[($4 + 36 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
__assert_fail(77164 | 0, 74016 | 0, 493 | 0, 77271 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
}
|
|
label$9 : {
|
|
if (!((HEAPU8[($4 + 34 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
$90 = HEAP32[($5 + 96 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$90 >> 2] | 0) + 32 | 0) >> 2] | 0 | 0]($90, HEAP32[($4 + 36 | 0) >> 2] | 0, HEAP32[($4 + 72 | 0) >> 2] | 0);
|
|
HEAP32[(HEAP32[($4 + 36 | 0) >> 2] | 0) >> 2] = 0;
|
|
HEAP32[((HEAP32[($4 + 36 | 0) >> 2] | 0) + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 60 | 0) >> 2] = (HEAP32[($4 + 60 | 0) >> 2] | 0) + 1 | 0;
|
|
}
|
|
HEAP32[($4 + 56 | 0) >> 2] = (HEAP32[($4 + 56 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
void_20btAlignedObjectArray_btBroadphasePair___quickSort_btBroadphasePairSortPredicate__28btBroadphasePairSortPredicate_20const__29(HEAP32[($4 + 68 | 0) >> 2] | 0 | 0, $4 + 22 | 0 | 0);
|
|
$109 = HEAP32[($4 + 68 | 0) >> 2] | 0;
|
|
$113 = (btAlignedObjectArray_btBroadphasePair___size_28_29_20const(HEAP32[($4 + 68 | 0) >> 2] | 0 | 0) | 0) - (HEAP32[($4 + 60 | 0) >> 2] | 0) | 0;
|
|
btBroadphasePair__btBroadphasePair_28_29($4 + 4 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btBroadphasePair___resize_28int_2c_20btBroadphasePair_20const__29($109 | 0, $113 | 0, $4 + 4 | 0 | 0);
|
|
}
|
|
__stack_pointer = $4 + 80 | 0;
|
|
return;
|
|
}
|
|
|
|
function int_20const__20btMax_int__28int_20const__2c_20int_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $15 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] | 0 | 0) > (HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$15 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
$15 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
return $15 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBroadphasePair___size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function int_20const__20btMin_int__28int_20const__2c_20int_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $15 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] | 0 | 0) < (HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$15 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
$15 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
return $15 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBroadphasePair___operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btBroadphasePair___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function void_20btAlignedObjectArray_btBroadphasePair___quickSort_btBroadphasePairSortPredicate__28btBroadphasePairSortPredicate_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btBroadphasePair___size_28_29_20const($5 | 0) | 0 | 0) > (1 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
void_20btAlignedObjectArray_btBroadphasePair___quickSortInternal_btBroadphasePairSortPredicate__28btBroadphasePairSortPredicate_20const__2c_20int_2c_20int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 0 | 0, (btAlignedObjectArray_btBroadphasePair___size_28_29_20const($5 | 0) | 0) - 1 | 0 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBroadphasePair__btBroadphasePair_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function operator___28btBroadphasePair_20const__2c_20btBroadphasePair_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $15 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$15 = 0;
|
|
label$1 : {
|
|
if (!((HEAP32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] | 0 | 0) == (HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$15 = (HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) == (HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0);
|
|
}
|
|
return $15 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBroadphasePair___resize_28int_2c_20btBroadphasePair_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btBroadphasePair___size_28_29_20const($6 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) > (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btAlignedObjectArray_btBroadphasePair___reserve_28int_29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
btBroadphasePair__btBroadphasePair_28btBroadphasePair_20const__29(btBroadphasePair__operator_20new_28unsigned_20long_2c_20void__29(16 | 0, (HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20btAlignedObjectArray_btBroadphasePair___quickSortInternal_btBroadphasePairSortPredicate__28btBroadphasePairSortPredicate_20const__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 32 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = HEAP32[($6 + 36 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = HEAP32[($6 + 32 | 0) >> 2] | 0;
|
|
btBroadphasePair__btBroadphasePair_28btBroadphasePair_20const__29($6 + 8 | 0 | 0, (HEAP32[($7 + 12 | 0) >> 2] | 0) + ((((HEAP32[($6 + 36 | 0) >> 2] | 0) + (HEAP32[($6 + 32 | 0) >> 2] | 0) | 0 | 0) / (2 | 0) | 0) << 4 | 0) | 0 | 0) | 0;
|
|
label$1 : while (1) {
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((btBroadphasePairSortPredicate__operator_28_29_28btBroadphasePair_20const__2c_20btBroadphasePair_20const__29_20const(HEAP32[($6 + 40 | 0) >> 2] | 0 | 0, (HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 28 | 0) >> 2] | 0) << 4 | 0) | 0 | 0, $6 + 8 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($6 + 28 | 0) >> 2] = (HEAP32[($6 + 28 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((btBroadphasePairSortPredicate__operator_28_29_28btBroadphasePair_20const__2c_20btBroadphasePair_20const__29_20const(HEAP32[($6 + 40 | 0) >> 2] | 0 | 0, $6 + 8 | 0 | 0, (HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 24 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP32[($6 + 24 | 0) >> 2] = (HEAP32[($6 + 24 | 0) >> 2] | 0) + -1 | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
label$6 : {
|
|
if (!((HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) <= (HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
btAlignedObjectArray_btBroadphasePair___swap_28int_2c_20int_29($7 | 0, HEAP32[($6 + 28 | 0) >> 2] | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($6 + 28 | 0) >> 2] = (HEAP32[($6 + 28 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = (HEAP32[($6 + 24 | 0) >> 2] | 0) + -1 | 0;
|
|
}
|
|
if ((HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) <= (HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
label$7 : {
|
|
if (!((HEAP32[($6 + 36 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
void_20btAlignedObjectArray_btBroadphasePair___quickSortInternal_btBroadphasePairSortPredicate__28btBroadphasePairSortPredicate_20const__2c_20int_2c_20int_29($7 | 0, HEAP32[($6 + 40 | 0) >> 2] | 0 | 0, HEAP32[($6 + 36 | 0) >> 2] | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0);
|
|
}
|
|
label$8 : {
|
|
if (!((HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 32 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
void_20btAlignedObjectArray_btBroadphasePair___quickSortInternal_btBroadphasePairSortPredicate__28btBroadphasePairSortPredicate_20const__2c_20int_2c_20int_29($7 | 0, HEAP32[($6 + 40 | 0) >> 2] | 0 | 0, HEAP32[($6 + 28 | 0) >> 2] | 0 | 0, HEAP32[($6 + 32 | 0) >> 2] | 0 | 0);
|
|
}
|
|
__stack_pointer = $6 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBroadphasePair___reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btBroadphasePair___capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btBroadphasePair___allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btBroadphasePair___copy_28int_2c_20int_2c_20btBroadphasePair__29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btBroadphasePair___size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btBroadphasePair___destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btBroadphasePair___size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btBroadphasePair___deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBroadphasePair__operator_20new_28unsigned_20long_2c_20void__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return HEAP32[($4 + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btBroadphasePair__btBroadphasePair_28btBroadphasePair_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btDbvtBroadphase__getOverlappingPairCache_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 96 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btDbvtBroadphase__getOverlappingPairCache_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 96 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btDbvtBroadphase__getBroadphaseAabb_28btVector3__2c_20btVector3__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $5 = 0, $6 = 0, $27 = 0, $54 = 0, $28 = 0, $34 = 0, $40 = 0, $55 = 0, $61 = 0, $67 = 0, $100 = 0, $108 = 0, $116 = 0, $129 = 0, $131 = 0, $139 = 0, $141 = 0, $212 = 0, $225 = 0, $238 = 0, $242 = 0, $269 = 0, $282 = 0, $295 = 0, $299 = 0, $361 = 0, $377 = 0, $393 = 0, $397 = 0, $128 = 0, $409 = 0, $419 = 0, $138 = 0, $431 = 0, $441 = 0;
|
|
$5 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 108 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 104 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 100 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 108 | 0) >> 2] | 0;
|
|
btDbvtAabbMm__btDbvtAabbMm_28_29($5 + 64 | 0 | 0) | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if ((btDbvt__empty_28_29_20const($6 + 4 | 0 | 0) | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if ((btDbvt__empty_28_29_20const(($6 + 4 | 0) + 40 | 0 | 0) | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
Merge_28btDbvtAabbMm_20const__2c_20btDbvtAabbMm_20const__2c_20btDbvtAabbMm__29(HEAP32[($6 + 4 | 0) >> 2] | 0 | 0, HEAP32[($6 + 44 | 0) >> 2] | 0 | 0, $5 + 64 | 0 | 0);
|
|
break label$3;
|
|
}
|
|
$27 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
$28 = 24;
|
|
i64toi32_i32$2 = $27 + $28 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$212 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 64 | 0) + $28 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $212;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$34 = 16;
|
|
i64toi32_i32$2 = $27 + $34 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$225 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($5 + 64 | 0) + $34 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $225;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$40 = 8;
|
|
i64toi32_i32$2 = $27 + $40 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$238 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 64 | 0) + $40 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $238;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $27;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$242 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[(i64toi32_i32$1 + 64 | 0) >> 2] = $242;
|
|
HEAP32[(i64toi32_i32$1 + 68 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
label$6 : {
|
|
if ((btDbvt__empty_28_29_20const(($6 + 4 | 0) + 40 | 0 | 0) | 0) & 1 | 0) {
|
|
break label$6
|
|
}
|
|
$54 = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
$55 = 24;
|
|
i64toi32_i32$2 = $54 + $55 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$269 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 64 | 0) + $55 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $269;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$61 = 16;
|
|
i64toi32_i32$2 = $54 + $61 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$282 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($5 + 64 | 0) + $61 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $282;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$67 = 8;
|
|
i64toi32_i32$2 = $54 + $67 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$295 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 64 | 0) + $67 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $295;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $54;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$299 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[(i64toi32_i32$1 + 64 | 0) >> 2] = $299;
|
|
HEAP32[(i64toi32_i32$1 + 68 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$5;
|
|
}
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 4 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 16 | 0 | 0, $5 + 12 | 0 | 0, $5 + 8 | 0 | 0, $5 + 4 | 0 | 0) | 0;
|
|
btDbvtAabbMm__FromCR_28btVector3_20const__2c_20float_29($5 + 32 | 0 | 0, $5 + 16 | 0 | 0, Math_fround(Math_fround(0 | 0)));
|
|
$100 = 24;
|
|
i64toi32_i32$2 = ($5 + 32 | 0) + $100 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$361 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 64 | 0) + $100 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $361;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$108 = 16;
|
|
i64toi32_i32$2 = ($5 + 32 | 0) + $108 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$377 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($5 + 64 | 0) + $108 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $377;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$116 = 8;
|
|
i64toi32_i32$2 = ($5 + 32 | 0) + $116 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$393 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 64 | 0) + $116 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $393;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[($5 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
$397 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[(i64toi32_i32$1 + 64 | 0) >> 2] = $397;
|
|
HEAP32[(i64toi32_i32$1 + 68 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
}
|
|
$128 = btDbvtAabbMm__Mins_28_29_20const($5 + 64 | 0 | 0) | 0;
|
|
$129 = HEAP32[($5 + 104 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $128;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$409 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $129;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $409;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$131 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $131 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$419 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $129 + $131 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $419;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$138 = btDbvtAabbMm__Maxs_28_29_20const($5 + 64 | 0 | 0) | 0;
|
|
$139 = HEAP32[($5 + 100 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $138;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$431 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $139;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $431;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$141 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $141 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$441 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $139 + $141 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $441;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $5 + 112 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvt__empty_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (0 | 0) == (HEAP32[(HEAP32[($3 + 12 | 0) >> 2] | 0) >> 2] | 0 | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function Merge_28btDbvtAabbMm_20const__2c_20btDbvtAabbMm_20const__2c_20btDbvtAabbMm__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $37 = Math_fround(0), $50 = Math_fround(0), $86 = Math_fround(0), $103 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$5 >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[$5 >> 2] | 0) << 2 | 0) | 0) >> 2]) < Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[$5 >> 2] | 0) << 2 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$37 = Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[$5 >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[$5 >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $37), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
break label$3;
|
|
}
|
|
$50 = Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[$5 >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[$5 >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $50), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
}
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const((HEAP32[($5 + 12 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) + ((HEAP32[$5 >> 2] | 0) << 2 | 0) | 0) >> 2]) > Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const((HEAP32[($5 + 8 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) + ((HEAP32[$5 >> 2] | 0) << 2 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$86 = Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const((HEAP32[($5 + 12 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) + ((HEAP32[$5 >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29((HEAP32[($5 + 4 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) + ((HEAP32[$5 >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $86), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
break label$5;
|
|
}
|
|
$103 = Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const((HEAP32[($5 + 8 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) + ((HEAP32[$5 >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29((HEAP32[($5 + 4 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) + ((HEAP32[$5 >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $103), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvtAabbMm__FromCR_28btVector3_20const__2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $12 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 24 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
$12 = $5 + 24 | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 8 | 0 | 0, $12 | 0, $12 | 0, $12 | 0) | 0;
|
|
btDbvtAabbMm__FromCE_28btVector3_20const__2c_20btVector3_20const__29($0 | 0, $6 | 0, $5 + 8 | 0 | 0);
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvtAabbMm__FromCE_28btVector3_20const__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $12 = 0, $24 = 0, $26 = 0, $59 = 0, $72 = 0, $90 = 0, $103 = 0;
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $2;
|
|
btDbvtAabbMm__btDbvtAabbMm_28_29($0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 24 | 0 | 0, HEAP32[($5 + 44 | 0) >> 2] | 0 | 0, HEAP32[($5 + 40 | 0) >> 2] | 0 | 0);
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
$59 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $59;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$12 = 8;
|
|
i64toi32_i32$2 = ($5 + 24 | 0) + $12 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$72 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0 + $12 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $72;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($5 + 8 | 0 | 0, HEAP32[($5 + 44 | 0) >> 2] | 0 | 0, HEAP32[($5 + 40 | 0) >> 2] | 0 | 0);
|
|
$24 = $0 + 16 | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
$90 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $24;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $90;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$26 = 8;
|
|
i64toi32_i32$2 = ($5 + 8 | 0) + $26 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$103 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $24 + $26 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $103;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvtBroadphase__resetPool_28btDispatcher__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($5 + 16 | 0) >> 2] | 0) + (HEAP32[($5 + 56 | 0) >> 2] | 0) | 0;
|
|
label$1 : {
|
|
if (HEAP32[($4 + 4 | 0) >> 2] | 0) {
|
|
break label$1
|
|
}
|
|
btDbvt__clear_28_29($5 + 4 | 0 | 0);
|
|
btDbvt__clear_28_29(($5 + 4 | 0) + 40 | 0 | 0);
|
|
HEAP8[($5 + 153 | 0) >> 0] = 0;
|
|
HEAP8[($5 + 154 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 104 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 124 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 108 | 0) >> 2] = 1;
|
|
HEAP32[($5 + 112 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 116 | 0) >> 2] = 10;
|
|
HEAP32[($5 + 120 | 0) >> 2] = 1;
|
|
HEAP32[($5 + 128 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 132 | 0) >> 2] = 0;
|
|
HEAPF32[($5 + 136 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP32[($5 + 148 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 140 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 144 | 0) >> 2] = 0;
|
|
HEAP32[$4 >> 2] = 0;
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[$4 >> 2] | 0 | 0) <= (2 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[(($5 + 84 | 0) + ((HEAP32[$4 >> 2] | 0) << 2 | 0) | 0) >> 2] = 0;
|
|
HEAP32[$4 >> 2] = (HEAP32[$4 >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvtBroadphase__printStats_28_29($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return;
|
|
}
|
|
|
|
function btBroadphaseInterface___btBroadphaseInterface_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btBroadphaseInterface__resetPool_28btDispatcher__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return;
|
|
}
|
|
|
|
function btDbvtTreeCollider___btDbvtTreeCollider_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btDbvtTreeCollider___btDbvtTreeCollider_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvtTreeCollider__Process_28btDbvtNode_20const__2c_20btDbvtNode_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $19 = 0, $24 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) != (HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($5 + 16 | 0) >> 2] = HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[((HEAP32[($5 + 20 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0;
|
|
$19 = HEAP32[((HEAP32[($6 + 4 | 0) >> 2] | 0) + 96 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$19 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($19, HEAP32[($5 + 16 | 0) >> 2] | 0, HEAP32[($5 + 12 | 0) >> 2] | 0) | 0;
|
|
$24 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($24 + 120 | 0) >> 2] = (HEAP32[($24 + 120 | 0) >> 2] | 0) + 1 | 0;
|
|
}
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvtTreeCollider__Process_28btDbvtNode_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($5, HEAP32[($4 + 8 | 0) >> 2] | 0, HEAP32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 48 | 0) >> 2] | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvt__ICollide__Process_28btDbvtNode_20const__2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($6, HEAP32[($5 + 8 | 0) >> 2] | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvt__ICollide__Descent_28btDbvtNode_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return 1 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btDbvt__ICollide__AllLeaves_28btDbvtNode_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return 1 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btDbvt__ICollide___ICollide_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btDbvt__ICollide___ICollide_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvt__ICollide__Process_28btDbvtNode_20const__2c_20btDbvtNode_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
return;
|
|
}
|
|
|
|
function btDbvt__ICollide__Process_28btDbvtNode_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvtNode_20const____reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btDbvtNode_20const____capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btDbvtNode_20const____allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btDbvtNode_20const____copy_28int_2c_20int_2c_20btDbvtNode_20const___29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btDbvtNode_20const____size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btDbvtNode_20const____destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btDbvtNode_20const____size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btDbvtNode_20const____deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvtNode_20const____capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvtNode_20const____allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btDbvtNode__isleaf_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvtNode_20const____allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btDbvtNode_20const__2c_2016u___allocate_28int_2c_20btDbvtNode_20const__20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvtNode_20const____copy_28int_2c_20int_2c_20btDbvtNode_20const___29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[((HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[((HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvtNode_20const____destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvtNode_20const____deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btDbvtNode_20const__2c_2016u___deallocate_28btDbvtNode_20const___29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btDbvtNode_20const__2c_2016u___allocate_28int_2c_20btDbvtNode_20const__20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_btDbvtNode_20const__2c_2016u___deallocate_28btDbvtNode_20const___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function BroadphaseRayTester___BroadphaseRayTester_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
BroadphaseRayTester___BroadphaseRayTester_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function BroadphaseRayTester__Process_28btDbvtNode_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $8 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0;
|
|
$8 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($8, HEAP32[($4 + 4 | 0) >> 2] | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btVector3__getX_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btVector3__getY_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0 | 0;
|
|
}
|
|
|
|
function btVector3__getZ_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0 | 0;
|
|
}
|
|
|
|
function BroadphaseAabbTester___BroadphaseAabbTester_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
BroadphaseAabbTester___BroadphaseAabbTester_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function BroadphaseAabbTester__Process_28btDbvtNode_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $8 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0;
|
|
$8 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($8, HEAP32[($4 + 4 | 0) >> 2] | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvt__sStkNN___reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btDbvt__sStkNN___capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btDbvt__sStkNN___allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btDbvt__sStkNN___copy_28int_2c_20int_2c_20btDbvt__sStkNN__29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btDbvt__sStkNN___size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btDbvt__sStkNN___destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btDbvt__sStkNN___size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btDbvt__sStkNN___deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvt__sStkNN___capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvt__sStkNN___allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btDbvt__sStkNN_2c_2016u___allocate_28int_2c_20btDbvt__sStkNN_20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvt__sStkNN___copy_28int_2c_20int_2c_20btDbvt__sStkNN__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, $7 = 0, i64toi32_i32$1 = 0, $85 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
i64toi32_i32$2 = (HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 3 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$85 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = (HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 3 | 0) | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $85;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvt__sStkNN___destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvt__sStkNN___deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btDbvt__sStkNN_2c_2016u___deallocate_28btDbvt__sStkNN__29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btDbvt__sStkNN_2c_2016u___allocate_28int_2c_20btDbvt__sStkNN_20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 3 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_btDbvt__sStkNN_2c_2016u___deallocate_28btDbvt__sStkNN__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btDbvtNode_20const_____btAlignedObjectArray_28_29((HEAP32[($6 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[$5 >> 2] | 0, 20) | 0 | 0) | 0;
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btAlignedObjectArray_btDbvtNode_20const___2c_2016u___deallocate_28btAlignedObjectArray_btDbvtNode_20const____29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btAlignedObjectArray_btDbvtNode_20const___2c_2016u___deallocate_28btAlignedObjectArray_btDbvtNode_20const____29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btAlignedObjectArray_btDbvtNode_20const___2c_2016u___allocate_28int_2c_20btAlignedObjectArray_btDbvtNode_20const___20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btAlignedObjectArray_btDbvtNode_20const_____copy_28int_2c_20int_2c_20btAlignedObjectArray_btDbvtNode_20const____29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btDbvtNode_20const____btAlignedObjectArray_28btAlignedObjectArray_btDbvtNode_20const___20const__29((HEAP32[($6 + 16 | 0) >> 2] | 0) + Math_imul(HEAP32[($6 + 12 | 0) >> 2] | 0, 20) | 0 | 0, (HEAP32[($7 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($6 + 12 | 0) >> 2] | 0, 20) | 0 | 0) | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btAlignedObjectArray_btDbvtNode_20const___2c_2016u___allocate_28int_2c_20btAlignedObjectArray_btDbvtNode_20const___20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(Math_imul(HEAP32[($5 + 8 | 0) >> 2] | 0, 20) | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btBroadphasePairSortPredicate__operator_28_29_28btBroadphasePair_20const__2c_20btBroadphasePair_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $70 = 0, $98 = 0, $17 = 0, $31 = 0, $45 = 0, $59 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[(HEAP32[($5 + 24 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$17 = HEAP32[((HEAP32[(HEAP32[($5 + 24 | 0) >> 2] | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
$17 = -1;
|
|
}
|
|
HEAP32[($5 + 16 | 0) >> 2] = $17;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAP32[(HEAP32[($5 + 20 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$31 = HEAP32[((HEAP32[(HEAP32[($5 + 20 | 0) >> 2] | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
break label$3;
|
|
}
|
|
$31 = -1;
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = $31;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$45 = HEAP32[((HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
break label$5;
|
|
}
|
|
$45 = -1;
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = $45;
|
|
label$7 : {
|
|
label$8 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 20 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
$59 = HEAP32[((HEAP32[((HEAP32[($5 + 20 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
break label$7;
|
|
}
|
|
$59 = -1;
|
|
}
|
|
HEAP32[($5 + 4 | 0) >> 2] = $59;
|
|
$70 = 1;
|
|
label$9 : {
|
|
if ((HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) > (HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$9
|
|
}
|
|
label$10 : {
|
|
if (!((HEAP32[(HEAP32[($5 + 24 | 0) >> 2] | 0) >> 2] | 0 | 0) == (HEAP32[(HEAP32[($5 + 20 | 0) >> 2] | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
$70 = 1;
|
|
if ((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) > (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$9
|
|
}
|
|
}
|
|
$98 = 0;
|
|
label$11 : {
|
|
if (!((HEAP32[(HEAP32[($5 + 24 | 0) >> 2] | 0) >> 2] | 0 | 0) == (HEAP32[(HEAP32[($5 + 20 | 0) >> 2] | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
$98 = 0;
|
|
if (!((HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) == (HEAP32[((HEAP32[($5 + 20 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
$98 = (HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) >>> 0 > (HEAP32[((HEAP32[($5 + 20 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) >>> 0;
|
|
}
|
|
$70 = $98;
|
|
}
|
|
return $70 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBroadphasePair___swap_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $6 = 0, $24 = 0, $26 = 0, $34 = 0, $36 = 0, $97 = 0, $107 = 0, $121 = 0, $134 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
btBroadphasePair__btBroadphasePair_28btBroadphasePair_20const__29($5 + 4 | 0 | 0, (HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 24 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0;
|
|
$24 = (HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 24 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = (HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 20 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$97 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $24;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $97;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$26 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $26 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$107 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $24 + $26 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $107;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$34 = (HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 20 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
$121 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $34;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $121;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$36 = 8;
|
|
i64toi32_i32$2 = ($5 + 4 | 0) + $36 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$134 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $34 + $36 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $134;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBroadphasePair___capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBroadphasePair___allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btBroadphasePair_2c_2016u___allocate_28int_2c_20btBroadphasePair_20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBroadphasePair___copy_28int_2c_20int_2c_20btBroadphasePair__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btBroadphasePair__btBroadphasePair_28btBroadphasePair_20const__29(btBroadphasePair__operator_20new_28unsigned_20long_2c_20void__29(16 | 0, (HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0 | 0, (HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBroadphasePair___destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBroadphasePair___deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btBroadphasePair_2c_2016u___deallocate_28btBroadphasePair__29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btBroadphasePair_2c_2016u___allocate_28int_2c_20btBroadphasePair_20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 4 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_btBroadphasePair_2c_2016u___deallocate_28btBroadphasePair__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btDbvtBroadphase_cpp() {
|
|
__cxx_global_var_init_4();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_5() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(113940 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btEnterProfileZoneDefault_28char_20const__29($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return;
|
|
}
|
|
|
|
function btLeaveProfileZoneDefault_28_29() {
|
|
|
|
}
|
|
|
|
function btEnterProfileZone_28char_20const__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
FUNCTION_TABLE[HEAP32[(0 + 112824 | 0) >> 2] | 0 | 0](HEAP32[($3 + 12 | 0) >> 2] | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btLeaveProfileZone_28_29() {
|
|
FUNCTION_TABLE[HEAP32[(0 + 112828 | 0) >> 2] | 0 | 0]();
|
|
return;
|
|
}
|
|
|
|
function CProfileSample__CProfileSample_28char_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btEnterProfileZone_28char_20const__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function CProfileSample___CProfileSample_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btLeaveProfileZone_28_29();
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btQuickprof_cpp() {
|
|
__cxx_global_var_init_5();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_6() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(113944 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__btHashedOverlappingPairCache_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btOverlappingPairCache__btOverlappingPairCache_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 90544 + 8 | 0;
|
|
btAlignedObjectArray_btBroadphasePair___btAlignedObjectArray_28_29($4 + 4 | 0 | 0) | 0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_int___btAlignedObjectArray_28_29($4 + 28 | 0 | 0) | 0;
|
|
btAlignedObjectArray_int___btAlignedObjectArray_28_29($4 + 48 | 0 | 0) | 0;
|
|
HEAP32[($4 + 68 | 0) >> 2] = 0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = 2;
|
|
btAlignedObjectArray_btBroadphasePair___reserve_28int_29($4 + 4 | 0 | 0, HEAP32[($3 + 8 | 0) >> 2] | 0 | 0);
|
|
btHashedOverlappingPairCache__growTables_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btOverlappingPairCache__btOverlappingPairCache_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btOverlappingPairCallback__btOverlappingPairCallback_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 90736 + 8 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBroadphasePair___btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btBroadphasePair_2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btBroadphasePair___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__growTables_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $22 = 0, $29 = 0, $97 = 0, $102 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$3 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 44 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 44 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btAlignedObjectArray_btBroadphasePair___capacity_28_29_20const($4 + 4 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_int___size_28_29_20const($4 + 28 | 0 | 0) | 0 | 0) < (HEAP32[($3 + 40 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btAlignedObjectArray_int___size_28_29_20const($4 + 28 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_i32$1;
|
|
$22 = HEAP32[($3 + 40 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 32 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_int___resize_28int_2c_20int_20const__29($4 + 28 | 0 | 0, $22 | 0, $3 + 32 | 0 | 0);
|
|
$29 = HEAP32[($3 + 40 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 28 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_int___resize_28int_2c_20int_20const__29($4 + 48 | 0 | 0, $29 | 0, $3 + 28 | 0 | 0);
|
|
HEAP32[($3 + 24 | 0) >> 2] = 0;
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($3 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($3 + 40 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($4 + 28 | 0 | 0, HEAP32[($3 + 24 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = -1), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[($3 + 24 | 0) >> 2] = (HEAP32[($3 + 24 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
HEAP32[($3 + 24 | 0) >> 2] = 0;
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((HEAP32[($3 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($3 + 40 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($4 + 48 | 0 | 0, HEAP32[($3 + 24 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = -1), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[($3 + 24 | 0) >> 2] = (HEAP32[($3 + 24 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
HEAP32[($3 + 24 | 0) >> 2] = 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($3 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($3 + 36 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btAlignedObjectArray_btBroadphasePair___operator_5b_5d_28int_29($4 + 4 | 0 | 0, HEAP32[($3 + 24 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btBroadphaseProxy__getUid_28_29_20const(HEAP32[(HEAP32[($3 + 20 | 0) >> 2] | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btBroadphaseProxy__getUid_28_29_20const(HEAP32[((HEAP32[($3 + 20 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = (btHashedOverlappingPairCache__getHash_28unsigned_20int_2c_20unsigned_20int_29($4 | 0, HEAP32[($3 + 16 | 0) >> 2] | 0 | 0, HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0) & ((btAlignedObjectArray_btBroadphasePair___capacity_28_29_20const($4 + 4 | 0 | 0) | 0) - 1 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
$97 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($4 + 28 | 0 | 0, HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($4 + 48 | 0 | 0, HEAP32[($3 + 24 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $97), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$102 = HEAP32[($3 + 24 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($4 + 28 | 0 | 0, HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $102), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[($3 + 24 | 0) >> 2] = (HEAP32[($3 + 24 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
__stack_pointer = $3 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btOverlappingPairCallback__btOverlappingPairCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 90812 + 8 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_btBroadphasePair_2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBroadphasePair___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_int___operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_int___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btBroadphaseProxy__getUid_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__getHash_28unsigned_20int_2c_20unsigned_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0 | ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 16 | 0) | 0;
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + (((HEAP32[$5 >> 2] | 0) << 15 | 0) ^ -1 | 0) | 0;
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) ^ ((HEAP32[$5 >> 2] | 0) >>> 10 | 0) | 0;
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + ((HEAP32[$5 >> 2] | 0) << 3 | 0) | 0;
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) ^ ((HEAP32[$5 >> 2] | 0) >>> 6 | 0) | 0;
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + (((HEAP32[$5 >> 2] | 0) << 11 | 0) ^ -1 | 0) | 0;
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) ^ ((HEAP32[$5 >> 2] | 0) >>> 16 | 0) | 0;
|
|
return HEAP32[$5 >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache___btHashedOverlappingPairCache_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 90544 + 8 | 0;
|
|
btAlignedObjectArray_int____btAlignedObjectArray_28_29($4 + 48 | 0 | 0) | 0;
|
|
btAlignedObjectArray_int____btAlignedObjectArray_28_29($4 + 28 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btBroadphasePair____btAlignedObjectArray_28_29($4 + 4 | 0 | 0) | 0;
|
|
btOverlappingPairCache___btOverlappingPairCache_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBroadphasePair____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btBroadphasePair___clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btOverlappingPairCache___btOverlappingPairCache_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btOverlappingPairCallback___btOverlappingPairCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBroadphasePair___clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btBroadphasePair___destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btBroadphasePair___size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btBroadphasePair___deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btBroadphasePair___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache___btHashedOverlappingPairCache_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[479 | 0]($4) | 0;
|
|
btHashedOverlappingPairCache__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__cleanOverlappingPair_28btBroadphasePair__2c_20btDispatcher__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $22 = 0, $25 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
label$1 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
if (!((HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$22 = HEAP32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$22 >> 2] | 0) >> 2] | 0 | 0]($22) | 0;
|
|
$25 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$25 >> 2] | 0) + 60 | 0) >> 2] | 0 | 0]($25, HEAP32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0);
|
|
HEAP32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__cleanProxyFromPairs_28btBroadphaseProxy__2c_20btDispatcher__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
btHashedOverlappingPairCache__cleanProxyFromPairs_28btBroadphaseProxy__2c_20btDispatcher__29__CleanPairCallback__CleanPairCallback_28btBroadphaseProxy__2c_20btOverlappingPairCache__2c_20btDispatcher__29($5 + 4 | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0, $6 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($6, $5 + 4 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0);
|
|
btHashedOverlappingPairCache__cleanProxyFromPairs_28btBroadphaseProxy__2c_20btDispatcher__29__CleanPairCallback___CleanPairCallback_28_29($5 + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__cleanProxyFromPairs_28btBroadphaseProxy__2c_20btDispatcher__29__CleanPairCallback__CleanPairCallback_28btBroadphaseProxy__2c_20btOverlappingPairCache__2c_20btDispatcher__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btOverlapCallback__btOverlapCallback_28_29($7 | 0) | 0;
|
|
HEAP32[$7 >> 2] = 90840 + 8 | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 8 | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 12 | 0) >> 2] = HEAP32[$6 >> 2] | 0;
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__cleanProxyFromPairs_28btBroadphaseProxy__2c_20btDispatcher__29__CleanPairCallback___CleanPairCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btOverlapCallback___btOverlapCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btOverlapCallback__btOverlapCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 91012 + 8 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btOverlapCallback___btOverlapCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__removeOverlappingPairsContainingProxy_28btBroadphaseProxy__2c_20btDispatcher__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
btHashedOverlappingPairCache__removeOverlappingPairsContainingProxy_28btBroadphaseProxy__2c_20btDispatcher__29__RemovePairCallback__RemovePairCallback_28btBroadphaseProxy__29($5 + 12 | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($6, $5 + 12 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0);
|
|
btHashedOverlappingPairCache__removeOverlappingPairsContainingProxy_28btBroadphaseProxy__2c_20btDispatcher__29__RemovePairCallback___RemovePairCallback_28_29($5 + 12 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__removeOverlappingPairsContainingProxy_28btBroadphaseProxy__2c_20btDispatcher__29__RemovePairCallback__RemovePairCallback_28btBroadphaseProxy__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btOverlapCallback__btOverlapCallback_28_29($5 | 0) | 0;
|
|
HEAP32[$5 >> 2] = 91032 + 8 | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__removeOverlappingPairsContainingProxy_28btBroadphaseProxy__2c_20btDispatcher__29__RemovePairCallback___RemovePairCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btOverlapCallback___btOverlapCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__findPair_28btBroadphaseProxy__2c_20btBroadphaseProxy__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $63 = 0, $110 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 16 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
HEAP32[(0 + 113960 | 0) >> 2] = (HEAP32[(0 + 113960 | 0) >> 2] | 0) + 1 | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 20 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) > (HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
void_20btSwap_btBroadphaseProxy___28btBroadphaseProxy___2c_20btBroadphaseProxy___29($5 + 20 | 0 | 0, $5 + 16 | 0 | 0);
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btBroadphaseProxy__getUid_28_29_20const(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btBroadphaseProxy__getUid_28_29_20const(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = (btHashedOverlappingPairCache__getHash_28unsigned_20int_2c_20unsigned_20int_29($6 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) & ((btAlignedObjectArray_btBroadphasePair___capacity_28_29_20const($6 + 4 | 0 | 0) | 0) - 1 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) >= (btAlignedObjectArray_int___size_28_29_20const($6 + 28 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 28 | 0) >> 2] = 0;
|
|
break label$2;
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 28 | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
label$4 : while (1) {
|
|
$63 = 0;
|
|
label$5 : {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) != (-1 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
$63 = ((btHashedOverlappingPairCache__equalsPair_28btBroadphasePair_20const__2c_20int_2c_20int_29($6 | 0, btAlignedObjectArray_btBroadphasePair___operator_5b_5d_28int_29($6 + 4 | 0 | 0, HEAP32[$5 >> 2] | 0 | 0) | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) & 1 | 0 | 0) == (0 | 0);
|
|
}
|
|
label$6 : {
|
|
if (!($63 & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 48 | 0 | 0, HEAP32[$5 >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
continue label$4;
|
|
}
|
|
break label$4;
|
|
};
|
|
label$7 : {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) == (-1 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAP32[($5 + 28 | 0) >> 2] = 0;
|
|
break label$2;
|
|
}
|
|
label$8 : {
|
|
if ((HEAP32[$5 >> 2] | 0 | 0) < (btAlignedObjectArray_btBroadphasePair___size_28_29_20const($6 + 4 | 0 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$8
|
|
}
|
|
__assert_fail(87330 | 0, 75261 | 0, 164 | 0, 71055 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btBroadphasePair___operator_5b_5d_28int_29($6 + 4 | 0 | 0, HEAP32[$5 >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
$110 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return $110 | 0;
|
|
}
|
|
|
|
function void_20btSwap_btBroadphaseProxy___28btBroadphaseProxy___2c_20btBroadphaseProxy___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] = HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__equalsPair_28btBroadphasePair_20const__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $17 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$17 = 0;
|
|
label$1 : {
|
|
if (!((btBroadphaseProxy__getUid_28_29_20const(HEAP32[(HEAP32[($6 + 8 | 0) >> 2] | 0) >> 2] | 0 | 0) | 0 | 0) == (HEAP32[($6 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$17 = (btBroadphaseProxy__getUid_28_29_20const(HEAP32[((HEAP32[($6 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) | 0 | 0) == (HEAP32[$6 >> 2] | 0 | 0);
|
|
}
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return $17 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__internalAddPair_28btBroadphaseProxy__2c_20btBroadphaseProxy__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $63 = 0, $89 = 0, $100 = 0, $105 = 0, $111 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 36 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 32 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 40 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 36 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) > (HEAP32[((HEAP32[($5 + 32 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
void_20btSwap_btBroadphaseProxy___28btBroadphaseProxy___2c_20btBroadphaseProxy___29($5 + 36 | 0 | 0, $5 + 32 | 0 | 0);
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btBroadphaseProxy__getUid_28_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btBroadphaseProxy__getUid_28_29_20const(HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = (btHashedOverlappingPairCache__getHash_28unsigned_20int_2c_20unsigned_20int_29($6 | 0, HEAP32[($5 + 28 | 0) >> 2] | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) & ((btAlignedObjectArray_btBroadphasePair___capacity_28_29_20const($6 + 4 | 0 | 0) | 0) - 1 | 0) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btHashedOverlappingPairCache__internalFindPair_28btBroadphaseProxy__2c_20btBroadphaseProxy__2c_20int_29($6 | 0, HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, HEAP32[($5 + 32 | 0) >> 2] | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 44 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
break label$2;
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btBroadphasePair___size_28_29_20const($6 + 4 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btBroadphasePair___capacity_28_29_20const($6 + 4 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btBroadphasePair___expandNonInitializing_28_29($6 + 4 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$4 : {
|
|
if (!((HEAP32[($6 + 68 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$63 = HEAP32[($6 + 68 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$63 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($63, HEAP32[($5 + 36 | 0) >> 2] | 0, HEAP32[($5 + 32 | 0) >> 2] | 0) | 0;
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btBroadphasePair___capacity_28_29_20const($6 + 4 | 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[$5 >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btHashedOverlappingPairCache__growTables_28_29($6 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = (btHashedOverlappingPairCache__getHash_28unsigned_20int_2c_20unsigned_20int_29($6 | 0, HEAP32[($5 + 28 | 0) >> 2] | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) & ((btAlignedObjectArray_btBroadphasePair___capacity_28_29_20const($6 + 4 | 0 | 0) | 0) - 1 | 0) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
$89 = btBroadphasePair__operator_20new_28unsigned_20long_2c_20void__29(16 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
btBroadphasePair__btBroadphasePair_28btBroadphaseProxy__2c_20btBroadphaseProxy__29($89 | 0, HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($5 + 16 | 0) >> 2] = $89;
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 8 | 0) >> 2] = 0;
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 12 | 0) >> 2] = 0;
|
|
$100 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 28 | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 48 | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $100), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$105 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 28 | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $105), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[($5 + 44 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
}
|
|
$111 = HEAP32[($5 + 44 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return $111 | 0;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__internalFindPair_28btBroadphaseProxy__2c_20btBroadphaseProxy__2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $25 = 0, $72 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btBroadphaseProxy__getUid_28_29_20const(HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btBroadphaseProxy__getUid_28_29_20const(HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($7 + 28 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
label$1 : while (1) {
|
|
$25 = 0;
|
|
label$2 : {
|
|
if (!((HEAP32[$6 >> 2] | 0 | 0) != (-1 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$25 = ((btHashedOverlappingPairCache__equalsPair_28btBroadphasePair_20const__2c_20int_2c_20int_29($7 | 0, btAlignedObjectArray_btBroadphasePair___operator_5b_5d_28int_29($7 + 4 | 0 | 0, HEAP32[$6 >> 2] | 0 | 0) | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0, HEAP32[($6 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0 | 0) == (0 | 0);
|
|
}
|
|
label$3 : {
|
|
if (!($25 & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($7 + 48 | 0 | 0, HEAP32[$6 >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
continue label$1;
|
|
}
|
|
break label$1;
|
|
};
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!((HEAP32[$6 >> 2] | 0 | 0) == (-1 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAP32[($6 + 28 | 0) >> 2] = 0;
|
|
break label$4;
|
|
}
|
|
label$6 : {
|
|
if ((HEAP32[$6 >> 2] | 0 | 0) < (btAlignedObjectArray_btBroadphasePair___size_28_29_20const($7 + 4 | 0 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$6
|
|
}
|
|
__assert_fail(87330 | 0, 79562 | 0, 255 | 0, 71064 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btAlignedObjectArray_btBroadphasePair___operator_5b_5d_28int_29($7 + 4 | 0 | 0, HEAP32[$6 >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
$72 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return $72 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBroadphasePair___expandNonInitializing_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0, $22 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btAlignedObjectArray_btBroadphasePair___size_28_29_20const($4 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btBroadphasePair___capacity_28_29_20const($4 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btBroadphasePair___reserve_28int_29($4 | 0, btAlignedObjectArray_btBroadphasePair___allocSize_28int_29($4 | 0, btAlignedObjectArray_btBroadphasePair___size_28_29_20const($4 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
$22 = (HEAP32[($4 + 12 | 0) >> 2] | 0) + ((HEAP32[($3 + 8 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $22 | 0;
|
|
}
|
|
|
|
function btBroadphasePair__btBroadphasePair_28btBroadphaseProxy__2c_20btBroadphaseProxy__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $1;
|
|
HEAP32[$5 >> 2] = $2;
|
|
$6 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $6;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 4 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) < (HEAP32[((HEAP32[$5 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[$6 >> 2] = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[$5 >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[$6 >> 2] = HEAP32[$5 >> 2] | 0;
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($6 + 8 | 0) >> 2] = 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = 0;
|
|
return HEAP32[($5 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBroadphasePair___allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__removeOverlappingPair_28btBroadphaseProxy__2c_20btBroadphaseProxy__2c_20btDispatcher__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $188 = 0, $298 = 0, $300 = 0, $162 = 0, $171 = 0, $277 = 0, $286 = 0, $294 = 0, $922 = 0, $932 = 0, $308 = 0, $313 = 0, $321 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 56 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 52 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 48 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 44 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 56 | 0) >> 2] | 0;
|
|
HEAP32[(0 + 113952 | 0) >> 2] = (HEAP32[(0 + 113952 | 0) >> 2] | 0) + 1 | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[((HEAP32[($6 + 52 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) > (HEAP32[((HEAP32[($6 + 48 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
void_20btSwap_btBroadphaseProxy___28btBroadphaseProxy___2c_20btBroadphaseProxy___29($6 + 52 | 0 | 0, $6 + 48 | 0 | 0);
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btBroadphaseProxy__getUid_28_29_20const(HEAP32[($6 + 52 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btBroadphaseProxy__getUid_28_29_20const(HEAP32[($6 + 48 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = (btHashedOverlappingPairCache__getHash_28unsigned_20int_2c_20unsigned_20int_29($7 | 0, HEAP32[($6 + 40 | 0) >> 2] | 0 | 0, HEAP32[($6 + 36 | 0) >> 2] | 0 | 0) | 0) & ((btAlignedObjectArray_btBroadphasePair___capacity_28_29_20const($7 + 4 | 0 | 0) | 0) - 1 | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btHashedOverlappingPairCache__internalFindPair_28btBroadphaseProxy__2c_20btBroadphaseProxy__2c_20int_29($7 | 0, HEAP32[($6 + 52 | 0) >> 2] | 0 | 0, HEAP32[($6 + 48 | 0) >> 2] | 0 | 0, HEAP32[($6 + 32 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($6 + 60 | 0) >> 2] = 0;
|
|
break label$2;
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 32 | 0) >> 2] | 0 | 0]($7, HEAP32[($6 + 28 | 0) >> 2] | 0, HEAP32[($6 + 44 | 0) >> 2] | 0);
|
|
HEAP32[($6 + 24 | 0) >> 2] = HEAP32[((HEAP32[($6 + 28 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
label$4 : {
|
|
if ((btBroadphaseProxy__getUid_28_29_20const(HEAP32[(HEAP32[($6 + 28 | 0) >> 2] | 0) >> 2] | 0 | 0) | 0 | 0) == (HEAP32[($6 + 40 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
__assert_fail(85549 | 0, 75261 | 0, 295 | 0, 71006 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$5 : {
|
|
if ((btBroadphaseProxy__getUid_28_29_20const(HEAP32[((HEAP32[($6 + 28 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) | 0 | 0) == (HEAP32[($6 + 36 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$5
|
|
}
|
|
__assert_fail(85405 | 0, 75261 | 0, 296 | 0, 71006 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = ((HEAP32[($6 + 28 | 0) >> 2] | 0) - (btAlignedObjectArray_btBroadphasePair___operator_5b_5d_28int_29($7 + 4 | 0 | 0, 0 | 0) | 0) | 0) >> 4 | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
label$6 : {
|
|
if ((HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btBroadphasePair___size_28_29_20const($7 + 4 | 0 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$6
|
|
}
|
|
__assert_fail(87368 | 0, 75261 | 0, 299 | 0, 71006 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($7 + 28 | 0 | 0, HEAP32[($6 + 32 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$7 : {
|
|
if ((HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) != (-1 | 0) & 1 | 0) {
|
|
break label$7
|
|
}
|
|
__assert_fail(84035 | 0, 75261 | 0, 303 | 0, 71006 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($6 + 12 | 0) >> 2] = -1;
|
|
label$8 : {
|
|
label$9 : while (1) {
|
|
if (!((HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) != (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($7 + 48 | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
continue label$9;
|
|
};
|
|
}
|
|
label$10 : {
|
|
label$11 : {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) != (-1 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
label$12 : {
|
|
if ((HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($7 + 48 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) == (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$12
|
|
}
|
|
__assert_fail(66363 | 0, 75261 | 0, 314 | 0, 71006 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$162 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($7 + 48 | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($7 + 48 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $162), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
break label$10;
|
|
}
|
|
$171 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($7 + 48 | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($7 + 28 | 0 | 0, HEAP32[($6 + 32 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $171), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = (btAlignedObjectArray_btBroadphasePair___size_28_29_20const($7 + 4 | 0 | 0) | 0) - 1 | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
label$13 : {
|
|
if (!((HEAP32[($7 + 68 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
$188 = HEAP32[($7 + 68 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$188 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($188, HEAP32[($6 + 52 | 0) >> 2] | 0, HEAP32[($6 + 48 | 0) >> 2] | 0, HEAP32[($6 + 44 | 0) >> 2] | 0) | 0;
|
|
}
|
|
label$14 : {
|
|
if (!((HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) == (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
btAlignedObjectArray_btBroadphasePair___pop_back_28_29($7 + 4 | 0 | 0);
|
|
HEAP32[($6 + 60 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
break label$2;
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btAlignedObjectArray_btBroadphasePair___operator_5b_5d_28int_29($7 + 4 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = (btHashedOverlappingPairCache__getHash_28unsigned_20int_2c_20unsigned_20int_29($7 | 0, btBroadphaseProxy__getUid_28_29_20const(HEAP32[(HEAP32[($6 + 4 | 0) >> 2] | 0) >> 2] | 0 | 0) | 0 | 0, btBroadphaseProxy__getUid_28_29_20const(HEAP32[((HEAP32[($6 + 4 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) & ((btAlignedObjectArray_btBroadphasePair___capacity_28_29_20const($7 + 4 | 0 | 0) | 0) - 1 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($7 + 28 | 0 | 0, HEAP32[$6 >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$15 : {
|
|
if ((HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) != (-1 | 0) & 1 | 0) {
|
|
break label$15
|
|
}
|
|
__assert_fail(84035 | 0, 75261 | 0, 344 | 0, 71006 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($6 + 12 | 0) >> 2] = -1;
|
|
label$16 : {
|
|
label$17 : while (1) {
|
|
if (!((HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) != (HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($7 + 48 | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
continue label$17;
|
|
};
|
|
}
|
|
label$18 : {
|
|
label$19 : {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) != (-1 | 0) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
label$20 : {
|
|
if ((HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($7 + 48 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) == (HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$20
|
|
}
|
|
__assert_fail(66393 | 0, 75261 | 0, 355 | 0, 71006 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$277 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($7 + 48 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($7 + 48 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $277), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
break label$18;
|
|
}
|
|
$286 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($7 + 48 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($7 + 28 | 0 | 0, HEAP32[$6 >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $286), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
}
|
|
$294 = btAlignedObjectArray_btBroadphasePair___operator_5b_5d_28int_29($7 + 4 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
$298 = btAlignedObjectArray_btBroadphasePair___operator_5b_5d_28int_29($7 + 4 | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0;
|
|
i64toi32_i32$2 = $294;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$922 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $298;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $922;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$300 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $300 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$932 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $298 + $300 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $932;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$308 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($7 + 28 | 0 | 0, HEAP32[$6 >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($7 + 48 | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $308), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$313 = HEAP32[($6 + 20 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($7 + 28 | 0 | 0, HEAP32[$6 >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $313), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btBroadphasePair___pop_back_28_29($7 + 4 | 0 | 0);
|
|
HEAP32[($6 + 60 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
}
|
|
$321 = HEAP32[($6 + 60 | 0) >> 2] | 0;
|
|
__stack_pointer = $6 + 64 | 0;
|
|
return $321 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBroadphasePair___pop_back_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) > (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85800 | 0, 78192 | 0, 201 | 0, 77711 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + -1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__processAllOverlappingPairs_28btOverlapCallback__2c_20btDispatcher__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $25 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
CProfileSample__CProfileSample_28char_20const__29($5 + 19 | 0 | 0, 69522 | 0) | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btBroadphasePair___size_28_29_20const($6 + 4 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btBroadphasePair___operator_5b_5d_28int_29($6 + 4 | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
$25 = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$25 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($25, HEAP32[($5 + 8 | 0) >> 2] | 0) | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($6, HEAP32[(HEAP32[($5 + 8 | 0) >> 2] | 0) >> 2] | 0, HEAP32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0, HEAP32[($5 + 20 | 0) >> 2] | 0) | 0;
|
|
HEAP32[(0 + 113948 | 0) >> 2] = (HEAP32[(0 + 113948 | 0) >> 2] | 0) + -1 | 0;
|
|
break label$3;
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
}
|
|
continue label$2;
|
|
};
|
|
}
|
|
CProfileSample___CProfileSample_28_29($5 + 19 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__sortOverlappingPairs_28btDispatcher__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0;
|
|
$4 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 40 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 44 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btBroadphasePair___btAlignedObjectArray_28_29($4 + 20 | 0 | 0) | 0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btBroadphasePair___size_28_29_20const($5 + 4 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btBroadphasePair___push_back_28btBroadphasePair_20const__29($4 + 20 | 0 | 0, btAlignedObjectArray_btBroadphasePair___operator_5b_5d_28int_29($5 + 4 | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
HEAP32[($4 + 16 | 0) >> 2] = (HEAP32[($4 + 16 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
HEAP32[($4 + 16 | 0) >> 2] = 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btBroadphasePair___size_28_29_20const($4 + 20 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
((((wasm2js_i32$1 = $5, wasm2js_i32$2 = HEAP32[(btAlignedObjectArray_btBroadphasePair___operator_5b_5d_28int_29($4 + 20 | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), wasm2js_i32$3 = HEAP32[((btAlignedObjectArray_btBroadphasePair___operator_5b_5d_28int_29($4 + 20 | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2] | 0), wasm2js_i32$4 = HEAP32[($4 + 40 | 0) >> 2] | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$5 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, wasm2js_i32$3 | 0, wasm2js_i32$4 | 0) | 0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = (HEAP32[($4 + 16 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
HEAP32[($4 + 16 | 0) >> 2] = 0;
|
|
label$5 : {
|
|
label$6 : while (1) {
|
|
if (!((HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_int___size_28_29_20const($5 + 48 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($5 + 48 | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$4 = -1), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$4;
|
|
HEAP32[($4 + 16 | 0) >> 2] = (HEAP32[($4 + 16 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$6;
|
|
};
|
|
}
|
|
void_20btAlignedObjectArray_btBroadphasePair___quickSort_btBroadphasePairSortPredicate__28btBroadphasePairSortPredicate_20const__29($4 + 20 | 0 | 0, $4 + 15 | 0 | 0);
|
|
HEAP32[($4 + 16 | 0) >> 2] = 0;
|
|
label$7 : {
|
|
label$8 : while (1) {
|
|
if (!((HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btBroadphasePair___size_28_29_20const($4 + 20 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
(((wasm2js_i32$4 = $5, wasm2js_i32$3 = HEAP32[(btAlignedObjectArray_btBroadphasePair___operator_5b_5d_28int_29($4 + 20 | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), wasm2js_i32$2 = HEAP32[((btAlignedObjectArray_btBroadphasePair___operator_5b_5d_28int_29($4 + 20 | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2] | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$5 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$4 | 0, wasm2js_i32$3 | 0, wasm2js_i32$2 | 0) | 0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = (HEAP32[($4 + 16 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$8;
|
|
};
|
|
}
|
|
btAlignedObjectArray_btBroadphasePair____btAlignedObjectArray_28_29($4 + 20 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBroadphasePair___push_back_28btBroadphasePair_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btBroadphasePair___size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btBroadphasePair___capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btBroadphasePair___reserve_28int_29($5 | 0, btAlignedObjectArray_btBroadphasePair___allocSize_28int_29($5 | 0, btAlignedObjectArray_btBroadphasePair___size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
btBroadphasePair__btBroadphasePair_28btBroadphasePair_20const__29(btBroadphasePair__operator_20new_28unsigned_20long_2c_20void__29(16 | 0, (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__addOverlappingPair_28btBroadphaseProxy__2c_20btBroadphaseProxy__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $21 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $1;
|
|
HEAP32[$5 >> 2] = $2;
|
|
$6 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
HEAP32[(0 + 113956 | 0) >> 2] = (HEAP32[(0 + 113956 | 0) >> 2] | 0) + 1 | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if ((btHashedOverlappingPairCache__needsBroadphaseCollision_28btBroadphaseProxy__2c_20btBroadphaseProxy__29_20const($6 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0, HEAP32[$5 >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btHashedOverlappingPairCache__internalAddPair_28btBroadphaseProxy__2c_20btBroadphaseProxy__29($6 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0, HEAP32[$5 >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
$21 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $21 | 0;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__needsBroadphaseCollision_28btBroadphaseProxy__2c_20btBroadphaseProxy__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $14 = 0, $37 = 0, $55 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 16 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$14 = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = (FUNCTION_TABLE[HEAP32[((HEAP32[$14 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($14, HEAP32[($5 + 20 | 0) >> 2] | 0, HEAP32[($5 + 16 | 0) >> 2] | 0) | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 31 | 0) >> 0] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP8[($5 + 15 | 0) >> 0] = ((HEAP32[((HEAP32[($5 + 20 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) & (HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) | 0 | 0) != (0 | 0) & 1 | 0;
|
|
$37 = 0;
|
|
label$3 : {
|
|
if (!((HEAPU8[($5 + 15 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$37 = ((HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) & (HEAP32[((HEAP32[($5 + 20 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) | 0 | 0) != (0 | 0);
|
|
}
|
|
HEAP8[($5 + 15 | 0) >> 0] = $37 & 1 | 0;
|
|
HEAP8[($5 + 31 | 0) >> 0] = (HEAPU8[($5 + 15 | 0) >> 0] | 0) & 1 | 0;
|
|
}
|
|
$55 = (HEAPU8[($5 + 31 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return $55 | 0;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__getOverlappingPairArrayPtr_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $8 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$8 = btAlignedObjectArray_btBroadphasePair___operator_5b_5d_28int_29((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0 | 0, 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__getOverlappingPairArrayPtr_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $8 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$8 = btAlignedObjectArray_btBroadphasePair___operator_5b_5d_28int_29_20const((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0 | 0, 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBroadphasePair___operator_5b_5d_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 176 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btBroadphasePair___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 177 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__getOverlappingPairArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0 | 0;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__getNumOverlappingPairs_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $7 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$7 = btAlignedObjectArray_btBroadphasePair___size_28_29_20const((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__setOverlapFilterCallback_28btOverlapFilterCallback__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 24 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__hasDeferredRemoval_28_29($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 0 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__setInternalGhostPairCallback_28btOverlappingPairCallback__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 68 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btOverlappingPairCallback___btOverlappingPairCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btOverlappingPairCache___btOverlappingPairCache_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btOverlappingPairCallback___btOverlappingPairCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__cleanProxyFromPairs_28btBroadphaseProxy__2c_20btDispatcher__29__CleanPairCallback___CleanPairCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btHashedOverlappingPairCache__cleanProxyFromPairs_28btBroadphaseProxy__2c_20btDispatcher__29__CleanPairCallback___CleanPairCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__cleanProxyFromPairs_28btBroadphaseProxy__2c_20btDispatcher__29__CleanPairCallback__processOverlap_28btBroadphasePair__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $22 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if ((HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0 | 0) == (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
if (!((HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) == (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
}
|
|
$22 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$22 >> 2] | 0) + 32 | 0) >> 2] | 0 | 0]($22, HEAP32[($4 + 8 | 0) >> 2] | 0, HEAP32[($5 + 12 | 0) >> 2] | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return 0 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btOverlapCallback___btOverlapCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__removeOverlappingPairsContainingProxy_28btBroadphaseProxy__2c_20btDispatcher__29__RemovePairCallback___RemovePairCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btHashedOverlappingPairCache__removeOverlappingPairsContainingProxy_28btBroadphaseProxy__2c_20btDispatcher__29__RemovePairCallback___RemovePairCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHashedOverlappingPairCache__removeOverlappingPairsContainingProxy_28btBroadphaseProxy__2c_20btDispatcher__29__RemovePairCallback__processOverlap_28btBroadphasePair__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $15 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$15 = 1;
|
|
label$1 : {
|
|
if ((HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0 | 0) == (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
$15 = (HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) == (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0);
|
|
}
|
|
return $15 & 1 | 0 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btOverlappingPairCache_cpp() {
|
|
__cxx_global_var_init_6();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_7() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(113964 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btDispatcher___btDispatcher_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btDispatcher___btDispatcher_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btDispatcher_cpp() {
|
|
__cxx_global_var_init_7();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_8() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(113968 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionDispatcher__btCollisionDispatcher_28btCollisionConfiguration__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $16 = 0, $20 = 0, $40 = 0, $77 = 0, $45 = 0, $82 = 0, $99 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $5;
|
|
btDispatcher__btDispatcher_28_29($5 | 0) | 0;
|
|
HEAP32[$5 >> 2] = 91292 + 8 | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = 2;
|
|
btAlignedObjectArray_btPersistentManifold____btAlignedObjectArray_28_29($5 + 8 | 0 | 0) | 0;
|
|
btManifoldResult__btManifoldResult_28_29($5 + 28 | 0 | 0) | 0;
|
|
HEAP32[($5 + 10444 | 0) >> 2] = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
btCollisionDispatcher__setNearCallback_28void_20_28__29_28btBroadphasePair__2c_20btCollisionDispatcher__2c_20btDispatcherInfo_20const__29_29($5 | 0, 510 | 0);
|
|
$16 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$16 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($16) | 0), HEAP32[(wasm2js_i32$0 + 68 | 0) >> 2] = wasm2js_i32$1;
|
|
$20 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$20 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($20) | 0), HEAP32[(wasm2js_i32$0 + 72 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 16 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) < (36 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) < (36 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$40 = HEAP32[($5 + 10444 | 0) >> 2] | 0;
|
|
$45 = FUNCTION_TABLE[HEAP32[((HEAP32[$40 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($40, HEAP32[($4 + 16 | 0) >> 2] | 0, HEAP32[($4 + 12 | 0) >> 2] | 0) | 0;
|
|
HEAP32[((($5 + 76 | 0) + Math_imul(HEAP32[($4 + 16 | 0) >> 2] | 0, 144) | 0) + ((HEAP32[($4 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = $45;
|
|
label$5 : {
|
|
if ((HEAP32[((($5 + 76 | 0) + Math_imul(HEAP32[($4 + 16 | 0) >> 2] | 0, 144) | 0) + ((HEAP32[($4 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$5
|
|
}
|
|
__assert_fail(83849 | 0, 72837 | 0, 54 | 0, 71229 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$77 = HEAP32[($5 + 10444 | 0) >> 2] | 0;
|
|
$82 = FUNCTION_TABLE[HEAP32[((HEAP32[$77 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($77, HEAP32[($4 + 16 | 0) >> 2] | 0, HEAP32[($4 + 12 | 0) >> 2] | 0) | 0;
|
|
HEAP32[((($5 + 5260 | 0) + Math_imul(HEAP32[($4 + 16 | 0) >> 2] | 0, 144) | 0) + ((HEAP32[($4 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = $82;
|
|
HEAP32[($4 + 12 | 0) >> 2] = (HEAP32[($4 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
HEAP32[($4 + 16 | 0) >> 2] = (HEAP32[($4 + 16 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
$99 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return $99 | 0;
|
|
}
|
|
|
|
function btDispatcher__btDispatcher_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 91196 + 8 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btPersistentManifold____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btPersistentManifold__2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btPersistentManifold____init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btManifoldResult__btManifoldResult_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btDiscreteCollisionDetectorInterface__Result__Result_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 96512 + 8 | 0;
|
|
HEAPF32[($4 + 32 | 0) >> 2] = Math_fround(0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionDispatcher__defaultNearCallback_28btBroadphasePair__2c_20btCollisionDispatcher__2c_20btDispatcherInfo_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $12 = 0, $29 = 0, $39 = 0, $48 = 0, $87 = 0, $101 = 0, $59 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 108 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 104 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 100 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 96 | 0) >> 2] = HEAP32[(HEAP32[(HEAP32[($5 + 108 | 0) >> 2] | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 92 | 0) >> 2] = HEAP32[(HEAP32[((HEAP32[($5 + 108 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) >> 2] | 0;
|
|
$12 = HEAP32[($5 + 104 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$12 >> 2] | 0) + 24 | 0) >> 2] | 0 | 0]($12, HEAP32[($5 + 96 | 0) >> 2] | 0, HEAP32[($5 + 92 | 0) >> 2] | 0) | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$29 = -1;
|
|
btCollisionObjectWrapper__btCollisionObjectWrapper_28btCollisionObjectWrapper_20const__2c_20btCollisionShape_20const__2c_20btCollisionObject_20const__2c_20btTransform_20const__2c_20int_2c_20int_29($5 + 68 | 0 | 0, 0 | 0, btCollisionObject__getCollisionShape_28_29(HEAP32[($5 + 96 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($5 + 96 | 0) >> 2] | 0 | 0, btCollisionObject__getWorldTransform_28_29(HEAP32[($5 + 96 | 0) >> 2] | 0 | 0) | 0 | 0, $29 | 0, $29 | 0) | 0;
|
|
$39 = -1;
|
|
btCollisionObjectWrapper__btCollisionObjectWrapper_28btCollisionObjectWrapper_20const__2c_20btCollisionShape_20const__2c_20btCollisionObject_20const__2c_20btTransform_20const__2c_20int_2c_20int_29($5 + 44 | 0 | 0, 0 | 0, btCollisionObject__getCollisionShape_28_29(HEAP32[($5 + 92 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($5 + 92 | 0) >> 2] | 0 | 0, btCollisionObject__getWorldTransform_28_29(HEAP32[($5 + 92 | 0) >> 2] | 0 | 0) | 0 | 0, $39 | 0, $39 | 0) | 0;
|
|
label$2 : {
|
|
if ((HEAP32[((HEAP32[($5 + 108 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
$48 = HEAP32[($5 + 104 | 0) >> 2] | 0;
|
|
$59 = FUNCTION_TABLE[HEAP32[((HEAP32[$48 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($48, $5 + 68 | 0, $5 + 44 | 0, 0, 1) | 0;
|
|
HEAP32[((HEAP32[($5 + 108 | 0) >> 2] | 0) + 8 | 0) >> 2] = $59;
|
|
}
|
|
label$3 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 108 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
btManifoldResult__btManifoldResult_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($5 + 8 | 0 | 0, $5 + 68 | 0 | 0, $5 + 44 | 0 | 0) | 0;
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 100 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) == (1 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
$87 = HEAP32[((HEAP32[($5 + 108 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$87 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($87, $5 + 68 | 0, $5 + 44 | 0, HEAP32[($5 + 100 | 0) >> 2] | 0, $5 + 8 | 0);
|
|
break label$4;
|
|
}
|
|
$101 = HEAP32[((HEAP32[($5 + 108 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$101 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($101, HEAP32[($5 + 96 | 0) >> 2] | 0, HEAP32[($5 + 92 | 0) >> 2] | 0, HEAP32[($5 + 100 | 0) >> 2] | 0, $5 + 8 | 0))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[((HEAP32[($5 + 100 | 0) >> 2] | 0) + 12 | 0) >> 2]) > Math_fround(HEAPF32[($5 + 4 | 0) >> 2]) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAPF32[((HEAP32[($5 + 100 | 0) >> 2] | 0) + 12 | 0) >> 2] = Math_fround(HEAPF32[($5 + 4 | 0) >> 2]);
|
|
}
|
|
}
|
|
btManifoldResult___btManifoldResult_28_29($5 + 8 | 0 | 0) | 0;
|
|
}
|
|
}
|
|
__stack_pointer = $5 + 112 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionDispatcher__setNearCallback_28void_20_28__29_28btBroadphasePair__2c_20btCollisionDispatcher__2c_20btDispatcherInfo_20const__29_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 64 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btPersistentManifold__2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btPersistentManifold____init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteCollisionDetectorInterface__Result__Result_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 91400 + 8 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionObjectWrapper__btCollisionObjectWrapper_28btCollisionObjectWrapper_20const__2c_20btCollisionShape_20const__2c_20btCollisionObject_20const__2c_20btTransform_20const__2c_20int_2c_20int_29($0, $1, $2, $3, $4, $5, $6) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
var $9 = 0, $10 = 0;
|
|
$9 = __stack_pointer - 32 | 0;
|
|
HEAP32[($9 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($9 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($9 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($9 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($9 + 12 | 0) >> 2] = $4;
|
|
HEAP32[($9 + 8 | 0) >> 2] = $5;
|
|
HEAP32[($9 + 4 | 0) >> 2] = $6;
|
|
$10 = HEAP32[($9 + 28 | 0) >> 2] | 0;
|
|
HEAP32[$10 >> 2] = HEAP32[($9 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($10 + 4 | 0) >> 2] = HEAP32[($9 + 20 | 0) >> 2] | 0;
|
|
HEAP32[($10 + 8 | 0) >> 2] = HEAP32[($9 + 16 | 0) >> 2] | 0;
|
|
HEAP32[($10 + 12 | 0) >> 2] = HEAP32[($9 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($10 + 16 | 0) >> 2] = HEAP32[($9 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($10 + 20 | 0) >> 2] = HEAP32[($9 + 4 | 0) >> 2] | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btManifoldResult___btManifoldResult_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btDiscreteCollisionDetectorInterface__Result___Result_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionDispatcher___btCollisionDispatcher_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 91292 + 8 | 0;
|
|
btManifoldResult___btManifoldResult_28_29($4 + 28 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btPersistentManifold_____btAlignedObjectArray_28_29($4 + 8 | 0 | 0) | 0;
|
|
btDispatcher___btDispatcher_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btPersistentManifold_____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btPersistentManifold____clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btDiscreteCollisionDetectorInterface__Result___Result_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btPersistentManifold____clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btPersistentManifold____destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btPersistentManifold____size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btPersistentManifold____deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btPersistentManifold____init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionDispatcher___btCollisionDispatcher_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[511 | 0]($4) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionDispatcher__getNewManifold_28btCollisionObject_20const__2c_20btCollisionObject_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $16 = 0, $23 = 0, $37 = Math_fround(0), $75 = 0, $83 = 0, $90 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 36 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 44 | 0) >> 2] | 0;
|
|
HEAP32[(0 + 113972 | 0) >> 2] = (HEAP32[(0 + 113972 | 0) >> 2] | 0) + 1 | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($6 + 4 | 0) >> 2] | 0) & 2 | 0)) {
|
|
break label$2
|
|
}
|
|
$16 = btCollisionObject__getCollisionShape_28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$16 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($16, Math_fround(HEAPF32[(0 + 112840 | 0) >> 2])))), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
$23 = btCollisionObject__getCollisionShape_28_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$23 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($23, Math_fround(HEAPF32[(0 + 112840 | 0) >> 2])))), HEAPF32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_f32$0;
|
|
$37 = Math_fround(HEAPF32[(float_20const__20btMin_float__28float_20const__2c_20float_20const__29($5 + 28 | 0 | 0, $5 + 24 | 0 | 0) | 0) >> 2]);
|
|
break label$1;
|
|
}
|
|
$37 = Math_fround(HEAPF32[(0 + 112840 | 0) >> 2]);
|
|
}
|
|
HEAPF32[($5 + 32 | 0) >> 2] = $37;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btCollisionObject__getContactProcessingThreshold_28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btCollisionObject__getContactProcessingThreshold_28_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(HEAPF32[(float_20const__20btMin_float__28float_20const__2c_20float_20const__29($5 + 16 | 0 | 0, $5 + 12 | 0 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btPoolAllocator__allocate_28int_29(HEAP32[($6 + 72 | 0) >> 2] | 0 | 0, 868 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
label$3 : {
|
|
if (!((0 | 0) == (HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
label$4 : {
|
|
label$5 : {
|
|
if ((HEAP32[($6 + 4 | 0) >> 2] | 0) & 4 | 0) {
|
|
break label$5
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(868 | 0, 16 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$4;
|
|
}
|
|
__assert_fail(86177 | 0, 72837 | 0, 103 | 0, 82734 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
}
|
|
$75 = btPersistentManifold__operator_20new_28unsigned_20long_2c_20void__29(868 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
btPersistentManifold__btPersistentManifold_28btCollisionObject_20const__2c_20btCollisionObject_20const__2c_20int_2c_20float_2c_20float_29($75 | 0, HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 32 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($5 + 20 | 0) >> 2]))) | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $75;
|
|
$83 = btAlignedObjectArray_btPersistentManifold____size_28_29_20const($6 + 8 | 0 | 0) | 0;
|
|
HEAP32[((HEAP32[($5 + 4 | 0) >> 2] | 0) + 864 | 0) >> 2] = $83;
|
|
btAlignedObjectArray_btPersistentManifold____push_back_28btPersistentManifold__20const__29($6 + 8 | 0 | 0, $5 + 4 | 0 | 0);
|
|
$90 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return $90 | 0;
|
|
}
|
|
|
|
function float_20const__20btMin_float__28float_20const__2c_20float_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $13 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2]) < Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2]) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$13 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
$13 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
return $13 | 0;
|
|
}
|
|
|
|
function btCollisionObject__getContactProcessingThreshold_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 184 | 0) >> 2]));
|
|
}
|
|
|
|
function btPoolAllocator__allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $35 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btMutexLock_28btSpinMutex__29($5 + 20 | 0 | 0);
|
|
label$1 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$1
|
|
}
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) <= (HEAP32[$5 >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(80907 | 0, 78639 | 0, 77 | 0, 81385 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
label$2 : {
|
|
if (!((0 | 0) != (HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[(HEAP32[($5 + 12 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + -1 | 0;
|
|
}
|
|
btMutexUnlock_28btSpinMutex__29($5 + 20 | 0 | 0);
|
|
$35 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $35 | 0;
|
|
}
|
|
|
|
function btPersistentManifold__operator_20new_28unsigned_20long_2c_20void__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return HEAP32[($4 + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btPersistentManifold__btPersistentManifold_28btCollisionObject_20const__2c_20btCollisionObject_20const__2c_20int_2c_20float_2c_20float_29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = Math_fround($4);
|
|
$5 = Math_fround($5);
|
|
var $8 = 0, $9 = 0, $12 = 0, $15 = 0, $16 = 0, $18 = 0, $14 = 0, $29 = 0;
|
|
$8 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 16 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 12 | 0) >> 2] = $3;
|
|
HEAPF32[($8 + 8 | 0) >> 2] = $4;
|
|
HEAPF32[($8 + 4 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $9;
|
|
btTypedObject__btTypedObject_28int_29($9 | 0, 1025 | 0) | 0;
|
|
$12 = $9 + 4 | 0;
|
|
$14 = $12 + 832 | 0;
|
|
$15 = $12;
|
|
label$1 : while (1) {
|
|
$16 = $15;
|
|
btManifoldPoint__btManifoldPoint_28_29($16 | 0) | 0;
|
|
$18 = $16 + 208 | 0;
|
|
$15 = $18;
|
|
if (!(($18 | 0) == ($14 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
HEAP32[($9 + 836 | 0) >> 2] = HEAP32[($8 + 20 | 0) >> 2] | 0;
|
|
HEAP32[($9 + 840 | 0) >> 2] = HEAP32[($8 + 16 | 0) >> 2] | 0;
|
|
HEAP32[($9 + 844 | 0) >> 2] = 0;
|
|
HEAPF32[($9 + 848 | 0) >> 2] = Math_fround(HEAPF32[($8 + 8 | 0) >> 2]);
|
|
HEAPF32[($9 + 852 | 0) >> 2] = Math_fround(HEAPF32[($8 + 4 | 0) >> 2]);
|
|
$29 = HEAP32[($8 + 28 | 0) >> 2] | 0;
|
|
__stack_pointer = $8 + 32 | 0;
|
|
return $29 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btPersistentManifold____size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btPersistentManifold____push_back_28btPersistentManifold__20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btPersistentManifold____size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btPersistentManifold____capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btPersistentManifold____reserve_28int_29($5 | 0, btAlignedObjectArray_btPersistentManifold____allocSize_28int_29($5 | 0, btAlignedObjectArray_btPersistentManifold____size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btMutexLock_28btSpinMutex__29($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return;
|
|
}
|
|
|
|
function btMutexUnlock_28btSpinMutex__29($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return;
|
|
}
|
|
|
|
function btTypedObject__btTypedObject_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btManifoldPoint__btManifoldPoint_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($4 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 16 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 32 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 48 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 64 | 0 | 0) | 0;
|
|
HEAP32[($4 + 116 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 120 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 124 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 128 | 0) >> 2] = 0;
|
|
HEAPF32[($4 + 132 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 136 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 140 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 144 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 148 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 152 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 156 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 160 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP32[($4 + 164 | 0) >> 2] = 0;
|
|
btVector3__btVector3_28_29($4 + 168 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 184 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btPersistentManifold____capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btPersistentManifold____allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btPersistentManifold____reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btPersistentManifold____capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btPersistentManifold____allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btPersistentManifold____copy_28int_2c_20int_2c_20btPersistentManifold___29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btPersistentManifold____size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btPersistentManifold____destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btPersistentManifold____size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btPersistentManifold____deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionDispatcher__clearManifold_28btPersistentManifold__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btPersistentManifold__clearManifold_28_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPersistentManifold__clearManifold_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $32 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 844 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btPersistentManifold__clearUserCache_28btManifoldPoint__29($4 | 0, ($4 + 4 | 0) + Math_imul(HEAP32[($3 + 8 | 0) >> 2] | 0, 208) | 0 | 0);
|
|
HEAP32[($3 + 8 | 0) >> 2] = (HEAP32[($3 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
label$3 : {
|
|
if (!((HEAP32[(0 + 115364 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
if (!(HEAP32[($4 + 844 | 0) >> 2] | 0)) {
|
|
break label$3
|
|
}
|
|
$32 = HEAP32[(0 + 115364 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 4 | 0) >> 2] = $4;
|
|
FUNCTION_TABLE[$32 | 0]($3 + 4 | 0);
|
|
}
|
|
HEAP32[($4 + 844 | 0) >> 2] = 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionDispatcher__releaseManifold_28btPersistentManifold__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $37 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[(0 + 113972 | 0) >> 2] = (HEAP32[(0 + 113972 | 0) >> 2] | 0) + -1 | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5, HEAP32[($4 + 8 | 0) >> 2] | 0);
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 864 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btPersistentManifold____size_28_29_20const($5 + 8 | 0 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(87569 | 0, 72837 | 0, 130 | 0, 82749 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
btAlignedObjectArray_btPersistentManifold____swap_28int_2c_20int_29($5 + 8 | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, (btAlignedObjectArray_btPersistentManifold____size_28_29_20const($5 + 8 | 0 | 0) | 0) - 1 | 0 | 0);
|
|
$37 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = HEAP32[(btAlignedObjectArray_btPersistentManifold____operator_5b_5d_28int_29($5 + 8 | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0, wasm2js_i32$1 = $37), HEAP32[(wasm2js_i32$0 + 864 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btPersistentManifold____pop_back_28_29($5 + 8 | 0 | 0);
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((btPoolAllocator__validPtr_28void__29(HEAP32[($5 + 72 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
btPoolAllocator__freeMemory_28void__29(HEAP32[($5 + 72 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
break label$2;
|
|
}
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btPersistentManifold____swap_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[$5 >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btPersistentManifold____operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btPersistentManifold____size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btPersistentManifold____pop_back_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) > (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85800 | 0, 78192 | 0, 201 | 0, 77711 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + -1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPoolAllocator__validPtr_28void__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
label$3 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0) >>> 0 >= (HEAP32[($5 + 16 | 0) >> 2] | 0) >>> 0 & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0) >>> 0 < ((HEAP32[($5 + 16 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 4 | 0) >> 2] | 0, HEAP32[$5 >> 2] | 0) | 0) >>> 0 & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP8[($4 + 15 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
}
|
|
HEAP8[($4 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
}
|
|
return (HEAPU8[($4 + 15 | 0) >> 0] | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function btPoolAllocator__freeMemory_28void__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((HEAP32[($4 + 8 | 0) >> 2] | 0) >>> 0 >= (HEAP32[($5 + 16 | 0) >> 2] | 0) >>> 0 & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0) >>> 0 < ((HEAP32[($5 + 16 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 4 | 0) >> 2] | 0, HEAP32[$5 >> 2] | 0) | 0) >>> 0 & 1 | 0) {
|
|
break label$2
|
|
}
|
|
}
|
|
__assert_fail(80933 | 0, 78639 | 0, 103 | 0, 65938 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
btMutexLock_28btSpinMutex__29($5 + 20 | 0 | 0);
|
|
HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
btMutexUnlock_28btSpinMutex__29($5 + 20 | 0 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionDispatcher__findAlgorithm_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btPersistentManifold__2c_20ebtDispatcherQueryType_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0, $35 = 0, $58 = 0, $67 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
btCollisionAlgorithmConstructionInfo__btCollisionAlgorithmConstructionInfo_28_29($7 + 4 | 0 | 0) | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = $8;
|
|
HEAP32[($7 + 8 | 0) >> 2] = HEAP32[($7 + 16 | 0) >> 2] | 0;
|
|
HEAP32[$7 >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) == (1 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$35 = HEAP32[((($8 + 76 | 0) + Math_imul(btCollisionShape__getShapeType_28_29_20const(btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 24 | 0) >> 2] | 0 | 0) | 0 | 0) | 0, 144) | 0) + ((btCollisionShape__getShapeType_28_29_20const(btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 20 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$35 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($35, $7 + 4 | 0, HEAP32[($7 + 24 | 0) >> 2] | 0, HEAP32[($7 + 20 | 0) >> 2] | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
$58 = HEAP32[((($8 + 5260 | 0) + Math_imul(btCollisionShape__getShapeType_28_29_20const(btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 24 | 0) >> 2] | 0 | 0) | 0 | 0) | 0, 144) | 0) + ((btCollisionShape__getShapeType_28_29_20const(btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 20 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$58 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($58, $7 + 4 | 0, HEAP32[($7 + 24 | 0) >> 2] | 0, HEAP32[($7 + 20 | 0) >> 2] | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
}
|
|
$67 = HEAP32[$7 >> 2] | 0;
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return $67 | 0;
|
|
}
|
|
|
|
function btCollisionAlgorithmConstructionInfo__btCollisionAlgorithmConstructionInfo_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionObjectWrapper__getCollisionShape_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btCollisionDispatcher__needsResponse_28btCollisionObject_20const__2c_20btCollisionObject_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $11 = 0, $21 = 0, $27 = 0, $38 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$11 = 0;
|
|
label$1 : {
|
|
if (!((btCollisionObject__hasContactResponse_28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$11 = btCollisionObject__hasContactResponse_28_29_20const(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
}
|
|
HEAP8[($5 + 3 | 0) >> 0] = $11 & 1 | 0;
|
|
$21 = 0;
|
|
label$2 : {
|
|
if (!((HEAPU8[($5 + 3 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$27 = 1;
|
|
label$3 : {
|
|
if (!((btCollisionObject__isStaticOrKinematicObject_28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$27 = (btCollisionObject__isStaticOrKinematicObject_28_29_20const(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) ^ -1 | 0;
|
|
}
|
|
$21 = $27;
|
|
}
|
|
HEAP8[($5 + 3 | 0) >> 0] = $21 & 1 | 0;
|
|
$38 = (HEAPU8[($5 + 3 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $38 | 0;
|
|
}
|
|
|
|
function btCollisionDispatcher__needsCollision_28btCollisionObject_20const__2c_20btCollisionObject_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $68 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85674 | 0, 72837 | 0, 185 | 0, 76874 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(85464 | 0, 72837 | 0, 186 | 0, 76874 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP8[($5 + 3 | 0) >> 0] = 1;
|
|
label$3 : {
|
|
if ((HEAP32[($6 + 4 | 0) >> 2] | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
label$4 : {
|
|
if (!((btCollisionObject__isStaticOrKinematicObject_28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
if (!((btCollisionObject__isStaticOrKinematicObject_28_29_20const(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0 | 1 | 0;
|
|
printf(88581 | 0, 0 | 0) | 0;
|
|
}
|
|
}
|
|
label$5 : {
|
|
label$6 : {
|
|
if ((btCollisionObject__isActive_28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$6
|
|
}
|
|
if ((btCollisionObject__isActive_28_29_20const(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$6
|
|
}
|
|
HEAP8[($5 + 3 | 0) >> 0] = 0;
|
|
break label$5;
|
|
}
|
|
label$7 : {
|
|
label$8 : {
|
|
if (!((btCollisionObject__checkCollideWith_28btCollisionObject_20const__29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
if ((btCollisionObject__checkCollideWith_28btCollisionObject_20const__29_20const(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$7
|
|
}
|
|
}
|
|
HEAP8[($5 + 3 | 0) >> 0] = 0;
|
|
}
|
|
}
|
|
$68 = (HEAPU8[($5 + 3 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $68 | 0;
|
|
}
|
|
|
|
function btCollisionObject__checkCollideWith_28btCollisionObject_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $18 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($5 + 280 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = (FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($5, HEAP32[($4 + 4 | 0) >> 2] | 0) | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 15 | 0) >> 0] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP8[($4 + 15 | 0) >> 0] = 1 & 1 | 0;
|
|
}
|
|
$18 = (HEAPU8[($4 + 15 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $18 | 0;
|
|
}
|
|
|
|
function btCollisionDispatcher__dispatchAllCollisionPairs_28btOverlappingPairCache__2c_20btDispatcherInfo_20const__2c_20btDispatcher__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $12 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
btCollisionPairCallback__btCollisionPairCallback_28btDispatcherInfo_20const__2c_20btCollisionDispatcher__29($6 + 4 | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0;
|
|
$12 = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$12 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($12, $6 + 4 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0);
|
|
btCollisionPairCallback___btCollisionPairCallback_28_29($6 + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionPairCallback__btCollisionPairCallback_28btDispatcherInfo_20const__2c_20btCollisionDispatcher__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btOverlapCallback__btOverlapCallback_28_29($6 | 0) | 0;
|
|
HEAP32[$6 >> 2] = 91484 + 8 | 0;
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btCollisionPairCallback___btCollisionPairCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btOverlapCallback___btOverlapCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionDispatcher__allocateCollisionAlgorithm_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $20 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btPoolAllocator__allocate_28int_29(HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 68 | 0) >> 2] | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((0 | 0) == (HEAP32[$4 >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 16 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = HEAP32[$4 >> 2] | 0;
|
|
}
|
|
$20 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $20 | 0;
|
|
}
|
|
|
|
function btCollisionDispatcher__freeCollisionAlgorithm_28void__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((btPoolAllocator__validPtr_28void__29(HEAP32[($5 + 68 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btPoolAllocator__freeMemory_28void__29(HEAP32[($5 + 68 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
break label$1;
|
|
}
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionDispatcher__getNumManifolds_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $7 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$7 = btAlignedObjectArray_btPersistentManifold____size_28_29_20const((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btCollisionDispatcher__getManifoldByIndexInternal_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $10 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$10 = HEAP32[(btAlignedObjectArray_btPersistentManifold____operator_5b_5d_28int_29((HEAP32[($4 + 12 | 0) >> 2] | 0) + 8 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btCollisionDispatcher__getInternalManifoldPointer_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $12 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(btAlignedObjectArray_btPersistentManifold____size_28_29_20const($4 + 8 | 0 | 0) | 0)) {
|
|
break label$2
|
|
}
|
|
$12 = btAlignedObjectArray_btPersistentManifold____operator_5b_5d_28int_29($4 + 8 | 0 | 0, 0 | 0) | 0;
|
|
break label$1;
|
|
}
|
|
$12 = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $12 | 0;
|
|
}
|
|
|
|
function btCollisionDispatcher__getInternalManifoldPool_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btCollisionDispatcher__getInternalManifoldPool_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btDiscreteCollisionDetectorInterface__Result___Result_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btCollisionPairCallback___btCollisionPairCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionPairCallback___btCollisionPairCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionPairCallback__processOverlap_28btBroadphasePair__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $7 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$7 = btCollisionDispatcher__getNearCallback_28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
FUNCTION_TABLE[$7 | 0](HEAP32[($4 + 8 | 0) >> 2] | 0, HEAP32[($5 + 8 | 0) >> 2] | 0, HEAP32[($5 + 4 | 0) >> 2] | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return 0 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btCollisionDispatcher__getNearCallback_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 64 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btPersistentManifold____destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btPersistentManifold____deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btPersistentManifold__2c_2016u___deallocate_28btPersistentManifold___29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btPersistentManifold__2c_2016u___deallocate_28btPersistentManifold___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btPersistentManifold____allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btPersistentManifold__2c_2016u___allocate_28int_2c_20btPersistentManifold__20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btPersistentManifold____copy_28int_2c_20int_2c_20btPersistentManifold___29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[((HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[((HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btPersistentManifold__2c_2016u___allocate_28int_2c_20btPersistentManifold__20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btCollisionDispatcher_cpp() {
|
|
__cxx_global_var_init_8();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_9() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(113976 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionObject__btCollisionObject_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 44 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 44 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 91544 + 8 | 0;
|
|
btTransform__btTransform_28_29($4 + 4 | 0 | 0) | 0;
|
|
btTransform__btTransform_28_29($4 + 68 | 0 | 0) | 0;
|
|
HEAPF32[($3 + 40 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 36 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 32 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 132 | 0 | 0, $3 + 40 | 0 | 0, $3 + 36 | 0 | 0, $3 + 32 | 0 | 0) | 0;
|
|
HEAPF32[($3 + 28 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 24 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 148 | 0 | 0, $3 + 28 | 0 | 0, $3 + 24 | 0 | 0, $3 + 20 | 0 | 0) | 0;
|
|
HEAPF32[($3 + 16 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($3 + 12 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($3 + 8 | 0) >> 2] = Math_fround(1.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 164 | 0 | 0, $3 + 16 | 0 | 0, $3 + 12 | 0 | 0, $3 + 8 | 0 | 0) | 0;
|
|
HEAP32[($4 + 180 | 0) >> 2] = 0;
|
|
HEAPF32[($4 + 184 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAP32[($4 + 188 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 192 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 196 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 200 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 204 | 0) >> 2] = 1;
|
|
HEAP32[($4 + 208 | 0) >> 2] = -1;
|
|
HEAP32[($4 + 212 | 0) >> 2] = -1;
|
|
HEAP32[($4 + 216 | 0) >> 2] = -1;
|
|
HEAP32[($4 + 220 | 0) >> 2] = 1;
|
|
HEAPF32[($4 + 224 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 228 | 0) >> 2] = Math_fround(.5);
|
|
HEAPF32[($4 + 232 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 236 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 240 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 244 | 0) >> 2] = Math_fround(.10000000149011612);
|
|
HEAPF32[($4 + 248 | 0) >> 2] = Math_fround(1.0e4);
|
|
HEAP32[($4 + 252 | 0) >> 2] = 1;
|
|
HEAP32[($4 + 256 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 260 | 0) >> 2] = -1;
|
|
HEAP32[($4 + 264 | 0) >> 2] = -1;
|
|
HEAPF32[($4 + 268 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($4 + 272 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 276 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP32[($4 + 280 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btCollisionObject_20const____btAlignedObjectArray_28_29($4 + 284 | 0 | 0) | 0;
|
|
HEAP32[($4 + 304 | 0) >> 2] = 0;
|
|
btVector3__btVector3_28_29($4 + 308 | 0 | 0) | 0;
|
|
btTransform__setIdentity_28_29($4 + 4 | 0 | 0);
|
|
btTransform__setIdentity_28_29($4 + 68 | 0 | 0);
|
|
__stack_pointer = $3 + 48 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionObject___btCollisionObject_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 91544 + 8 | 0;
|
|
btAlignedObjectArray_btCollisionObject_20const_____btAlignedObjectArray_28_29($4 + 284 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionObject___btCollisionObject_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[532 | 0]($4) | 0;
|
|
btCollisionObject__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionObject__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionObject__setActivationState_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($5 + 220 | 0) >> 2] | 0 | 0) != (4 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
if (!((HEAP32[($5 + 220 | 0) >> 2] | 0 | 0) != (5 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($5 + 220 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btCollisionObject__forceActivationState_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 220 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionObject__activate_28bool_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP8[($4 + 11 | 0) >> 0] = $1;
|
|
$6 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if ((HEAPU8[($4 + 11 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
if ((HEAP32[($6 + 204 | 0) >> 2] | 0) & 3 | 0) {
|
|
break label$1
|
|
}
|
|
}
|
|
btCollisionObject__setActivationState_28int_29_20const($6 | 0, 1 | 0);
|
|
HEAPF32[($6 + 224 | 0) >> 2] = Math_fround(0 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionObject__serialize_28void__2c_20btSerializer__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $39 = 0, $69 = 0, $73 = 0, $87 = 0, $43 = 0, $77 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 16 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
btTransform__serialize_28btTransformFloatData__29_20const($6 + 4 | 0 | 0, (HEAP32[($5 + 16 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
btTransform__serialize_28btTransformFloatData__29_20const($6 + 68 | 0 | 0, (HEAP32[($5 + 16 | 0) >> 2] | 0) + 80 | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const($6 + 132 | 0 | 0, (HEAP32[($5 + 16 | 0) >> 2] | 0) + 144 | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const($6 + 148 | 0 | 0, (HEAP32[($5 + 16 | 0) >> 2] | 0) + 160 | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const($6 + 164 | 0 | 0, (HEAP32[($5 + 16 | 0) >> 2] | 0) + 176 | 0 | 0);
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 232 | 0) >> 2] = HEAP32[($6 + 180 | 0) >> 2] | 0;
|
|
HEAPF32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 192 | 0) >> 2] = Math_fround(HEAPF32[($6 + 184 | 0) >> 2]);
|
|
HEAP32[(HEAP32[($5 + 16 | 0) >> 2] | 0) >> 2] = 0;
|
|
$39 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
$43 = FUNCTION_TABLE[HEAP32[((HEAP32[$39 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($39, HEAP32[($6 + 192 | 0) >> 2] | 0) | 0;
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 4 | 0) >> 2] = $43;
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 8 | 0) >> 2] = 0;
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 236 | 0) >> 2] = HEAP32[($6 + 204 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 240 | 0) >> 2] = HEAP32[($6 + 208 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 244 | 0) >> 2] = HEAP32[($6 + 212 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 248 | 0) >> 2] = HEAP32[($6 + 220 | 0) >> 2] | 0;
|
|
HEAPF32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 196 | 0) >> 2] = Math_fround(HEAPF32[($6 + 224 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 200 | 0) >> 2] = Math_fround(HEAPF32[($6 + 228 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 204 | 0) >> 2] = Math_fround(HEAPF32[($6 + 236 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 208 | 0) >> 2] = Math_fround(HEAPF32[($6 + 244 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 212 | 0) >> 2] = Math_fround(HEAPF32[($6 + 248 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 216 | 0) >> 2] = Math_fround(HEAPF32[($6 + 232 | 0) >> 2]);
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 252 | 0) >> 2] = HEAP32[($6 + 252 | 0) >> 2] | 0;
|
|
$69 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$69 >> 2] | 0) + 40 | 0) >> 2] | 0 | 0]($69, $6) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$73 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
$77 = FUNCTION_TABLE[HEAP32[((HEAP32[$73 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($73, HEAP32[($5 + 12 | 0) >> 2] | 0) | 0;
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 12 | 0) >> 2] = $77;
|
|
label$1 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$87 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$87 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($87, HEAP32[($5 + 12 | 0) >> 2] | 0);
|
|
}
|
|
HEAPF32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 220 | 0) >> 2] = Math_fround(HEAPF32[($6 + 268 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 224 | 0) >> 2] = Math_fround(HEAPF32[($6 + 272 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 228 | 0) >> 2] = Math_fround(HEAPF32[($6 + 276 | 0) >> 2]);
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 256 | 0) >> 2] = HEAP32[($6 + 280 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 260 | 0) >> 2] = 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return 83318 | 0;
|
|
}
|
|
|
|
function btTransform__serialize_28btTransformFloatData__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btMatrix3x3__serialize_28btMatrix3x3FloatData__29_20const($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const($5 + 48 | 0 | 0, (HEAP32[($4 + 8 | 0) >> 2] | 0) + 48 | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btVector3__serialize_28btVector3FloatData__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) < (4 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + ((HEAP32[($4 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($5 + ((HEAP32[($4 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btMatrix3x3__serialize_28btMatrix3x3FloatData__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btVector3__serialize_28btVector3FloatData__29_20const($5 + ((HEAP32[($4 + 4 | 0) >> 2] | 0) << 4 | 0) | 0 | 0, (HEAP32[($4 + 8 | 0) >> 2] | 0) + ((HEAP32[($4 + 4 | 0) >> 2] | 0) << 4 | 0) | 0 | 0);
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionObject__serializeSingleObject_28btSerializer__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $9 = 0, $21 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($5) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
$9 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$9 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($9, HEAP32[($4 + 20 | 0) >> 2] | 0, 1) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5, HEAP32[((HEAP32[($4 + 16 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0, HEAP32[($4 + 24 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$21 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$21 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($21, HEAP32[($4 + 16 | 0) >> 2] | 0, HEAP32[($4 + 12 | 0) >> 2] | 0, 1245859651, $5);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionObject__setCollisionShape_28btCollisionShape__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 304 | 0) >> 2] = (HEAP32[($5 + 304 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($5 + 192 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 200 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionObject__checkCollideWithOverride_28btCollisionObject_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $29 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btCollisionObject_20const____findLinearSearch_28btCollisionObject_20const__20const__29_20const($5 + 284 | 0 | 0, $4 + 4 | 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[$4 >> 2] | 0 | 0) < (btAlignedObjectArray_btCollisionObject_20const____size_28_29_20const($5 + 284 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP8[($4 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP8[($4 + 15 | 0) >> 0] = 1 & 1 | 0;
|
|
}
|
|
$29 = (HEAPU8[($4 + 15 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $29 | 0;
|
|
}
|
|
|
|
function btCollisionObject__calculateSerializeBufferSize_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 264 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btCollisionObject_cpp() {
|
|
__cxx_global_var_init_9();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_10() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(113980 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__btCollisionWorld_28btDispatcher__2c_20btBroadphaseInterface__2c_20btCollisionConfiguration__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$7 >> 2] = 91608 + 8 | 0;
|
|
btAlignedObjectArray_btCollisionObject____btAlignedObjectArray_28_29($7 + 4 | 0 | 0) | 0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
btDispatcherInfo__btDispatcherInfo_28_29($7 + 28 | 0 | 0) | 0;
|
|
HEAP32[($7 + 68 | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 72 | 0) >> 2] = 0;
|
|
HEAP8[($7 + 76 | 0) >> 0] = 1;
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btCollisionObject__2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btCollisionObject____init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btDispatcherInfo__btDispatcherInfo_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[$4 >> 2] = Math_fround(0 | 0);
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 1;
|
|
HEAPF32[($4 + 12 | 0) >> 2] = Math_fround(1.0);
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 20 | 0) >> 2] = 0;
|
|
HEAP8[($4 + 24 | 0) >> 0] = 0;
|
|
HEAP8[($4 + 25 | 0) >> 0] = 1;
|
|
HEAP8[($4 + 26 | 0) >> 0] = 1;
|
|
HEAPF32[($4 + 28 | 0) >> 2] = Math_fround(.03999999910593033);
|
|
HEAP8[($4 + 32 | 0) >> 0] = 0;
|
|
HEAPF32[($4 + 36 | 0) >> 2] = Math_fround(0 | 0);
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_btCollisionObject__2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject____init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld___btCollisionWorld_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $32 = 0, $35 = 0, $40 = 0, $52 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$3 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 24 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 28 | 0) >> 2] = $4;
|
|
HEAP32[$4 >> 2] = 91608 + 8 | 0;
|
|
HEAP32[($3 + 20 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($3 + 20 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btCollisionObject____size_28_29_20const($4 + 4 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btCollisionObject____operator_5b_5d_28int_29($4 + 4 | 0 | 0, HEAP32[($3 + 20 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btCollisionObject__getBroadphaseHandle_28_29(HEAP32[($3 + 16 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
label$3 : {
|
|
if (!((HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$32 = btCollisionWorld__getBroadphase_28_29($4 | 0) | 0;
|
|
$35 = FUNCTION_TABLE[HEAP32[((HEAP32[$32 >> 2] | 0) + 36 | 0) >> 2] | 0 | 0]($32) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$35 >> 2] | 0) + 40 | 0) >> 2] | 0 | 0]($35, HEAP32[($3 + 12 | 0) >> 2] | 0, HEAP32[($4 + 24 | 0) >> 2] | 0);
|
|
$40 = btCollisionWorld__getBroadphase_28_29($4 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$40 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($40, HEAP32[($3 + 12 | 0) >> 2] | 0, HEAP32[($4 + 24 | 0) >> 2] | 0);
|
|
btCollisionObject__setBroadphaseHandle_28btBroadphaseProxy__29(HEAP32[($3 + 16 | 0) >> 2] | 0 | 0, 0 | 0);
|
|
}
|
|
HEAP32[($3 + 20 | 0) >> 2] = (HEAP32[($3 + 20 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
btAlignedObjectArray_btCollisionObject_____btAlignedObjectArray_28_29($4 + 4 | 0 | 0) | 0;
|
|
$52 = HEAP32[($3 + 28 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 32 | 0;
|
|
return $52 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject____size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject____operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btCollisionObject____size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btCollisionObject__getBroadphaseHandle_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 188 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__getBroadphase_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 68 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btCollisionObject__setBroadphaseHandle_28btBroadphaseProxy__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 188 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject_____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btCollisionObject____clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject____clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btCollisionObject____destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btCollisionObject____size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btCollisionObject____deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btCollisionObject____init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld___btCollisionWorld_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[539 | 0]($4) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__addCollisionObject_28btCollisionObject__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $70 = 0, $86 = 0, $85 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 128 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 124 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 120 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 116 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 112 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 124 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($6 + 120 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(68696 | 0, 75774 | 0, 114 | 0, 68805 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((btAlignedObjectArray_btCollisionObject____findLinearSearch_28btCollisionObject__20const__29_20const($7 + 4 | 0 | 0, $6 + 120 | 0 | 0) | 0 | 0) == (btAlignedObjectArray_btCollisionObject____size_28_29_20const($7 + 4 | 0 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87410 | 0, 75774 | 0, 117 | 0, 68805 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$3 : {
|
|
if ((btCollisionObject__getWorldArrayIndex_28_29_20const(HEAP32[($6 + 120 | 0) >> 2] | 0 | 0) | 0 | 0) == (-1 | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
__assert_fail(85587 | 0, 75774 | 0, 118 | 0, 68805 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
btCollisionObject__setWorldArrayIndex_28int_29(HEAP32[($6 + 120 | 0) >> 2] | 0 | 0, btAlignedObjectArray_btCollisionObject____size_28_29_20const($7 + 4 | 0 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btCollisionObject____push_back_28btCollisionObject__20const__29($7 + 4 | 0 | 0, $6 + 120 | 0 | 0);
|
|
btTransform__btTransform_28btTransform_20const__29($6 + 48 | 0 | 0, btCollisionObject__getWorldTransform_28_29(HEAP32[($6 + 120 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 32 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 16 | 0 | 0) | 0;
|
|
$70 = btCollisionObject__getCollisionShape_28_29(HEAP32[($6 + 120 | 0) >> 2] | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$70 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($70, $6 + 48 | 0, $6 + 32 | 0, $6 + 16 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btCollisionShape__getShapeType_28_29_20const(btCollisionObject__getCollisionShape_28_29(HEAP32[($6 + 120 | 0) >> 2] | 0 | 0) | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$85 = HEAP32[($6 + 120 | 0) >> 2] | 0;
|
|
$86 = btCollisionWorld__getBroadphase_28_29($7 | 0) | 0;
|
|
btCollisionObject__setBroadphaseHandle_28btBroadphaseProxy__29($85 | 0, FUNCTION_TABLE[HEAP32[((HEAP32[$86 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($86, $6 + 32 | 0, $6 + 16 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0, HEAP32[($6 + 120 | 0) >> 2] | 0, HEAP32[($6 + 116 | 0) >> 2] | 0, HEAP32[($6 + 112 | 0) >> 2] | 0, HEAP32[($7 + 24 | 0) >> 2] | 0) | 0 | 0);
|
|
__stack_pointer = $6 + 128 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject____findLinearSearch_28btCollisionObject__20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btCollisionObject____size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[$4 >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$4 >> 2] | 0 | 0) < (btAlignedObjectArray_btCollisionObject____size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$3 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[$4 >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0) == (HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[$4 >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[$4 >> 2] = (HEAP32[$4 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
$32 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btCollisionObject__getWorldArrayIndex_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btCollisionObject__setWorldArrayIndex_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 216 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject____push_back_28btCollisionObject__20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btCollisionObject____size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btCollisionObject____capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btCollisionObject____reserve_28int_29($5 | 0, btAlignedObjectArray_btCollisionObject____allocSize_28int_29($5 | 0, btAlignedObjectArray_btCollisionObject____size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject____capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject____allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject____reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btCollisionObject____capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btCollisionObject____allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btCollisionObject____copy_28int_2c_20int_2c_20btCollisionObject___29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btCollisionObject____size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btCollisionObject____destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btCollisionObject____size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btCollisionObject____deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__updateSingleAabb_28btCollisionObject__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $27 = 0, $13 = 0, $63 = 0, $104 = 0, $123 = 0, $150 = 0, $154 = 0, $158 = 0, $162 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0, wasm2js_i32$5 = 0;
|
|
$4 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 108 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 104 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 108 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($4 + 88 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 72 | 0 | 0) | 0;
|
|
$13 = btCollisionObject__getCollisionShape_28_29(HEAP32[($4 + 104 | 0) >> 2] | 0 | 0) | 0;
|
|
((((wasm2js_i32$1 = $13, wasm2js_i32$2 = btCollisionObject__getWorldTransform_28_29(HEAP32[($4 + 104 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$3 = $4 + 88 | 0), wasm2js_i32$4 = $4 + 72 | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$13 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, wasm2js_i32$3 | 0, wasm2js_i32$4 | 0);
|
|
$27 = 112840;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 56 | 0 | 0, $27 | 0, $27 | 0, $27 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29($4 + 88 | 0 | 0, $4 + 56 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($4 + 72 | 0 | 0, $4 + 56 | 0 | 0) | 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[((btCollisionWorld__getDispatchInfo_28_29($5 | 0) | 0) + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
if (!((btCollisionObject__getInternalType_28_29_20const(HEAP32[($4 + 104 | 0) >> 2] | 0 | 0) | 0 | 0) == (2 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
if ((btCollisionObject__isStaticOrKinematicObject_28_29_20const(HEAP32[($4 + 104 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
btVector3__btVector3_28_29($4 + 40 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 24 | 0 | 0) | 0;
|
|
$63 = btCollisionObject__getCollisionShape_28_29(HEAP32[($4 + 104 | 0) >> 2] | 0 | 0) | 0;
|
|
((((wasm2js_i32$4 = $63, wasm2js_i32$3 = btCollisionObject__getInterpolationWorldTransform_28_29(HEAP32[($4 + 104 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$2 = $4 + 40 | 0), wasm2js_i32$1 = $4 + 24 | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$63 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$4 | 0, wasm2js_i32$3 | 0, wasm2js_i32$2 | 0, wasm2js_i32$1 | 0);
|
|
btVector3__operator___28btVector3_20const__29($4 + 40 | 0 | 0, $4 + 56 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($4 + 24 | 0 | 0, $4 + 56 | 0 | 0) | 0;
|
|
btVector3__setMin_28btVector3_20const__29($4 + 88 | 0 | 0, $4 + 40 | 0 | 0);
|
|
btVector3__setMax_28btVector3_20const__29($4 + 72 | 0 | 0, $4 + 24 | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 20 | 0) >> 2] = HEAP32[($5 + 68 | 0) >> 2] | 0;
|
|
$104 = 1;
|
|
label$2 : {
|
|
if ((btCollisionObject__isStaticObject_28_29_20const(HEAP32[($4 + 104 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 4 | 0 | 0, $4 + 72 | 0 | 0, $4 + 88 | 0 | 0);
|
|
$104 = Math_fround(btVector3__length2_28_29_20const($4 + 4 | 0 | 0)) < Math_fround(999999995904.0);
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!($104 & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$123 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
(((((wasm2js_i32$1 = $123, wasm2js_i32$2 = btCollisionObject__getBroadphaseHandle_28_29(HEAP32[($4 + 104 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$3 = $4 + 88 | 0), wasm2js_i32$4 = $4 + 72 | 0), wasm2js_i32$5 = HEAP32[($5 + 24 | 0) >> 2] | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$123 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, wasm2js_i32$3 | 0, wasm2js_i32$4 | 0, wasm2js_i32$5 | 0);
|
|
break label$3;
|
|
}
|
|
btCollisionObject__setActivationState_28int_29_20const(HEAP32[($4 + 104 | 0) >> 2] | 0 | 0, 5 | 0);
|
|
label$5 : {
|
|
if (!((HEAPU8[(0 + 112832 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
if (!((HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAP8[(0 + 112832 | 0) >> 0] = 0;
|
|
$150 = HEAP32[($5 + 72 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$150 >> 2] | 0) + 44 | 0) >> 2] | 0 | 0]($150, 76682);
|
|
$154 = HEAP32[($5 + 72 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$154 >> 2] | 0) + 44 | 0) >> 2] | 0 | 0]($154, 88329);
|
|
$158 = HEAP32[($5 + 72 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$158 >> 2] | 0) + 44 | 0) >> 2] | 0 | 0]($158, 88516);
|
|
$162 = HEAP32[($5 + 72 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$162 >> 2] | 0) + 44 | 0) >> 2] | 0 | 0]($162, 88507);
|
|
}
|
|
}
|
|
__stack_pointer = $4 + 112 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionObject__getInternalType_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 252 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btCollisionObject__getInterpolationWorldTransform_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 68 | 0 | 0;
|
|
}
|
|
|
|
function btVector3__setMin_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
void_20btSetMin_float__28float__2c_20float_20const__29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
void_20btSetMin_float__28float__2c_20float_20const__29($5 + 4 | 0 | 0, (HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0 | 0);
|
|
void_20btSetMin_float__28float__2c_20float_20const__29($5 + 8 | 0 | 0, (HEAP32[($4 + 8 | 0) >> 2] | 0) + 8 | 0 | 0);
|
|
void_20btSetMin_float__28float__2c_20float_20const__29($5 + 12 | 0 | 0, btVector3__w_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btVector3__setMax_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
void_20btSetMax_float__28float__2c_20float_20const__29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
void_20btSetMax_float__28float__2c_20float_20const__29($5 + 4 | 0 | 0, (HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0 | 0);
|
|
void_20btSetMax_float__28float__2c_20float_20const__29($5 + 8 | 0 | 0, (HEAP32[($4 + 8 | 0) >> 2] | 0) + 8 | 0 | 0);
|
|
void_20btSetMax_float__28float__2c_20float_20const__29($5 + 12 | 0 | 0, btVector3__w_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20btSetMin_float__28float__2c_20float_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2]) < Math_fround(HEAPF32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2]) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2]);
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btVector3__w_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 12 | 0 | 0;
|
|
}
|
|
|
|
function void_20btSetMax_float__28float__2c_20float_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2]) < Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2]) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2]);
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__updateAabbs_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$3 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 76 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 76 | 0) >> 2] | 0;
|
|
CProfileSample__CProfileSample_28char_20const__29($3 + 75 | 0 | 0, 70484 | 0) | 0;
|
|
btTransform__btTransform_28_29($3 + 8 | 0 | 0) | 0;
|
|
HEAP32[($3 + 4 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btCollisionObject____size_28_29_20const($4 + 4 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btCollisionObject____operator_5b_5d_28int_29($4 + 4 | 0 | 0, HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
label$3 : {
|
|
if ((btCollisionObject__getWorldArrayIndex_28_29_20const(HEAP32[$3 >> 2] | 0 | 0) | 0 | 0) == (HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
__assert_fail(77720 | 0, 75774 | 0, 199 | 0, 70484 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$4 : {
|
|
label$5 : {
|
|
if ((HEAPU8[($4 + 76 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$5
|
|
}
|
|
if (!((btCollisionObject__isActive_28_29_20const(HEAP32[$3 >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
}
|
|
btCollisionWorld__updateSingleAabb_28btCollisionObject__29($4 | 0, HEAP32[$3 >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($3 + 4 | 0) >> 2] = (HEAP32[($3 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
CProfileSample___CProfileSample_28_29($3 + 75 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 80 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__computeOverlappingPairs_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $9 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
CProfileSample__CProfileSample_28char_20const__29($3 + 11 | 0 | 0, 69579 | 0) | 0;
|
|
$9 = HEAP32[($4 + 68 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$9 >> 2] | 0) + 32 | 0) >> 2] | 0 | 0]($9, HEAP32[($4 + 24 | 0) >> 2] | 0);
|
|
CProfileSample___CProfileSample_28_29($3 + 11 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__performDiscreteCollisionDetection_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $26 = 0, $27 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0;
|
|
$3 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 28 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 28 | 0) >> 2] | 0;
|
|
CProfileSample__CProfileSample_28char_20const__29($3 + 27 | 0 | 0, 76354 | 0) | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btCollisionWorld__getDispatchInfo_28_29($4 | 0) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($4);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($4);
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btCollisionWorld__getDispatcher_28_29($4 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
CProfileSample__CProfileSample_28char_20const__29($3 + 15 | 0 | 0, 69496 | 0) | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($3 + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$26 = HEAP32[($3 + 16 | 0) >> 2] | 0;
|
|
$27 = HEAP32[($4 + 68 | 0) >> 2] | 0;
|
|
((((wasm2js_i32$1 = $26, wasm2js_i32$2 = FUNCTION_TABLE[HEAP32[((HEAP32[$27 >> 2] | 0) + 36 | 0) >> 2] | 0 | 0]($27) | 0), wasm2js_i32$3 = HEAP32[($3 + 20 | 0) >> 2] | 0), wasm2js_i32$4 = HEAP32[($4 + 24 | 0) >> 2] | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$26 >> 2] | 0) + 32 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, wasm2js_i32$3 | 0, wasm2js_i32$4 | 0);
|
|
}
|
|
CProfileSample___CProfileSample_28_29($3 + 15 | 0 | 0) | 0;
|
|
CProfileSample___CProfileSample_28_29($3 + 27 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__getDispatcher_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__removeCollisionObject_28btCollisionObject__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $15 = 0, $18 = 0, $23 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btCollisionObject__getBroadphaseHandle_28_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$15 = btCollisionWorld__getBroadphase_28_29($5 | 0) | 0;
|
|
$18 = FUNCTION_TABLE[HEAP32[((HEAP32[$15 >> 2] | 0) + 36 | 0) >> 2] | 0 | 0]($15) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$18 >> 2] | 0) + 40 | 0) >> 2] | 0 | 0]($18, HEAP32[($4 + 4 | 0) >> 2] | 0, HEAP32[($5 + 24 | 0) >> 2] | 0);
|
|
$23 = btCollisionWorld__getBroadphase_28_29($5 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$23 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($23, HEAP32[($4 + 4 | 0) >> 2] | 0, HEAP32[($5 + 24 | 0) >> 2] | 0);
|
|
btCollisionObject__setBroadphaseHandle_28btBroadphaseProxy__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 0 | 0);
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btCollisionObject__getWorldArrayIndex_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((HEAP32[$4 >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
if (!((HEAP32[$4 >> 2] | 0 | 0) < (btAlignedObjectArray_btCollisionObject____size_28_29_20const($5 + 4 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
label$4 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) == (HEAP32[(btAlignedObjectArray_btCollisionObject____operator_5b_5d_28int_29($5 + 4 | 0 | 0, HEAP32[$4 >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
__assert_fail(83805 | 0, 75774 | 0, 262 | 0, 68768 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
btAlignedObjectArray_btCollisionObject____swap_28int_2c_20int_29($5 + 4 | 0 | 0, HEAP32[$4 >> 2] | 0 | 0, (btAlignedObjectArray_btCollisionObject____size_28_29_20const($5 + 4 | 0 | 0) | 0) - 1 | 0 | 0);
|
|
btAlignedObjectArray_btCollisionObject____pop_back_28_29($5 + 4 | 0 | 0);
|
|
label$5 : {
|
|
if (!((HEAP32[$4 >> 2] | 0 | 0) < (btAlignedObjectArray_btCollisionObject____size_28_29_20const($5 + 4 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btCollisionObject__setWorldArrayIndex_28int_29(HEAP32[(btAlignedObjectArray_btCollisionObject____operator_5b_5d_28int_29($5 + 4 | 0 | 0, HEAP32[$4 >> 2] | 0 | 0) | 0) >> 2] | 0 | 0, HEAP32[$4 >> 2] | 0 | 0);
|
|
}
|
|
break label$2;
|
|
}
|
|
btAlignedObjectArray_btCollisionObject____remove_28btCollisionObject__20const__29($5 + 4 | 0 | 0, $4 + 8 | 0 | 0);
|
|
}
|
|
btCollisionObject__setWorldArrayIndex_28int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, -1 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject____swap_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[$5 >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject____pop_back_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) > (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85800 | 0, 78192 | 0, 201 | 0, 77711 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + -1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject____remove_28btCollisionObject__20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btCollisionObject____findLinearSearch_28btCollisionObject__20const__29_20const($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btCollisionObject____removeAtIndex_28int_29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject____removeAtIndex_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btCollisionObject____size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btCollisionObject____swap_28int_2c_20int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, (btAlignedObjectArray_btCollisionObject____size_28_29_20const($5 | 0) | 0) - 1 | 0 | 0);
|
|
btAlignedObjectArray_btCollisionObject____pop_back_28_29($5 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__rayTestSingle_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObject__2c_20btCollisionShape_20const__2c_20btTransform_20const__2c_20btCollisionWorld__RayResultCallback__29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, $14 = 0;
|
|
$8 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 32 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 24 | 0) >> 2] = $5;
|
|
$14 = -1;
|
|
btCollisionObjectWrapper__btCollisionObjectWrapper_28btCollisionObjectWrapper_20const__2c_20btCollisionShape_20const__2c_20btCollisionObject_20const__2c_20btTransform_20const__2c_20int_2c_20int_29($8 | 0, 0 | 0, HEAP32[($8 + 32 | 0) >> 2] | 0 | 0, HEAP32[($8 + 36 | 0) >> 2] | 0 | 0, HEAP32[($8 + 28 | 0) >> 2] | 0 | 0, $14 | 0, $14 | 0) | 0;
|
|
btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29(HEAP32[($8 + 44 | 0) >> 2] | 0 | 0, HEAP32[($8 + 40 | 0) >> 2] | 0 | 0, $8 | 0, HEAP32[($8 + 24 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $8 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $65 = 0, $112 = 0, $229 = 0, $244 = 0, $259 = 0, $306 = 0, $307 = 0, $322 = 0, $323 = 0, $858 = 0, $862 = 0, $888 = 0, $892 = 0, $1018 = 0, $1022 = 0, $1052 = 0, $1056 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 1392 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 1388 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 1384 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 1380 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 1376 | 0) >> 2] = $3;
|
|
btSphereShape__btSphereShape_28float_29($6 + 1316 | 0 | 0, Math_fround(Math_fround(0 | 0))) | 0;
|
|
btSphereShape__setMargin_28float_29($6 + 1316 | 0 | 0, Math_fround(Math_fround(0 | 0)));
|
|
HEAP32[($6 + 1312 | 0) >> 2] = $6 + 1316 | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($6 + 1380 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 1308 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($6 + 1380 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 1304 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((btCollisionShape__isConvex_28_29_20const(HEAP32[($6 + 1308 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btConvexCast__CastResult__CastResult_28_29($6 + 1128 | 0 | 0) | 0;
|
|
HEAPF32[($6 + 1292 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($6 + 1376 | 0) >> 2] | 0) + 4 | 0) >> 2]);
|
|
HEAP32[($6 + 1124 | 0) >> 2] = HEAP32[($6 + 1308 | 0) >> 2] | 0;
|
|
btVoronoiSimplexSolver__btVoronoiSimplexSolver_28_29($6 + 764 | 0 | 0) | 0;
|
|
btSubsimplexConvexCast__btSubsimplexConvexCast_28btConvexShape_20const__2c_20btConvexShape_20const__2c_20btVoronoiSimplexSolver__29($6 + 748 | 0 | 0, HEAP32[($6 + 1312 | 0) >> 2] | 0 | 0, HEAP32[($6 + 1124 | 0) >> 2] | 0 | 0, $6 + 764 | 0 | 0) | 0;
|
|
btGjkConvexCast__btGjkConvexCast_28btConvexShape_20const__2c_20btConvexShape_20const__2c_20btVoronoiSimplexSolver__29($6 + 732 | 0 | 0, HEAP32[($6 + 1312 | 0) >> 2] | 0 | 0, HEAP32[($6 + 1124 | 0) >> 2] | 0 | 0, $6 + 764 | 0 | 0) | 0;
|
|
HEAP32[($6 + 728 | 0) >> 2] = 0;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAP32[((HEAP32[($6 + 1376 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0) & 8 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP32[($6 + 728 | 0) >> 2] = $6 + 732 | 0;
|
|
break label$3;
|
|
}
|
|
HEAP32[($6 + 728 | 0) >> 2] = $6 + 748 | 0;
|
|
}
|
|
HEAP32[($6 + 724 | 0) >> 2] = HEAP32[($6 + 728 | 0) >> 2] | 0;
|
|
$65 = HEAP32[($6 + 724 | 0) >> 2] | 0;
|
|
label$5 : {
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$65 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($65, HEAP32[($6 + 1388 | 0) >> 2] | 0, HEAP32[($6 + 1384 | 0) >> 2] | 0, HEAP32[($6 + 1304 | 0) >> 2] | 0, HEAP32[($6 + 1304 | 0) >> 2] | 0, $6 + 1128 | 0) | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
label$6 : {
|
|
if (!(Math_fround(btVector3__length2_28_29_20const(($6 + 1128 | 0) + 132 | 0 | 0)) > Math_fround(9.999999747378752e-05) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
label$7 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 1292 | 0) >> 2]) < Math_fround(HEAPF32[((HEAP32[($6 + 1376 | 0) >> 2] | 0) + 4 | 0) >> 2]) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
btVector3__normalize_28_29(($6 + 1128 | 0) + 132 | 0 | 0) | 0;
|
|
btCollisionWorld__LocalRayResult__LocalRayResult_28btCollisionObject_20const__2c_20btCollisionWorld__LocalShapeInfo__2c_20btVector3_20const__2c_20float_29($6 + 696 | 0 | 0, btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($6 + 1380 | 0) >> 2] | 0 | 0) | 0 | 0, 0 | 0, ($6 + 1128 | 0) + 132 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 1292 | 0) >> 2]))) | 0;
|
|
HEAP8[($6 + 695 | 0) >> 0] = 1;
|
|
$112 = HEAP32[($6 + 1376 | 0) >> 2] | 0;
|
|
Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$112 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($112, $6 + 696 | 0, (HEAPU8[($6 + 695 | 0) >> 0] | 0) & 1 | 0));
|
|
}
|
|
}
|
|
}
|
|
btGjkConvexCast___btGjkConvexCast_28_29($6 + 732 | 0 | 0) | 0;
|
|
btSubsimplexConvexCast___btSubsimplexConvexCast_28_29($6 + 748 | 0 | 0) | 0;
|
|
btConvexCast__CastResult___CastResult_28_29($6 + 1128 | 0 | 0) | 0;
|
|
break label$1;
|
|
}
|
|
label$8 : {
|
|
label$9 : {
|
|
if (!((btCollisionShape__isConcave_28_29_20const(HEAP32[($6 + 1308 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
btTransform__inverse_28_29_20const($6 + 628 | 0 | 0, HEAP32[($6 + 1304 | 0) >> 2] | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($6 + 612 | 0 | 0, $6 + 628 | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($6 + 1388 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($6 + 596 | 0 | 0, $6 + 628 | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($6 + 1384 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
label$10 : {
|
|
label$11 : {
|
|
if (!((btCollisionShape__getShapeType_28_29_20const(HEAP32[($6 + 1308 | 0) >> 2] | 0 | 0) | 0 | 0) == (21 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
HEAP32[($6 + 592 | 0) >> 2] = HEAP32[($6 + 1308 | 0) >> 2] | 0;
|
|
btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__BridgeTriangleRaycastCallback__BridgeTriangleRaycastCallback_28btVector3_20const__2c_20btVector3_20const__2c_20btCollisionWorld__RayResultCallback__2c_20btCollisionObject_20const__2c_20btConcaveShape_20const__2c_20btTransform_20const__29($6 + 472 | 0 | 0, $6 + 612 | 0 | 0, $6 + 596 | 0 | 0, HEAP32[($6 + 1376 | 0) >> 2] | 0 | 0, btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($6 + 1380 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($6 + 592 | 0) >> 2] | 0 | 0, HEAP32[($6 + 1304 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($6 + 512 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($6 + 1376 | 0) >> 2] | 0) + 4 | 0) >> 2]);
|
|
btBvhTriangleMeshShape__performRaycast_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29(HEAP32[($6 + 592 | 0) >> 2] | 0 | 0, $6 + 472 | 0 | 0, $6 + 612 | 0 | 0, $6 + 596 | 0 | 0);
|
|
btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__BridgeTriangleRaycastCallback___BridgeTriangleRaycastCallback_28_29($6 + 472 | 0 | 0) | 0;
|
|
break label$10;
|
|
}
|
|
HEAP32[($6 + 468 | 0) >> 2] = HEAP32[($6 + 1308 | 0) >> 2] | 0;
|
|
btTransform__inverse_28_29_20const($6 + 404 | 0 | 0, HEAP32[($6 + 1304 | 0) >> 2] | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($6 + 388 | 0 | 0, $6 + 404 | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($6 + 1388 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($6 + 372 | 0 | 0, $6 + 404 | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($6 + 1384 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__BridgeTriangleRaycastCallback__BridgeTriangleRaycastCallback_28btVector3_20const__2c_20btVector3_20const__2c_20btCollisionWorld__RayResultCallback__2c_20btCollisionObject_20const__2c_20btConcaveShape_20const__2c_20btTransform_20const__29($6 + 252 | 0 | 0, $6 + 388 | 0 | 0, $6 + 372 | 0 | 0, HEAP32[($6 + 1376 | 0) >> 2] | 0 | 0, btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($6 + 1380 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($6 + 468 | 0) >> 2] | 0 | 0, HEAP32[($6 + 1304 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($6 + 292 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($6 + 1376 | 0) >> 2] | 0) + 4 | 0) >> 2]);
|
|
$229 = 8;
|
|
i64toi32_i32$2 = ($6 + 388 | 0) + $229 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$858 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 232 | 0) + $229 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $858;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 388 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 392 | 0) >> 2] | 0;
|
|
$862 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 232 | 0) >> 2] = $862;
|
|
HEAP32[($6 + 236 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__setMin_28btVector3_20const__29($6 + 232 | 0 | 0, $6 + 372 | 0 | 0);
|
|
$244 = 8;
|
|
i64toi32_i32$2 = ($6 + 388 | 0) + $244 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$888 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 216 | 0) + $244 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $888;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 388 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 392 | 0) >> 2] | 0;
|
|
$892 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 216 | 0) >> 2] = $892;
|
|
HEAP32[($6 + 220 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__setMax_28btVector3_20const__29($6 + 216 | 0 | 0, $6 + 372 | 0 | 0);
|
|
$259 = HEAP32[($6 + 468 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$259 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($259, $6 + 252 | 0, $6 + 232 | 0, $6 + 216 | 0);
|
|
btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__BridgeTriangleRaycastCallback___BridgeTriangleRaycastCallback_28_29($6 + 252 | 0 | 0) | 0;
|
|
}
|
|
break label$8;
|
|
}
|
|
label$12 : {
|
|
if (!((btCollisionShape__isCompound_28_29_20const(HEAP32[($6 + 1308 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
HEAP32[($6 + 212 | 0) >> 2] = HEAP32[($6 + 1308 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btCompoundShape__getDynamicAabbTree_28_29_20const(HEAP32[($6 + 212 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 208 | 0) >> 2] = wasm2js_i32$1;
|
|
btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__RayTester__RayTester_28btCollisionObject_20const__2c_20btCompoundShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionWorld__RayResultCallback__29($6 + 180 | 0 | 0, btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($6 + 1380 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($6 + 212 | 0) >> 2] | 0 | 0, HEAP32[($6 + 1304 | 0) >> 2] | 0 | 0, HEAP32[($6 + 1388 | 0) >> 2] | 0 | 0, HEAP32[($6 + 1384 | 0) >> 2] | 0 | 0, HEAP32[($6 + 1376 | 0) >> 2] | 0 | 0) | 0;
|
|
label$13 : {
|
|
label$14 : {
|
|
if (!((HEAP32[($6 + 208 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
btTransform__inverseTimes_28btTransform_20const__29_20const($6 + 96 | 0 | 0, HEAP32[($6 + 1304 | 0) >> 2] | 0 | 0, HEAP32[($6 + 1388 | 0) >> 2] | 0 | 0);
|
|
$306 = btTransform__getOrigin_28_29($6 + 96 | 0 | 0) | 0;
|
|
$307 = 8;
|
|
i64toi32_i32$2 = $306 + $307 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1018 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 160 | 0) + $307 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1018;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $306;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1022 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 160 | 0) >> 2] = $1022;
|
|
HEAP32[($6 + 164 | 0) >> 2] = i64toi32_i32$0;
|
|
btTransform__inverseTimes_28btTransform_20const__29_20const($6 + 16 | 0 | 0, HEAP32[($6 + 1304 | 0) >> 2] | 0 | 0, HEAP32[($6 + 1384 | 0) >> 2] | 0 | 0);
|
|
$322 = btTransform__getOrigin_28_29($6 + 16 | 0 | 0) | 0;
|
|
$323 = 8;
|
|
i64toi32_i32$2 = $322 + $323 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1052 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 80 | 0) + $323 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1052;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $322;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1056 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 80 | 0) >> 2] = $1056;
|
|
HEAP32[($6 + 84 | 0) >> 2] = i64toi32_i32$0;
|
|
btDbvt__rayTest_28btDbvtNode_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btDbvt__ICollide__29(HEAP32[(HEAP32[($6 + 208 | 0) >> 2] | 0) >> 2] | 0 | 0, $6 + 160 | 0 | 0, $6 + 80 | 0 | 0, $6 + 180 | 0 | 0);
|
|
break label$13;
|
|
}
|
|
HEAP32[($6 + 12 | 0) >> 2] = 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btCompoundShape__getNumChildShapes_28_29_20const(HEAP32[($6 + 212 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
label$15 : {
|
|
label$16 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__RayTester__ProcessLeaf_28int_29($6 + 180 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$16;
|
|
};
|
|
}
|
|
}
|
|
btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__RayTester___RayTester_28_29($6 + 180 | 0 | 0) | 0;
|
|
}
|
|
}
|
|
}
|
|
btSphereShape___btSphereShape_28_29($6 + 1316 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 1392 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSphereShape__setMargin_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
btConvexInternalShape__setMargin_28float_29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2])));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionObjectWrapper__getWorldTransform_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btCollisionShape__isConvex_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $8 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$8 = (btBroadphaseProxy__isConvex_28int_29(btCollisionShape__getShapeType_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) & 1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btConvexCast__CastResult__CastResult_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 91696 + 8 | 0;
|
|
btTransform__btTransform_28_29($4 + 4 | 0 | 0) | 0;
|
|
btTransform__btTransform_28_29($4 + 68 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 132 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 148 | 0 | 0) | 0;
|
|
HEAPF32[($4 + 164 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAP32[($4 + 168 | 0) >> 2] = 0;
|
|
HEAPF32[($4 + 172 | 0) >> 2] = Math_fround(0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btVoronoiSimplexSolver__btVoronoiSimplexSolver_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0, $6 = 0, $9 = 0, $10 = 0, $12 = 0, $19 = 0, $22 = 0, $23 = 0, $25 = 0, $32 = 0, $35 = 0, $36 = 0, $38 = 0, $8 = 0, $21 = 0, $34 = 0, $55 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
$6 = $4 + 4 | 0;
|
|
$8 = $6 + 80 | 0;
|
|
$9 = $6;
|
|
label$1 : while (1) {
|
|
$10 = $9;
|
|
btVector3__btVector3_28_29($10 | 0) | 0;
|
|
$12 = $10 + 16 | 0;
|
|
$9 = $12;
|
|
if (!(($12 | 0) == ($8 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
$19 = $4 + 84 | 0;
|
|
$21 = $19 + 80 | 0;
|
|
$22 = $19;
|
|
label$2 : while (1) {
|
|
$23 = $22;
|
|
btVector3__btVector3_28_29($23 | 0) | 0;
|
|
$25 = $23 + 16 | 0;
|
|
$22 = $25;
|
|
if (!(($25 | 0) == ($21 | 0) & 1 | 0)) {
|
|
continue label$2
|
|
}
|
|
break label$2;
|
|
};
|
|
$32 = $4 + 164 | 0;
|
|
$34 = $32 + 80 | 0;
|
|
$35 = $32;
|
|
label$3 : while (1) {
|
|
$36 = $35;
|
|
btVector3__btVector3_28_29($36 | 0) | 0;
|
|
$38 = $36 + 16 | 0;
|
|
$35 = $38;
|
|
if (!(($38 | 0) == ($34 | 0) & 1 | 0)) {
|
|
continue label$3
|
|
}
|
|
break label$3;
|
|
};
|
|
btVector3__btVector3_28_29($4 + 244 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 260 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 276 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 292 | 0 | 0) | 0;
|
|
HEAPF32[($4 + 308 | 0) >> 2] = Math_fround(9.999999747378752e-05);
|
|
btSubSimplexClosestResult__btSubSimplexClosestResult_28_29($4 + 316 | 0 | 0) | 0;
|
|
$55 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $55 | 0;
|
|
}
|
|
|
|
function btVector3__normalize_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $16 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btVector3__fuzzyZero_28_29_20const($4 | 0) | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
__assert_fail(87253 | 0, 80295 | 0, 312 | 0, 80814 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(btVector3__length_28_29_20const($4 | 0))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
$16 = btVector3__operator___28float_20const__29($4 | 0, $3 + 8 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $16 | 0;
|
|
}
|
|
|
|
function btCollisionObjectWrapper__getCollisionObject_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__LocalRayResult__LocalRayResult_28btCollisionObject_20const__2c_20btCollisionWorld__LocalShapeInfo__2c_20btVector3_20const__2c_20float_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = Math_fround($4);
|
|
var $7 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $8 = 0, $12 = 0, $15 = 0, $52 = 0, $62 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAPF32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
HEAP32[$8 >> 2] = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 4 | 0) >> 2] = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
$12 = $8 + 8 | 0;
|
|
i64toi32_i32$2 = HEAP32[($7 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$52 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $12;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $52;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$15 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $15 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$62 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $12 + $15 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $62;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($8 + 24 | 0) >> 2] = Math_fround(HEAPF32[($7 + 12 | 0) >> 2]);
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btGjkConvexCast___btGjkConvexCast_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConvexCast___btConvexCast_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btSubsimplexConvexCast___btSubsimplexConvexCast_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConvexCast___btConvexCast_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexCast__CastResult___CastResult_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btCollisionShape__isConcave_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $8 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$8 = (btBroadphaseProxy__isConcave_28int_29(btCollisionShape__getShapeType_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) & 1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__BridgeTriangleRaycastCallback__BridgeTriangleRaycastCallback_28btVector3_20const__2c_20btVector3_20const__2c_20btCollisionWorld__RayResultCallback__2c_20btCollisionObject_20const__2c_20btConcaveShape_20const__2c_20btTransform_20const__29($0, $1, $2, $3, $4, $5, $6) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
var $9 = 0, $10 = 0;
|
|
$9 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $9;
|
|
HEAP32[($9 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($9 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($9 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($9 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($9 + 12 | 0) >> 2] = $4;
|
|
HEAP32[($9 + 8 | 0) >> 2] = $5;
|
|
HEAP32[($9 + 4 | 0) >> 2] = $6;
|
|
$10 = HEAP32[($9 + 28 | 0) >> 2] | 0;
|
|
btTriangleRaycastCallback__btTriangleRaycastCallback_28btVector3_20const__2c_20btVector3_20const__2c_20unsigned_20int_29($10 | 0, HEAP32[($9 + 24 | 0) >> 2] | 0 | 0, HEAP32[($9 + 20 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($9 + 16 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$10 >> 2] = 91764 + 8 | 0;
|
|
HEAP32[($10 + 44 | 0) >> 2] = HEAP32[($9 + 16 | 0) >> 2] | 0;
|
|
HEAP32[($10 + 48 | 0) >> 2] = HEAP32[($9 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($10 + 52 | 0) >> 2] = HEAP32[($9 + 8 | 0) >> 2] | 0;
|
|
btTransform__btTransform_28btTransform_20const__29($10 + 56 | 0 | 0, HEAP32[($9 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $9 + 32 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__BridgeTriangleRaycastCallback___BridgeTriangleRaycastCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btTriangleRaycastCallback___btTriangleRaycastCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCompoundShape__getDynamicAabbTree_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__RayTester__RayTester_28btCollisionObject_20const__2c_20btCompoundShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionWorld__RayResultCallback__29($0, $1, $2, $3, $4, $5, $6) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
var $9 = 0, $10 = 0;
|
|
$9 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $9;
|
|
HEAP32[($9 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($9 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($9 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($9 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($9 + 12 | 0) >> 2] = $4;
|
|
HEAP32[($9 + 8 | 0) >> 2] = $5;
|
|
HEAP32[($9 + 4 | 0) >> 2] = $6;
|
|
$10 = HEAP32[($9 + 28 | 0) >> 2] | 0;
|
|
btDbvt__ICollide__ICollide_28_29($10 | 0) | 0;
|
|
HEAP32[$10 >> 2] = 91948 + 8 | 0;
|
|
HEAP32[($10 + 4 | 0) >> 2] = HEAP32[($9 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($10 + 8 | 0) >> 2] = HEAP32[($9 + 20 | 0) >> 2] | 0;
|
|
HEAP32[($10 + 12 | 0) >> 2] = HEAP32[($9 + 16 | 0) >> 2] | 0;
|
|
HEAP32[($10 + 16 | 0) >> 2] = HEAP32[($9 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($10 + 20 | 0) >> 2] = HEAP32[($9 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($10 + 24 | 0) >> 2] = HEAP32[($9 + 4 | 0) >> 2] | 0;
|
|
__stack_pointer = $9 + 32 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btTransform__inverseTimes_28btTransform_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 96 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 92 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 88 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 84 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 88 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 68 | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($5 + 84 | 0) >> 2] | 0 | 0) | 0 | 0, $6 + 48 | 0 | 0);
|
|
btMatrix3x3__transposeTimes_28btMatrix3x3_20const__29_20const($5 + 20 | 0 | 0, $6 | 0, HEAP32[($5 + 84 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btMatrix3x3_20const__29($5 + 4 | 0 | 0, $5 + 68 | 0 | 0, $6 | 0);
|
|
btTransform__btTransform_28btMatrix3x3_20const__2c_20btVector3_20const__29($0 | 0, $5 + 20 | 0 | 0, $5 + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 96 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvt__rayTest_28btDbvtNode_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btDbvt__ICollide__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $36 = Math_fround(0), $60 = Math_fround(0), $84 = Math_fround(0), $101 = 0.0, $145 = 0, $154 = 0, $157 = 0, $158 = 0, $160 = 0, $168 = 0, $178 = 0, $180 = 0, $190 = 0, $192 = 0, $250 = 0, $259 = 0, $266 = 0, $146 = 0, $156 = 0, $607 = 0, $617 = 0, $632 = 0, $642 = 0, $234 = 0, $249 = 0, $258 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 704 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 700 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 696 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 692 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 688 | 0) >> 2] = $3;
|
|
label$1 : {
|
|
if (!((HEAP32[($6 + 700 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 672 | 0 | 0, HEAP32[($6 + 692 | 0) >> 2] | 0 | 0, HEAP32[($6 + 696 | 0) >> 2] | 0 | 0);
|
|
btVector3__normalize_28_29($6 + 672 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 656 | 0 | 0) | 0;
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__operator_20float__28_29($6 + 672 | 0 | 0) | 0) >> 2]) == Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$36 = Math_fround(999999984306749440.0);
|
|
break label$2;
|
|
}
|
|
$36 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[(btVector3__operator_20float__28_29($6 + 672 | 0 | 0) | 0) >> 2]));
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($6 + 656 | 0 | 0) | 0, wasm2js_f32$0 = $36), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 672 | 0 | 0) | 0) + 4 | 0) >> 2]) == Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
$60 = Math_fround(999999984306749440.0);
|
|
break label$4;
|
|
}
|
|
$60 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 672 | 0 | 0) | 0) + 4 | 0) >> 2]));
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($6 + 656 | 0 | 0) | 0, wasm2js_f32$0 = $60), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 672 | 0 | 0) | 0) + 8 | 0) >> 2]) == Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
$84 = Math_fround(999999984306749440.0);
|
|
break label$6;
|
|
}
|
|
$84 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 672 | 0 | 0) | 0) + 8 | 0) >> 2]));
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($6 + 656 | 0 | 0) | 0, wasm2js_f32$0 = $84), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
$101 = 0.0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = +Math_fround(HEAPF32[(btVector3__operator_20float__28_29($6 + 656 | 0 | 0) | 0) >> 2]) < $101), HEAP32[(wasm2js_i32$0 + 644 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = +Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 656 | 0 | 0) | 0) + 4 | 0) >> 2]) < $101), HEAP32[(wasm2js_i32$0 + 648 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = +Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 656 | 0 | 0) | 0) + 8 | 0) >> 2]) < +(0 | 0) & 1 | 0), HEAP32[(wasm2js_i32$0 + 652 | 0) >> 2] = wasm2js_i32$1;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 624 | 0 | 0, HEAP32[($6 + 692 | 0) >> 2] | 0 | 0, HEAP32[($6 + 696 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($6 + 672 | 0 | 0, $6 + 624 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 640 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28_29($6 + 608 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btDbvtNode_20const____btAlignedObjectArray_28_29($6 + 588 | 0 | 0) | 0;
|
|
HEAP32[($6 + 584 | 0) >> 2] = 1;
|
|
HEAP32[($6 + 580 | 0) >> 2] = 126;
|
|
$145 = 128;
|
|
btAlignedObjectArray_btDbvtNode_20const____initializeFromBuffer_28void__2c_20int_2c_20int_29($6 + 588 | 0 | 0, $6 + 64 | 0 | 0, $145 | 0, $145 | 0);
|
|
$146 = HEAP32[($6 + 700 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btDbvtNode_20const____operator_5b_5d_28int_29($6 + 588 | 0 | 0, 0 | 0) | 0, wasm2js_i32$1 = $146), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$154 = $6 + 32 | 0;
|
|
$156 = $154 + 32 | 0;
|
|
$157 = $154;
|
|
label$8 : while (1) {
|
|
$158 = $157;
|
|
btVector3__btVector3_28_29($158 | 0) | 0;
|
|
$160 = $158 + 16 | 0;
|
|
$157 = $160;
|
|
if (!(($160 | 0) == ($156 | 0) & 1 | 0)) {
|
|
continue label$8
|
|
}
|
|
break label$8;
|
|
};
|
|
label$9 : while (1) {
|
|
$168 = (HEAP32[($6 + 584 | 0) >> 2] | 0) + -1 | 0;
|
|
HEAP32[($6 + 584 | 0) >> 2] = $168;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btDbvtNode_20const____operator_5b_5d_28int_29($6 + 588 | 0 | 0, $168 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
$178 = $6 + 32 | 0;
|
|
i64toi32_i32$2 = btDbvtAabbMm__Mins_28_29_20const(HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$607 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $178;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $607;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$180 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $180 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$617 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $178 + $180 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $617;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$190 = ($6 + 32 | 0) + 16 | 0;
|
|
i64toi32_i32$2 = btDbvtAabbMm__Maxs_28_29_20const(HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$632 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $190;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $632;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$192 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $192 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$642 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $190 + $192 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $642;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($6 + 24 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($6 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = (btRayAabb2_28btVector3_20const__2c_20btVector3_20const__2c_20unsigned_20int_20const__2c_20btVector3_20const__2c_20float__2c_20float_2c_20float_29(HEAP32[($6 + 696 | 0) >> 2] | 0 | 0, $6 + 656 | 0 | 0, $6 + 644 | 0 | 0, $6 + 32 | 0 | 0, $6 + 24 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 20 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($6 + 640 | 0) >> 2]))) | 0) & 1 | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$10 : {
|
|
if (!(HEAP32[($6 + 16 | 0) >> 2] | 0)) {
|
|
break label$10
|
|
}
|
|
label$11 : {
|
|
label$12 : {
|
|
if (!((btDbvtNode__isinternal_28_29_20const(HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
label$13 : {
|
|
if (!((HEAP32[($6 + 584 | 0) >> 2] | 0 | 0) > (HEAP32[($6 + 580 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
$234 = (btAlignedObjectArray_btDbvtNode_20const____size_28_29_20const($6 + 588 | 0 | 0) | 0) << 1 | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btDbvtNode_20const____resize_28int_2c_20btDbvtNode_20const__20const__29($6 + 588 | 0 | 0, $234 | 0, $6 + 12 | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = (btAlignedObjectArray_btDbvtNode_20const____size_28_29_20const($6 + 588 | 0 | 0) | 0) - 2 | 0), HEAP32[(wasm2js_i32$0 + 580 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
$249 = HEAP32[((HEAP32[($6 + 28 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0;
|
|
$250 = HEAP32[($6 + 584 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 584 | 0) >> 2] = $250 + 1 | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btDbvtNode_20const____operator_5b_5d_28int_29($6 + 588 | 0 | 0, $250 | 0) | 0, wasm2js_i32$1 = $249), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$258 = HEAP32[((HEAP32[($6 + 28 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0;
|
|
$259 = HEAP32[($6 + 584 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 584 | 0) >> 2] = $259 + 1 | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btDbvtNode_20const____operator_5b_5d_28int_29($6 + 588 | 0 | 0, $259 | 0) | 0, wasm2js_i32$1 = $258), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
break label$11;
|
|
}
|
|
$266 = HEAP32[($6 + 688 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$266 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($266, HEAP32[($6 + 28 | 0) >> 2] | 0);
|
|
}
|
|
}
|
|
if (HEAP32[($6 + 584 | 0) >> 2] | 0) {
|
|
continue label$9
|
|
}
|
|
break label$9;
|
|
};
|
|
btAlignedObjectArray_btDbvtNode_20const_____btAlignedObjectArray_28_29($6 + 588 | 0 | 0) | 0;
|
|
}
|
|
__stack_pointer = $6 + 704 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__RayTester__ProcessLeaf_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 144 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 140 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 136 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 140 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btCompoundShape__getChildShape_28int_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 136 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 132 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btCompoundShape__getChildTransform_28int_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, HEAP32[($4 + 136 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 128 | 0) >> 2] = wasm2js_i32$1;
|
|
btTransform__operator__28btTransform_20const__29_20const($4 + 64 | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0, HEAP32[($4 + 128 | 0) >> 2] | 0 | 0);
|
|
btCollisionObjectWrapper__btCollisionObjectWrapper_28btCollisionObjectWrapper_20const__2c_20btCollisionShape_20const__2c_20btCollisionObject_20const__2c_20btTransform_20const__2c_20int_2c_20int_29($4 + 40 | 0 | 0, 0 | 0, HEAP32[($4 + 132 | 0) >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0, $4 + 64 | 0 | 0, -1 | 0, HEAP32[($4 + 136 | 0) >> 2] | 0 | 0) | 0;
|
|
btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__LocalInfoAdder2__LocalInfoAdder2_28int_2c_20btCollisionWorld__RayResultCallback__2c_20btCollisionShape_20const__29($4 + 8 | 0 | 0, HEAP32[($4 + 136 | 0) >> 2] | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0, HEAP32[($4 + 132 | 0) >> 2] | 0 | 0) | 0;
|
|
btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0, $4 + 40 | 0 | 0, $4 + 8 | 0 | 0);
|
|
btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__LocalInfoAdder2___LocalInfoAdder2_28_29($4 + 8 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 144 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__RayTester___RayTester_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btDbvt__ICollide___ICollide_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btSphereShape___btSphereShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConvexInternalShape___btConvexInternalShape_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btBroadphaseProxy__isConvex_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) < (20 | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function btSubSimplexClosestResult__btSubSimplexClosestResult_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($4 | 0) | 0;
|
|
btUsageBitfield__btUsageBitfield_28_29($4 + 16 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btVector3__fuzzyZero_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $9 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$9 = Math_fround(btVector3__length2_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0)) < Math_fround(1.4210854715202004e-14) & 1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btVector3__operator___28float_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $13 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[($4 + 4 | 0) >> 2] = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2]));
|
|
$13 = btVector3__operator___28float_20const__29_1($5 | 0, $4 + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $13 | 0;
|
|
}
|
|
|
|
function btBroadphaseProxy__isConcave_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $12 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$12 = 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) > (20 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$12 = (HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) < (30 | 0);
|
|
}
|
|
return $12 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btTriangleRaycastCallback___btTriangleRaycastCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btTriangleCallback___btTriangleCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btMatrix3x3__transposeTimes_28btMatrix3x3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $25 = Math_fround(0), $55 = Math_fround(0), $85 = Math_fround(0), $115 = Math_fround(0), $145 = Math_fround(0), $175 = Math_fround(0), $205 = Math_fround(0), $235 = Math_fround(0), $265 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 36 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 40 | 0) >> 2] | 0;
|
|
$25 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($6 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__x_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($6 + 16 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__x_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0) | 0) >> 2])));
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($6 + 32 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__x_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0) | 0) >> 2])) + $25)), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
$55 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($6 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__y_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($6 + 16 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__y_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0) | 0) >> 2])));
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($6 + 32 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__y_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0) | 0) >> 2])) + $55)), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
$85 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($6 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__z_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($6 + 16 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__z_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0) | 0) >> 2])));
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($6 + 32 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__z_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0) | 0) >> 2])) + $85)), HEAPF32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_f32$0;
|
|
$115 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($6 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__x_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($6 + 16 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__x_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0) | 0) >> 2])));
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($6 + 32 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__x_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0) | 0) >> 2])) + $115)), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
$145 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($6 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__y_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($6 + 16 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__y_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0) | 0) >> 2])));
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($6 + 32 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__y_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0) | 0) >> 2])) + $145)), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
$175 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($6 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__z_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($6 + 16 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__z_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0) | 0) >> 2])));
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($6 + 32 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__z_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0) | 0) >> 2])) + $175)), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
$205 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($6 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__x_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($6 + 16 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__x_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0) | 0) >> 2])));
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($6 + 32 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__x_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0) | 0) >> 2])) + $205)), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
$235 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($6 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__y_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($6 + 16 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__y_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0) | 0) >> 2])));
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($6 + 32 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__y_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0) | 0) >> 2])) + $235)), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$265 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($6 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__z_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($6 + 16 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__z_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0) | 0) >> 2])));
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($6 + 32 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__z_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0) | 0) >> 2])) + $265)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
btMatrix3x3__btMatrix3x3_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $5 + 32 | 0 | 0, $5 + 28 | 0 | 0, $5 + 24 | 0 | 0, $5 + 20 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0, $5 + 8 | 0 | 0, $5 + 4 | 0 | 0, $5 | 0) | 0;
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function operator__28btVector3_20const__2c_20btMatrix3x3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $2;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btMatrix3x3__tdotx_28btVector3_20const__29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0, HEAP32[($5 + 28 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btMatrix3x3__tdoty_28btVector3_20const__29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0, HEAP32[($5 + 28 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btMatrix3x3__tdotz_28btVector3_20const__29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0, HEAP32[($5 + 28 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $5 + 20 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundShape__getChildTransform_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$9 = btAlignedObjectArray_btCompoundShapeChild___operator_5b_5d_28int_29_20const((HEAP32[($4 + 12 | 0) >> 2] | 0) + 20 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__LocalInfoAdder2__LocalInfoAdder2_28int_2c_20btCollisionWorld__RayResultCallback__2c_20btCollisionShape_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__RayResultCallback__RayResultCallback_28_29($7 | 0) | 0;
|
|
HEAP32[$7 >> 2] = 92124 + 8 | 0;
|
|
HEAP32[($7 + 20 | 0) >> 2] = HEAP32[$6 >> 2] | 0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 28 | 0) >> 2] = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
HEAPF32[($7 + 4 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($7 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2]);
|
|
HEAP32[($7 + 16 | 0) >> 2] = HEAP32[((HEAP32[($7 + 24 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0;
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__LocalInfoAdder2___LocalInfoAdder2_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__RayResultCallback___RayResultCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexInternalShape___btConvexInternalShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConvexShape___btConvexShape_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__objectQuerySingle_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObject__2c_20btCollisionShape_20const__2c_20btTransform_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29($0, $1, $2, $3, $4, $5, $6, $7) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = Math_fround($7);
|
|
var $10 = 0, $18 = 0;
|
|
$10 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $10;
|
|
HEAP32[($10 + 60 | 0) >> 2] = $0;
|
|
HEAP32[($10 + 56 | 0) >> 2] = $1;
|
|
HEAP32[($10 + 52 | 0) >> 2] = $2;
|
|
HEAP32[($10 + 48 | 0) >> 2] = $3;
|
|
HEAP32[($10 + 44 | 0) >> 2] = $4;
|
|
HEAP32[($10 + 40 | 0) >> 2] = $5;
|
|
HEAP32[($10 + 36 | 0) >> 2] = $6;
|
|
HEAPF32[($10 + 32 | 0) >> 2] = $7;
|
|
$18 = -1;
|
|
btCollisionObjectWrapper__btCollisionObjectWrapper_28btCollisionObjectWrapper_20const__2c_20btCollisionShape_20const__2c_20btCollisionObject_20const__2c_20btTransform_20const__2c_20int_2c_20int_29($10 + 8 | 0 | 0, 0 | 0, HEAP32[($10 + 44 | 0) >> 2] | 0 | 0, HEAP32[($10 + 48 | 0) >> 2] | 0 | 0, HEAP32[($10 + 40 | 0) >> 2] | 0 | 0, $18 | 0, $18 | 0) | 0;
|
|
btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29(HEAP32[($10 + 60 | 0) >> 2] | 0 | 0, HEAP32[($10 + 56 | 0) >> 2] | 0 | 0, HEAP32[($10 + 52 | 0) >> 2] | 0 | 0, $10 + 8 | 0 | 0, HEAP32[($10 + 36 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($10 + 32 | 0) >> 2])));
|
|
__stack_pointer = $10 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = Math_fround($5);
|
|
var $8 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $44 = 0, $99 = 0, $206 = 0, $260 = 0, $315 = 0, $407 = 0, $419 = 0, $434 = 0, $461 = 0, $497 = 0, $520 = 0, $1506 = 0, $1510 = 0, $1536 = 0, $1540 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$8 = __stack_pointer - 2432 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 2428 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 2424 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 2420 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 2416 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 2412 | 0) >> 2] = $4;
|
|
HEAPF32[($8 + 2408 | 0) >> 2] = $5;
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($8 + 2416 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 2404 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($8 + 2416 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 2400 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((btCollisionShape__isConvex_28_29_20const(HEAP32[($8 + 2404 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btConvexCast__CastResult__CastResult_28_29($8 + 2224 | 0 | 0) | 0;
|
|
HEAPF32[($8 + 2396 | 0) >> 2] = Math_fround(HEAPF32[($8 + 2408 | 0) >> 2]);
|
|
HEAPF32[($8 + 2388 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($8 + 2412 | 0) >> 2] | 0) + 4 | 0) >> 2]);
|
|
HEAP32[($8 + 2220 | 0) >> 2] = HEAP32[($8 + 2404 | 0) >> 2] | 0;
|
|
btVoronoiSimplexSolver__btVoronoiSimplexSolver_28_29($8 + 1860 | 0 | 0) | 0;
|
|
btGjkEpaPenetrationDepthSolver__btGjkEpaPenetrationDepthSolver_28_29($8 + 1856 | 0 | 0) | 0;
|
|
btContinuousConvexCollision__btContinuousConvexCollision_28btConvexShape_20const__2c_20btConvexShape_20const__2c_20btVoronoiSimplexSolver__2c_20btConvexPenetrationDepthSolver__29($8 + 1832 | 0 | 0, HEAP32[($8 + 2428 | 0) >> 2] | 0 | 0, HEAP32[($8 + 2220 | 0) >> 2] | 0 | 0, $8 + 1860 | 0 | 0, $8 + 1856 | 0 | 0) | 0;
|
|
HEAP32[($8 + 1828 | 0) >> 2] = $8 + 1832 | 0;
|
|
$44 = HEAP32[($8 + 1828 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$44 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($44, HEAP32[($8 + 2424 | 0) >> 2] | 0, HEAP32[($8 + 2420 | 0) >> 2] | 0, HEAP32[($8 + 2400 | 0) >> 2] | 0, HEAP32[($8 + 2400 | 0) >> 2] | 0, $8 + 2224 | 0) | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
label$4 : {
|
|
if (!(Math_fround(btVector3__length2_28_29_20const(($8 + 2224 | 0) + 132 | 0 | 0)) > Math_fround(9.999999747378752e-05) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
label$5 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 2388 | 0) >> 2]) < Math_fround(HEAPF32[((HEAP32[($8 + 2412 | 0) >> 2] | 0) + 4 | 0) >> 2]) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btVector3__normalize_28_29(($8 + 2224 | 0) + 132 | 0 | 0) | 0;
|
|
HEAP32[($8 + 1824 | 0) >> 2] = HEAP32[($8 + 2404 | 0) >> 2] | 0;
|
|
btCollisionWorld__LocalConvexResult__LocalConvexResult_28btCollisionObject_20const__2c_20btCollisionWorld__LocalShapeInfo__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_29($8 + 1772 | 0 | 0, btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($8 + 2416 | 0) >> 2] | 0 | 0) | 0 | 0, $8 + 1816 | 0 | 0, ($8 + 2224 | 0) + 132 | 0 | 0, ($8 + 2224 | 0) + 148 | 0 | 0, Math_fround(Math_fround(HEAPF32[($8 + 2388 | 0) >> 2]))) | 0;
|
|
HEAP8[($8 + 1771 | 0) >> 0] = 1;
|
|
$99 = HEAP32[($8 + 2412 | 0) >> 2] | 0;
|
|
Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$99 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($99, $8 + 1772 | 0, (HEAPU8[($8 + 1771 | 0) >> 0] | 0) & 1 | 0));
|
|
}
|
|
}
|
|
}
|
|
btContinuousConvexCollision___btContinuousConvexCollision_28_29($8 + 1832 | 0 | 0) | 0;
|
|
btGjkEpaPenetrationDepthSolver___btGjkEpaPenetrationDepthSolver_28_29($8 + 1856 | 0 | 0) | 0;
|
|
btConvexCast__CastResult___CastResult_28_29($8 + 2224 | 0 | 0) | 0;
|
|
break label$1;
|
|
}
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!((btCollisionShape__isConcave_28_29_20const(HEAP32[($8 + 2404 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
label$8 : {
|
|
label$9 : {
|
|
if (!((btCollisionShape__getShapeType_28_29_20const(HEAP32[($8 + 2404 | 0) >> 2] | 0 | 0) | 0 | 0) == (21 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
HEAP32[($8 + 1764 | 0) >> 2] = HEAP32[($8 + 2404 | 0) >> 2] | 0;
|
|
btTransform__inverse_28_29_20const($8 + 1700 | 0 | 0, HEAP32[($8 + 2400 | 0) >> 2] | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($8 + 1684 | 0 | 0, $8 + 1700 | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($8 + 2424 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($8 + 1668 | 0 | 0, $8 + 1700 | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($8 + 2420 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btMatrix3x3_20const__29($8 + 1556 | 0 | 0, btTransform__getBasis_28_29($8 + 1700 | 0 | 0) | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 2420 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
HEAPF32[($8 + 1536 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 1532 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 1528 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 1540 | 0 | 0, $8 + 1536 | 0 | 0, $8 + 1532 | 0 | 0, $8 + 1528 | 0 | 0) | 0;
|
|
btTransform__btTransform_28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 1604 | 0 | 0, $8 + 1556 | 0 | 0, $8 + 1540 | 0 | 0) | 0;
|
|
btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__BridgeTriangleConvexcastCallback__BridgeTriangleConvexcastCallback_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20btCollisionObject_20const__2c_20btTriangleMeshShape__2c_20btTransform_20const__29($8 + 1304 | 0 | 0, HEAP32[($8 + 2428 | 0) >> 2] | 0 | 0, HEAP32[($8 + 2424 | 0) >> 2] | 0 | 0, HEAP32[($8 + 2420 | 0) >> 2] | 0 | 0, HEAP32[($8 + 2412 | 0) >> 2] | 0 | 0, btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($8 + 2416 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($8 + 1764 | 0) >> 2] | 0 | 0, HEAP32[($8 + 2400 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($8 + 1504 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($8 + 2412 | 0) >> 2] | 0) + 4 | 0) >> 2]);
|
|
HEAPF32[($8 + 1512 | 0) >> 2] = Math_fround(HEAPF32[($8 + 2408 | 0) >> 2]);
|
|
btVector3__btVector3_28_29($8 + 1288 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 1272 | 0 | 0) | 0;
|
|
$206 = HEAP32[($8 + 2428 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$206 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($206, $8 + 1604 | 0, $8 + 1288 | 0, $8 + 1272 | 0);
|
|
btBvhTriangleMeshShape__performConvexcast_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29(HEAP32[($8 + 1764 | 0) >> 2] | 0 | 0, $8 + 1304 | 0 | 0, $8 + 1684 | 0 | 0, $8 + 1668 | 0 | 0, $8 + 1288 | 0 | 0, $8 + 1272 | 0 | 0);
|
|
btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__BridgeTriangleConvexcastCallback___BridgeTriangleConvexcastCallback_28_29($8 + 1304 | 0 | 0) | 0;
|
|
break label$8;
|
|
}
|
|
label$10 : {
|
|
label$11 : {
|
|
if (!((btCollisionShape__getShapeType_28_29_20const(HEAP32[($8 + 2404 | 0) >> 2] | 0 | 0) | 0 | 0) == (28 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
btConvexCast__CastResult__CastResult_28_29($8 + 1096 | 0 | 0) | 0;
|
|
HEAPF32[($8 + 1268 | 0) >> 2] = Math_fround(HEAPF32[($8 + 2408 | 0) >> 2]);
|
|
HEAPF32[($8 + 1260 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($8 + 2412 | 0) >> 2] | 0) + 4 | 0) >> 2]);
|
|
HEAP32[($8 + 1092 | 0) >> 2] = HEAP32[($8 + 2404 | 0) >> 2] | 0;
|
|
btContinuousConvexCollision__btContinuousConvexCollision_28btConvexShape_20const__2c_20btStaticPlaneShape_20const__29($8 + 1068 | 0 | 0, HEAP32[($8 + 2428 | 0) >> 2] | 0 | 0, HEAP32[($8 + 1092 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($8 + 1064 | 0) >> 2] = $8 + 1068 | 0;
|
|
$260 = HEAP32[($8 + 1064 | 0) >> 2] | 0;
|
|
label$12 : {
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$260 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($260, HEAP32[($8 + 2424 | 0) >> 2] | 0, HEAP32[($8 + 2420 | 0) >> 2] | 0, HEAP32[($8 + 2400 | 0) >> 2] | 0, HEAP32[($8 + 2400 | 0) >> 2] | 0, $8 + 1096 | 0) | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
label$13 : {
|
|
if (!(Math_fround(btVector3__length2_28_29_20const(($8 + 1096 | 0) + 132 | 0 | 0)) > Math_fround(9.999999747378752e-05) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
label$14 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 1260 | 0) >> 2]) < Math_fround(HEAPF32[((HEAP32[($8 + 2412 | 0) >> 2] | 0) + 4 | 0) >> 2]) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
btVector3__normalize_28_29(($8 + 1096 | 0) + 132 | 0 | 0) | 0;
|
|
HEAP32[($8 + 1060 | 0) >> 2] = HEAP32[($8 + 2404 | 0) >> 2] | 0;
|
|
btCollisionWorld__LocalConvexResult__LocalConvexResult_28btCollisionObject_20const__2c_20btCollisionWorld__LocalShapeInfo__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_29($8 + 1008 | 0 | 0, btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($8 + 2416 | 0) >> 2] | 0 | 0) | 0 | 0, $8 + 1052 | 0 | 0, ($8 + 1096 | 0) + 132 | 0 | 0, ($8 + 1096 | 0) + 148 | 0 | 0, Math_fround(Math_fround(HEAPF32[($8 + 1260 | 0) >> 2]))) | 0;
|
|
HEAP8[($8 + 1007 | 0) >> 0] = 1;
|
|
$315 = HEAP32[($8 + 2412 | 0) >> 2] | 0;
|
|
Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$315 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($315, $8 + 1008 | 0, (HEAPU8[($8 + 1007 | 0) >> 0] | 0) & 1 | 0));
|
|
}
|
|
}
|
|
}
|
|
btContinuousConvexCollision___btContinuousConvexCollision_28_29($8 + 1068 | 0 | 0) | 0;
|
|
btConvexCast__CastResult___CastResult_28_29($8 + 1096 | 0 | 0) | 0;
|
|
break label$10;
|
|
}
|
|
HEAP32[($8 + 1e3 | 0) >> 2] = HEAP32[($8 + 2404 | 0) >> 2] | 0;
|
|
btTransform__inverse_28_29_20const($8 + 936 | 0 | 0, HEAP32[($8 + 2400 | 0) >> 2] | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($8 + 920 | 0 | 0, $8 + 936 | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($8 + 2424 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($8 + 904 | 0 | 0, $8 + 936 | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($8 + 2420 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btMatrix3x3_20const__29($8 + 792 | 0 | 0, btTransform__getBasis_28_29($8 + 936 | 0 | 0) | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 2420 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
HEAPF32[($8 + 772 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 768 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 764 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 776 | 0 | 0, $8 + 772 | 0 | 0, $8 + 768 | 0 | 0, $8 + 764 | 0 | 0) | 0;
|
|
btTransform__btTransform_28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 840 | 0 | 0, $8 + 792 | 0 | 0, $8 + 776 | 0 | 0) | 0;
|
|
btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__BridgeTriangleConvexcastCallback__BridgeTriangleConvexcastCallback_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20btCollisionObject_20const__2c_20btConcaveShape__2c_20btTransform_20const__29($8 + 540 | 0 | 0, HEAP32[($8 + 2428 | 0) >> 2] | 0 | 0, HEAP32[($8 + 2424 | 0) >> 2] | 0 | 0, HEAP32[($8 + 2420 | 0) >> 2] | 0 | 0, HEAP32[($8 + 2412 | 0) >> 2] | 0 | 0, btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($8 + 2416 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($8 + 1e3 | 0) >> 2] | 0 | 0, HEAP32[($8 + 2400 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($8 + 740 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($8 + 2412 | 0) >> 2] | 0) + 4 | 0) >> 2]);
|
|
HEAPF32[($8 + 748 | 0) >> 2] = Math_fround(HEAPF32[($8 + 2408 | 0) >> 2]);
|
|
btVector3__btVector3_28_29($8 + 524 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 508 | 0 | 0) | 0;
|
|
$407 = HEAP32[($8 + 2428 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$407 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($407, $8 + 840 | 0, $8 + 524 | 0, $8 + 508 | 0);
|
|
$419 = 8;
|
|
i64toi32_i32$2 = ($8 + 920 | 0) + $419 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1506 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 488 | 0) + $419 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1506;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 920 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 924 | 0) >> 2] | 0;
|
|
$1510 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 488 | 0) >> 2] = $1510;
|
|
HEAP32[($8 + 492 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__setMin_28btVector3_20const__29($8 + 488 | 0 | 0, $8 + 904 | 0 | 0);
|
|
$434 = 8;
|
|
i64toi32_i32$2 = ($8 + 920 | 0) + $434 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1536 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 472 | 0) + $434 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1536;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 920 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 924 | 0) >> 2] | 0;
|
|
$1540 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 472 | 0) >> 2] = $1540;
|
|
HEAP32[($8 + 476 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__setMax_28btVector3_20const__29($8 + 472 | 0 | 0, $8 + 904 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($8 + 488 | 0 | 0, $8 + 524 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($8 + 472 | 0 | 0, $8 + 508 | 0 | 0) | 0;
|
|
$461 = HEAP32[($8 + 1e3 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$461 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($461, $8 + 540 | 0, $8 + 488 | 0, $8 + 472 | 0);
|
|
btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__BridgeTriangleConvexcastCallback___BridgeTriangleConvexcastCallback_28_29_1($8 + 540 | 0 | 0) | 0;
|
|
}
|
|
}
|
|
break label$6;
|
|
}
|
|
label$15 : {
|
|
if (!((btCollisionShape__isCompound_28_29_20const(HEAP32[($8 + 2404 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
CProfileSample__CProfileSample_28char_20const__29($8 + 471 | 0 | 0, 82213 | 0) | 0;
|
|
HEAP32[($8 + 464 | 0) >> 2] = HEAP32[($8 + 2404 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($8 + 448 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 432 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 416 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 400 | 0 | 0) | 0;
|
|
$497 = HEAP32[($8 + 2428 | 0) >> 2] | 0;
|
|
btTransform__inverse_28_29_20const($8 + 272 | 0 | 0, HEAP32[($8 + 2400 | 0) >> 2] | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29_20const($8 + 336 | 0 | 0, $8 + 272 | 0 | 0, HEAP32[($8 + 2424 | 0) >> 2] | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$497 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($497, $8 + 336 | 0, $8 + 448 | 0, $8 + 432 | 0);
|
|
$520 = HEAP32[($8 + 2428 | 0) >> 2] | 0;
|
|
btTransform__inverse_28_29_20const($8 + 144 | 0 | 0, HEAP32[($8 + 2400 | 0) >> 2] | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29_20const($8 + 208 | 0 | 0, $8 + 144 | 0 | 0, HEAP32[($8 + 2420 | 0) >> 2] | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$520 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($520, $8 + 208 | 0, $8 + 416 | 0, $8 + 400 | 0);
|
|
btVector3__setMin_28btVector3_20const__29($8 + 448 | 0 | 0, $8 + 416 | 0 | 0);
|
|
btVector3__setMax_28btVector3_20const__29($8 + 432 | 0 | 0, $8 + 400 | 0 | 0);
|
|
btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__btCompoundLeafCallback__btCompoundLeafCallback_28btCollisionObjectWrapper_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20float_2c_20btCompoundShape_20const__2c_20btTransform_20const__2c_20btCollisionWorld__ConvexResultCallback__29($8 + 108 | 0 | 0, HEAP32[($8 + 2416 | 0) >> 2] | 0 | 0, HEAP32[($8 + 2428 | 0) >> 2] | 0 | 0, HEAP32[($8 + 2424 | 0) >> 2] | 0 | 0, HEAP32[($8 + 2420 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($8 + 2408 | 0) >> 2])), HEAP32[($8 + 464 | 0) >> 2] | 0 | 0, HEAP32[($8 + 2400 | 0) >> 2] | 0 | 0, HEAP32[($8 + 2412 | 0) >> 2] | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = btCompoundShape__getDynamicAabbTree_28_29_20const(HEAP32[($8 + 464 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 104 | 0) >> 2] = wasm2js_i32$1;
|
|
label$16 : {
|
|
label$17 : {
|
|
if (!((HEAP32[($8 + 104 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
btDbvtAabbMm__FromMM_28btVector3_20const__2c_20btVector3_20const__29($8 + 72 | 0 | 0, $8 + 448 | 0 | 0, $8 + 432 | 0 | 0);
|
|
btDbvt__collideTV_28btDbvtNode_20const__2c_20btDbvtAabbMm_20const__2c_20btDbvt__ICollide__29_20const(HEAP32[($8 + 104 | 0) >> 2] | 0 | 0, HEAP32[(HEAP32[($8 + 104 | 0) >> 2] | 0) >> 2] | 0 | 0, $8 + 72 | 0 | 0, $8 + 108 | 0 | 0);
|
|
break label$16;
|
|
}
|
|
HEAP32[($8 + 68 | 0) >> 2] = 0;
|
|
label$18 : {
|
|
label$19 : while (1) {
|
|
if (!((HEAP32[($8 + 68 | 0) >> 2] | 0 | 0) < (btCompoundShape__getNumChildShapes_28_29_20const(HEAP32[($8 + 464 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$18
|
|
}
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = btCompoundShape__getChildShape_28int_29_20const(HEAP32[($8 + 464 | 0) >> 2] | 0 | 0, HEAP32[($8 + 68 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 64 | 0) >> 2] = wasm2js_i32$1;
|
|
btTransform__btTransform_28btTransform_20const__29($8 | 0, btCompoundShape__getChildTransform_28int_29_20const(HEAP32[($8 + 464 | 0) >> 2] | 0 | 0, HEAP32[($8 + 68 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__btCompoundLeafCallback__ProcessChild_28int_2c_20btTransform_20const__2c_20btCollisionShape_20const__29($8 + 108 | 0 | 0, HEAP32[($8 + 68 | 0) >> 2] | 0 | 0, $8 | 0, HEAP32[($8 + 64 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($8 + 68 | 0) >> 2] = (HEAP32[($8 + 68 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$19;
|
|
};
|
|
}
|
|
}
|
|
btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__btCompoundLeafCallback___btCompoundLeafCallback_28_29($8 + 108 | 0 | 0) | 0;
|
|
CProfileSample___CProfileSample_28_29($8 + 471 | 0 | 0) | 0;
|
|
}
|
|
}
|
|
}
|
|
__stack_pointer = $8 + 2432 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGjkEpaPenetrationDepthSolver__btGjkEpaPenetrationDepthSolver_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConvexPenetrationDepthSolver__btConvexPenetrationDepthSolver_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 101400 + 8 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__LocalConvexResult__LocalConvexResult_28btCollisionObject_20const__2c_20btCollisionWorld__LocalShapeInfo__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = Math_fround($5);
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $8 = 0, $9 = 0, $13 = 0, $16 = 0, $21 = 0, $24 = 0, $63 = 0, $73 = 0, $82 = 0, $92 = 0;
|
|
$8 = __stack_pointer - 32 | 0;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 12 | 0) >> 2] = $4;
|
|
HEAPF32[($8 + 8 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 28 | 0) >> 2] | 0;
|
|
HEAP32[$9 >> 2] = HEAP32[($8 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($9 + 4 | 0) >> 2] = HEAP32[($8 + 20 | 0) >> 2] | 0;
|
|
$13 = $9 + 8 | 0;
|
|
i64toi32_i32$2 = HEAP32[($8 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$63 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $13;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $63;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$16 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $16 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$73 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $13 + $16 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $73;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$21 = $9 + 24 | 0;
|
|
i64toi32_i32$2 = HEAP32[($8 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$82 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $21;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $82;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$24 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $24 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$92 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $21 + $24 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $92;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($9 + 40 | 0) >> 2] = Math_fround(HEAPF32[($8 + 8 | 0) >> 2]);
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btContinuousConvexCollision___btContinuousConvexCollision_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConvexCast___btConvexCast_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btGjkEpaPenetrationDepthSolver___btGjkEpaPenetrationDepthSolver_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConvexPenetrationDepthSolver___btConvexPenetrationDepthSolver_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__BridgeTriangleConvexcastCallback__BridgeTriangleConvexcastCallback_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20btCollisionObject_20const__2c_20btTriangleMeshShape__2c_20btTransform_20const__29($0, $1, $2, $3, $4, $5, $6, $7) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
var $10 = 0, $11 = 0, $16 = 0;
|
|
$10 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $10;
|
|
HEAP32[($10 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($10 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($10 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($10 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($10 + 12 | 0) >> 2] = $4;
|
|
HEAP32[($10 + 8 | 0) >> 2] = $5;
|
|
HEAP32[($10 + 4 | 0) >> 2] = $6;
|
|
HEAP32[$10 >> 2] = $7;
|
|
$11 = HEAP32[($10 + 28 | 0) >> 2] | 0;
|
|
$16 = HEAP32[($10 + 4 | 0) >> 2] | 0;
|
|
btTriangleConvexcastCallback__btTriangleConvexcastCallback_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20float_29($11 | 0, HEAP32[($10 + 24 | 0) >> 2] | 0 | 0, HEAP32[($10 + 20 | 0) >> 2] | 0 | 0, HEAP32[($10 + 16 | 0) >> 2] | 0 | 0, HEAP32[$10 >> 2] | 0 | 0, Math_fround(Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$16 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($16)))) | 0;
|
|
HEAP32[$11 >> 2] = 92360 + 8 | 0;
|
|
HEAP32[($11 + 212 | 0) >> 2] = HEAP32[($10 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($11 + 216 | 0) >> 2] = HEAP32[($10 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($11 + 220 | 0) >> 2] = HEAP32[($10 + 4 | 0) >> 2] | 0;
|
|
__stack_pointer = $10 + 32 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__BridgeTriangleConvexcastCallback___BridgeTriangleConvexcastCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btTriangleConvexcastCallback___btTriangleConvexcastCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__BridgeTriangleConvexcastCallback__BridgeTriangleConvexcastCallback_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20btCollisionObject_20const__2c_20btConcaveShape__2c_20btTransform_20const__29($0, $1, $2, $3, $4, $5, $6, $7) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
var $10 = 0, $11 = 0, $16 = 0;
|
|
$10 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $10;
|
|
HEAP32[($10 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($10 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($10 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($10 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($10 + 12 | 0) >> 2] = $4;
|
|
HEAP32[($10 + 8 | 0) >> 2] = $5;
|
|
HEAP32[($10 + 4 | 0) >> 2] = $6;
|
|
HEAP32[$10 >> 2] = $7;
|
|
$11 = HEAP32[($10 + 28 | 0) >> 2] | 0;
|
|
$16 = HEAP32[($10 + 4 | 0) >> 2] | 0;
|
|
btTriangleConvexcastCallback__btTriangleConvexcastCallback_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20float_29($11 | 0, HEAP32[($10 + 24 | 0) >> 2] | 0 | 0, HEAP32[($10 + 20 | 0) >> 2] | 0 | 0, HEAP32[($10 + 16 | 0) >> 2] | 0 | 0, HEAP32[$10 >> 2] | 0 | 0, Math_fround(Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$16 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($16)))) | 0;
|
|
HEAP32[$11 >> 2] = 92572 + 8 | 0;
|
|
HEAP32[($11 + 212 | 0) >> 2] = HEAP32[($10 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($11 + 216 | 0) >> 2] = HEAP32[($10 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($11 + 220 | 0) >> 2] = HEAP32[($10 + 4 | 0) >> 2] | 0;
|
|
__stack_pointer = $10 + 32 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__BridgeTriangleConvexcastCallback___BridgeTriangleConvexcastCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btTriangleConvexcastCallback___btTriangleConvexcastCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__btCompoundLeafCallback__btCompoundLeafCallback_28btCollisionObjectWrapper_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20float_2c_20btCompoundShape_20const__2c_20btTransform_20const__2c_20btCollisionWorld__ConvexResultCallback__29($0, $1, $2, $3, $4, $5, $6, $7, $8) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = Math_fround($5);
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
var $11 = 0, $12 = 0;
|
|
$11 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $11;
|
|
HEAP32[($11 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($11 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($11 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($11 + 32 | 0) >> 2] = $3;
|
|
HEAP32[($11 + 28 | 0) >> 2] = $4;
|
|
HEAPF32[($11 + 24 | 0) >> 2] = $5;
|
|
HEAP32[($11 + 20 | 0) >> 2] = $6;
|
|
HEAP32[($11 + 16 | 0) >> 2] = $7;
|
|
HEAP32[($11 + 12 | 0) >> 2] = $8;
|
|
$12 = HEAP32[($11 + 44 | 0) >> 2] | 0;
|
|
btDbvt__ICollide__ICollide_28_29($12 | 0) | 0;
|
|
HEAP32[$12 >> 2] = 92788 + 8 | 0;
|
|
HEAP32[($12 + 4 | 0) >> 2] = HEAP32[($11 + 40 | 0) >> 2] | 0;
|
|
HEAP32[($12 + 8 | 0) >> 2] = HEAP32[($11 + 36 | 0) >> 2] | 0;
|
|
HEAP32[($12 + 12 | 0) >> 2] = HEAP32[($11 + 32 | 0) >> 2] | 0;
|
|
HEAP32[($12 + 16 | 0) >> 2] = HEAP32[($11 + 28 | 0) >> 2] | 0;
|
|
HEAPF32[($12 + 20 | 0) >> 2] = Math_fround(HEAPF32[($11 + 24 | 0) >> 2]);
|
|
HEAP32[($12 + 24 | 0) >> 2] = HEAP32[($11 + 20 | 0) >> 2] | 0;
|
|
HEAP32[($12 + 28 | 0) >> 2] = HEAP32[($11 + 16 | 0) >> 2] | 0;
|
|
HEAP32[($12 + 32 | 0) >> 2] = HEAP32[($11 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $11 + 48 | 0;
|
|
return $12 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__btCompoundLeafCallback__ProcessChild_28int_2c_20btTransform_20const__2c_20btCollisionShape_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 144 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 140 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 136 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 132 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 128 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 140 | 0) >> 2] | 0;
|
|
btTransform__operator__28btTransform_20const__29_20const($6 + 64 | 0 | 0, HEAP32[($7 + 28 | 0) >> 2] | 0 | 0, HEAP32[($6 + 132 | 0) >> 2] | 0 | 0);
|
|
btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__btCompoundLeafCallback__ProcessChild_28int_2c_20btTransform_20const__2c_20btCollisionShape_20const__29__LocalInfoAdder__LocalInfoAdder_28int_2c_20btCollisionWorld__ConvexResultCallback__2c_20btCollisionShape_20const__29($6 + 32 | 0 | 0, HEAP32[($6 + 136 | 0) >> 2] | 0 | 0, HEAP32[($7 + 32 | 0) >> 2] | 0 | 0, HEAP32[($6 + 128 | 0) >> 2] | 0 | 0) | 0;
|
|
btCollisionObjectWrapper__btCollisionObjectWrapper_28btCollisionObjectWrapper_20const__2c_20btCollisionShape_20const__2c_20btCollisionObject_20const__2c_20btTransform_20const__2c_20int_2c_20int_29($6 + 8 | 0 | 0, HEAP32[($7 + 4 | 0) >> 2] | 0 | 0, HEAP32[($6 + 128 | 0) >> 2] | 0 | 0, btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 4 | 0) >> 2] | 0 | 0) | 0 | 0, $6 + 64 | 0 | 0, -1 | 0, HEAP32[($6 + 136 | 0) >> 2] | 0 | 0) | 0;
|
|
btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0, HEAP32[($7 + 12 | 0) >> 2] | 0 | 0, HEAP32[($7 + 16 | 0) >> 2] | 0 | 0, $6 + 8 | 0 | 0, $6 + 32 | 0 | 0, Math_fround(Math_fround(HEAPF32[($7 + 20 | 0) >> 2])));
|
|
btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__btCompoundLeafCallback__ProcessChild_28int_2c_20btTransform_20const__2c_20btCollisionShape_20const__29__LocalInfoAdder___LocalInfoAdder_28_29($6 + 32 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 144 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__btCompoundLeafCallback___btCompoundLeafCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btDbvt__ICollide___ICollide_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexPenetrationDepthSolver__btConvexPenetrationDepthSolver_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 92296 + 8 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexPenetrationDepthSolver___btConvexPenetrationDepthSolver_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btTriangleConvexcastCallback___btTriangleConvexcastCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btTriangleCallback___btTriangleCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__btCompoundLeafCallback__ProcessChild_28int_2c_20btTransform_20const__2c_20btCollisionShape_20const__29__LocalInfoAdder__LocalInfoAdder_28int_2c_20btCollisionWorld__ConvexResultCallback__2c_20btCollisionShape_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__ConvexResultCallback__ConvexResultCallback_28_29($7 | 0) | 0;
|
|
HEAP32[$7 >> 2] = 93004 + 8 | 0;
|
|
HEAP32[($7 + 20 | 0) >> 2] = HEAP32[$6 >> 2] | 0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 28 | 0) >> 2] = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
HEAPF32[($7 + 4 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($7 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2]);
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__btCompoundLeafCallback__ProcessChild_28int_2c_20btTransform_20const__2c_20btCollisionShape_20const__29__LocalInfoAdder___LocalInfoAdder_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__ConvexResultCallback___ConvexResultCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__rayTest_28btVector3_20const__2c_20btVector3_20const__2c_20btCollisionWorld__RayResultCallback__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $14 = 0, $15 = 0, $16 = 0;
|
|
$6 = __stack_pointer - 304 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 300 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 296 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 292 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 288 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 300 | 0) >> 2] | 0;
|
|
btSingleRayCallback__btSingleRayCallback_28btVector3_20const__2c_20btVector3_20const__2c_20btCollisionWorld_20const__2c_20btCollisionWorld__RayResultCallback__29($6 + 68 | 0 | 0, HEAP32[($6 + 296 | 0) >> 2] | 0 | 0, HEAP32[($6 + 292 | 0) >> 2] | 0 | 0, $7 | 0, HEAP32[($6 + 288 | 0) >> 2] | 0 | 0) | 0;
|
|
$14 = HEAP32[($7 + 68 | 0) >> 2] | 0;
|
|
$15 = HEAP32[($6 + 296 | 0) >> 2] | 0;
|
|
$16 = HEAP32[($6 + 292 | 0) >> 2] | 0;
|
|
HEAPF32[($6 + 48 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 44 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 40 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 52 | 0 | 0, $6 + 48 | 0 | 0, $6 + 44 | 0 | 0, $6 + 40 | 0 | 0) | 0;
|
|
HEAPF32[($6 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 24 | 0 | 0, $6 + 20 | 0 | 0, $6 + 16 | 0 | 0, $6 + 12 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$14 >> 2] | 0) + 24 | 0) >> 2] | 0 | 0]($14, $15, $16, $6 + 68 | 0, $6 + 52 | 0, $6 + 24 | 0);
|
|
btSingleRayCallback___btSingleRayCallback_28_29($6 + 68 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 304 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSingleRayCallback__btSingleRayCallback_28btVector3_20const__2c_20btVector3_20const__2c_20btCollisionWorld_20const__2c_20btCollisionWorld__RayResultCallback__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $123 = 0, $13 = 0, $16 = 0, $21 = 0, $24 = 0, $67 = Math_fround(0), $90 = Math_fround(0), $113 = Math_fround(0), $128 = 0.0, $195 = 0, $205 = 0, $214 = 0, $224 = 0, $158 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$1 = 0;
|
|
$7 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 56 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 52 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 48 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 44 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 40 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 56 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 60 | 0) >> 2] = $8;
|
|
btBroadphaseRayCallback__btBroadphaseRayCallback_28_29($8 | 0) | 0;
|
|
HEAP32[$8 >> 2] = 93264 + 8 | 0;
|
|
$13 = $8 + 36 | 0;
|
|
i64toi32_i32$2 = HEAP32[($7 + 52 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$195 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $13;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $195;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$16 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $16 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$205 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $13 + $16 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $205;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$21 = $8 + 52 | 0;
|
|
i64toi32_i32$2 = HEAP32[($7 + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$214 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $21;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $214;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$24 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $24 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$224 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $21 + $24 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $224;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btTransform__btTransform_28_29($8 + 68 | 0 | 0) | 0;
|
|
btTransform__btTransform_28_29($8 + 132 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 196 | 0 | 0) | 0;
|
|
HEAP32[($8 + 212 | 0) >> 2] = HEAP32[($7 + 44 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 216 | 0) >> 2] = HEAP32[($7 + 40 | 0) >> 2] | 0;
|
|
btTransform__setIdentity_28_29($8 + 68 | 0 | 0);
|
|
btTransform__setOrigin_28btVector3_20const__29($8 + 68 | 0 | 0, $8 + 36 | 0 | 0);
|
|
btTransform__setIdentity_28_29($8 + 132 | 0 | 0);
|
|
btTransform__setOrigin_28btVector3_20const__29($8 + 132 | 0 | 0, $8 + 52 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($7 + 24 | 0 | 0, HEAP32[($7 + 48 | 0) >> 2] | 0 | 0, HEAP32[($7 + 52 | 0) >> 2] | 0 | 0);
|
|
btVector3__normalize_28_29($7 + 24 | 0 | 0) | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__operator_20float__28_29($7 + 24 | 0 | 0) | 0) >> 2]) == Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$67 = Math_fround(999999984306749440.0);
|
|
break label$1;
|
|
}
|
|
$67 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[(btVector3__operator_20float__28_29($7 + 24 | 0 | 0) | 0) >> 2]));
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($8 + 4 | 0 | 0) | 0, wasm2js_f32$0 = $67), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($7 + 24 | 0 | 0) | 0) + 4 | 0) >> 2]) == Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$90 = Math_fround(999999984306749440.0);
|
|
break label$3;
|
|
}
|
|
$90 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[((btVector3__operator_20float__28_29($7 + 24 | 0 | 0) | 0) + 4 | 0) >> 2]));
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($8 + 4 | 0 | 0) | 0, wasm2js_f32$0 = $90), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($7 + 24 | 0 | 0) | 0) + 8 | 0) >> 2]) == Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$113 = Math_fround(999999984306749440.0);
|
|
break label$5;
|
|
}
|
|
$113 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[((btVector3__operator_20float__28_29($7 + 24 | 0 | 0) | 0) + 8 | 0) >> 2]));
|
|
}
|
|
$123 = $8 + 4 | 0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($123 | 0) | 0, wasm2js_f32$0 = $113), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
$128 = 0.0;
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = +Math_fround(HEAPF32[(btVector3__operator_20float__28_29($123 | 0) | 0) >> 2]) < $128), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $8 + 24 | 0, wasm2js_i32$1 = +Math_fround(HEAPF32[((btVector3__operator_20float__28_29($123 | 0) | 0) + 4 | 0) >> 2]) < $128), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = +Math_fround(HEAPF32[((btVector3__operator_20float__28_29($123 | 0) | 0) + 8 | 0) >> 2]) < +(0 | 0) & 1 | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($7 + 8 | 0 | 0, $8 + 52 | 0 | 0, $8 + 36 | 0 | 0);
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($7 + 24 | 0 | 0, $7 + 8 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
$158 = HEAP32[($7 + 60 | 0) >> 2] | 0;
|
|
__stack_pointer = $7 + 64 | 0;
|
|
return $158 | 0;
|
|
}
|
|
|
|
function btSingleRayCallback___btSingleRayCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btBroadphaseRayCallback___btBroadphaseRayCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btBroadphaseRayCallback__btBroadphaseRayCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btBroadphaseAabbCallback__btBroadphaseAabbCallback_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 93392 + 8 | 0;
|
|
btVector3__btVector3_28_29($4 + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btBroadphaseRayCallback___btBroadphaseRayCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btBroadphaseAabbCallback___btBroadphaseAabbCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__convexSweepTest_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29_20const($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = Math_fround($5);
|
|
var $8 = 0, $9 = 0, $117 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0, wasm2js_i32$5 = 0, wasm2js_i32$6 = 0;
|
|
$8 = __stack_pointer - 528 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 524 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 520 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 516 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 512 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 508 | 0) >> 2] = $4;
|
|
HEAPF32[($8 + 504 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 524 | 0) >> 2] | 0;
|
|
CProfileSample__CProfileSample_28char_20const__29($8 + 503 | 0 | 0, 67439 | 0) | 0;
|
|
btTransform__btTransform_28_29($8 + 436 | 0 | 0) | 0;
|
|
btTransform__btTransform_28_29($8 + 372 | 0 | 0) | 0;
|
|
btTransform__operator__28btTransform_20const__29($8 + 436 | 0 | 0, HEAP32[($8 + 516 | 0) >> 2] | 0 | 0) | 0;
|
|
btTransform__operator__28btTransform_20const__29($8 + 372 | 0 | 0, HEAP32[($8 + 512 | 0) >> 2] | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 356 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 340 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 324 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 308 | 0 | 0) | 0;
|
|
btTransformUtil__calculateVelocity_28btTransform_20const__2c_20btTransform_20const__2c_20float_2c_20btVector3__2c_20btVector3__29($8 + 436 | 0 | 0, $8 + 372 | 0 | 0, Math_fround(Math_fround(1.0)), $8 + 324 | 0 | 0, $8 + 308 | 0 | 0);
|
|
btVector3__btVector3_28_29($8 + 292 | 0 | 0) | 0;
|
|
HEAPF32[($8 + 288 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 284 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 280 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 292 | 0 | 0, $8 + 288 | 0 | 0, $8 + 284 | 0 | 0, $8 + 280 | 0 | 0);
|
|
btTransform__btTransform_28_29($8 + 216 | 0 | 0) | 0;
|
|
btTransform__setIdentity_28_29($8 + 216 | 0 | 0);
|
|
btTransform__getRotation_28_29_20const($8 + 200 | 0 | 0, $8 + 436 | 0 | 0);
|
|
btTransform__setRotation_28btQuaternion_20const__29($8 + 216 | 0 | 0, $8 + 200 | 0 | 0);
|
|
btCollisionShape__calculateTemporalAabb_28btTransform_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20btVector3__2c_20btVector3__29_20const(HEAP32[($8 + 520 | 0) >> 2] | 0 | 0, $8 + 216 | 0 | 0, $8 + 292 | 0 | 0, $8 + 308 | 0 | 0, Math_fround(Math_fround(1.0)), $8 + 356 | 0 | 0, $8 + 340 | 0 | 0);
|
|
btSingleSweepCallback__btSingleSweepCallback_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionWorld_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29($8 + 4 | 0 | 0, HEAP32[($8 + 520 | 0) >> 2] | 0 | 0, HEAP32[($8 + 516 | 0) >> 2] | 0 | 0, HEAP32[($8 + 512 | 0) >> 2] | 0 | 0, $9 | 0, HEAP32[($8 + 508 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($8 + 504 | 0) >> 2]))) | 0;
|
|
$117 = HEAP32[($9 + 68 | 0) >> 2] | 0;
|
|
((((((wasm2js_i32$1 = $117, wasm2js_i32$2 = btTransform__getOrigin_28_29($8 + 436 | 0 | 0) | 0), wasm2js_i32$3 = btTransform__getOrigin_28_29($8 + 372 | 0 | 0) | 0), wasm2js_i32$4 = $8 + 4 | 0), wasm2js_i32$5 = $8 + 356 | 0), wasm2js_i32$6 = $8 + 340 | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$117 >> 2] | 0) + 24 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, wasm2js_i32$3 | 0, wasm2js_i32$4 | 0, wasm2js_i32$5 | 0, wasm2js_i32$6 | 0);
|
|
btSingleSweepCallback___btSingleSweepCallback_28_29($8 + 4 | 0 | 0) | 0;
|
|
CProfileSample___CProfileSample_28_29($8 + 503 | 0 | 0) | 0;
|
|
__stack_pointer = $8 + 528 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTransformUtil__calculateVelocity_28btTransform_20const__2c_20btTransform_20const__2c_20float_2c_20btVector3__2c_20btVector3__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $24 = 0, $26 = 0, $61 = 0, $63 = 0, $121 = 0, $134 = 0, $192 = 0, $205 = 0;
|
|
$7 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 108 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 104 | 0) >> 2] = $1;
|
|
HEAPF32[($7 + 100 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 96 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 92 | 0) >> 2] = $4;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($7 + 60 | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($7 + 104 | 0) >> 2] | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($7 + 108 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29_1($7 + 76 | 0 | 0, $7 + 60 | 0 | 0, $7 + 100 | 0 | 0);
|
|
$24 = HEAP32[($7 + 96 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$0 = HEAP32[($7 + 76 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($7 + 80 | 0) >> 2] | 0;
|
|
$121 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $24;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $121;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$26 = 8;
|
|
i64toi32_i32$2 = ($7 + 76 | 0) + $26 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$134 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $24 + $26 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $134;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__btVector3_28_29($7 + 44 | 0 | 0) | 0;
|
|
btTransformUtil__calculateDiffAxisAngle_28btTransform_20const__2c_20btTransform_20const__2c_20btVector3__2c_20float__29(HEAP32[($7 + 108 | 0) >> 2] | 0 | 0, HEAP32[($7 + 104 | 0) >> 2] | 0 | 0, $7 + 44 | 0 | 0, $7 + 40 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($7 + 8 | 0 | 0, $7 + 44 | 0 | 0, $7 + 40 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29_1($7 + 24 | 0 | 0, $7 + 8 | 0 | 0, $7 + 100 | 0 | 0);
|
|
$61 = HEAP32[($7 + 92 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$0 = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
$192 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $61;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $192;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$63 = 8;
|
|
i64toi32_i32$2 = ($7 + 24 | 0) + $63 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$205 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $61 + $63 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $205;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $7 + 112 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTransform__getRotation_28_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btQuaternion__btQuaternion_28_29($0 | 0) | 0;
|
|
btMatrix3x3__getRotation_28btQuaternion__29_20const($5 | 0, $0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSingleSweepCallback__btSingleSweepCallback_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionWorld_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29($0, $1, $2, $3, $4, $5, $6) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = Math_fround($6);
|
|
var $9 = 0, $10 = 0, $94 = 0, $48 = Math_fround(0), $67 = Math_fround(0), $86 = Math_fround(0), $99 = 0.0, $120 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$1 = 0;
|
|
$9 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $9;
|
|
HEAP32[($9 + 56 | 0) >> 2] = $0;
|
|
HEAP32[($9 + 52 | 0) >> 2] = $1;
|
|
HEAP32[($9 + 48 | 0) >> 2] = $2;
|
|
HEAP32[($9 + 44 | 0) >> 2] = $3;
|
|
HEAP32[($9 + 40 | 0) >> 2] = $4;
|
|
HEAP32[($9 + 36 | 0) >> 2] = $5;
|
|
HEAPF32[($9 + 32 | 0) >> 2] = $6;
|
|
$10 = HEAP32[($9 + 56 | 0) >> 2] | 0;
|
|
HEAP32[($9 + 60 | 0) >> 2] = $10;
|
|
btBroadphaseRayCallback__btBroadphaseRayCallback_28_29($10 | 0) | 0;
|
|
HEAP32[$10 >> 2] = 93432 + 8 | 0;
|
|
btTransform__btTransform_28btTransform_20const__29($10 + 36 | 0 | 0, HEAP32[($9 + 48 | 0) >> 2] | 0 | 0) | 0;
|
|
btTransform__btTransform_28btTransform_20const__29($10 + 100 | 0 | 0, HEAP32[($9 + 44 | 0) >> 2] | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($10 + 164 | 0 | 0) | 0;
|
|
HEAP32[($10 + 180 | 0) >> 2] = HEAP32[($9 + 40 | 0) >> 2] | 0;
|
|
HEAP32[($10 + 184 | 0) >> 2] = HEAP32[($9 + 36 | 0) >> 2] | 0;
|
|
HEAPF32[($10 + 188 | 0) >> 2] = Math_fround(HEAPF32[($9 + 32 | 0) >> 2]);
|
|
HEAP32[($10 + 192 | 0) >> 2] = HEAP32[($9 + 52 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($9 + 16 | 0 | 0, btTransform__getOrigin_28_29($10 + 100 | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29($10 + 36 | 0 | 0) | 0 | 0);
|
|
btVector3__normalized_28_29_20const($9 | 0, $9 + 16 | 0 | 0);
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__operator_20float__28_29($9 | 0) | 0) >> 2]) == Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$48 = Math_fround(999999984306749440.0);
|
|
break label$1;
|
|
}
|
|
$48 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[(btVector3__operator_20float__28_29($9 | 0) | 0) >> 2]));
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($10 + 4 | 0 | 0) | 0, wasm2js_f32$0 = $48), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($9 | 0) | 0) + 4 | 0) >> 2]) == Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$67 = Math_fround(999999984306749440.0);
|
|
break label$3;
|
|
}
|
|
$67 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[((btVector3__operator_20float__28_29($9 | 0) | 0) + 4 | 0) >> 2]));
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($10 + 4 | 0 | 0) | 0, wasm2js_f32$0 = $67), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($9 | 0) | 0) + 8 | 0) >> 2]) == Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$86 = Math_fround(999999984306749440.0);
|
|
break label$5;
|
|
}
|
|
$86 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[((btVector3__operator_20float__28_29($9 | 0) | 0) + 8 | 0) >> 2]));
|
|
}
|
|
$94 = $10 + 4 | 0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($94 | 0) | 0, wasm2js_f32$0 = $86), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
$99 = 0.0;
|
|
(wasm2js_i32$0 = $10, wasm2js_i32$1 = +Math_fround(HEAPF32[(btVector3__operator_20float__28_29($94 | 0) | 0) >> 2]) < $99), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $10 + 24 | 0, wasm2js_i32$1 = +Math_fround(HEAPF32[((btVector3__operator_20float__28_29($94 | 0) | 0) + 4 | 0) >> 2]) < $99), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $10, wasm2js_i32$1 = +Math_fround(HEAPF32[((btVector3__operator_20float__28_29($94 | 0) | 0) + 8 | 0) >> 2]) < +(0 | 0) & 1 | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $10, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($9 | 0, $9 + 16 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
$120 = HEAP32[($9 + 60 | 0) >> 2] | 0;
|
|
__stack_pointer = $9 + 64 | 0;
|
|
return $120 | 0;
|
|
}
|
|
|
|
function btSingleSweepCallback___btSingleSweepCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btBroadphaseRayCallback___btBroadphaseRayCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btTransformUtil__calculateDiffAxisAngle_28btTransform_20const__2c_20btTransform_20const__2c_20btVector3__2c_20float__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $52 = 0, $54 = 0, $88 = 0, $90 = 0, $8 = 0, $35 = Math_fround(0), $206 = 0, $219 = 0, $280 = 0, $293 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 192 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 188 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 184 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 180 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 176 | 0) >> 2] = $3;
|
|
$8 = btTransform__getBasis_28_29_20const(HEAP32[($6 + 184 | 0) >> 2] | 0 | 0) | 0;
|
|
btMatrix3x3__inverse_28_29_20const($6 + 80 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($6 + 188 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btMatrix3x3_20const__29($6 + 128 | 0 | 0, $8 | 0, $6 + 80 | 0 | 0);
|
|
btQuaternion__btQuaternion_28_29($6 + 64 | 0 | 0) | 0;
|
|
btMatrix3x3__getRotation_28btQuaternion__29_20const($6 + 128 | 0 | 0, $6 + 64 | 0 | 0);
|
|
btQuaternion__normalize_28_29($6 + 64 | 0 | 0) | 0;
|
|
$35 = Math_fround(btQuaternion__getAngle_28_29_20const($6 + 64 | 0 | 0));
|
|
HEAPF32[(HEAP32[($6 + 176 | 0) >> 2] | 0) >> 2] = $35;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 48 | 0 | 0, btQuadWord__x_28_29_20const($6 + 64 | 0 | 0) | 0 | 0, btQuadWord__y_28_29_20const($6 + 64 | 0 | 0) | 0 | 0, btQuadWord__z_28_29_20const($6 + 64 | 0 | 0) | 0 | 0) | 0;
|
|
$52 = HEAP32[($6 + 180 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 52 | 0) >> 2] | 0;
|
|
$206 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $52;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $206;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$54 = 8;
|
|
i64toi32_i32$2 = ($6 + 48 | 0) + $54 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$219 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $52 + $54 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $219;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($6 + 180 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const(HEAP32[($6 + 180 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 44 | 0) >> 2]) < Math_fround(1.4210854715202004e-14) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($6 + 24 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($6 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 28 | 0 | 0, $6 + 24 | 0 | 0, $6 + 20 | 0 | 0, $6 + 16 | 0 | 0) | 0;
|
|
$88 = HEAP32[($6 + 180 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 32 | 0) >> 2] | 0;
|
|
$280 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $88;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $280;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$90 = 8;
|
|
i64toi32_i32$2 = ($6 + 28 | 0) + $90 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$293 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $88 + $90 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $293;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btSqrt_28float_29(Math_fround(Math_fround(HEAPF32[($6 + 44 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__operator___28float_20const__29(HEAP32[($6 + 180 | 0) >> 2] | 0 | 0, $6 + 12 | 0 | 0) | 0;
|
|
}
|
|
__stack_pointer = $6 + 192 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuaternion__btQuaternion_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btQuadWord__btQuadWord_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btVector3__normalized_28_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, $4 = 0, $5 = 0, $6 = 0, $18 = 0, $45 = 0, $49 = 0, $59 = 0, $69 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
$6 = 8;
|
|
i64toi32_i32$2 = $5 + $6 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$45 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 8 | 0) + $6 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $45;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$49 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[(i64toi32_i32$1 + 8 | 0) >> 2] = $49;
|
|
HEAP32[(i64toi32_i32$1 + 12 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = btVector3__normalize_28_29(i64toi32_i32$1 + 8 | 0 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$59 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $59;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$18 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $18 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$69 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0 + $18 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $69;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBroadphaseAabbCallback__btBroadphaseAabbCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 93412 + 8 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btBroadphaseAabbCallback___btBroadphaseAabbCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__debugDrawObject_28btTransform_20const__2c_20btCollisionShape_20const__2c_20btVector3_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $19 = 0, $27 = 0, $79 = 0, $88 = 0, $106 = 0, $112 = 0, $144 = 0, $173 = 0, $190 = 0, $201 = 0, $220 = 0, $236 = 0, $335 = 0, $379 = 0, $431 = 0, $471 = 0, $486 = 0, $512 = 0, $568 = 0, $631 = 0, $642 = 0, $147 = Math_fround(0), $439 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 976 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 972 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 968 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 964 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 960 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 972 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($7) | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$19 = FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($7) | 0;
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$19 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($19) | 0) & 32768 | 0)) {
|
|
break label$1
|
|
}
|
|
$27 = FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($7) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$27 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($27, HEAP32[($6 + 968 | 0) >> 2] | 0, Math_fround(.10000000149011612));
|
|
}
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((btCollisionShape__getShapeType_28_29_20const(HEAP32[($6 + 964 | 0) >> 2] | 0 | 0) | 0 | 0) == (31 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($6 + 956 | 0) >> 2] = HEAP32[($6 + 964 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = (btCompoundShape__getNumChildShapes_28_29_20const(HEAP32[($6 + 956 | 0) >> 2] | 0 | 0) | 0) - 1 | 0), HEAP32[(wasm2js_i32$0 + 952 | 0) >> 2] = wasm2js_i32$1;
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((HEAP32[($6 + 952 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
btTransform__btTransform_28btTransform_20const__29($6 + 888 | 0 | 0, btCompoundShape__getChildTransform_28int_29_20const(HEAP32[($6 + 956 | 0) >> 2] | 0 | 0, HEAP32[($6 + 952 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btCompoundShape__getChildShape_28int_29_20const(HEAP32[($6 + 956 | 0) >> 2] | 0 | 0, HEAP32[($6 + 952 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 884 | 0) >> 2] = wasm2js_i32$1;
|
|
btTransform__operator__28btTransform_20const__29_20const($6 + 820 | 0 | 0, HEAP32[($6 + 968 | 0) >> 2] | 0 | 0, $6 + 888 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($7, $6 + 820 | 0, HEAP32[($6 + 884 | 0) >> 2] | 0, HEAP32[($6 + 960 | 0) >> 2] | 0);
|
|
HEAP32[($6 + 952 | 0) >> 2] = (HEAP32[($6 + 952 | 0) >> 2] | 0) + -1 | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
break label$2;
|
|
}
|
|
$79 = btCollisionShape__getShapeType_28_29_20const(HEAP32[($6 + 964 | 0) >> 2] | 0 | 0) | 0;
|
|
label$6 : {
|
|
label$7 : {
|
|
switch ($79 | 0) {
|
|
case 0:
|
|
HEAP32[($6 + 816 | 0) >> 2] = HEAP32[($6 + 964 | 0) >> 2] | 0;
|
|
btBoxShape__getHalfExtentsWithMargin_28_29_20const($6 + 800 | 0 | 0, HEAP32[($6 + 816 | 0) >> 2] | 0 | 0);
|
|
$88 = FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($7) | 0;
|
|
operator__28btVector3_20const__29($6 + 784 | 0 | 0, $6 + 800 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$88 >> 2] | 0) + 80 | 0) >> 2] | 0 | 0]($88, $6 + 784 | 0, $6 + 800 | 0, HEAP32[($6 + 968 | 0) >> 2] | 0, HEAP32[($6 + 960 | 0) >> 2] | 0);
|
|
break label$6;
|
|
case 8:
|
|
HEAP32[($6 + 780 | 0) >> 2] = HEAP32[($6 + 964 | 0) >> 2] | 0;
|
|
$106 = HEAP32[($6 + 780 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$106 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($106))), HEAPF32[(wasm2js_i32$0 + 776 | 0) >> 2] = wasm2js_f32$0;
|
|
$112 = FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($7) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$112 >> 2] | 0) + 24 | 0) >> 2] | 0 | 0]($112, Math_fround(HEAPF32[($6 + 776 | 0) >> 2]), HEAP32[($6 + 968 | 0) >> 2] | 0, HEAP32[($6 + 960 | 0) >> 2] | 0);
|
|
break label$6;
|
|
case 9:
|
|
HEAP32[($6 + 772 | 0) >> 2] = HEAP32[($6 + 964 | 0) >> 2] | 0;
|
|
btTransform__btTransform_28_29($6 + 708 | 0 | 0) | 0;
|
|
btTransform__setIdentity_28_29($6 + 708 | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = (btMultiSphereShape__getSphereCount_28_29_20const(HEAP32[($6 + 772 | 0) >> 2] | 0 | 0) | 0) - 1 | 0), HEAP32[(wasm2js_i32$0 + 704 | 0) >> 2] = wasm2js_i32$1;
|
|
label$15 : {
|
|
label$16 : while (1) {
|
|
if (!((HEAP32[($6 + 704 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
btTransform__setOrigin_28btVector3_20const__29($6 + 708 | 0 | 0, btMultiSphereShape__getSpherePosition_28int_29_20const(HEAP32[($6 + 772 | 0) >> 2] | 0 | 0, HEAP32[($6 + 704 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$144 = FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($7) | 0;
|
|
$147 = Math_fround(btMultiSphereShape__getSphereRadius_28int_29_20const(HEAP32[($6 + 772 | 0) >> 2] | 0 | 0, HEAP32[($6 + 704 | 0) >> 2] | 0 | 0));
|
|
btTransform__operator__28btTransform_20const__29_20const($6 + 640 | 0 | 0, HEAP32[($6 + 968 | 0) >> 2] | 0 | 0, $6 + 708 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$144 >> 2] | 0) + 24 | 0) >> 2] | 0 | 0]($144, $147, $6 + 640 | 0, HEAP32[($6 + 960 | 0) >> 2] | 0);
|
|
HEAP32[($6 + 704 | 0) >> 2] = (HEAP32[($6 + 704 | 0) >> 2] | 0) + -1 | 0;
|
|
continue label$16;
|
|
};
|
|
}
|
|
break label$6;
|
|
case 10:
|
|
HEAP32[($6 + 636 | 0) >> 2] = HEAP32[($6 + 964 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btCapsuleShape__getRadius_28_29_20const(HEAP32[($6 + 636 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 632 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btCapsuleShape__getHalfHeight_28_29_20const(HEAP32[($6 + 636 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 628 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btCapsuleShape__getUpAxis_28_29_20const(HEAP32[($6 + 636 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 624 | 0) >> 2] = wasm2js_i32$1;
|
|
$173 = FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($7) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$173 >> 2] | 0) + 84 | 0) >> 2] | 0 | 0]($173, Math_fround(HEAPF32[($6 + 632 | 0) >> 2]), Math_fround(HEAPF32[($6 + 628 | 0) >> 2]), HEAP32[($6 + 624 | 0) >> 2] | 0, HEAP32[($6 + 968 | 0) >> 2] | 0, HEAP32[($6 + 960 | 0) >> 2] | 0);
|
|
break label$6;
|
|
case 11:
|
|
HEAP32[($6 + 620 | 0) >> 2] = HEAP32[($6 + 964 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btConeShape__getRadius_28_29_20const(HEAP32[($6 + 620 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 616 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btConeShape__getHeight_28_29_20const(HEAP32[($6 + 620 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 612 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btConeShape__getConeUpIndex_28_29_20const(HEAP32[($6 + 620 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 608 | 0) >> 2] = wasm2js_i32$1;
|
|
$190 = FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($7) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$190 >> 2] | 0) + 92 | 0) >> 2] | 0 | 0]($190, Math_fround(HEAPF32[($6 + 616 | 0) >> 2]), Math_fround(HEAPF32[($6 + 612 | 0) >> 2]), HEAP32[($6 + 608 | 0) >> 2] | 0, HEAP32[($6 + 968 | 0) >> 2] | 0, HEAP32[($6 + 960 | 0) >> 2] | 0);
|
|
break label$6;
|
|
case 13:
|
|
HEAP32[($6 + 604 | 0) >> 2] = HEAP32[($6 + 964 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btCylinderShape__getUpAxis_28_29_20const(HEAP32[($6 + 604 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 600 | 0) >> 2] = wasm2js_i32$1;
|
|
$201 = HEAP32[($6 + 604 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$201 >> 2] | 0) + 92 | 0) >> 2] | 0 | 0]($201))), HEAPF32[(wasm2js_i32$0 + 596 | 0) >> 2] = wasm2js_f32$0;
|
|
btCylinderShape__getHalfExtentsWithMargin_28_29_20const($6 + 576 | 0 | 0, HEAP32[($6 + 604 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 576 | 0 | 0) | 0) + ((HEAP32[($6 + 600 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 592 | 0) >> 2] = wasm2js_f32$0;
|
|
$220 = FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($7) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$220 >> 2] | 0) + 88 | 0) >> 2] | 0 | 0]($220, Math_fround(HEAPF32[($6 + 596 | 0) >> 2]), Math_fround(HEAPF32[($6 + 592 | 0) >> 2]), HEAP32[($6 + 600 | 0) >> 2] | 0, HEAP32[($6 + 968 | 0) >> 2] | 0, HEAP32[($6 + 960 | 0) >> 2] | 0);
|
|
break label$6;
|
|
case 28:
|
|
HEAP32[($6 + 572 | 0) >> 2] = HEAP32[($6 + 964 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(HEAPF32[(btStaticPlaneShape__getPlaneConstant_28_29_20const(HEAP32[($6 + 572 | 0) >> 2] | 0 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 568 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btStaticPlaneShape__getPlaneNormal_28_29_20const(HEAP32[($6 + 572 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 564 | 0) >> 2] = wasm2js_i32$1;
|
|
$236 = FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($7) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$236 >> 2] | 0) + 96 | 0) >> 2] | 0 | 0]($236, HEAP32[($6 + 564 | 0) >> 2] | 0, Math_fround(HEAPF32[($6 + 568 | 0) >> 2]), HEAP32[($6 + 968 | 0) >> 2] | 0, HEAP32[($6 + 960 | 0) >> 2] | 0);
|
|
break label$6;
|
|
default:
|
|
break label$7;
|
|
};
|
|
}
|
|
label$17 : {
|
|
if (!((btCollisionShape__isPolyhedral_28_29_20const(HEAP32[($6 + 964 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
HEAP32[($6 + 560 | 0) >> 2] = HEAP32[($6 + 964 | 0) >> 2] | 0;
|
|
label$18 : {
|
|
label$19 : {
|
|
if (!((btPolyhedralConvexShape__getConvexPolyhedron_28_29_20const(HEAP32[($6 + 560 | 0) >> 2] | 0 | 0) | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btPolyhedralConvexShape__getConvexPolyhedron_28_29_20const(HEAP32[($6 + 560 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 552 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($6 + 556 | 0) >> 2] = 0;
|
|
label$20 : {
|
|
label$21 : while (1) {
|
|
if (!((HEAP32[($6 + 556 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btFace___size_28_29_20const((HEAP32[($6 + 552 | 0) >> 2] | 0) + 24 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$20
|
|
}
|
|
HEAPF32[($6 + 532 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 528 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 524 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 536 | 0 | 0, $6 + 532 | 0 | 0, $6 + 528 | 0 | 0, $6 + 524 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btAlignedObjectArray_int___size_28_29_20const(btAlignedObjectArray_btFace___operator_5b_5d_28int_29_20const((HEAP32[($6 + 552 | 0) >> 2] | 0) + 24 | 0 | 0, HEAP32[($6 + 556 | 0) >> 2] | 0 | 0) | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 520 | 0) >> 2] = wasm2js_i32$1;
|
|
label$22 : {
|
|
if (!(HEAP32[($6 + 520 | 0) >> 2] | 0)) {
|
|
break label$22
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29_20const(btAlignedObjectArray_btFace___operator_5b_5d_28int_29_20const((HEAP32[($6 + 552 | 0) >> 2] | 0) + 24 | 0 | 0, HEAP32[($6 + 556 | 0) >> 2] | 0 | 0) | 0 | 0, (HEAP32[($6 + 520 | 0) >> 2] | 0) - 1 | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 516 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($6 + 512 | 0) >> 2] = 0;
|
|
label$23 : {
|
|
label$24 : while (1) {
|
|
if (!((HEAP32[($6 + 512 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_int___size_28_29_20const(btAlignedObjectArray_btFace___operator_5b_5d_28int_29_20const((HEAP32[($6 + 552 | 0) >> 2] | 0) + 24 | 0 | 0, HEAP32[($6 + 556 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$23
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29_20const(btAlignedObjectArray_btFace___operator_5b_5d_28int_29_20const((HEAP32[($6 + 552 | 0) >> 2] | 0) + 24 | 0 | 0, HEAP32[($6 + 556 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($6 + 512 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 508 | 0) >> 2] = wasm2js_i32$1;
|
|
btVector3__operator___28btVector3_20const__29_1($6 + 536 | 0 | 0, btAlignedObjectArray_btVector3___operator_5b_5d_28int_29_20const((HEAP32[($6 + 552 | 0) >> 2] | 0) + 4 | 0 | 0, HEAP32[($6 + 508 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
$335 = FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($7) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($6 + 492 | 0 | 0, HEAP32[($6 + 968 | 0) >> 2] | 0 | 0, btAlignedObjectArray_btVector3___operator_5b_5d_28int_29_20const((HEAP32[($6 + 552 | 0) >> 2] | 0) + 4 | 0 | 0, HEAP32[($6 + 516 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($6 + 476 | 0 | 0, HEAP32[($6 + 968 | 0) >> 2] | 0 | 0, btAlignedObjectArray_btVector3___operator_5b_5d_28int_29_20const((HEAP32[($6 + 552 | 0) >> 2] | 0) + 4 | 0 | 0, HEAP32[($6 + 508 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$335 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($335, $6 + 492 | 0, $6 + 476 | 0, HEAP32[($6 + 960 | 0) >> 2] | 0);
|
|
HEAP32[($6 + 516 | 0) >> 2] = HEAP32[($6 + 508 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 512 | 0) >> 2] = (HEAP32[($6 + 512 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$24;
|
|
};
|
|
}
|
|
}
|
|
HEAPF32[($6 + 472 | 0) >> 2] = Math_fround(Math_fround(1.0) / Math_fround(HEAP32[($6 + 520 | 0) >> 2] | 0 | 0));
|
|
btVector3__operator___28float_20const__29_1($6 + 536 | 0 | 0, $6 + 472 | 0 | 0) | 0;
|
|
$379 = FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($7) | 0;
|
|
label$25 : {
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$379 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($379) | 0) & 16384 | 0)) {
|
|
break label$25
|
|
}
|
|
HEAPF32[($6 + 452 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($6 + 448 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($6 + 444 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 456 | 0 | 0, $6 + 452 | 0 | 0, $6 + 448 | 0 | 0, $6 + 444 | 0 | 0) | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 428 | 0 | 0, (btAlignedObjectArray_btFace___operator_5b_5d_28int_29_20const((HEAP32[($6 + 552 | 0) >> 2] | 0) + 24 | 0 | 0, HEAP32[($6 + 556 | 0) >> 2] | 0 | 0) | 0) + 20 | 0 | 0, ((btAlignedObjectArray_btFace___operator_5b_5d_28int_29_20const((HEAP32[($6 + 552 | 0) >> 2] | 0) + 24 | 0 | 0, HEAP32[($6 + 556 | 0) >> 2] | 0 | 0) | 0) + 20 | 0) + 4 | 0 | 0, ((btAlignedObjectArray_btFace___operator_5b_5d_28int_29_20const((HEAP32[($6 + 552 | 0) >> 2] | 0) + 24 | 0 | 0, HEAP32[($6 + 556 | 0) >> 2] | 0 | 0) | 0) + 20 | 0) + 8 | 0 | 0) | 0;
|
|
$431 = FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($7) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($6 + 412 | 0 | 0, HEAP32[($6 + 968 | 0) >> 2] | 0 | 0, $6 + 536 | 0 | 0);
|
|
$439 = HEAP32[($6 + 968 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 380 | 0 | 0, $6 + 536 | 0 | 0, $6 + 428 | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($6 + 396 | 0 | 0, $439 | 0, $6 + 380 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$431 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($431, $6 + 412 | 0, $6 + 396 | 0, $6 + 456 | 0);
|
|
}
|
|
HEAP32[($6 + 556 | 0) >> 2] = (HEAP32[($6 + 556 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$21;
|
|
};
|
|
}
|
|
break label$18;
|
|
}
|
|
HEAP32[($6 + 556 | 0) >> 2] = 0;
|
|
label$26 : {
|
|
label$27 : while (1) {
|
|
$471 = HEAP32[($6 + 560 | 0) >> 2] | 0;
|
|
if (!((HEAP32[($6 + 556 | 0) >> 2] | 0 | 0) < (FUNCTION_TABLE[HEAP32[((HEAP32[$471 >> 2] | 0) + 100 | 0) >> 2] | 0 | 0]($471) | 0 | 0) & 1 | 0)) {
|
|
break label$26
|
|
}
|
|
btVector3__btVector3_28_29($6 + 364 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 348 | 0 | 0) | 0;
|
|
$486 = HEAP32[($6 + 560 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$486 >> 2] | 0) + 104 | 0) >> 2] | 0 | 0]($486, HEAP32[($6 + 556 | 0) >> 2] | 0, $6 + 364 | 0, $6 + 348 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($6 + 332 | 0 | 0, HEAP32[($6 + 968 | 0) >> 2] | 0 | 0, $6 + 364 | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($6 + 316 | 0 | 0, HEAP32[($6 + 968 | 0) >> 2] | 0 | 0, $6 + 348 | 0 | 0);
|
|
$512 = FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($7) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$512 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($512, $6 + 332 | 0, $6 + 316 | 0, HEAP32[($6 + 960 | 0) >> 2] | 0);
|
|
HEAP32[($6 + 556 | 0) >> 2] = (HEAP32[($6 + 556 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$27;
|
|
};
|
|
}
|
|
}
|
|
}
|
|
label$28 : {
|
|
if (!((btCollisionShape__isConcave_28_29_20const(HEAP32[($6 + 964 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$28
|
|
}
|
|
HEAP32[($6 + 312 | 0) >> 2] = HEAP32[($6 + 964 | 0) >> 2] | 0;
|
|
HEAPF32[($6 + 292 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAPF32[($6 + 288 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAPF32[($6 + 284 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 296 | 0 | 0, $6 + 292 | 0 | 0, $6 + 288 | 0 | 0, $6 + 284 | 0 | 0) | 0;
|
|
HEAPF32[($6 + 264 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
HEAPF32[($6 + 260 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
HEAPF32[($6 + 256 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 268 | 0 | 0, $6 + 264 | 0 | 0, $6 + 260 | 0 | 0, $6 + 256 | 0 | 0) | 0;
|
|
DebugDrawcallback__DebugDrawcallback_28btIDebugDraw__2c_20btTransform_20const__2c_20btVector3_20const__29($6 + 164 | 0 | 0, FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($7) | 0 | 0, HEAP32[($6 + 968 | 0) >> 2] | 0 | 0, HEAP32[($6 + 960 | 0) >> 2] | 0 | 0) | 0;
|
|
$568 = HEAP32[($6 + 312 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$568 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($568, $6 + 164 | 0, $6 + 268 | 0, $6 + 296 | 0);
|
|
DebugDrawcallback___DebugDrawcallback_28_29($6 + 164 | 0 | 0) | 0;
|
|
}
|
|
label$29 : {
|
|
if (!((btCollisionShape__getShapeType_28_29_20const(HEAP32[($6 + 964 | 0) >> 2] | 0 | 0) | 0 | 0) == (3 | 0) & 1 | 0)) {
|
|
break label$29
|
|
}
|
|
HEAP32[($6 + 160 | 0) >> 2] = HEAP32[($6 + 964 | 0) >> 2] | 0;
|
|
HEAPF32[($6 + 140 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAPF32[($6 + 136 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAPF32[($6 + 132 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 144 | 0 | 0, $6 + 140 | 0 | 0, $6 + 136 | 0 | 0, $6 + 132 | 0 | 0) | 0;
|
|
HEAPF32[($6 + 112 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
HEAPF32[($6 + 108 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
HEAPF32[($6 + 104 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 116 | 0 | 0, $6 + 112 | 0 | 0, $6 + 108 | 0 | 0, $6 + 104 | 0 | 0) | 0;
|
|
DebugDrawcallback__DebugDrawcallback_28btIDebugDraw__2c_20btTransform_20const__2c_20btVector3_20const__29($6 + 12 | 0 | 0, FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($7) | 0 | 0, HEAP32[($6 + 968 | 0) >> 2] | 0 | 0, HEAP32[($6 + 960 | 0) >> 2] | 0 | 0) | 0;
|
|
$631 = btConvexTriangleMeshShape__getMeshInterface_28_29(HEAP32[($6 + 160 | 0) >> 2] | 0 | 0) | 0;
|
|
$642 = 0;
|
|
label$30 : {
|
|
if (($6 + 12 | 0 | 0) == (0 | 0) & 1 | 0) {
|
|
break label$30
|
|
}
|
|
$642 = ($6 + 12 | 0) + 4 | 0;
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$631 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($631, $642, $6 + 116 | 0, $6 + 144 | 0);
|
|
DebugDrawcallback___DebugDrawcallback_28_29($6 + 12 | 0 | 0) | 0;
|
|
}
|
|
}
|
|
}
|
|
__stack_pointer = $6 + 976 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBoxShape__getHalfExtentsWithMargin_28_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $8 = 0, $50 = 0, $60 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = btBoxShape__getHalfExtentsWithoutMargin_28_29_20const($5 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$50 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $50;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$8 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $8 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$60 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0 + $8 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $60;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 12 | 0 | 0, $4 + 8 | 0 | 0, $4 + 4 | 0 | 0, $4 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($0 | 0, $4 + 12 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btMultiSphereShape__getSphereCount_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $7 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$7 = btAlignedObjectArray_btVector3___size_28_29_20const((HEAP32[($3 + 12 | 0) >> 2] | 0) + 96 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btMultiSphereShape__getSpherePosition_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$9 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29_20const((HEAP32[($4 + 12 | 0) >> 2] | 0) + 96 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btMultiSphereShape__getSphereRadius_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $10 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$10 = Math_fround(HEAPF32[(btAlignedObjectArray_float___operator_5b_5d_28int_29_20const((HEAP32[($4 + 12 | 0) >> 2] | 0) + 116 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2]);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return Math_fround($10);
|
|
}
|
|
|
|
function btCapsuleShape__getRadius_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $17 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = ((HEAP32[($4 + 60 | 0) >> 2] | 0) + 2 | 0 | 0) % (3 | 0) | 0;
|
|
$17 = Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($4 + 36 | 0 | 0) | 0) + ((HEAP32[($3 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($17);
|
|
}
|
|
|
|
function btCapsuleShape__getHalfHeight_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $12 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$12 = Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($4 + 36 | 0 | 0) | 0) + ((HEAP32[($4 + 60 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($12);
|
|
}
|
|
|
|
function btCapsuleShape__getUpAxis_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 60 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btConeShape__getRadius_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 64 | 0) >> 2]));
|
|
}
|
|
|
|
function btConeShape__getHeight_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 68 | 0) >> 2]));
|
|
}
|
|
|
|
function btConeShape__getConeUpIndex_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 76 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btCylinderShape__getUpAxis_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 60 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btCylinderShape__getHalfExtentsWithMargin_28_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $8 = 0, $50 = 0, $60 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = btCylinderShape__getHalfExtentsWithoutMargin_28_29_20const($5 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$50 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $50;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$8 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $8 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$60 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0 + $8 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $60;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 12 | 0 | 0, $4 + 8 | 0 | 0, $4 + 4 | 0 | 0, $4 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($0 | 0, $4 + 12 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btStaticPlaneShape__getPlaneConstant_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 72 | 0 | 0;
|
|
}
|
|
|
|
function btCollisionShape__isPolyhedral_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $8 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$8 = (btBroadphaseProxy__isPolyhedral_28int_29(btCollisionShape__getShapeType_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) & 1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btPolyhedralConvexShape__getConvexPolyhedron_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 60 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btFace___size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btFace___operator_5b_5d_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 176 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btFace___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 177 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($4 + 8 | 0) >> 2] | 0, 36) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_int___operator_5b_5d_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 176 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_int___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 177 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btVector3___operator_5b_5d_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 176 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btVector3___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 177 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btVector3__operator___28float_20const__29_1($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[$5 >> 2] = Math_fround(Math_fround(HEAPF32[$5 >> 2]) * Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2]));
|
|
HEAPF32[($5 + 4 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2]) * Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2]));
|
|
HEAPF32[($5 + 8 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 8 | 0) >> 2]) * Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2]));
|
|
return $5 | 0;
|
|
}
|
|
|
|
function DebugDrawcallback__DebugDrawcallback_28btIDebugDraw__2c_20btTransform_20const__2c_20btVector3_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $18 = 0, $21 = 0, $74 = 0, $84 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btTriangleCallback__btTriangleCallback_28_29($7 | 0) | 0;
|
|
btInternalTriangleIndexCallback__btInternalTriangleIndexCallback_28_29($7 + 4 | 0 | 0) | 0;
|
|
HEAP32[$7 >> 2] = 93488 + 8 | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = 93488 + 32 | 0;
|
|
HEAP32[($7 + 8 | 0) >> 2] = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
$18 = $7 + 12 | 0;
|
|
i64toi32_i32$2 = HEAP32[$6 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$74 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $18;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $74;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$21 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $21 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$84 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $18 + $21 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $84;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btTransform__btTransform_28btTransform_20const__29($7 + 28 | 0 | 0, HEAP32[($6 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function DebugDrawcallback___DebugDrawcallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btInternalTriangleIndexCallback___btInternalTriangleIndexCallback_28_29($4 + 4 | 0 | 0) | 0;
|
|
btTriangleCallback___btTriangleCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexTriangleMeshShape__getMeshInterface_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 100 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btBoxShape__getHalfExtentsWithoutMargin_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 36 | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_float___operator_5b_5d_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 176 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_float___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 177 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btCylinderShape__getHalfExtentsWithoutMargin_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 36 | 0 | 0;
|
|
}
|
|
|
|
function btBroadphaseProxy__isPolyhedral_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) < (7 | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function btTriangleCallback__btTriangleCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 100388 + 8 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btInternalTriangleIndexCallback__btInternalTriangleIndexCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 100440 + 8 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__debugDrawWorld_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $4 = 0, $142 = 0, $297 = 0, $16 = 0, $21 = 0, $29 = 0, $42 = 0, $54 = 0, $74 = 0, $100 = 0, $136 = 0, $154 = 0, $158 = 0, $159 = 0, $170 = 0, $171 = 0, $182 = 0, $183 = 0, $194 = 0, $195 = 0, $206 = 0, $207 = 0, $229 = 0, $258 = 0, $274 = 0, $275 = 0, $283 = 0, $331 = 0, $360 = 0, $738 = 0, $742 = 0, $762 = 0, $766 = 0, $786 = 0, $790 = 0, $810 = 0, $814 = 0, $834 = 0, $838 = 0, $881 = 0, $885 = 0, $973 = 0, $977 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$4 = 0, wasm2js_i32$5 = 0;
|
|
$3 = __stack_pointer - 320 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 316 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 316 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($4) | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$16 = FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($4) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$16 >> 2] | 0) + 100 | 0) >> 2] | 0 | 0]($16);
|
|
$21 = FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($4) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$21 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($3 + 188 | 0, $21);
|
|
$29 = FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($4) | 0;
|
|
label$2 : {
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$29 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($29) | 0) & 8 | 0)) {
|
|
break label$2
|
|
}
|
|
label$3 : {
|
|
if (!((btCollisionWorld__getDispatcher_28_29($4 | 0) | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$42 = btCollisionWorld__getDispatcher_28_29($4 | 0) | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$42 >> 2] | 0) + 36 | 0) >> 2] | 0 | 0]($42) | 0), HEAP32[(wasm2js_i32$0 + 184 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($3 + 180 | 0) >> 2] = 0;
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((HEAP32[($3 + 180 | 0) >> 2] | 0 | 0) < (HEAP32[($3 + 184 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$54 = btCollisionWorld__getDispatcher_28_29($4 | 0) | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$54 >> 2] | 0) + 40 | 0) >> 2] | 0 | 0]($54, HEAP32[($3 + 180 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 176 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btPersistentManifold__getNumContacts_28_29_20const(HEAP32[($3 + 176 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 172 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($3 + 168 | 0) >> 2] = 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($3 + 168 | 0) >> 2] | 0 | 0) < (HEAP32[($3 + 172 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btPersistentManifold__getContactPoint_28int_29(HEAP32[($3 + 176 | 0) >> 2] | 0 | 0, HEAP32[($3 + 168 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 164 | 0) >> 2] = wasm2js_i32$1;
|
|
$74 = FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($4) | 0;
|
|
((((((wasm2js_i32$1 = $74, wasm2js_i32$2 = (HEAP32[($3 + 164 | 0) >> 2] | 0) + 32 | 0), wasm2js_i32$3 = (HEAP32[($3 + 164 | 0) >> 2] | 0) + 64 | 0), wasm2js_f32$0 = Math_fround(btManifoldPoint__getDistance_28_29_20const(HEAP32[($3 + 164 | 0) >> 2] | 0 | 0))), wasm2js_i32$4 = btManifoldPoint__getLifeTime_28_29_20const(HEAP32[($3 + 164 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$5 = ($3 + 188 | 0) + 96 | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$74 >> 2] | 0) + 40 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, wasm2js_i32$3 | 0, Math_fround(wasm2js_f32$0), wasm2js_i32$4 | 0, wasm2js_i32$5 | 0);
|
|
HEAP32[($3 + 168 | 0) >> 2] = (HEAP32[($3 + 168 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
HEAP32[($3 + 180 | 0) >> 2] = (HEAP32[($3 + 180 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
}
|
|
}
|
|
$100 = FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($4) | 0;
|
|
label$8 : {
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$100 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($100) | 0) & 3 | 0)) {
|
|
break label$8
|
|
}
|
|
HEAP32[($3 + 160 | 0) >> 2] = 0;
|
|
label$9 : {
|
|
label$10 : while (1) {
|
|
if (!((HEAP32[($3 + 160 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btCollisionObject____size_28_29_20const($4 + 4 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$5 = HEAP32[(btAlignedObjectArray_btCollisionObject____operator_5b_5d_28int_29($4 + 4 | 0 | 0, HEAP32[($3 + 160 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 156 | 0) >> 2] = wasm2js_i32$5;
|
|
label$11 : {
|
|
if ((btCollisionObject__getCollisionFlags_28_29_20const(HEAP32[($3 + 156 | 0) >> 2] | 0 | 0) | 0) & 32 | 0) {
|
|
break label$11
|
|
}
|
|
label$12 : {
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($4) | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
$136 = FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($4) | 0;
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$136 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($136) | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
$142 = 1053609165;
|
|
HEAP32[($3 + 132 | 0) >> 2] = $142;
|
|
HEAP32[($3 + 128 | 0) >> 2] = $142;
|
|
HEAP32[($3 + 124 | 0) >> 2] = $142;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 136 | 0 | 0, $3 + 132 | 0 | 0, $3 + 128 | 0 | 0, $3 + 124 | 0 | 0) | 0;
|
|
$154 = (btCollisionObject__getActivationState_28_29_20const(HEAP32[($3 + 156 | 0) >> 2] | 0 | 0) | 0) + -1 | 0;
|
|
label$13 : {
|
|
label$14 : {
|
|
switch ($154 | 0) {
|
|
case 0:
|
|
$158 = $3 + 188 | 0;
|
|
$159 = 8;
|
|
i64toi32_i32$2 = $158 + $159 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$738 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($3 + 136 | 0) + $159 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $738;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $158;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$742 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $3;
|
|
HEAP32[($3 + 136 | 0) >> 2] = $742;
|
|
HEAP32[($3 + 140 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$13;
|
|
case 1:
|
|
$170 = ($3 + 188 | 0) + 16 | 0;
|
|
$171 = 8;
|
|
i64toi32_i32$2 = $170 + $171 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$762 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($3 + 136 | 0) + $171 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $762;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $170;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$766 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $3;
|
|
HEAP32[($3 + 136 | 0) >> 2] = $766;
|
|
HEAP32[($3 + 140 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$13;
|
|
case 2:
|
|
$182 = ($3 + 188 | 0) + 32 | 0;
|
|
$183 = 8;
|
|
i64toi32_i32$2 = $182 + $183 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$786 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($3 + 136 | 0) + $183 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $786;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $182;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$790 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $3;
|
|
HEAP32[($3 + 136 | 0) >> 2] = $790;
|
|
HEAP32[($3 + 140 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$13;
|
|
case 3:
|
|
$194 = ($3 + 188 | 0) + 48 | 0;
|
|
$195 = 8;
|
|
i64toi32_i32$2 = $194 + $195 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$810 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($3 + 136 | 0) + $195 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $810;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $194;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$814 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $3;
|
|
HEAP32[($3 + 136 | 0) >> 2] = $814;
|
|
HEAP32[($3 + 140 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$13;
|
|
case 4:
|
|
$206 = ($3 + 188 | 0) + 64 | 0;
|
|
$207 = 8;
|
|
i64toi32_i32$2 = $206 + $207 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$834 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($3 + 136 | 0) + $207 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $834;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $206;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$838 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $3;
|
|
HEAP32[($3 + 136 | 0) >> 2] = $838;
|
|
HEAP32[($3 + 140 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$13;
|
|
default:
|
|
break label$14;
|
|
};
|
|
}
|
|
HEAPF32[($3 + 104 | 0) >> 2] = Math_fround(.30000001192092896);
|
|
HEAPF32[($3 + 100 | 0) >> 2] = Math_fround(.30000001192092896);
|
|
HEAPF32[($3 + 96 | 0) >> 2] = Math_fround(.30000001192092896);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 108 | 0 | 0, $3 + 104 | 0 | 0, $3 + 100 | 0 | 0, $3 + 96 | 0 | 0) | 0;
|
|
$229 = 8;
|
|
i64toi32_i32$2 = ($3 + 108 | 0) + $229 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$881 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($3 + 136 | 0) + $229 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $881;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$1 = HEAP32[($3 + 108 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($3 + 112 | 0) >> 2] | 0;
|
|
$885 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $3;
|
|
HEAP32[($3 + 136 | 0) >> 2] = $885;
|
|
HEAP32[($3 + 140 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
btCollisionObject__getCustomDebugColor_28btVector3__29_20const(HEAP32[($3 + 156 | 0) >> 2] | 0 | 0, $3 + 136 | 0 | 0) | 0;
|
|
((((wasm2js_i32$5 = $4, wasm2js_i32$4 = btCollisionObject__getWorldTransform_28_29(HEAP32[($3 + 156 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$3 = btCollisionObject__getCollisionShape_28_29(HEAP32[($3 + 156 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$2 = $3 + 136 | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$4 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$5 | 0, wasm2js_i32$4 | 0, wasm2js_i32$3 | 0, wasm2js_i32$2 | 0);
|
|
}
|
|
label$20 : {
|
|
if (!((HEAP32[($4 + 72 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$20
|
|
}
|
|
$258 = HEAP32[($4 + 72 | 0) >> 2] | 0;
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$258 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($258) | 0) & 2 | 0)) {
|
|
break label$20
|
|
}
|
|
btVector3__btVector3_28_29($3 + 80 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($3 + 64 | 0 | 0) | 0;
|
|
$274 = ($3 + 188 | 0) + 80 | 0;
|
|
$275 = 8;
|
|
i64toi32_i32$2 = $274 + $275 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$973 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($3 + 48 | 0) + $275 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $973;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $274;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$977 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $3;
|
|
HEAP32[($3 + 48 | 0) >> 2] = $977;
|
|
HEAP32[($3 + 52 | 0) >> 2] = i64toi32_i32$0;
|
|
$283 = btCollisionObject__getCollisionShape_28_29(HEAP32[($3 + 156 | 0) >> 2] | 0 | 0) | 0;
|
|
((((wasm2js_i32$2 = $283, wasm2js_i32$3 = btCollisionObject__getWorldTransform_28_29(HEAP32[($3 + 156 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$4 = $3 + 80 | 0), wasm2js_i32$5 = $3 + 64 | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$283 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$2 | 0, wasm2js_i32$3 | 0, wasm2js_i32$4 | 0, wasm2js_i32$5 | 0);
|
|
$297 = 112840;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 32 | 0 | 0, $297 | 0, $297 | 0, $297 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29($3 + 80 | 0 | 0, $3 + 32 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($3 + 64 | 0 | 0, $3 + 32 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($3 + 16 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($3 | 0) | 0;
|
|
label$21 : {
|
|
if (!((HEAPU8[((btCollisionWorld__getDispatchInfo_28_29($4 | 0) | 0) + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$21
|
|
}
|
|
if (!((btCollisionObject__getInternalType_28_29_20const(HEAP32[($3 + 156 | 0) >> 2] | 0 | 0) | 0 | 0) == (2 | 0) & 1 | 0)) {
|
|
break label$21
|
|
}
|
|
if ((btCollisionObject__isStaticOrKinematicObject_28_29_20const(HEAP32[($3 + 156 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$21
|
|
}
|
|
$331 = btCollisionObject__getCollisionShape_28_29(HEAP32[($3 + 156 | 0) >> 2] | 0 | 0) | 0;
|
|
((((wasm2js_i32$5 = $331, wasm2js_i32$4 = btCollisionObject__getInterpolationWorldTransform_28_29(HEAP32[($3 + 156 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$3 = $3 + 16 | 0), wasm2js_i32$2 = $3), wasm2js_i32$0 = HEAP32[((HEAP32[$331 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$5 | 0, wasm2js_i32$4 | 0, wasm2js_i32$3 | 0, wasm2js_i32$2 | 0);
|
|
btVector3__operator___28btVector3_20const__29($3 + 16 | 0 | 0, $3 + 32 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($3 | 0, $3 + 32 | 0 | 0) | 0;
|
|
btVector3__setMin_28btVector3_20const__29($3 + 80 | 0 | 0, $3 + 16 | 0 | 0);
|
|
btVector3__setMax_28btVector3_20const__29($3 + 64 | 0 | 0, $3 | 0);
|
|
}
|
|
$360 = HEAP32[($4 + 72 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$360 >> 2] | 0) + 60 | 0) >> 2] | 0 | 0]($360, $3 + 80 | 0, $3 + 64 | 0, $3 + 48 | 0);
|
|
}
|
|
}
|
|
HEAP32[($3 + 160 | 0) >> 2] = (HEAP32[($3 + 160 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$10;
|
|
};
|
|
}
|
|
}
|
|
}
|
|
__stack_pointer = $3 + 320 | 0;
|
|
return;
|
|
}
|
|
|
|
function btManifoldPoint__getLifeTime_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 164 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btCollisionObject__getCustomDebugColor_28btVector3__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $5 = 0, $20 = 0, $22 = 0, $69 = 0, $79 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 7 | 0) >> 0] = (0 | 0) != ((HEAP32[($5 + 204 | 0) >> 2] | 0) & 256 | 0 | 0) & 1 | 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($4 + 7 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$20 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $5 + 308 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$69 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $20;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $69;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$22 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $22 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$79 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $20 + $22 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $79;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
return (HEAPU8[($4 + 7 | 0) >> 0] | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__serializeCollisionObjects_28btSerializer__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $58 = 0, $96 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 128 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 124 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 120 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 124 | 0) >> 2] | 0;
|
|
btHashMap_btHashPtr_2c_20btCollisionShape____btHashMap_28_29($4 + 36 | 0 | 0) | 0;
|
|
HEAP32[($4 + 116 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 116 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btCollisionObject____size_28_29_20const($5 + 4 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btCollisionObject____operator_5b_5d_28int_29($5 + 4 | 0 | 0, HEAP32[($4 + 116 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btCollisionObject__getCollisionShape_28_29(HEAP32[($4 + 32 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
btHashPtr__btHashPtr_28void_20const__29($4 + 20 | 0 | 0, HEAP32[($4 + 28 | 0) >> 2] | 0 | 0) | 0;
|
|
label$3 : {
|
|
if (!(((btHashMap_btHashPtr_2c_20btCollisionShape____find_28btHashPtr_20const__29($4 + 36 | 0 | 0, $4 + 20 | 0 | 0) | 0 | 0) != (0 | 0) ^ -1 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
btHashPtr__btHashPtr_28void_20const__29($4 + 12 | 0 | 0, HEAP32[($4 + 28 | 0) >> 2] | 0 | 0) | 0;
|
|
btHashMap_btHashPtr_2c_20btCollisionShape____insert_28btHashPtr_20const__2c_20btCollisionShape__20const__29($4 + 36 | 0 | 0, $4 + 12 | 0 | 0, $4 + 28 | 0 | 0);
|
|
$58 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$58 >> 2] | 0) + 60 | 0) >> 2] | 0 | 0]($58, HEAP32[($4 + 120 | 0) >> 2] | 0);
|
|
}
|
|
HEAP32[($4 + 116 | 0) >> 2] = (HEAP32[($4 + 116 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
HEAP32[($4 + 116 | 0) >> 2] = 0;
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((HEAP32[($4 + 116 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btCollisionObject____size_28_29_20const($5 + 4 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btCollisionObject____operator_5b_5d_28int_29($5 + 4 | 0 | 0, HEAP32[($4 + 116 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
label$6 : {
|
|
label$7 : {
|
|
if ((btCollisionObject__getInternalType_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) == (1 | 0) & 1 | 0) {
|
|
break label$7
|
|
}
|
|
if (!((btCollisionObject__getInternalType_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) == (64 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
}
|
|
$96 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$96 >> 2] | 0) + 24 | 0) >> 2] | 0 | 0]($96, HEAP32[($4 + 120 | 0) >> 2] | 0);
|
|
}
|
|
HEAP32[($4 + 116 | 0) >> 2] = (HEAP32[($4 + 116 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
btHashMap_btHashPtr_2c_20btCollisionShape_____btHashMap_28_29($4 + 36 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 128 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHashMap_btHashPtr_2c_20btCollisionShape____btHashMap_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_int___btAlignedObjectArray_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_int___btAlignedObjectArray_28_29($4 + 20 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btCollisionShape____btAlignedObjectArray_28_29($4 + 40 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btHashPtr___btAlignedObjectArray_28_29($4 + 60 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btHashPtr__btHashPtr_28void_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btHashMap_btHashPtr_2c_20btCollisionShape____find_28btHashPtr_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $20 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btHashMap_btHashPtr_2c_20btCollisionShape____findIndex_28btHashPtr_20const__29_20const($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[$4 >> 2] | 0 | 0) == (-1 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btCollisionShape____operator_5b_5d_28int_29($5 + 40 | 0 | 0, HEAP32[$4 >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
$20 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $20 | 0;
|
|
}
|
|
|
|
function btHashMap_btHashPtr_2c_20btCollisionShape____insert_28btHashPtr_20const__2c_20btCollisionShape__20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $25 = 0, $63 = 0, $68 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = (btHashPtr__getHash_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) & ((btAlignedObjectArray_btCollisionShape____capacity_28_29_20const($6 + 40 | 0 | 0) | 0) - 1 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btHashMap_btHashPtr_2c_20btCollisionShape____findIndex_28btHashPtr_20const__29_20const($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) != (-1 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$25 = HEAP32[(HEAP32[($5 + 20 | 0) >> 2] | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btCollisionShape____operator_5b_5d_28int_29($6 + 40 | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $25), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btCollisionShape____size_28_29_20const($6 + 40 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btCollisionShape____capacity_28_29_20const($6 + 40 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btCollisionShape____push_back_28btCollisionShape__20const__29($6 + 40 | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btHashPtr___push_back_28btHashPtr_20const__29($6 + 60 | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btCollisionShape____capacity_28_29_20const($6 + 40 | 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
label$3 : {
|
|
if (!((HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) < (HEAP32[$5 >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
btHashMap_btHashPtr_2c_20btCollisionShape____growTables_28btHashPtr_20const__29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = (btHashPtr__getHash_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) & ((btAlignedObjectArray_btCollisionShape____capacity_28_29_20const($6 + 40 | 0 | 0) | 0) - 1 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
$63 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($6 | 0, HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 20 | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $63), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$68 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($6 | 0, HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $68), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
}
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHashMap_btHashPtr_2c_20btCollisionShape_____btHashMap_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btHashPtr____btAlignedObjectArray_28_29($4 + 60 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btCollisionShape_____btAlignedObjectArray_28_29($4 + 40 | 0 | 0) | 0;
|
|
btAlignedObjectArray_int____btAlignedObjectArray_28_29($4 + 20 | 0 | 0) | 0;
|
|
btAlignedObjectArray_int____btAlignedObjectArray_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionShape____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btCollisionShape__2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btCollisionShape____init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btHashPtr___btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btHashPtr_2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btHashPtr___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btHashMap_btHashPtr_2c_20btCollisionShape____findIndex_28btHashPtr_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $33 = 0, $55 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = (btHashPtr__getHash_28_29_20const(HEAP32[($4 + 20 | 0) >> 2] | 0 | 0) | 0) & ((btAlignedObjectArray_btCollisionShape____capacity_28_29_20const($5 + 40 | 0 | 0) | 0) - 1 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($4 + 16 | 0) >> 2] | 0) >>> 0 >= (btAlignedObjectArray_int___size_28_29_20const($5 | 0) | 0) >>> 0 & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($4 + 28 | 0) >> 2] = -1;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29_20const($5 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
label$3 : while (1) {
|
|
$33 = 0;
|
|
label$4 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (-1 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$33 = ((btHashPtr__equals_28btHashPtr_20const__29_20const(HEAP32[($4 + 20 | 0) >> 2] | 0 | 0, btAlignedObjectArray_btHashPtr___operator_5b_5d_28int_29_20const($5 + 60 | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) & 1 | 0 | 0) == (0 | 0);
|
|
}
|
|
label$5 : {
|
|
if (!($33 & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29_20const($5 + 20 | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
continue label$3;
|
|
}
|
|
break label$3;
|
|
};
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
}
|
|
$55 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return $55 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionShape____operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btCollisionShape____size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btHashPtr__getHash_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($3 + 11 | 0) >> 0] = 0;
|
|
HEAP32[($3 + 4 | 0) >> 2] = HEAP32[$4 >> 2] | 0;
|
|
HEAP32[($3 + 4 | 0) >> 2] = (HEAP32[($3 + 4 | 0) >> 2] | 0) + (((HEAP32[($3 + 4 | 0) >> 2] | 0) << 15 | 0) ^ -1 | 0) | 0;
|
|
HEAP32[($3 + 4 | 0) >> 2] = (HEAP32[($3 + 4 | 0) >> 2] | 0) ^ ((HEAP32[($3 + 4 | 0) >> 2] | 0) >>> 10 | 0) | 0;
|
|
HEAP32[($3 + 4 | 0) >> 2] = (HEAP32[($3 + 4 | 0) >> 2] | 0) + ((HEAP32[($3 + 4 | 0) >> 2] | 0) << 3 | 0) | 0;
|
|
HEAP32[($3 + 4 | 0) >> 2] = (HEAP32[($3 + 4 | 0) >> 2] | 0) ^ ((HEAP32[($3 + 4 | 0) >> 2] | 0) >>> 6 | 0) | 0;
|
|
HEAP32[($3 + 4 | 0) >> 2] = (HEAP32[($3 + 4 | 0) >> 2] | 0) + (((HEAP32[($3 + 4 | 0) >> 2] | 0) << 11 | 0) ^ -1 | 0) | 0;
|
|
HEAP32[($3 + 4 | 0) >> 2] = (HEAP32[($3 + 4 | 0) >> 2] | 0) ^ ((HEAP32[($3 + 4 | 0) >> 2] | 0) >>> 16 | 0) | 0;
|
|
return HEAP32[($3 + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionShape____capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionShape____size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionShape____push_back_28btCollisionShape__20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btCollisionShape____size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btCollisionShape____capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btCollisionShape____reserve_28int_29($5 | 0, btAlignedObjectArray_btCollisionShape____allocSize_28int_29($5 | 0, btAlignedObjectArray_btCollisionShape____size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btHashPtr___push_back_28btHashPtr_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $79 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btHashPtr___size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btHashPtr___capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btHashPtr___reserve_28int_29($5 | 0, btAlignedObjectArray_btHashPtr___allocSize_28int_29($5 | 0, btAlignedObjectArray_btHashPtr___size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$79 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 3 | 0) | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $79;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHashMap_btHashPtr_2c_20btCollisionShape____growTables_28btHashPtr_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $17 = 0, $24 = 0, $80 = 0, $85 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btCollisionShape____capacity_28_29_20const($5 + 40 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_int___size_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_int___size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
$17 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_int___resize_28int_2c_20int_20const__29($5 | 0, $17 | 0, $4 + 12 | 0 | 0);
|
|
$24 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_int___resize_28int_2c_20int_20const__29($5 + 20 | 0 | 0, $24 | 0, $4 + 8 | 0 | 0);
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = -1), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($5 + 20 | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = -1), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = (btHashPtr__getHash_28_29_20const(btAlignedObjectArray_btHashPtr___operator_5b_5d_28int_29($5 + 60 | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) & ((btAlignedObjectArray_btCollisionShape____capacity_28_29_20const($5 + 40 | 0 | 0) | 0) - 1 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$80 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($5 | 0, HEAP32[$4 >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($5 + 20 | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $80), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$85 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($5 | 0, HEAP32[$4 >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $85), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btHashPtr____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btHashPtr___clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionShape_____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btCollisionShape____clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__serialize_28btSerializer__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $10 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$6 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 32 | 0) >> 2] | 0 | 0]($6);
|
|
btCollisionWorld__serializeCollisionObjects_28btSerializer__29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
$10 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$10 >> 2] | 0) + 36 | 0) >> 2] | 0 | 0]($10);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__setDebugDrawer_28btIDebugDraw__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 72 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__getDebugDrawer_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btConvexCast__CastResult__DebugDraw_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
return;
|
|
}
|
|
|
|
function btConvexCast__CastResult__drawCoordSystem_28btTransform_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return;
|
|
}
|
|
|
|
function btConvexCast__CastResult__reportFailure_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
return;
|
|
}
|
|
|
|
function btConvexCast__CastResult___CastResult_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConvexCast__CastResult___CastResult_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btUsageBitfield__btUsageBitfield_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btUsageBitfield__reset_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btUsageBitfield__reset_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[$4 >> 0] = (HEAPU8[$4 >> 0] | 0) & 254 | 0;
|
|
HEAP8[$4 >> 0] = (HEAPU8[$4 >> 0] | 0) & 253 | 0;
|
|
HEAP8[$4 >> 0] = (HEAPU8[$4 >> 0] | 0) & 251 | 0;
|
|
HEAP8[$4 >> 0] = (HEAPU8[$4 >> 0] | 0) & -9 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__BridgeTriangleRaycastCallback___BridgeTriangleRaycastCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__BridgeTriangleRaycastCallback___BridgeTriangleRaycastCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__BridgeTriangleRaycastCallback__reportHit_28btVector3_20const__2c_20float_2c_20int_2c_20int_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0, $31 = 0, $40 = Math_fround(0);
|
|
$7 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 76 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 72 | 0) >> 2] = $1;
|
|
HEAPF32[($7 + 68 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 64 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 60 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 76 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 48 | 0) >> 2] = HEAP32[($7 + 64 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 52 | 0) >> 2] = HEAP32[($7 + 60 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 56 | 0) >> 2] = HEAP32[($8 + 52 | 0) >> 2] | 0;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($7 + 32 | 0 | 0, btTransform__getBasis_28_29($8 + 56 | 0 | 0) | 0 | 0, HEAP32[($7 + 72 | 0) >> 2] | 0 | 0);
|
|
btCollisionWorld__LocalRayResult__LocalRayResult_28btCollisionObject_20const__2c_20btCollisionWorld__LocalShapeInfo__2c_20btVector3_20const__2c_20float_29($7 + 4 | 0 | 0, HEAP32[($8 + 48 | 0) >> 2] | 0 | 0, $7 + 48 | 0 | 0, $7 + 32 | 0 | 0, Math_fround(Math_fround(HEAPF32[($7 + 68 | 0) >> 2]))) | 0;
|
|
HEAP8[($7 + 3 | 0) >> 0] = 1;
|
|
$31 = HEAP32[($8 + 44 | 0) >> 2] | 0;
|
|
$40 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$31 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($31, $7 + 4 | 0, (HEAPU8[($7 + 3 | 0) >> 0] | 0) & 1 | 0));
|
|
__stack_pointer = $7 + 80 | 0;
|
|
return Math_fround($40);
|
|
}
|
|
|
|
function btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__RayTester___RayTester_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__RayTester___RayTester_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__RayTester__Process_28btDbvtNode_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__RayTester__ProcessLeaf_28int_29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__LocalInfoAdder2___LocalInfoAdder2_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__LocalInfoAdder2___LocalInfoAdder2_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__LocalInfoAdder2__needsCollision_28btBroadphaseProxy__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $12 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$6 = HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0;
|
|
$12 = (FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($6, HEAP32[($4 + 8 | 0) >> 2] | 0) | 0) & 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $12 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__LocalInfoAdder2__addSingleResult_28btCollisionWorld__LocalRayResult__2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $7 = 0, $28 = 0, $38 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 23 | 0) >> 0] = $2;
|
|
$7 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2] = $5 + 8 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[(HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) >> 2] = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
}
|
|
$28 = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$28 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($28, HEAP32[($5 + 24 | 0) >> 2] | 0, (HEAPU8[($5 + 23 | 0) >> 0] | 0) & 1 | 0))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($7 + 4 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($7 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2]);
|
|
$38 = Math_fround(HEAPF32[($5 + 4 | 0) >> 2]);
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return Math_fround($38);
|
|
}
|
|
|
|
function btConvexPenetrationDepthSolver___btConvexPenetrationDepthSolver_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__BridgeTriangleConvexcastCallback___BridgeTriangleConvexcastCallback_28_29_2($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__BridgeTriangleConvexcastCallback___BridgeTriangleConvexcastCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__BridgeTriangleConvexcastCallback__reportHit_28btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20int_2c_20int_29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, $9 = 0, $30 = 0, $41 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$8 = __stack_pointer - 96 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 88 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 84 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 80 | 0) >> 2] = $2;
|
|
HEAPF32[($8 + 76 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 72 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 68 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 88 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 56 | 0) >> 2] = HEAP32[($8 + 72 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 60 | 0) >> 2] = HEAP32[($8 + 68 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 64 | 0) >> 2] = HEAP32[($9 + 220 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 76 | 0) >> 2]) <= Math_fround(HEAPF32[((HEAP32[($9 + 212 | 0) >> 2] | 0) + 4 | 0) >> 2]) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btCollisionWorld__LocalConvexResult__LocalConvexResult_28btCollisionObject_20const__2c_20btCollisionWorld__LocalShapeInfo__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_29($8 + 12 | 0 | 0, HEAP32[($9 + 216 | 0) >> 2] | 0 | 0, $8 + 56 | 0 | 0, HEAP32[($8 + 84 | 0) >> 2] | 0 | 0, HEAP32[($8 + 80 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($8 + 76 | 0) >> 2]))) | 0;
|
|
HEAP8[($8 + 11 | 0) >> 0] = 1;
|
|
$30 = HEAP32[($9 + 212 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$30 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($30, $8 + 12 | 0, (HEAPU8[($8 + 11 | 0) >> 0] | 0) & 1 | 0))), HEAPF32[(wasm2js_i32$0 + 92 | 0) >> 2] = wasm2js_f32$0;
|
|
break label$1;
|
|
}
|
|
HEAPF32[($8 + 92 | 0) >> 2] = Math_fround(HEAPF32[($8 + 76 | 0) >> 2]);
|
|
}
|
|
$41 = Math_fround(HEAPF32[($8 + 92 | 0) >> 2]);
|
|
__stack_pointer = $8 + 96 | 0;
|
|
return Math_fround($41);
|
|
}
|
|
|
|
function btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__BridgeTriangleConvexcastCallback___BridgeTriangleConvexcastCallback_28_29_3($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__BridgeTriangleConvexcastCallback___BridgeTriangleConvexcastCallback_28_29_1($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__BridgeTriangleConvexcastCallback__reportHit_28btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20int_2c_20int_29_1($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, $9 = 0, $30 = 0, $41 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$8 = __stack_pointer - 96 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 88 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 84 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 80 | 0) >> 2] = $2;
|
|
HEAPF32[($8 + 76 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 72 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 68 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 88 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 56 | 0) >> 2] = HEAP32[($8 + 72 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 60 | 0) >> 2] = HEAP32[($8 + 68 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 64 | 0) >> 2] = HEAP32[($9 + 220 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 76 | 0) >> 2]) <= Math_fround(HEAPF32[((HEAP32[($9 + 212 | 0) >> 2] | 0) + 4 | 0) >> 2]) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btCollisionWorld__LocalConvexResult__LocalConvexResult_28btCollisionObject_20const__2c_20btCollisionWorld__LocalShapeInfo__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_29($8 + 12 | 0 | 0, HEAP32[($9 + 216 | 0) >> 2] | 0 | 0, $8 + 56 | 0 | 0, HEAP32[($8 + 84 | 0) >> 2] | 0 | 0, HEAP32[($8 + 80 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($8 + 76 | 0) >> 2]))) | 0;
|
|
HEAP8[($8 + 11 | 0) >> 0] = 1;
|
|
$30 = HEAP32[($9 + 212 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$30 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($30, $8 + 12 | 0, (HEAPU8[($8 + 11 | 0) >> 0] | 0) & 1 | 0))), HEAPF32[(wasm2js_i32$0 + 92 | 0) >> 2] = wasm2js_f32$0;
|
|
break label$1;
|
|
}
|
|
HEAPF32[($8 + 92 | 0) >> 2] = Math_fround(HEAPF32[($8 + 76 | 0) >> 2]);
|
|
}
|
|
$41 = Math_fround(HEAPF32[($8 + 92 | 0) >> 2]);
|
|
__stack_pointer = $8 + 96 | 0;
|
|
return Math_fround($41);
|
|
}
|
|
|
|
function btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__btCompoundLeafCallback___btCompoundLeafCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__btCompoundLeafCallback___btCompoundLeafCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__btCompoundLeafCallback__Process_28btDbvtNode_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 76 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 72 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 76 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 68 | 0) >> 2] = HEAP32[((HEAP32[($4 + 72 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0;
|
|
btTransform__btTransform_28btTransform_20const__29($4 + 4 | 0 | 0, btCompoundShape__getChildTransform_28int_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0, HEAP32[($4 + 68 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btCompoundShape__getChildShape_28int_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0, HEAP32[($4 + 68 | 0) >> 2] | 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__btCompoundLeafCallback__ProcessChild_28int_2c_20btTransform_20const__2c_20btCollisionShape_20const__29($5 | 0, HEAP32[($4 + 68 | 0) >> 2] | 0 | 0, $4 + 4 | 0 | 0, HEAP32[$4 >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 80 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__btCompoundLeafCallback__ProcessChild_28int_2c_20btTransform_20const__2c_20btCollisionShape_20const__29__LocalInfoAdder___LocalInfoAdder_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__btCompoundLeafCallback__ProcessChild_28int_2c_20btTransform_20const__2c_20btCollisionShape_20const__29__LocalInfoAdder___LocalInfoAdder_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__btCompoundLeafCallback__ProcessChild_28int_2c_20btTransform_20const__2c_20btCollisionShape_20const__29__LocalInfoAdder__needsCollision_28btBroadphaseProxy__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0, $12 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$6 = HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0;
|
|
$12 = (FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($6, HEAP32[($4 + 8 | 0) >> 2] | 0) | 0) & 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $12 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__btCompoundLeafCallback__ProcessChild_28int_2c_20btTransform_20const__2c_20btCollisionShape_20const__29__LocalInfoAdder__addSingleResult_28btCollisionWorld__LocalConvexResult__2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $7 = 0, $23 = 0, $33 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 23 | 0) >> 0] = $2;
|
|
$7 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = -1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 16 | 0) >> 2] = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2] = $5 + 8 | 0;
|
|
}
|
|
$23 = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$23 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($23, HEAP32[($5 + 24 | 0) >> 2] | 0, (HEAPU8[($5 + 23 | 0) >> 0] | 0) & 1 | 0))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($7 + 4 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($7 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2]);
|
|
$33 = Math_fround(HEAPF32[($5 + 4 | 0) >> 2]);
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return Math_fround($33);
|
|
}
|
|
|
|
function btSingleRayCallback___btSingleRayCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btSingleRayCallback___btSingleRayCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSingleRayCallback__process_28btBroadphaseProxy_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $18 = 0, $41 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[((HEAP32[($5 + 216 | 0) >> 2] | 0) + 4 | 0) >> 2]) == Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP8[($4 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[$4 >> 2] = HEAP32[(HEAP32[($4 + 4 | 0) >> 2] | 0) >> 2] | 0;
|
|
$18 = HEAP32[($5 + 216 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
if (!((((wasm2js_i32$1 = $18, wasm2js_i32$2 = btCollisionObject__getBroadphaseHandle_28_29(HEAP32[$4 >> 2] | 0 | 0) | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$18 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0) | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
btCollisionWorld__rayTestSingle_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObject__2c_20btCollisionShape_20const__2c_20btTransform_20const__2c_20btCollisionWorld__RayResultCallback__29($5 + 68 | 0 | 0, $5 + 132 | 0 | 0, HEAP32[$4 >> 2] | 0 | 0, btCollisionObject__getCollisionShape_28_29(HEAP32[$4 >> 2] | 0 | 0) | 0 | 0, btCollisionObject__getWorldTransform_28_29(HEAP32[$4 >> 2] | 0 | 0) | 0 | 0, HEAP32[($5 + 216 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP8[($4 + 15 | 0) >> 0] = 1 & 1 | 0;
|
|
}
|
|
$41 = (HEAPU8[($4 + 15 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $41 | 0;
|
|
}
|
|
|
|
function btBroadphaseRayCallback___btBroadphaseRayCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btBroadphaseAabbCallback___btBroadphaseAabbCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btMatrix3x3__inverse_28_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $6 = 0, $7 = 0, $10 = 0, $13 = 0, $56 = 0, $62 = 0, $74 = 0, $75 = 0, $79 = 0, $92 = 0, $98 = 0, $99 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 76 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 72 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 72 | 0) >> 2] | 0;
|
|
$6 = 1;
|
|
$7 = 2;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btMatrix3x3__cofac_28int_2c_20int_2c_20int_2c_20int_29_20const($5 | 0, $6 | 0, $6 | 0, $7 | 0, $7 | 0))), HEAPF32[(wasm2js_i32$0 + 52 | 0) >> 2] = wasm2js_f32$0;
|
|
$10 = 2;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btMatrix3x3__cofac_28int_2c_20int_2c_20int_2c_20int_29_20const($5 | 0, 1 | 0, $10 | 0, $10 | 0, 0 | 0))), HEAPF32[(wasm2js_i32$0 + 48 | 0) >> 2] = wasm2js_f32$0;
|
|
$13 = 1;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btMatrix3x3__cofac_28int_2c_20int_2c_20int_2c_20int_29_20const($5 | 0, $13 | 0, 0 | 0, 2 | 0, $13 | 0))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 56 | 0 | 0, $4 + 52 | 0 | 0, $4 + 48 | 0 | 0, $4 + 44 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const($5 | 0, 0 | 0) | 0 | 0, $4 + 56 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
if (Math_fround(HEAPF32[($4 + 40 | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(86667 | 0, 80201 | 0, 1008 | 0, 81394 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAPF32[($4 + 36 | 0) >> 2] = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[($4 + 40 | 0) >> 2]));
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($4 + 56 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($4 + 36 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
$56 = 2;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(btMatrix3x3__cofac_28int_2c_20int_2c_20int_2c_20int_29_20const($5 | 0, 0 | 0, $56 | 0, $56 | 0, 1 | 0)) * Math_fround(HEAPF32[($4 + 36 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
$62 = 1;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(btMatrix3x3__cofac_28int_2c_20int_2c_20int_2c_20int_29_20const($5 | 0, 0 | 0, $62 | 0, $62 | 0, 2 | 0)) * Math_fround(HEAPF32[($4 + 36 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($4 + 56 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($4 + 36 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
$74 = 0;
|
|
$75 = 2;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(btMatrix3x3__cofac_28int_2c_20int_2c_20int_2c_20int_29_20const($5 | 0, $74 | 0, $74 | 0, $75 | 0, $75 | 0)) * Math_fround(HEAPF32[($4 + 36 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
$79 = 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(btMatrix3x3__cofac_28int_2c_20int_2c_20int_2c_20int_29_20const($5 | 0, $79 | 0, 2 | 0, 1 | 0, $79 | 0)) * Math_fround(HEAPF32[($4 + 36 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($4 + 56 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($4 + 36 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
$92 = 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(btMatrix3x3__cofac_28int_2c_20int_2c_20int_2c_20int_29_20const($5 | 0, $92 | 0, 1 | 0, 2 | 0, $92 | 0)) * Math_fround(HEAPF32[($4 + 36 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$98 = 0;
|
|
$99 = 1;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(btMatrix3x3__cofac_28int_2c_20int_2c_20int_2c_20int_29_20const($5 | 0, $98 | 0, $98 | 0, $99 | 0, $99 | 0)) * Math_fround(HEAPF32[($4 + 36 | 0) >> 2]))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
btMatrix3x3__btMatrix3x3_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $4 + 32 | 0 | 0, $4 + 28 | 0 | 0, $4 + 24 | 0 | 0, $4 + 20 | 0 | 0, $4 + 16 | 0 | 0, $4 + 12 | 0 | 0, $4 + 8 | 0 | 0, $4 + 4 | 0 | 0, $4 | 0) | 0;
|
|
__stack_pointer = $4 + 80 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuaternion__normalize_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $9 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(btQuaternion__length_28_29_20const($4 | 0))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
$9 = btQuaternion__operator___28float_20const__29($4 | 0, $3 + 8 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btQuaternion__getAngle_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $9 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(Math_fround(2.0) * Math_fround(btAcos_28float_29(Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 12 | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
$9 = Math_fround(HEAPF32[($3 + 8 | 0) >> 2]);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($9);
|
|
}
|
|
|
|
function btMatrix3x3__cofac_28int_2c_20int_2c_20int_2c_20int_29_20const($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0, $52 = Math_fround(0);
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
$52 = Math_fround(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($8 + ((HEAP32[($7 + 24 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0) + ((HEAP32[($7 + 20 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($8 + ((HEAP32[($7 + 16 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0) + ((HEAP32[($7 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($8 + ((HEAP32[($7 + 24 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0) + ((HEAP32[($7 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($8 + ((HEAP32[($7 + 16 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0) + ((HEAP32[($7 + 20 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]))));
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return Math_fround($52);
|
|
}
|
|
|
|
function btQuadWord__btQuadWord_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btQuaternion__length_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = Math_fround(btSqrt_28float_29(Math_fround(Math_fround(btQuaternion__length2_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0)))));
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($6);
|
|
}
|
|
|
|
function btQuaternion__operator___28float_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $24 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(86688 | 0, 78737 | 0, 421 | 0, 85339 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAPF32[($4 + 4 | 0) >> 2] = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2]));
|
|
$24 = btQuaternion__operator___28float_20const__29_1($5 | 0, $4 + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $24 | 0;
|
|
}
|
|
|
|
function btAcos_28float_29($0) {
|
|
$0 = Math_fround($0);
|
|
var $3 = 0, $17 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAPF32[($3 + 12 | 0) >> 2] = $0;
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[($3 + 12 | 0) >> 2]) < Math_fround(-1.0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[($3 + 12 | 0) >> 2] = Math_fround(-1.0);
|
|
}
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($3 + 12 | 0) >> 2]) > Math_fround(1.0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($3 + 12 | 0) >> 2] = Math_fround(1.0);
|
|
}
|
|
$17 = Math_fround(acosf(Math_fround(Math_fround(HEAPF32[($3 + 12 | 0) >> 2]))));
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($17);
|
|
}
|
|
|
|
function btQuaternion__operator___28float_20const__29_1($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[$5 >> 2] = Math_fround(Math_fround(HEAPF32[$5 >> 2]) * Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2]));
|
|
HEAPF32[($5 + 4 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2]) * Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2]));
|
|
HEAPF32[($5 + 8 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 8 | 0) >> 2]) * Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2]));
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 12 | 0) >> 2]) * Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2]));
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btSingleSweepCallback___btSingleSweepCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btSingleSweepCallback___btSingleSweepCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSingleSweepCallback__process_28btBroadphaseProxy_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $18 = 0, $43 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[((HEAP32[($5 + 184 | 0) >> 2] | 0) + 4 | 0) >> 2]) == Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP8[($4 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[$4 >> 2] = HEAP32[(HEAP32[($4 + 4 | 0) >> 2] | 0) >> 2] | 0;
|
|
$18 = HEAP32[($5 + 184 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
if (!((((wasm2js_i32$1 = $18, wasm2js_i32$2 = btCollisionObject__getBroadphaseHandle_28_29(HEAP32[$4 >> 2] | 0 | 0) | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$18 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0) | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
btCollisionWorld__objectQuerySingle_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObject__2c_20btCollisionShape_20const__2c_20btTransform_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29(HEAP32[($5 + 192 | 0) >> 2] | 0 | 0, $5 + 36 | 0 | 0, $5 + 100 | 0 | 0, HEAP32[$4 >> 2] | 0 | 0, btCollisionObject__getCollisionShape_28_29(HEAP32[$4 >> 2] | 0 | 0) | 0 | 0, btCollisionObject__getWorldTransform_28_29(HEAP32[$4 >> 2] | 0 | 0) | 0 | 0, HEAP32[($5 + 184 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 188 | 0) >> 2])));
|
|
}
|
|
HEAP8[($4 + 15 | 0) >> 0] = 1 & 1 | 0;
|
|
}
|
|
$43 = (HEAPU8[($4 + 15 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $43 | 0;
|
|
}
|
|
|
|
function btManifoldResult__setShapeIdentifiersA_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 16 | 0) >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btManifoldResult__setShapeIdentifiersB_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 20 | 0) >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btTransform__invXform_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 76 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 72 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 76 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 56 | 0 | 0, HEAP32[($5 + 72 | 0) >> 2] | 0 | 0, $6 + 48 | 0 | 0);
|
|
btMatrix3x3__transpose_28_29_20const($5 + 8 | 0 | 0, $6 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($0 | 0, $5 + 8 | 0 | 0, $5 + 56 | 0 | 0);
|
|
__stack_pointer = $5 + 80 | 0;
|
|
return;
|
|
}
|
|
|
|
function btManifoldPoint__btManifoldPoint_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = Math_fround($4);
|
|
var $8 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, $7 = 0, $11 = 0, $16 = 0, $19 = 0, $28 = 0, $31 = 0, $93 = 0, $103 = 0, $112 = 0, $122 = 0, $141 = 0, $151 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAPF32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$93 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $8;
|
|
HEAP32[$8 >> 2] = $93;
|
|
HEAP32[($8 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$11 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $11 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$103 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8 + $11 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $103;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$16 = $8 + 16 | 0;
|
|
i64toi32_i32$2 = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$112 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $16;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $112;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$19 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $19 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$122 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $16 + $19 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $122;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__btVector3_28_29($8 + 32 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 48 | 0 | 0) | 0;
|
|
$28 = $8 + 64 | 0;
|
|
i64toi32_i32$2 = HEAP32[($7 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$141 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $28;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $141;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$31 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $31 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$151 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $28 + $31 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $151;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($8 + 80 | 0) >> 2] = Math_fround(HEAPF32[($7 + 12 | 0) >> 2]);
|
|
HEAPF32[($8 + 84 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 88 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 92 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 96 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP32[($8 + 116 | 0) >> 2] = 0;
|
|
HEAP32[($8 + 120 | 0) >> 2] = 0;
|
|
HEAP32[($8 + 124 | 0) >> 2] = 0;
|
|
HEAP32[($8 + 128 | 0) >> 2] = 0;
|
|
HEAPF32[($8 + 132 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 136 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 140 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 144 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 148 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 152 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 156 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 160 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP32[($8 + 164 | 0) >> 2] = 0;
|
|
btVector3__btVector3_28_29($8 + 168 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 184 | 0 | 0) | 0;
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function DebugDrawcallback___DebugDrawcallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
DebugDrawcallback___DebugDrawcallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function DebugDrawcallback__processTriangle_28btVector3__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $7 = 0, i64toi32_i32$2 = 0, $23 = 0, $40 = 0, $57 = 0, $94 = 0, $146 = 0, $163 = 0, $174 = 0, $185 = 0, $258 = 0, $262 = 0, $293 = 0, $297 = 0, $328 = 0, $332 = 0;
|
|
$6 = __stack_pointer - 256 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 252 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 248 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 244 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 240 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 252 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($6 + 224 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 208 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 192 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($6 + 176 | 0 | 0, $7 + 28 | 0 | 0, HEAP32[($6 + 248 | 0) >> 2] | 0 | 0);
|
|
$23 = 8;
|
|
i64toi32_i32$2 = ($6 + 176 | 0) + $23 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$258 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 224 | 0) + $23 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $258;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 176 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 180 | 0) >> 2] | 0;
|
|
$262 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 224 | 0) >> 2] = $262;
|
|
HEAP32[($6 + 228 | 0) >> 2] = i64toi32_i32$0;
|
|
btTransform__operator__28btVector3_20const__29_20const($6 + 160 | 0 | 0, $7 + 28 | 0 | 0, (HEAP32[($6 + 248 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
$40 = 8;
|
|
i64toi32_i32$2 = ($6 + 160 | 0) + $40 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$293 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 208 | 0) + $40 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $293;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 160 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 164 | 0) >> 2] | 0;
|
|
$297 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 208 | 0) >> 2] = $297;
|
|
HEAP32[($6 + 212 | 0) >> 2] = i64toi32_i32$0;
|
|
btTransform__operator__28btVector3_20const__29_20const($6 + 144 | 0 | 0, $7 + 28 | 0 | 0, (HEAP32[($6 + 248 | 0) >> 2] | 0) + 32 | 0 | 0);
|
|
$57 = 8;
|
|
i64toi32_i32$2 = ($6 + 144 | 0) + $57 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$328 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 192 | 0) + $57 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $328;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 144 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 148 | 0) >> 2] | 0;
|
|
$332 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 192 | 0) >> 2] = $332;
|
|
HEAP32[($6 + 196 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 96 | 0 | 0, $6 + 224 | 0 | 0, $6 + 208 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 112 | 0 | 0, $6 + 96 | 0 | 0, $6 + 192 | 0 | 0);
|
|
HEAPF32[($6 + 92 | 0) >> 2] = Math_fround(.3333333432674408);
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 128 | 0 | 0, $6 + 112 | 0 | 0, $6 + 92 | 0 | 0);
|
|
$94 = HEAP32[($7 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$94 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($94) | 0) & 16384 | 0)) {
|
|
break label$1
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 60 | 0 | 0, $6 + 208 | 0 | 0, $6 + 224 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 44 | 0 | 0, $6 + 192 | 0 | 0, $6 + 224 | 0 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($6 + 76 | 0 | 0, $6 + 60 | 0 | 0, $6 + 44 | 0 | 0);
|
|
btVector3__normalize_28_29($6 + 76 | 0 | 0) | 0;
|
|
HEAPF32[($6 + 24 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($6 + 20 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($6 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 28 | 0 | 0, $6 + 24 | 0 | 0, $6 + 20 | 0 | 0, $6 + 16 | 0 | 0) | 0;
|
|
$146 = HEAP32[($7 + 8 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 | 0, $6 + 128 | 0 | 0, $6 + 76 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$146 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($146, $6 + 128 | 0, $6, $6 + 28 | 0);
|
|
}
|
|
$163 = HEAP32[($7 + 8 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$163 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($163, $6 + 224 | 0, $6 + 208 | 0, $7 + 12 | 0);
|
|
$174 = HEAP32[($7 + 8 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$174 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($174, $6 + 208 | 0, $6 + 192 | 0, $7 + 12 | 0);
|
|
$185 = HEAP32[($7 + 8 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$185 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($185, $6 + 192 | 0, $6 + 224 | 0, $7 + 12 | 0);
|
|
__stack_pointer = $6 + 256 | 0;
|
|
return;
|
|
}
|
|
|
|
function DebugDrawcallback__internalProcessTriangleIndex_28btVector3__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($7, HEAP32[($6 + 8 | 0) >> 2] | 0, HEAP32[($6 + 4 | 0) >> 2] | 0, HEAP32[$6 >> 2] | 0);
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function non_virtual_20thunk_20to_20DebugDrawcallback___DebugDrawcallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $7 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
$7 = DebugDrawcallback___DebugDrawcallback_28_29($4 + -4 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function non_virtual_20thunk_20to_20DebugDrawcallback___DebugDrawcallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
DebugDrawcallback___DebugDrawcallback_28_29_1((HEAP32[($3 + 12 | 0) >> 2] | 0) + -4 | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function non_virtual_20thunk_20to_20DebugDrawcallback__internalProcessTriangleIndex_28btVector3__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
DebugDrawcallback__internalProcessTriangleIndex_28btVector3__2c_20int_2c_20int_29((HEAP32[($6 + 12 | 0) >> 2] | 0) + -4 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0, HEAP32[($6 + 4 | 0) >> 2] | 0 | 0, HEAP32[$6 >> 2] | 0 | 0);
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btCollisionShape__2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionShape____init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btHashPtr_2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btHashPtr___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btHashPtr___clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btHashPtr___destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btHashPtr___size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btHashPtr___deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btHashPtr___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionShape____clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btCollisionShape____destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btCollisionShape____size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btCollisionShape____deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btCollisionShape____init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btHashPtr___size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btHashPtr___destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btHashPtr___deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btHashPtr_2c_2016u___deallocate_28btHashPtr__29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btHashPtr_2c_2016u___deallocate_28btHashPtr__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionShape____destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionShape____deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btCollisionShape__2c_2016u___deallocate_28btCollisionShape___29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btCollisionShape__2c_2016u___deallocate_28btCollisionShape___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject____destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject____deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btCollisionObject__2c_2016u___deallocate_28btCollisionObject___29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btCollisionObject__2c_2016u___deallocate_28btCollisionObject___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject____allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btCollisionObject__2c_2016u___allocate_28int_2c_20btCollisionObject__20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject____copy_28int_2c_20int_2c_20btCollisionObject___29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[((HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[((HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btCollisionObject__2c_2016u___allocate_28int_2c_20btCollisionObject__20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btHashPtr___operator_5b_5d_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 176 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btHashPtr___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 177 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 3 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btHashPtr__equals_28btHashPtr_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $13 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$13 = (btHashPtr__getPointer_28_29_20const(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0 | 0) == (btHashPtr__getPointer_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $13 | 0;
|
|
}
|
|
|
|
function btHashPtr__getPointer_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[(HEAP32[($3 + 12 | 0) >> 2] | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionShape____allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionShape____reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btCollisionShape____capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btCollisionShape____allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btCollisionShape____copy_28int_2c_20int_2c_20btCollisionShape___29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btCollisionShape____size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btCollisionShape____destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btCollisionShape____size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btCollisionShape____deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btHashPtr___capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btHashPtr___allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btHashPtr___reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btHashPtr___capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btHashPtr___allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btHashPtr___copy_28int_2c_20int_2c_20btHashPtr__29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btHashPtr___size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btHashPtr___destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btHashPtr___size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btHashPtr___deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btHashPtr___operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btHashPtr___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 3 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionShape____allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btCollisionShape__2c_2016u___allocate_28int_2c_20btCollisionShape__20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionShape____copy_28int_2c_20int_2c_20btCollisionShape___29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[((HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[((HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btCollisionShape__2c_2016u___allocate_28int_2c_20btCollisionShape__20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btHashPtr___allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btHashPtr_2c_2016u___allocate_28int_2c_20btHashPtr_20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btHashPtr___copy_28int_2c_20int_2c_20btHashPtr__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, $7 = 0, i64toi32_i32$1 = 0, $85 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
i64toi32_i32$2 = (HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 3 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$85 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = (HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 3 | 0) | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $85;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btHashPtr_2c_2016u___allocate_28int_2c_20btHashPtr_20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 3 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btCollisionWorld_cpp() {
|
|
__cxx_global_var_init_10();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_11() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(113984 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionAlgorithm__btCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = 93584 + 8 | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btCollisionAlgorithm___btCollisionAlgorithm_28_29($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btCollisionAlgorithm_cpp() {
|
|
__cxx_global_var_init_11();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_13() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(113988 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btActivatingCollisionAlgorithm__btActivatingCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithm__btCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo_20const__29($7 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$7 >> 2] = 93612 + 8 | 0;
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btActivatingCollisionAlgorithm___btActivatingCollisionAlgorithm_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithm___btCollisionAlgorithm_28_29_1($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionAlgorithm___btCollisionAlgorithm_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btActivatingCollisionAlgorithm___btActivatingCollisionAlgorithm_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btActivatingCollisionAlgorithm_cpp() {
|
|
__cxx_global_var_init_13();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_14() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(113992 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexConvexAlgorithm__CreateFunc__CreateFunc_28btConvexPenetrationDepthSolver__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithmCreateFunc__btCollisionAlgorithmCreateFunc_28_29($5 | 0) | 0;
|
|
HEAP32[$5 >> 2] = 93716 + 8 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 16 | 0) >> 2] = 3;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btConvexConvexAlgorithm__CreateFunc___CreateFunc_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithmCreateFunc___btCollisionAlgorithmCreateFunc_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexConvexAlgorithm__CreateFunc___CreateFunc_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[605 | 0]($4) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexConvexAlgorithm__btConvexConvexAlgorithm_28btPersistentManifold__2c_20btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btConvexPenetrationDepthSolver__2c_20int_2c_20int_29($0, $1, $2, $3, $4, $5, $6, $7) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
var $10 = 0, $11 = 0;
|
|
$10 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $10;
|
|
HEAP32[($10 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($10 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($10 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($10 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($10 + 12 | 0) >> 2] = $4;
|
|
HEAP32[($10 + 8 | 0) >> 2] = $5;
|
|
HEAP32[($10 + 4 | 0) >> 2] = $6;
|
|
HEAP32[$10 >> 2] = $7;
|
|
$11 = HEAP32[($10 + 28 | 0) >> 2] | 0;
|
|
btActivatingCollisionAlgorithm__btActivatingCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($11 | 0, HEAP32[($10 + 20 | 0) >> 2] | 0 | 0, HEAP32[($10 + 16 | 0) >> 2] | 0 | 0, HEAP32[($10 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$11 >> 2] = 93736 + 8 | 0;
|
|
HEAP32[($11 + 8 | 0) >> 2] = HEAP32[($10 + 8 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btVector3___btAlignedObjectArray_28_29($11 + 12 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3___btAlignedObjectArray_28_29($11 + 32 | 0 | 0) | 0;
|
|
HEAP8[($11 + 52 | 0) >> 0] = 0;
|
|
HEAP32[($11 + 56 | 0) >> 2] = HEAP32[($10 + 24 | 0) >> 2] | 0;
|
|
HEAP8[($11 + 60 | 0) >> 0] = 0;
|
|
HEAP32[($11 + 64 | 0) >> 2] = HEAP32[($10 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($11 + 68 | 0) >> 2] = HEAP32[$10 >> 2] | 0;
|
|
__stack_pointer = $10 + 32 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btConvexConvexAlgorithm___btConvexConvexAlgorithm_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0, $18 = 0, $26 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
HEAP32[$4 >> 2] = 93736 + 8 | 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($4 + 52 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAP32[($4 + 56 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$18 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$18 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($18, HEAP32[($4 + 56 | 0) >> 2] | 0);
|
|
}
|
|
}
|
|
btAlignedObjectArray_btVector3____btAlignedObjectArray_28_29($4 + 32 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3____btAlignedObjectArray_28_29($4 + 12 | 0 | 0) | 0;
|
|
btActivatingCollisionAlgorithm___btActivatingCollisionAlgorithm_28_29($4 | 0) | 0;
|
|
$26 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $26 | 0;
|
|
}
|
|
|
|
function btConvexConvexAlgorithm___btConvexConvexAlgorithm_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[606 | 0]($4) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $16 = 0, $98 = 0, $169 = 0, $240 = 0, $274 = 0, $278 = 0, $319 = Math_fround(0), $320 = 0, $329 = Math_fround(0), $330 = 0, $403 = 0, $404 = 0, $416 = 0, $572 = 0, $585 = 0, $590 = 0, $693 = 0, $713 = 0, $717 = 0, $277 = Math_fround(0), $1814 = 0, $1818 = 0, $562 = 0, $2152 = 0, $2156 = 0, $584 = Math_fround(0), $589 = Math_fround(0), $683 = 0, $2406 = 0, $2410 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0, wasm2js_i32$5 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$7 = __stack_pointer - 1664 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 1660 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 1656 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 1652 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 1648 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 1644 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 1660 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($8 + 56 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
$16 = HEAP32[($8 + 4 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = ((((wasm2js_i32$3 = $16, wasm2js_i32$4 = btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 1656 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$5 = btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 1652 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$2 = HEAP32[((HEAP32[$16 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$2](wasm2js_i32$3 | 0, wasm2js_i32$4 | 0, wasm2js_i32$5 | 0) | 0)), HEAP32[(wasm2js_i32$0 + 56 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP8[($8 + 52 | 0) >> 0] = 1;
|
|
}
|
|
btManifoldResult__setPersistentManifold_28btPersistentManifold__29(HEAP32[($7 + 1644 | 0) >> 2] | 0 | 0, HEAP32[($8 + 56 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 1656 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 1640 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 1652 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 1636 | 0) >> 2] = wasm2js_i32$1;
|
|
btVector3__btVector3_28_29($7 + 1620 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($7 + 1604 | 0 | 0) | 0;
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((btCollisionShape__getShapeType_28_29_20const(HEAP32[($7 + 1640 | 0) >> 2] | 0 | 0) | 0 | 0) == (10 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
if (!((btCollisionShape__getShapeType_28_29_20const(HEAP32[($7 + 1636 | 0) >> 2] | 0 | 0) | 0 | 0) == (10 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($7 + 1600 | 0) >> 2] = HEAP32[($7 + 1640 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 1596 | 0) >> 2] = HEAP32[($7 + 1636 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btPersistentManifold__getContactBreakingThreshold_28_29_20const(HEAP32[($8 + 56 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 1592 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(capsuleCapsuleDistance_28btVector3__2c_20btVector3__2c_20float_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20btTransform_20const__2c_20btTransform_20const__2c_20float_29($7 + 1620 | 0 | 0, $7 + 1604 | 0 | 0, Math_fround(Math_fround(btCapsuleShape__getHalfHeight_28_29_20const(HEAP32[($7 + 1600 | 0) >> 2] | 0 | 0))), Math_fround(Math_fround(btCapsuleShape__getRadius_28_29_20const(HEAP32[($7 + 1600 | 0) >> 2] | 0 | 0))), Math_fround(Math_fround(btCapsuleShape__getHalfHeight_28_29_20const(HEAP32[($7 + 1596 | 0) >> 2] | 0 | 0))), Math_fround(Math_fround(btCapsuleShape__getRadius_28_29_20const(HEAP32[($7 + 1596 | 0) >> 2] | 0 | 0))), btCapsuleShape__getUpAxis_28_29_20const(HEAP32[($7 + 1600 | 0) >> 2] | 0 | 0) | 0 | 0, btCapsuleShape__getUpAxis_28_29_20const(HEAP32[($7 + 1596 | 0) >> 2] | 0 | 0) | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 1656 | 0) >> 2] | 0 | 0) | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 1652 | 0) >> 2] | 0 | 0) | 0 | 0, Math_fround(Math_fround(HEAPF32[($7 + 1592 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 1588 | 0) >> 2] = wasm2js_f32$0;
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 1588 | 0) >> 2]) < Math_fround(HEAPF32[($7 + 1592 | 0) >> 2]) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
label$5 : {
|
|
if (Math_fround(btVector3__length2_28_29_20const($7 + 1620 | 0 | 0)) >= Math_fround(1.4210854715202004e-14) & 1 | 0) {
|
|
break label$5
|
|
}
|
|
__assert_fail(86431 | 0, 73223 | 0, 326 | 0, 76857 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$98 = HEAP32[($7 + 1644 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$98 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($98, $7 + 1620 | 0, $7 + 1604 | 0, Math_fround(HEAPF32[($7 + 1588 | 0) >> 2]));
|
|
}
|
|
btManifoldResult__refreshContactPoints_28_29(HEAP32[($7 + 1644 | 0) >> 2] | 0 | 0);
|
|
break label$2;
|
|
}
|
|
label$6 : {
|
|
if (!((btCollisionShape__getShapeType_28_29_20const(HEAP32[($7 + 1640 | 0) >> 2] | 0 | 0) | 0 | 0) == (10 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
if (!((btCollisionShape__getShapeType_28_29_20const(HEAP32[($7 + 1636 | 0) >> 2] | 0 | 0) | 0 | 0) == (8 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAP32[($7 + 1584 | 0) >> 2] = HEAP32[($7 + 1640 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 1580 | 0) >> 2] = HEAP32[($7 + 1636 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btPersistentManifold__getContactBreakingThreshold_28_29_20const(HEAP32[($8 + 56 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 1576 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(capsuleCapsuleDistance_28btVector3__2c_20btVector3__2c_20float_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20btTransform_20const__2c_20btTransform_20const__2c_20float_29($7 + 1620 | 0 | 0, $7 + 1604 | 0 | 0, Math_fround(Math_fround(btCapsuleShape__getHalfHeight_28_29_20const(HEAP32[($7 + 1584 | 0) >> 2] | 0 | 0))), Math_fround(Math_fround(btCapsuleShape__getRadius_28_29_20const(HEAP32[($7 + 1584 | 0) >> 2] | 0 | 0))), Math_fround(Math_fround(0 | 0)), Math_fround(Math_fround(btSphereShape__getRadius_28_29_20const(HEAP32[($7 + 1580 | 0) >> 2] | 0 | 0))), btCapsuleShape__getUpAxis_28_29_20const(HEAP32[($7 + 1584 | 0) >> 2] | 0 | 0) | 0 | 0, 1 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 1656 | 0) >> 2] | 0 | 0) | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 1652 | 0) >> 2] | 0 | 0) | 0 | 0, Math_fround(Math_fround(HEAPF32[($7 + 1576 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 1572 | 0) >> 2] = wasm2js_f32$0;
|
|
label$7 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 1572 | 0) >> 2]) < Math_fround(HEAPF32[($7 + 1576 | 0) >> 2]) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
label$8 : {
|
|
if (Math_fround(btVector3__length2_28_29_20const($7 + 1620 | 0 | 0)) >= Math_fround(1.4210854715202004e-14) & 1 | 0) {
|
|
break label$8
|
|
}
|
|
__assert_fail(86431 | 0, 73223 | 0, 348 | 0, 76857 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$169 = HEAP32[($7 + 1644 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$169 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($169, $7 + 1620 | 0, $7 + 1604 | 0, Math_fround(HEAPF32[($7 + 1572 | 0) >> 2]));
|
|
}
|
|
btManifoldResult__refreshContactPoints_28_29(HEAP32[($7 + 1644 | 0) >> 2] | 0 | 0);
|
|
break label$2;
|
|
}
|
|
label$9 : {
|
|
if (!((btCollisionShape__getShapeType_28_29_20const(HEAP32[($7 + 1640 | 0) >> 2] | 0 | 0) | 0 | 0) == (8 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
if (!((btCollisionShape__getShapeType_28_29_20const(HEAP32[($7 + 1636 | 0) >> 2] | 0 | 0) | 0 | 0) == (10 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
HEAP32[($7 + 1568 | 0) >> 2] = HEAP32[($7 + 1640 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 1564 | 0) >> 2] = HEAP32[($7 + 1636 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btPersistentManifold__getContactBreakingThreshold_28_29_20const(HEAP32[($8 + 56 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 1560 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(capsuleCapsuleDistance_28btVector3__2c_20btVector3__2c_20float_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20btTransform_20const__2c_20btTransform_20const__2c_20float_29($7 + 1620 | 0 | 0, $7 + 1604 | 0 | 0, Math_fround(Math_fround(0 | 0)), Math_fround(Math_fround(btSphereShape__getRadius_28_29_20const(HEAP32[($7 + 1568 | 0) >> 2] | 0 | 0))), Math_fround(Math_fround(btCapsuleShape__getHalfHeight_28_29_20const(HEAP32[($7 + 1564 | 0) >> 2] | 0 | 0))), Math_fround(Math_fround(btCapsuleShape__getRadius_28_29_20const(HEAP32[($7 + 1564 | 0) >> 2] | 0 | 0))), 1 | 0, btCapsuleShape__getUpAxis_28_29_20const(HEAP32[($7 + 1564 | 0) >> 2] | 0 | 0) | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 1656 | 0) >> 2] | 0 | 0) | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 1652 | 0) >> 2] | 0 | 0) | 0 | 0, Math_fround(Math_fround(HEAPF32[($7 + 1560 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 1556 | 0) >> 2] = wasm2js_f32$0;
|
|
label$10 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 1556 | 0) >> 2]) < Math_fround(HEAPF32[($7 + 1560 | 0) >> 2]) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
label$11 : {
|
|
if (Math_fround(btVector3__length2_28_29_20const($7 + 1620 | 0 | 0)) >= Math_fround(1.4210854715202004e-14) & 1 | 0) {
|
|
break label$11
|
|
}
|
|
__assert_fail(86431 | 0, 73223 | 0, 370 | 0, 76857 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$240 = HEAP32[($7 + 1644 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$240 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($240, $7 + 1620 | 0, $7 + 1604 | 0, Math_fround(HEAPF32[($7 + 1556 | 0) >> 2]));
|
|
}
|
|
btManifoldResult__refreshContactPoints_28_29(HEAP32[($7 + 1644 | 0) >> 2] | 0 | 0);
|
|
break label$2;
|
|
}
|
|
btDiscreteCollisionDetectorInterface__ClosestPointInput__ClosestPointInput_28_29($7 + 1424 | 0 | 0) | 0;
|
|
btVoronoiSimplexSolver__btVoronoiSimplexSolver_28_29($7 + 1064 | 0 | 0) | 0;
|
|
btGjkPairDetector__btGjkPairDetector_28btConvexShape_20const__2c_20btConvexShape_20const__2c_20btVoronoiSimplexSolver__2c_20btConvexPenetrationDepthSolver__29($7 + 984 | 0 | 0, HEAP32[($7 + 1640 | 0) >> 2] | 0 | 0, HEAP32[($7 + 1636 | 0) >> 2] | 0 | 0, $7 + 1064 | 0 | 0, HEAP32[($8 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
btGjkPairDetector__setMinkowskiA_28btConvexShape_20const__29($7 + 984 | 0 | 0, HEAP32[($7 + 1640 | 0) >> 2] | 0 | 0);
|
|
btGjkPairDetector__setMinkowskiB_28btConvexShape_20const__29($7 + 984 | 0 | 0, HEAP32[($7 + 1636 | 0) >> 2] | 0 | 0);
|
|
$274 = HEAP32[($7 + 1640 | 0) >> 2] | 0;
|
|
$277 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$274 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($274));
|
|
$278 = HEAP32[($7 + 1636 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround($277 + Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$278 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($278))) + Math_fround(btPersistentManifold__getContactBreakingThreshold_28_29_20const(HEAP32[($8 + 56 | 0) >> 2] | 0 | 0))) + Math_fround(HEAPF32[((HEAP32[($7 + 1644 | 0) >> 2] | 0) + 32 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 1552 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($7 + 1552 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($7 + 1552 | 0) >> 2]) * Math_fround(HEAPF32[($7 + 1552 | 0) >> 2]));
|
|
btTransform__operator__28btTransform_20const__29($7 + 1424 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 1656 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
btTransform__operator__28btTransform_20const__29(($7 + 1424 | 0) + 64 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 1652 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
label$12 : {
|
|
label$13 : {
|
|
if (!((btCollisionShape__isPolyhedral_28_29_20const(HEAP32[($7 + 1640 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
if (!((btCollisionShape__isPolyhedral_28_29_20const(HEAP32[($7 + 1636 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btDummyResult__btDummyResult_28_29($7 + 980 | 0 | 0) | 0;
|
|
label$14 : {
|
|
label$15 : {
|
|
if (btCollisionShape__getShapeType_28_29_20const(HEAP32[($7 + 1640 | 0) >> 2] | 0 | 0) | 0) {
|
|
break label$15
|
|
}
|
|
$319 = Math_fround(0 | 0);
|
|
break label$14;
|
|
}
|
|
$320 = HEAP32[($7 + 1640 | 0) >> 2] | 0;
|
|
$319 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$320 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($320));
|
|
}
|
|
HEAPF32[($7 + 976 | 0) >> 2] = $319;
|
|
label$16 : {
|
|
label$17 : {
|
|
if (btCollisionShape__getShapeType_28_29_20const(HEAP32[($7 + 1636 | 0) >> 2] | 0 | 0) | 0) {
|
|
break label$17
|
|
}
|
|
$329 = Math_fround(0 | 0);
|
|
break label$16;
|
|
}
|
|
$330 = HEAP32[($7 + 1636 | 0) >> 2] | 0;
|
|
$329 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$330 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($330));
|
|
}
|
|
HEAPF32[($7 + 972 | 0) >> 2] = $329;
|
|
btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btWithoutMarginResult__btWithoutMarginResult_28btDiscreteCollisionDetectorInterface__Result__2c_20float_2c_20float_29($7 + 932 | 0 | 0, HEAP32[($7 + 1644 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($7 + 976 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($7 + 972 | 0) >> 2]))) | 0;
|
|
HEAP32[($7 + 928 | 0) >> 2] = HEAP32[($7 + 1640 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 924 | 0) >> 2] = HEAP32[($7 + 1636 | 0) >> 2] | 0;
|
|
label$18 : {
|
|
label$19 : {
|
|
if (!((btPolyhedralConvexShape__getConvexPolyhedron_28_29_20const(HEAP32[($7 + 928 | 0) >> 2] | 0 | 0) | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
if (!((btPolyhedralConvexShape__getConvexPolyhedron_28_29_20const(HEAP32[($7 + 924 | 0) >> 2] | 0 | 0) | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btPersistentManifold__getContactBreakingThreshold_28_29_20const(HEAP32[($8 + 56 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 920 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($7 + 916 | 0) >> 2] = Math_fround(-1000000015047466219876688.0e6);
|
|
btVector3__btVector3_28_29($7 + 896 | 0 | 0) | 0;
|
|
HEAP8[($7 + 895 | 0) >> 0] = 1;
|
|
label$20 : {
|
|
label$21 : {
|
|
if (!((HEAPU8[((HEAP32[($7 + 1648 | 0) >> 2] | 0) + 24 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$21
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = (btPolyhedralContactClipping__findSeparatingAxis_28btConvexPolyhedron_20const__2c_20btConvexPolyhedron_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3__2c_20btDiscreteCollisionDetectorInterface__Result__29(btPolyhedralConvexShape__getConvexPolyhedron_28_29_20const(HEAP32[($7 + 928 | 0) >> 2] | 0 | 0) | 0 | 0, btPolyhedralConvexShape__getConvexPolyhedron_28_29_20const(HEAP32[($7 + 924 | 0) >> 2] | 0 | 0) | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 1656 | 0) >> 2] | 0 | 0) | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 1652 | 0) >> 2] | 0 | 0) | 0 | 0, $7 + 896 | 0 | 0, HEAP32[($7 + 1644 | 0) >> 2] | 0 | 0) | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 895 | 0) >> 0] = wasm2js_i32$1;
|
|
break label$20;
|
|
}
|
|
btGjkPairDetector__getClosestPoints_28btDiscreteCollisionDetectorInterface__ClosestPointInput_20const__2c_20btDiscreteCollisionDetectorInterface__Result__2c_20btIDebugDraw__2c_20bool_29($7 + 984 | 0 | 0, $7 + 1424 | 0 | 0, $7 + 932 | 0 | 0, HEAP32[((HEAP32[($7 + 1648 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
$403 = ($7 + 932 | 0) + 8 | 0;
|
|
$404 = 8;
|
|
i64toi32_i32$2 = $403 + $404 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1814 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($7 + 896 | 0) + $404 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1814;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $403;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1818 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $7;
|
|
HEAP32[($7 + 896 | 0) >> 2] = $1818;
|
|
HEAP32[($7 + 900 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($7 + 916 | 0) >> 2] = Math_fround(HEAPF32[($7 + 964 | 0) >> 2]);
|
|
$416 = 0;
|
|
label$22 : {
|
|
if (!((HEAPU8[($7 + 968 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$22
|
|
}
|
|
$416 = Math_fround(HEAPF32[($7 + 916 | 0) >> 2]) < Math_fround(0 | 0);
|
|
}
|
|
HEAP8[($7 + 895 | 0) >> 0] = $416 & 1 | 0;
|
|
}
|
|
label$23 : {
|
|
if (!((HEAPU8[($7 + 895 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$23
|
|
}
|
|
btVector3__btVector3_28_29($7 + 876 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3___resize_28int_2c_20btVector3_20const__29($8 + 12 | 0 | 0, 0 | 0, $7 + 876 | 0 | 0);
|
|
btPolyhedralContactClipping__clipHullAgainstHull_28btVector3_20const__2c_20btConvexPolyhedron_20const__2c_20btConvexPolyhedron_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20float_2c_20float_2c_20btAlignedObjectArray_btVector3___2c_20btAlignedObjectArray_btVector3___2c_20btDiscreteCollisionDetectorInterface__Result__29($7 + 896 | 0 | 0, btPolyhedralConvexShape__getConvexPolyhedron_28_29_20const(HEAP32[($7 + 928 | 0) >> 2] | 0 | 0) | 0 | 0, btPolyhedralConvexShape__getConvexPolyhedron_28_29_20const(HEAP32[($7 + 924 | 0) >> 2] | 0 | 0) | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 1656 | 0) >> 2] | 0 | 0) | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 1652 | 0) >> 2] | 0 | 0) | 0 | 0, Math_fround(Math_fround(Math_fround(HEAPF32[($7 + 916 | 0) >> 2]) - Math_fround(HEAPF32[($7 + 920 | 0) >> 2]))), Math_fround(Math_fround(HEAPF32[($7 + 920 | 0) >> 2])), $8 + 12 | 0 | 0, $8 + 32 | 0 | 0, HEAP32[($7 + 1644 | 0) >> 2] | 0 | 0);
|
|
}
|
|
label$24 : {
|
|
if (!((HEAPU8[($8 + 52 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$24
|
|
}
|
|
btManifoldResult__refreshContactPoints_28_29(HEAP32[($7 + 1644 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($7 + 872 | 0) >> 2] = 1;
|
|
break label$18;
|
|
}
|
|
label$25 : {
|
|
if (!((btPolyhedralConvexShape__getConvexPolyhedron_28_29_20const(HEAP32[($7 + 928 | 0) >> 2] | 0 | 0) | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$25
|
|
}
|
|
if (!((btCollisionShape__getShapeType_28_29_20const(HEAP32[($7 + 924 | 0) >> 2] | 0 | 0) | 0 | 0) == (1 | 0) & 1 | 0)) {
|
|
break label$25
|
|
}
|
|
btAlignedObjectArray_btVector3___btAlignedObjectArray_28_29($7 + 852 | 0 | 0) | 0;
|
|
HEAP32[($7 + 848 | 0) >> 2] = HEAP32[($7 + 924 | 0) >> 2] | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 832 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 1652 | 0) >> 2] | 0 | 0) | 0 | 0, (HEAP32[($7 + 848 | 0) >> 2] | 0) + 64 | 0 | 0);
|
|
btAlignedObjectArray_btVector3___push_back_28btVector3_20const__29($7 + 852 | 0 | 0, $7 + 832 | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 816 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 1652 | 0) >> 2] | 0 | 0) | 0 | 0, ((HEAP32[($7 + 848 | 0) >> 2] | 0) + 64 | 0) + 16 | 0 | 0);
|
|
btAlignedObjectArray_btVector3___push_back_28btVector3_20const__29($7 + 852 | 0 | 0, $7 + 816 | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 800 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 1652 | 0) >> 2] | 0 | 0) | 0 | 0, ((HEAP32[($7 + 848 | 0) >> 2] | 0) + 64 | 0) + 32 | 0 | 0);
|
|
btAlignedObjectArray_btVector3___push_back_28btVector3_20const__29($7 + 852 | 0 | 0, $7 + 800 | 0 | 0);
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btPersistentManifold__getContactBreakingThreshold_28_29_20const(HEAP32[($8 + 56 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 796 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28_29($7 + 776 | 0 | 0) | 0;
|
|
HEAPF32[($7 + 772 | 0) >> 2] = Math_fround(-1000000015047466219876688.0e6);
|
|
HEAPF32[($7 + 768 | 0) >> 2] = Math_fround(HEAPF32[($7 + 796 | 0) >> 2]);
|
|
HEAP8[($7 + 767 | 0) >> 0] = 0;
|
|
btGjkPairDetector__getClosestPoints_28btDiscreteCollisionDetectorInterface__ClosestPointInput_20const__2c_20btDiscreteCollisionDetectorInterface__Result__2c_20btIDebugDraw__2c_20bool_29($7 + 984 | 0 | 0, $7 + 1424 | 0 | 0, $7 + 980 | 0 | 0, HEAP32[((HEAP32[($7 + 1648 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const(btGjkPairDetector__getCachedSeparatingAxis_28_29_20const($7 + 984 | 0 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 760 | 0) >> 2] = wasm2js_f32$0;
|
|
label$26 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 760 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$26
|
|
}
|
|
$562 = btGjkPairDetector__getCachedSeparatingAxis_28_29_20const($7 + 984 | 0 | 0) | 0;
|
|
HEAPF32[($7 + 740 | 0) >> 2] = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[($7 + 760 | 0) >> 2]));
|
|
operator__28btVector3_20const__2c_20float_20const__29($7 + 744 | 0 | 0, $562 | 0, $7 + 740 | 0 | 0);
|
|
$572 = 8;
|
|
i64toi32_i32$2 = ($7 + 744 | 0) + $572 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2152 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($7 + 776 | 0) + $572 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2152;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$1 = HEAP32[($7 + 744 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($7 + 748 | 0) >> 2] | 0;
|
|
$2156 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $7;
|
|
HEAP32[($7 + 776 | 0) >> 2] = $2156;
|
|
HEAP32[($7 + 780 | 0) >> 2] = i64toi32_i32$0;
|
|
$584 = Math_fround(btGjkPairDetector__getCachedSeparatingDistance_28_29_20const($7 + 984 | 0 | 0));
|
|
$585 = HEAP32[($7 + 1640 | 0) >> 2] | 0;
|
|
$589 = Math_fround($584 - Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$585 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($585)));
|
|
$590 = HEAP32[($7 + 1636 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround($589 - Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$590 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($590)))), HEAPF32[(wasm2js_i32$0 + 772 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($7 + 767 | 0) >> 0] = 1;
|
|
}
|
|
label$27 : {
|
|
if (!((HEAPU8[($7 + 767 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$27
|
|
}
|
|
btVector3__btVector3_28_29($7 + 724 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3___resize_28int_2c_20btVector3_20const__29($8 + 32 | 0 | 0, 0 | 0, $7 + 724 | 0 | 0);
|
|
btPolyhedralContactClipping__clipFaceAgainstHull_28btVector3_20const__2c_20btConvexPolyhedron_20const__2c_20btTransform_20const__2c_20btAlignedObjectArray_btVector3___2c_20btAlignedObjectArray_btVector3___2c_20float_2c_20float_2c_20btDiscreteCollisionDetectorInterface__Result__29($7 + 776 | 0 | 0, btPolyhedralConvexShape__getConvexPolyhedron_28_29_20const(HEAP32[($7 + 928 | 0) >> 2] | 0 | 0) | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 1656 | 0) >> 2] | 0 | 0) | 0 | 0, $7 + 852 | 0 | 0, $8 + 32 | 0 | 0, Math_fround(Math_fround(Math_fround(HEAPF32[($7 + 772 | 0) >> 2]) - Math_fround(HEAPF32[($7 + 796 | 0) >> 2]))), Math_fround(Math_fround(HEAPF32[($7 + 768 | 0) >> 2])), HEAP32[($7 + 1644 | 0) >> 2] | 0 | 0);
|
|
}
|
|
label$28 : {
|
|
if (!((HEAPU8[($8 + 52 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$28
|
|
}
|
|
btManifoldResult__refreshContactPoints_28_29(HEAP32[($7 + 1644 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($7 + 872 | 0) >> 2] = 1;
|
|
btAlignedObjectArray_btVector3____btAlignedObjectArray_28_29($7 + 852 | 0 | 0) | 0;
|
|
break label$18;
|
|
}
|
|
HEAP32[($7 + 872 | 0) >> 2] = 0;
|
|
}
|
|
btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btWithoutMarginResult___btWithoutMarginResult_28_29($7 + 932 | 0 | 0) | 0;
|
|
btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btDummyResult___btDummyResult_28_29($7 + 980 | 0 | 0) | 0;
|
|
if (HEAP32[($7 + 872 | 0) >> 2] | 0) {
|
|
break label$12
|
|
}
|
|
}
|
|
btGjkPairDetector__getClosestPoints_28btDiscreteCollisionDetectorInterface__ClosestPointInput_20const__2c_20btDiscreteCollisionDetectorInterface__Result__2c_20btIDebugDraw__2c_20bool_29($7 + 984 | 0 | 0, $7 + 1424 | 0 | 0, HEAP32[($7 + 1644 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($7 + 1648 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
label$29 : {
|
|
if (!(HEAP32[($8 + 64 | 0) >> 2] | 0)) {
|
|
break label$29
|
|
}
|
|
if (!((btPersistentManifold__getNumContacts_28_29_20const(btManifoldResult__getPersistentManifold_28_29(HEAP32[($7 + 1644 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0) < (HEAP32[($8 + 68 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$29
|
|
}
|
|
btVector3__btVector3_28_29($7 + 704 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($7 + 688 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($7 + 672 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const(btGjkPairDetector__getCachedSeparatingAxis_28_29_20const($7 + 984 | 0 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 668 | 0) >> 2] = wasm2js_f32$0;
|
|
label$30 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 668 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$30
|
|
}
|
|
$683 = btGjkPairDetector__getCachedSeparatingAxis_28_29_20const($7 + 984 | 0 | 0) | 0;
|
|
HEAPF32[($7 + 648 | 0) >> 2] = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[($7 + 668 | 0) >> 2]));
|
|
operator__28btVector3_20const__2c_20float_20const__29($7 + 652 | 0 | 0, $683 | 0, $7 + 648 | 0 | 0);
|
|
$693 = 8;
|
|
i64toi32_i32$2 = ($7 + 652 | 0) + $693 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2406 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($7 + 672 | 0) + $693 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2406;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$1 = HEAP32[($7 + 652 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($7 + 656 | 0) >> 2] | 0;
|
|
$2410 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $7;
|
|
HEAP32[($7 + 672 | 0) >> 2] = $2410;
|
|
HEAP32[($7 + 676 | 0) >> 2] = i64toi32_i32$0;
|
|
void_20btPlaneSpace1_btVector3__28btVector3_20const__2c_20btVector3__2c_20btVector3__29($7 + 672 | 0 | 0, $7 + 704 | 0 | 0, $7 + 688 | 0 | 0);
|
|
HEAP8[($7 + 647 | 0) >> 0] = 1;
|
|
HEAPF32[($7 + 640 | 0) >> 2] = Math_fround(.39269909262657166);
|
|
$713 = HEAP32[($7 + 1640 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$713 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($713))), HEAPF32[(wasm2js_i32$0 + 632 | 0) >> 2] = wasm2js_f32$0;
|
|
$717 = HEAP32[($7 + 1636 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$717 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($717))), HEAPF32[(wasm2js_i32$0 + 628 | 0) >> 2] = wasm2js_f32$0;
|
|
label$31 : {
|
|
label$32 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 632 | 0) >> 2]) < Math_fround(HEAPF32[($7 + 628 | 0) >> 2]) & 1 | 0)) {
|
|
break label$32
|
|
}
|
|
HEAPF32[($7 + 636 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[(0 + 112840 | 0) >> 2]) / Math_fround(HEAPF32[($7 + 632 | 0) >> 2]));
|
|
HEAP8[($7 + 647 | 0) >> 0] = 1;
|
|
break label$31;
|
|
}
|
|
HEAPF32[($7 + 636 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[(0 + 112840 | 0) >> 2]) / Math_fround(HEAPF32[($7 + 628 | 0) >> 2]));
|
|
HEAP8[($7 + 647 | 0) >> 0] = 0;
|
|
}
|
|
label$33 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 636 | 0) >> 2]) > Math_fround(.39269909262657166) & 1 | 0)) {
|
|
break label$33
|
|
}
|
|
HEAPF32[($7 + 636 | 0) >> 2] = Math_fround(.39269909262657166);
|
|
}
|
|
btTransform__btTransform_28_29($7 + 564 | 0 | 0) | 0;
|
|
label$34 : {
|
|
label$35 : {
|
|
if (!((HEAPU8[($7 + 647 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$35
|
|
}
|
|
btTransform__operator__28btTransform_20const__29($7 + 564 | 0 | 0, $7 + 1424 | 0 | 0) | 0;
|
|
break label$34;
|
|
}
|
|
btTransform__operator__28btTransform_20const__29($7 + 564 | 0 | 0, ($7 + 1424 | 0) + 64 | 0 | 0) | 0;
|
|
}
|
|
HEAP32[($7 + 720 | 0) >> 2] = 0;
|
|
label$36 : {
|
|
label$37 : while (1) {
|
|
if (!((HEAP32[($7 + 720 | 0) >> 2] | 0 | 0) < (HEAP32[($8 + 64 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$36
|
|
}
|
|
label$38 : {
|
|
if (!(Math_fround(btVector3__length2_28_29_20const($7 + 704 | 0 | 0)) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$38
|
|
}
|
|
btQuaternion__btQuaternion_28btVector3_20const__2c_20float_20const__29($7 + 548 | 0 | 0, $7 + 704 | 0 | 0, $7 + 636 | 0 | 0) | 0;
|
|
HEAPF32[($7 + 544 | 0) >> 2] = Math_fround(Math_fround(HEAP32[($7 + 720 | 0) >> 2] | 0 | 0) * Math_fround(Math_fround(6.2831854820251465) / Math_fround(HEAP32[($8 + 64 | 0) >> 2] | 0 | 0)));
|
|
btQuaternion__btQuaternion_28btVector3_20const__2c_20float_20const__29($7 + 528 | 0 | 0, $7 + 672 | 0 | 0, $7 + 544 | 0 | 0) | 0;
|
|
label$39 : {
|
|
label$40 : {
|
|
if (!((HEAPU8[($7 + 647 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$40
|
|
}
|
|
btQuaternion__inverse_28_29_20const($7 + 384 | 0 | 0, $7 + 528 | 0 | 0);
|
|
operator__28btQuaternion_20const__2c_20btQuaternion_20const__29($7 + 400 | 0 | 0, $7 + 384 | 0 | 0, $7 + 548 | 0 | 0);
|
|
operator__28btQuaternion_20const__2c_20btQuaternion_20const__29($7 + 416 | 0 | 0, $7 + 400 | 0 | 0, $7 + 528 | 0 | 0);
|
|
btMatrix3x3__btMatrix3x3_28btQuaternion_20const__29($7 + 432 | 0 | 0, $7 + 416 | 0 | 0) | 0;
|
|
operator__28btMatrix3x3_20const__2c_20btMatrix3x3_20const__29($7 + 480 | 0 | 0, $7 + 432 | 0 | 0, btTransform__getBasis_28_29_20const(btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 1656 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
btTransform__setBasis_28btMatrix3x3_20const__29($7 + 1424 | 0 | 0, $7 + 480 | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29(($7 + 1424 | 0) + 64 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 1652 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
break label$39;
|
|
}
|
|
btTransform__operator__28btTransform_20const__29($7 + 1424 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 1656 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
btQuaternion__inverse_28_29_20const($7 + 240 | 0 | 0, $7 + 528 | 0 | 0);
|
|
operator__28btQuaternion_20const__2c_20btQuaternion_20const__29($7 + 256 | 0 | 0, $7 + 240 | 0 | 0, $7 + 548 | 0 | 0);
|
|
operator__28btQuaternion_20const__2c_20btQuaternion_20const__29($7 + 272 | 0 | 0, $7 + 256 | 0 | 0, $7 + 528 | 0 | 0);
|
|
btMatrix3x3__btMatrix3x3_28btQuaternion_20const__29($7 + 288 | 0 | 0, $7 + 272 | 0 | 0) | 0;
|
|
operator__28btMatrix3x3_20const__2c_20btMatrix3x3_20const__29($7 + 336 | 0 | 0, $7 + 288 | 0 | 0, btTransform__getBasis_28_29_20const(btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 1652 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
btTransform__setBasis_28btMatrix3x3_20const__29(($7 + 1424 | 0) + 64 | 0 | 0, $7 + 336 | 0 | 0);
|
|
}
|
|
btPerturbedContactResult__btPerturbedContactResult_28btManifoldResult__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20bool_2c_20btIDebugDraw__29($7 | 0, HEAP32[($7 + 1644 | 0) >> 2] | 0 | 0, $7 + 1424 | 0 | 0, ($7 + 1424 | 0) + 64 | 0 | 0, $7 + 564 | 0 | 0, (HEAPU8[($7 + 647 | 0) >> 0] | 0) & 1 | 0 | 0, HEAP32[((HEAP32[($7 + 1648 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) | 0;
|
|
btGjkPairDetector__getClosestPoints_28btDiscreteCollisionDetectorInterface__ClosestPointInput_20const__2c_20btDiscreteCollisionDetectorInterface__Result__2c_20btIDebugDraw__2c_20bool_29($7 + 984 | 0 | 0, $7 + 1424 | 0 | 0, $7 | 0, HEAP32[((HEAP32[($7 + 1648 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
btPerturbedContactResult___btPerturbedContactResult_28_29($7 | 0) | 0;
|
|
}
|
|
HEAP32[($7 + 720 | 0) >> 2] = (HEAP32[($7 + 720 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$37;
|
|
};
|
|
}
|
|
}
|
|
}
|
|
HEAP32[($7 + 872 | 0) >> 2] = 0;
|
|
}
|
|
btGjkPairDetector___btGjkPairDetector_28_29($7 + 984 | 0 | 0) | 0;
|
|
label$41 : {
|
|
switch (HEAP32[($7 + 872 | 0) >> 2] | 0 | 0) {
|
|
case 1:
|
|
break label$2;
|
|
default:
|
|
break label$41;
|
|
};
|
|
}
|
|
if (!((HEAPU8[($8 + 52 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btManifoldResult__refreshContactPoints_28_29(HEAP32[($7 + 1644 | 0) >> 2] | 0 | 0);
|
|
}
|
|
__stack_pointer = $7 + 1664 | 0;
|
|
return;
|
|
}
|
|
|
|
function btManifoldResult__setPersistentManifold_28btPersistentManifold__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function capsuleCapsuleDistance_28btVector3__2c_20btVector3__2c_20float_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20btTransform_20const__2c_20btTransform_20const__2c_20float_29($0, $1, $2, $3, $4, $5, $6, $7, $8, $9, $10) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
$4 = Math_fround($4);
|
|
$5 = Math_fround($5);
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
$9 = $9 | 0;
|
|
$10 = Math_fround($10);
|
|
var $13 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $21 = 0, $22 = 0, $36 = 0, $37 = 0, $135 = 0, $137 = 0, $167 = 0, $169 = 0, $235 = 0, $239 = 0, $269 = 0, $273 = 0, $455 = 0, $468 = 0, $517 = 0, $530 = 0, $176 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$13 = __stack_pointer - 288 | 0;
|
|
__stack_pointer = $13;
|
|
HEAP32[($13 + 280 | 0) >> 2] = $0;
|
|
HEAP32[($13 + 276 | 0) >> 2] = $1;
|
|
HEAPF32[($13 + 272 | 0) >> 2] = $2;
|
|
HEAPF32[($13 + 268 | 0) >> 2] = $3;
|
|
HEAPF32[($13 + 264 | 0) >> 2] = $4;
|
|
HEAPF32[($13 + 260 | 0) >> 2] = $5;
|
|
HEAP32[($13 + 256 | 0) >> 2] = $6;
|
|
HEAP32[($13 + 252 | 0) >> 2] = $7;
|
|
HEAP32[($13 + 248 | 0) >> 2] = $8;
|
|
HEAP32[($13 + 244 | 0) >> 2] = $9;
|
|
HEAPF32[($13 + 240 | 0) >> 2] = $10;
|
|
btMatrix3x3__getColumn_28int_29_20const($13 + 224 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($13 + 248 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($13 + 256 | 0) >> 2] | 0 | 0);
|
|
$21 = btTransform__getOrigin_28_29_20const(HEAP32[($13 + 248 | 0) >> 2] | 0 | 0) | 0;
|
|
$22 = 8;
|
|
i64toi32_i32$2 = $21 + $22 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$235 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($13 + 208 | 0) + $22 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $235;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $21;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$239 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $13;
|
|
HEAP32[($13 + 208 | 0) >> 2] = $239;
|
|
HEAP32[($13 + 212 | 0) >> 2] = i64toi32_i32$0;
|
|
btMatrix3x3__getColumn_28int_29_20const($13 + 192 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($13 + 244 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($13 + 252 | 0) >> 2] | 0 | 0);
|
|
$36 = btTransform__getOrigin_28_29_20const(HEAP32[($13 + 244 | 0) >> 2] | 0 | 0) | 0;
|
|
$37 = 8;
|
|
i64toi32_i32$2 = $36 + $37 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$269 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($13 + 176 | 0) + $37 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $269;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $36;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$273 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $13;
|
|
HEAP32[($13 + 176 | 0) >> 2] = $273;
|
|
HEAP32[($13 + 180 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($13 + 160 | 0 | 0, $13 + 176 | 0 | 0, $13 + 208 | 0 | 0);
|
|
btVector3__btVector3_28_29($13 + 144 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($13 + 128 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($13 + 112 | 0 | 0) | 0;
|
|
segmentsClosestPoints_28btVector3__2c_20btVector3__2c_20btVector3__2c_20float__2c_20float__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20btVector3_20const__2c_20float_29($13 + 144 | 0 | 0, $13 + 128 | 0 | 0, $13 + 112 | 0 | 0, $13 + 108 | 0 | 0, $13 + 104 | 0 | 0, $13 + 160 | 0 | 0, $13 + 224 | 0 | 0, Math_fround(Math_fround(HEAPF32[($13 + 272 | 0) >> 2])), $13 + 192 | 0 | 0, Math_fround(Math_fround(HEAPF32[($13 + 264 | 0) >> 2])));
|
|
(wasm2js_i32$0 = $13, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(btVector3__length_28_29_20const($13 + 144 | 0 | 0)) - Math_fround(HEAPF32[($13 + 268 | 0) >> 2])) - Math_fround(HEAPF32[($13 + 260 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 100 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($13 + 100 | 0) >> 2]) > Math_fround(HEAPF32[($13 + 240 | 0) >> 2]) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($13 + 284 | 0) >> 2] = Math_fround(HEAPF32[($13 + 100 | 0) >> 2]);
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $13, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($13 + 144 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 96 | 0) >> 2] = wasm2js_f32$0;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[($13 + 96 | 0) >> 2]) <= Math_fround(1.4210854715202004e-14) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
btVector3__btVector3_28_29($13 + 80 | 0 | 0) | 0;
|
|
void_20btPlaneSpace1_btVector3__28btVector3_20const__2c_20btVector3__2c_20btVector3__29($13 + 224 | 0 | 0, HEAP32[($13 + 280 | 0) >> 2] | 0 | 0, $13 + 80 | 0 | 0);
|
|
break label$3;
|
|
}
|
|
(wasm2js_i32$0 = $13, wasm2js_f32$0 = Math_fround(-Math_fround(Math_fround(1.0) / Math_fround(btSqrt_28float_29(Math_fround(Math_fround(HEAPF32[($13 + 96 | 0) >> 2]))))))), HEAPF32[(wasm2js_i32$0 + 60 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($13 + 64 | 0 | 0, $13 + 144 | 0 | 0, $13 + 60 | 0 | 0);
|
|
$135 = HEAP32[($13 + 280 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $13;
|
|
i64toi32_i32$0 = HEAP32[($13 + 64 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($13 + 68 | 0) >> 2] | 0;
|
|
$455 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $135;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $455;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$137 = 8;
|
|
i64toi32_i32$2 = ($13 + 64 | 0) + $137 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$468 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $135 + $137 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $468;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($13 + 28 | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($13 + 244 | 0) >> 2] | 0 | 0) | 0 | 0, $13 + 112 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($13 + 12 | 0 | 0, HEAP32[($13 + 280 | 0) >> 2] | 0 | 0, $13 + 260 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($13 + 44 | 0 | 0, $13 + 28 | 0 | 0, $13 + 12 | 0 | 0);
|
|
$167 = HEAP32[($13 + 276 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $13;
|
|
i64toi32_i32$0 = HEAP32[($13 + 44 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($13 + 48 | 0) >> 2] | 0;
|
|
$517 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $167;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $517;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$169 = 8;
|
|
i64toi32_i32$2 = ($13 + 44 | 0) + $169 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$530 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $167 + $169 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $530;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($13 + 284 | 0) >> 2] = Math_fround(HEAPF32[($13 + 100 | 0) >> 2]);
|
|
}
|
|
$176 = Math_fround(HEAPF32[($13 + 284 | 0) >> 2]);
|
|
__stack_pointer = $13 + 288 | 0;
|
|
return Math_fround($176);
|
|
}
|
|
|
|
function btManifoldResult__refreshContactPoints_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(70583 | 0, 78398 | 0, 103 | 0, 69146 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
label$3 : {
|
|
if (btPersistentManifold__getNumContacts_28_29_20const(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0) {
|
|
break label$3
|
|
}
|
|
break label$2;
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = (btPersistentManifold__getBody0_28_29_20const(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0 | 0) != (btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 11 | 0) >> 0] = wasm2js_i32$1;
|
|
label$4 : {
|
|
if (!((HEAPU8[($3 + 11 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
btPersistentManifold__refreshContactPoints_28btTransform_20const__2c_20btTransform_20const__29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, btCollisionObject__getWorldTransform_28_29_20const(btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, btCollisionObject__getWorldTransform_28_29_20const(btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
break label$2;
|
|
}
|
|
btPersistentManifold__refreshContactPoints_28btTransform_20const__2c_20btTransform_20const__29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, btCollisionObject__getWorldTransform_28_29_20const(btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, btCollisionObject__getWorldTransform_28_29_20const(btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSphereShape__getRadius_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $13 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$13 = Math_fround(Math_fround(HEAPF32[(btVector3__getX_28_29_20const($4 + 36 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const($4 + 20 | 0 | 0) | 0) >> 2]));
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($13);
|
|
}
|
|
|
|
function btDiscreteCollisionDetectorInterface__ClosestPointInput__ClosestPointInput_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btTransform__btTransform_28_29($4 | 0) | 0;
|
|
btTransform__btTransform_28_29($4 + 64 | 0 | 0) | 0;
|
|
HEAPF32[($4 + 128 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btGjkPairDetector__setMinkowskiA_28btConvexShape_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 28 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btGjkPairDetector__setMinkowskiB_28btConvexShape_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 32 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btDummyResult__btDummyResult_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btDiscreteCollisionDetectorInterface__Result__Result_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 93856 + 8 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btWithoutMarginResult__btWithoutMarginResult_28btDiscreteCollisionDetectorInterface__Result__2c_20float_2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAPF32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btDiscreteCollisionDetectorInterface__Result__Result_28_29($7 | 0) | 0;
|
|
HEAP32[$7 >> 2] = 94032 + 8 | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($7 + 8 | 0 | 0) | 0;
|
|
HEAPF32[($7 + 24 | 0) >> 2] = Math_fround(HEAPF32[($6 + 4 | 0) >> 2]);
|
|
HEAPF32[($7 + 28 | 0) >> 2] = Math_fround(HEAPF32[$6 >> 2]);
|
|
HEAP8[($7 + 36 | 0) >> 0] = 0;
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btGjkPairDetector__getCachedSeparatingAxis_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0 | 0;
|
|
}
|
|
|
|
function btGjkPairDetector__getCachedSeparatingDistance_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 56 | 0) >> 2]));
|
|
}
|
|
|
|
function btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btWithoutMarginResult___btWithoutMarginResult_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btDiscreteCollisionDetectorInterface__Result___Result_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btDummyResult___btDummyResult_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btDiscreteCollisionDetectorInterface__Result___Result_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btManifoldResult__getPersistentManifold_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btQuaternion__btQuaternion_28btVector3_20const__2c_20float_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btQuadWord__btQuadWord_28_29($6 | 0) | 0;
|
|
btQuaternion__setRotation_28btVector3_20const__2c_20float_20const__29($6 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btQuaternion__inverse_28_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[$5 >> 2]));
|
|
HEAPF32[($4 + 4 | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($5 + 4 | 0) >> 2]));
|
|
HEAPF32[$4 >> 2] = Math_fround(-Math_fround(HEAPF32[($5 + 8 | 0) >> 2]));
|
|
btQuaternion__btQuaternion_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $4 + 8 | 0 | 0, $4 + 4 | 0 | 0, $4 | 0, $5 + 12 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function operator__28btQuaternion_20const__2c_20btQuaternion_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $20 = Math_fround(0), $28 = Math_fround(0), $52 = Math_fround(0), $60 = Math_fround(0), $84 = Math_fround(0), $92 = Math_fround(0), $117 = Math_fround(0), $126 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $2;
|
|
$20 = Math_fround(Math_fround(Math_fround(HEAPF32[(btQuadWord__w_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btQuadWord__x_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[(btQuadWord__x_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btQuadWord__w_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])));
|
|
$28 = Math_fround(Math_fround(Math_fround(HEAPF32[(btQuadWord__y_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btQuadWord__z_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $20);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[(btQuadWord__z_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2])) * Math_fround(HEAPF32[(btQuadWord__y_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $28)), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
$52 = Math_fround(Math_fround(Math_fround(HEAPF32[(btQuadWord__w_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btQuadWord__y_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[(btQuadWord__y_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btQuadWord__w_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])));
|
|
$60 = Math_fround(Math_fround(Math_fround(HEAPF32[(btQuadWord__z_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btQuadWord__x_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $52);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[(btQuadWord__x_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2])) * Math_fround(HEAPF32[(btQuadWord__z_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $60)), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
$84 = Math_fround(Math_fround(Math_fround(HEAPF32[(btQuadWord__w_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btQuadWord__z_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[(btQuadWord__z_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btQuadWord__w_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])));
|
|
$92 = Math_fround(Math_fround(Math_fround(HEAPF32[(btQuadWord__x_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btQuadWord__y_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $84);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[(btQuadWord__y_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2])) * Math_fround(HEAPF32[(btQuadWord__x_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $92)), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
$117 = Math_fround(Math_fround(Math_fround(HEAPF32[(btQuadWord__w_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btQuadWord__w_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[(btQuadWord__x_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btQuadWord__x_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2]))));
|
|
$126 = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[(btQuadWord__y_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2])) * Math_fround(HEAPF32[(btQuadWord__y_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $117);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[(btQuadWord__z_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2])) * Math_fround(HEAPF32[(btQuadWord__z_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $126)), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
btQuaternion__btQuaternion_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $5 + 20 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0, $5 + 8 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btMatrix3x3__btMatrix3x3_28btQuaternion_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $8 = 0, $9 = 0, $11 = 0, $7 = 0, $18 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $5;
|
|
$7 = $5 + 48 | 0;
|
|
$8 = $5;
|
|
label$1 : while (1) {
|
|
$9 = $8;
|
|
btVector3__btVector3_28_29($9 | 0) | 0;
|
|
$11 = $9 + 16 | 0;
|
|
$8 = $11;
|
|
if (!(($11 | 0) == ($7 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
btMatrix3x3__setRotation_28btQuaternion_20const__29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
$18 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $18 | 0;
|
|
}
|
|
|
|
function btTransform__setBasis_28btMatrix3x3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btMatrix3x3__operator__28btMatrix3x3_20const__29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPerturbedContactResult__btPerturbedContactResult_28btManifoldResult__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20bool_2c_20btIDebugDraw__29($0, $1, $2, $3, $4, $5, $6) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
var $9 = 0, $11 = 0;
|
|
$9 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $9;
|
|
HEAP32[($9 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($9 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($9 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($9 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($9 + 12 | 0) >> 2] = $4;
|
|
HEAP8[($9 + 11 | 0) >> 0] = $5;
|
|
HEAP32[($9 + 4 | 0) >> 2] = $6;
|
|
$11 = HEAP32[($9 + 28 | 0) >> 2] | 0;
|
|
btManifoldResult__btManifoldResult_28_29($11 | 0) | 0;
|
|
HEAP32[$11 >> 2] = 94216 + 8 | 0;
|
|
HEAP32[($11 + 36 | 0) >> 2] = HEAP32[($9 + 24 | 0) >> 2] | 0;
|
|
btTransform__btTransform_28btTransform_20const__29($11 + 40 | 0 | 0, HEAP32[($9 + 20 | 0) >> 2] | 0 | 0) | 0;
|
|
btTransform__btTransform_28btTransform_20const__29($11 + 104 | 0 | 0, HEAP32[($9 + 16 | 0) >> 2] | 0 | 0) | 0;
|
|
btTransform__btTransform_28btTransform_20const__29($11 + 168 | 0 | 0, HEAP32[($9 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP8[($11 + 232 | 0) >> 0] = (HEAPU8[($9 + 11 | 0) >> 0] | 0) & 1 | 0;
|
|
HEAP32[($11 + 236 | 0) >> 2] = HEAP32[($9 + 4 | 0) >> 2] | 0;
|
|
__stack_pointer = $9 + 32 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btPerturbedContactResult___btPerturbedContactResult_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btManifoldResult___btManifoldResult_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btGjkPairDetector___btGjkPairDetector_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btDiscreteCollisionDetectorInterface___btDiscreteCollisionDetectorInterface_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function segmentsClosestPoints_28btVector3__2c_20btVector3__2c_20btVector3__2c_20float__2c_20float__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20btVector3_20const__2c_20float_29($0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = Math_fround($7);
|
|
$8 = $8 | 0;
|
|
$9 = Math_fround($9);
|
|
var $12 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $145 = 0, $147 = 0, $158 = 0, $160 = 0, $178 = 0, $180 = 0, $543 = 0, $556 = 0, $573 = 0, $586 = 0, $616 = 0, $629 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$12 = __stack_pointer - 128 | 0;
|
|
__stack_pointer = $12;
|
|
HEAP32[($12 + 124 | 0) >> 2] = $0;
|
|
HEAP32[($12 + 120 | 0) >> 2] = $1;
|
|
HEAP32[($12 + 116 | 0) >> 2] = $2;
|
|
HEAP32[($12 + 112 | 0) >> 2] = $3;
|
|
HEAP32[($12 + 108 | 0) >> 2] = $4;
|
|
HEAP32[($12 + 104 | 0) >> 2] = $5;
|
|
HEAP32[($12 + 100 | 0) >> 2] = $6;
|
|
HEAPF32[($12 + 96 | 0) >> 2] = $7;
|
|
HEAP32[($12 + 92 | 0) >> 2] = $8;
|
|
HEAPF32[($12 + 88 | 0) >> 2] = $9;
|
|
(wasm2js_i32$0 = $12, wasm2js_f32$0 = Math_fround(btDot_28btVector3_20const__2c_20btVector3_20const__29(HEAP32[($12 + 100 | 0) >> 2] | 0 | 0, HEAP32[($12 + 92 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 84 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $12, wasm2js_f32$0 = Math_fround(btDot_28btVector3_20const__2c_20btVector3_20const__29(HEAP32[($12 + 100 | 0) >> 2] | 0 | 0, HEAP32[($12 + 104 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 80 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $12, wasm2js_f32$0 = Math_fround(btDot_28btVector3_20const__2c_20btVector3_20const__29(HEAP32[($12 + 92 | 0) >> 2] | 0 | 0, HEAP32[($12 + 104 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 76 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($12 + 72 | 0) >> 2] = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($12 + 84 | 0) >> 2])) * Math_fround(HEAPF32[($12 + 84 | 0) >> 2])) + Math_fround(1.0));
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($12 + 72 | 0) >> 2]) == Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2] = Math_fround(0 | 0);
|
|
break label$1;
|
|
}
|
|
HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2] = Math_fround(Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($12 + 76 | 0) >> 2])) * Math_fround(HEAPF32[($12 + 84 | 0) >> 2])) + Math_fround(HEAPF32[($12 + 80 | 0) >> 2])) / Math_fround(HEAPF32[($12 + 72 | 0) >> 2]));
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2]) < Math_fround(-Math_fround(HEAPF32[($12 + 96 | 0) >> 2])) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($12 + 96 | 0) >> 2]));
|
|
break label$3;
|
|
}
|
|
label$5 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2]) > Math_fround(HEAPF32[($12 + 96 | 0) >> 2]) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[($12 + 96 | 0) >> 2]);
|
|
}
|
|
}
|
|
}
|
|
HEAPF32[(HEAP32[($12 + 108 | 0) >> 2] | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[($12 + 84 | 0) >> 2])) + Math_fround(-Math_fround(HEAPF32[($12 + 76 | 0) >> 2])));
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($12 + 108 | 0) >> 2] | 0) >> 2]) < Math_fround(-Math_fround(HEAPF32[($12 + 88 | 0) >> 2])) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAPF32[(HEAP32[($12 + 108 | 0) >> 2] | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($12 + 88 | 0) >> 2]));
|
|
HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[(HEAP32[($12 + 108 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[($12 + 84 | 0) >> 2])) + Math_fround(HEAPF32[($12 + 80 | 0) >> 2]));
|
|
label$8 : {
|
|
label$9 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2]) < Math_fround(-Math_fround(HEAPF32[($12 + 96 | 0) >> 2])) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($12 + 96 | 0) >> 2]));
|
|
break label$8;
|
|
}
|
|
label$10 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2]) > Math_fround(HEAPF32[($12 + 96 | 0) >> 2]) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[($12 + 96 | 0) >> 2]);
|
|
}
|
|
}
|
|
break label$6;
|
|
}
|
|
label$11 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($12 + 108 | 0) >> 2] | 0) >> 2]) > Math_fround(HEAPF32[($12 + 88 | 0) >> 2]) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
HEAPF32[(HEAP32[($12 + 108 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[($12 + 88 | 0) >> 2]);
|
|
HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[(HEAP32[($12 + 108 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[($12 + 84 | 0) >> 2])) + Math_fround(HEAPF32[($12 + 80 | 0) >> 2]));
|
|
label$12 : {
|
|
label$13 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2]) < Math_fround(-Math_fround(HEAPF32[($12 + 96 | 0) >> 2])) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($12 + 96 | 0) >> 2]));
|
|
break label$12;
|
|
}
|
|
label$14 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2]) > Math_fround(HEAPF32[($12 + 96 | 0) >> 2]) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[($12 + 96 | 0) >> 2]);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
operator__28btVector3_20const__2c_20float_20const__29($12 + 56 | 0 | 0, HEAP32[($12 + 100 | 0) >> 2] | 0 | 0, HEAP32[($12 + 112 | 0) >> 2] | 0 | 0);
|
|
$145 = HEAP32[($12 + 120 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$0 = HEAP32[($12 + 56 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($12 + 60 | 0) >> 2] | 0;
|
|
$543 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $145;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $543;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$147 = 8;
|
|
i64toi32_i32$2 = ($12 + 56 | 0) + $147 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$556 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $145 + $147 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $556;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($12 + 40 | 0 | 0, HEAP32[($12 + 92 | 0) >> 2] | 0 | 0, HEAP32[($12 + 108 | 0) >> 2] | 0 | 0);
|
|
$158 = HEAP32[($12 + 116 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$0 = HEAP32[($12 + 40 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($12 + 44 | 0) >> 2] | 0;
|
|
$573 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $158;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $573;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$160 = 8;
|
|
i64toi32_i32$2 = ($12 + 40 | 0) + $160 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$586 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $158 + $160 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $586;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($12 + 8 | 0 | 0, HEAP32[($12 + 104 | 0) >> 2] | 0 | 0, HEAP32[($12 + 120 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($12 + 24 | 0 | 0, $12 + 8 | 0 | 0, HEAP32[($12 + 116 | 0) >> 2] | 0 | 0);
|
|
$178 = HEAP32[($12 + 124 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$0 = HEAP32[($12 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($12 + 28 | 0) >> 2] | 0;
|
|
$616 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $178;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $616;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$180 = 8;
|
|
i64toi32_i32$2 = ($12 + 24 | 0) + $180 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$629 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $178 + $180 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $629;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $12 + 128 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuaternion__setRotation_28btVector3_20const__2c_20float_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 36 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 44 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__length_28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
if (Math_fround(HEAPF32[($5 + 32 | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(86707 | 0, 78737 | 0, 115 | 0, 76633 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(btSin_28float_29(Math_fround(Math_fround(Math_fround(HEAPF32[(HEAP32[($5 + 36 | 0) >> 2] | 0) >> 2]) * Math_fround(.5))))) / Math_fround(HEAPF32[($5 + 32 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($5 + 28 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($5 + 28 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($5 + 28 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btCos_28float_29(Math_fround(Math_fround(Math_fround(HEAPF32[(HEAP32[($5 + 36 | 0) >> 2] | 0) >> 2]) * Math_fround(.5)))))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
btQuadWord__setValue_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($6 | 0, $5 + 24 | 0 | 0, $5 + 20 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0);
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteCollisionDetectorInterface___btDiscreteCollisionDetectorInterface_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btConvexConvexAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $196 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$1 = 0;
|
|
$7 = __stack_pointer - 1312 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 1304 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 1300 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 1296 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 1292 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 1288 | 0) >> 2] = $4;
|
|
HEAPF32[($7 + 1284 | 0) >> 2] = Math_fround(1.0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($7 + 1264 | 0 | 0, btTransform__getOrigin_28_29(btCollisionObject__getInterpolationWorldTransform_28_29(HEAP32[($7 + 1300 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29(btCollisionObject__getWorldTransform_28_29(HEAP32[($7 + 1300 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($7 + 1264 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 1280 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($7 + 1244 | 0 | 0, btTransform__getOrigin_28_29(btCollisionObject__getInterpolationWorldTransform_28_29(HEAP32[($7 + 1296 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29(btCollisionObject__getWorldTransform_28_29(HEAP32[($7 + 1296 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($7 + 1244 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 1260 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 1280 | 0) >> 2]) < Math_fround(btCollisionObject__getCcdSquareMotionThreshold_28_29_20const(HEAP32[($7 + 1300 | 0) >> 2] | 0 | 0)) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if (!(Math_fround(HEAPF32[($7 + 1260 | 0) >> 2]) < Math_fround(btCollisionObject__getCcdSquareMotionThreshold_28_29_20const(HEAP32[($7 + 1296 | 0) >> 2] | 0 | 0)) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($7 + 1308 | 0) >> 2] = Math_fround(HEAPF32[($7 + 1284 | 0) >> 2]);
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
if (!((HEAPU8[(0 + 113996 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAPF32[($7 + 1308 | 0) >> 2] = Math_fround(1.0);
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCollisionObject__getCollisionShape_28_29(HEAP32[($7 + 1300 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 1240 | 0) >> 2] = wasm2js_i32$1;
|
|
btSphereShape__btSphereShape_28float_29($7 + 1180 | 0 | 0, Math_fround(Math_fround(btCollisionObject__getCcdSweptSphereRadius_28_29_20const(HEAP32[($7 + 1296 | 0) >> 2] | 0 | 0)))) | 0;
|
|
btConvexCast__CastResult__CastResult_28_29($7 + 1004 | 0 | 0) | 0;
|
|
btVoronoiSimplexSolver__btVoronoiSimplexSolver_28_29($7 + 644 | 0 | 0) | 0;
|
|
btGjkConvexCast__btGjkConvexCast_28btConvexShape_20const__2c_20btConvexShape_20const__2c_20btVoronoiSimplexSolver__29($7 + 628 | 0 | 0, HEAP32[($7 + 1240 | 0) >> 2] | 0 | 0, $7 + 1180 | 0 | 0, $7 + 644 | 0 | 0) | 0;
|
|
label$4 : {
|
|
if (!((btGjkConvexCast__calcTimeOfImpact_28btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btConvexCast__CastResult__29($7 + 628 | 0 | 0, btCollisionObject__getWorldTransform_28_29(HEAP32[($7 + 1300 | 0) >> 2] | 0 | 0) | 0 | 0, btCollisionObject__getInterpolationWorldTransform_28_29(HEAP32[($7 + 1300 | 0) >> 2] | 0 | 0) | 0 | 0, btCollisionObject__getWorldTransform_28_29(HEAP32[($7 + 1296 | 0) >> 2] | 0 | 0) | 0 | 0, btCollisionObject__getInterpolationWorldTransform_28_29(HEAP32[($7 + 1296 | 0) >> 2] | 0 | 0) | 0 | 0, $7 + 1004 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
label$5 : {
|
|
if (!(Math_fround(btCollisionObject__getHitFraction_28_29_20const(HEAP32[($7 + 1300 | 0) >> 2] | 0 | 0)) > Math_fround(HEAPF32[($7 + 1168 | 0) >> 2]) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btCollisionObject__setHitFraction_28float_29(HEAP32[($7 + 1300 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($7 + 1168 | 0) >> 2])));
|
|
}
|
|
label$6 : {
|
|
if (!(Math_fround(btCollisionObject__getHitFraction_28_29_20const(HEAP32[($7 + 1296 | 0) >> 2] | 0 | 0)) > Math_fround(HEAPF32[($7 + 1168 | 0) >> 2]) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
btCollisionObject__setHitFraction_28float_29(HEAP32[($7 + 1296 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($7 + 1168 | 0) >> 2])));
|
|
}
|
|
label$7 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 1284 | 0) >> 2]) > Math_fround(HEAPF32[($7 + 1168 | 0) >> 2]) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAPF32[($7 + 1284 | 0) >> 2] = Math_fround(HEAPF32[($7 + 1168 | 0) >> 2]);
|
|
}
|
|
}
|
|
btGjkConvexCast___btGjkConvexCast_28_29($7 + 628 | 0 | 0) | 0;
|
|
btConvexCast__CastResult___CastResult_28_29($7 + 1004 | 0 | 0) | 0;
|
|
btSphereShape___btSphereShape_28_29($7 + 1180 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCollisionObject__getCollisionShape_28_29(HEAP32[($7 + 1296 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 624 | 0) >> 2] = wasm2js_i32$1;
|
|
btSphereShape__btSphereShape_28float_29($7 + 564 | 0 | 0, Math_fround(Math_fround(btCollisionObject__getCcdSweptSphereRadius_28_29_20const(HEAP32[($7 + 1300 | 0) >> 2] | 0 | 0)))) | 0;
|
|
btConvexCast__CastResult__CastResult_28_29($7 + 388 | 0 | 0) | 0;
|
|
btVoronoiSimplexSolver__btVoronoiSimplexSolver_28_29($7 + 28 | 0 | 0) | 0;
|
|
btGjkConvexCast__btGjkConvexCast_28btConvexShape_20const__2c_20btConvexShape_20const__2c_20btVoronoiSimplexSolver__29($7 + 12 | 0 | 0, $7 + 564 | 0 | 0, HEAP32[($7 + 624 | 0) >> 2] | 0 | 0, $7 + 28 | 0 | 0) | 0;
|
|
label$8 : {
|
|
if (!((btGjkConvexCast__calcTimeOfImpact_28btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btConvexCast__CastResult__29($7 + 12 | 0 | 0, btCollisionObject__getWorldTransform_28_29(HEAP32[($7 + 1300 | 0) >> 2] | 0 | 0) | 0 | 0, btCollisionObject__getInterpolationWorldTransform_28_29(HEAP32[($7 + 1300 | 0) >> 2] | 0 | 0) | 0 | 0, btCollisionObject__getWorldTransform_28_29(HEAP32[($7 + 1296 | 0) >> 2] | 0 | 0) | 0 | 0, btCollisionObject__getInterpolationWorldTransform_28_29(HEAP32[($7 + 1296 | 0) >> 2] | 0 | 0) | 0 | 0, $7 + 388 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
label$9 : {
|
|
if (!(Math_fround(btCollisionObject__getHitFraction_28_29_20const(HEAP32[($7 + 1300 | 0) >> 2] | 0 | 0)) > Math_fround(HEAPF32[($7 + 552 | 0) >> 2]) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
btCollisionObject__setHitFraction_28float_29(HEAP32[($7 + 1300 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($7 + 552 | 0) >> 2])));
|
|
}
|
|
label$10 : {
|
|
if (!(Math_fround(btCollisionObject__getHitFraction_28_29_20const(HEAP32[($7 + 1296 | 0) >> 2] | 0 | 0)) > Math_fround(HEAPF32[($7 + 552 | 0) >> 2]) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
btCollisionObject__setHitFraction_28float_29(HEAP32[($7 + 1296 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($7 + 552 | 0) >> 2])));
|
|
}
|
|
label$11 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 1284 | 0) >> 2]) > Math_fround(HEAPF32[($7 + 552 | 0) >> 2]) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
HEAPF32[($7 + 1284 | 0) >> 2] = Math_fround(HEAPF32[($7 + 552 | 0) >> 2]);
|
|
}
|
|
}
|
|
btGjkConvexCast___btGjkConvexCast_28_29($7 + 12 | 0 | 0) | 0;
|
|
btConvexCast__CastResult___CastResult_28_29($7 + 388 | 0 | 0) | 0;
|
|
btSphereShape___btSphereShape_28_29($7 + 564 | 0 | 0) | 0;
|
|
HEAPF32[($7 + 1308 | 0) >> 2] = Math_fround(HEAPF32[($7 + 1284 | 0) >> 2]);
|
|
}
|
|
$196 = Math_fround(HEAPF32[($7 + 1308 | 0) >> 2]);
|
|
__stack_pointer = $7 + 1312 | 0;
|
|
return Math_fround($196);
|
|
}
|
|
|
|
function btCollisionObject__getCcdSquareMotionThreshold_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
return Math_fround(Math_fround(Math_fround(HEAPF32[($4 + 276 | 0) >> 2]) * Math_fround(HEAPF32[($4 + 276 | 0) >> 2])));
|
|
}
|
|
|
|
function btCollisionObject__getHitFraction_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 268 | 0) >> 2]));
|
|
}
|
|
|
|
function btCollisionObject__setHitFraction_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 268 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function btConvexConvexAlgorithm__CreateFunc__CreateCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $9 = 0, $14 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
$9 = HEAP32[(HEAP32[($6 + 24 | 0) >> 2] | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$9 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($9, 72) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$14 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[607 | 0]($14, HEAP32[((HEAP32[($6 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0, HEAP32[($6 + 24 | 0) >> 2] | 0, HEAP32[($6 + 20 | 0) >> 2] | 0, HEAP32[($6 + 16 | 0) >> 2] | 0, HEAP32[($7 + 8 | 0) >> 2] | 0, HEAP32[($7 + 12 | 0) >> 2] | 0, HEAP32[($7 + 16 | 0) >> 2] | 0) | 0;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return $14 | 0;
|
|
}
|
|
|
|
function btConvexConvexAlgorithm__getAllContactManifolds_28btAlignedObjectArray_btPersistentManifold____29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($5 + 56 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
if (!((HEAPU8[($5 + 52 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btPersistentManifold____push_back_28btPersistentManifold__20const__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, $5 + 56 | 0 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btDummyResult___btDummyResult_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btDummyResult___btDummyResult_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btDummyResult__setShapeIdentifiersA_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
return;
|
|
}
|
|
|
|
function btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btDummyResult__setShapeIdentifiersB_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
return;
|
|
}
|
|
|
|
function btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btDummyResult__addContactPoint_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
var $6 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAPF32[$6 >> 2] = $3;
|
|
return;
|
|
}
|
|
|
|
function btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btWithoutMarginResult___btWithoutMarginResult_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btWithoutMarginResult___btWithoutMarginResult_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btWithoutMarginResult__setShapeIdentifiersA_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
return;
|
|
}
|
|
|
|
function btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btWithoutMarginResult__setShapeIdentifiersB_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
return;
|
|
}
|
|
|
|
function btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btWithoutMarginResult__addContactPoint_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $7 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $11 = 0, $13 = 0, $38 = 0, $75 = 0, $85 = 0, $17 = 0;
|
|
$6 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 36 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 32 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
HEAPF32[($7 + 32 | 0) >> 2] = Math_fround(HEAPF32[($6 + 32 | 0) >> 2]);
|
|
$11 = $7 + 8 | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 40 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$75 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $11;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $75;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$13 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $13 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$85 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11 + $13 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $85;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$17 = HEAP32[($6 + 36 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 | 0, HEAP32[($6 + 40 | 0) >> 2] | 0 | 0, $7 + 28 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 16 | 0 | 0, $17 | 0, $6 | 0);
|
|
HEAPF32[($7 + 32 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($6 + 32 | 0) >> 2]) + Math_fround(Math_fround(HEAPF32[($7 + 24 | 0) >> 2]) + Math_fround(HEAPF32[($7 + 28 | 0) >> 2])));
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 32 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP8[($7 + 36 | 0) >> 0] = 1;
|
|
}
|
|
$38 = HEAP32[($7 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$38 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($38, HEAP32[($6 + 40 | 0) >> 2] | 0, $6 + 16 | 0, Math_fround(HEAPF32[($7 + 32 | 0) >> 2]));
|
|
__stack_pointer = $6 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPerturbedContactResult___btPerturbedContactResult_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btPerturbedContactResult___btPerturbedContactResult_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPerturbedContactResult__addContactPoint_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $7 = 0, $56 = 0, $93 = 0, $116 = 0, $145 = 0, $168 = 0, $20 = 0, $297 = 0, $301 = 0, $369 = 0, $373 = 0, $102 = 0, $415 = 0, $419 = 0, $471 = 0, $475 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 496 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 492 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 488 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 484 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 480 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 492 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($6 + 464 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 448 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 428 | 0 | 0) | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($7 + 232 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$20 = HEAP32[($6 + 484 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 396 | 0 | 0, HEAP32[($6 + 488 | 0) >> 2] | 0 | 0, $6 + 480 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 412 | 0 | 0, $20 | 0, $6 + 396 | 0 | 0);
|
|
btTransform__inverse_28_29_20const($6 + 252 | 0 | 0, $7 + 40 | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29_20const($6 + 316 | 0 | 0, $7 + 168 | 0 | 0, $6 + 252 | 0 | 0);
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($6 + 380 | 0 | 0, $6 + 316 | 0 | 0, $6 + 412 | 0 | 0);
|
|
$56 = 8;
|
|
i64toi32_i32$2 = ($6 + 380 | 0) + $56 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$297 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 464 | 0) + $56 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $297;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 380 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 384 | 0) >> 2] | 0;
|
|
$301 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 464 | 0) >> 2] = $301;
|
|
HEAP32[($6 + 468 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 236 | 0 | 0, $6 + 464 | 0 | 0, HEAP32[($6 + 484 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($6 + 236 | 0 | 0, HEAP32[($6 + 488 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 444 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 204 | 0 | 0, HEAP32[($6 + 488 | 0) >> 2] | 0 | 0, $6 + 444 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 220 | 0 | 0, $6 + 464 | 0 | 0, $6 + 204 | 0 | 0);
|
|
$93 = 8;
|
|
i64toi32_i32$2 = ($6 + 220 | 0) + $93 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$369 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 448 | 0) + $93 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $369;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 220 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 224 | 0) >> 2] | 0;
|
|
$373 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 448 | 0) >> 2] = $373;
|
|
HEAP32[($6 + 452 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$1;
|
|
}
|
|
$102 = HEAP32[($6 + 484 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 172 | 0 | 0, HEAP32[($6 + 488 | 0) >> 2] | 0 | 0, $6 + 480 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 188 | 0 | 0, $102 | 0, $6 + 172 | 0 | 0);
|
|
$116 = 8;
|
|
i64toi32_i32$2 = ($6 + 188 | 0) + $116 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$415 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 464 | 0) + $116 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $415;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 188 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 192 | 0) >> 2] | 0;
|
|
$419 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 464 | 0) >> 2] = $419;
|
|
HEAP32[($6 + 468 | 0) >> 2] = i64toi32_i32$0;
|
|
btTransform__inverse_28_29_20const($6 + 28 | 0 | 0, $7 + 104 | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29_20const($6 + 92 | 0 | 0, $7 + 168 | 0 | 0, $6 + 28 | 0 | 0);
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($6 + 156 | 0 | 0, $6 + 92 | 0 | 0, HEAP32[($6 + 484 | 0) >> 2] | 0 | 0);
|
|
$145 = 8;
|
|
i64toi32_i32$2 = ($6 + 156 | 0) + $145 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$471 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 448 | 0) + $145 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $471;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 156 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 160 | 0) >> 2] | 0;
|
|
$475 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 448 | 0) >> 2] = $475;
|
|
HEAP32[($6 + 452 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 12 | 0 | 0, $6 + 464 | 0 | 0, $6 + 448 | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($6 + 12 | 0 | 0, HEAP32[($6 + 488 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 444 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
$168 = HEAP32[($7 + 36 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$168 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($168, HEAP32[($6 + 488 | 0) >> 2] | 0, $6 + 448 | 0, Math_fround(HEAPF32[($6 + 444 | 0) >> 2]));
|
|
__stack_pointer = $6 + 496 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btConvexConvexAlgorithm_cpp() {
|
|
__cxx_global_var_init_14();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_15() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114e3 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexConcaveCollisionAlgorithm__btConvexConcaveCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20bool_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $9 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP8[($7 + 15 | 0) >> 0] = $4;
|
|
$9 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
btActivatingCollisionAlgorithm__btActivatingCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($9 | 0, HEAP32[($7 + 24 | 0) >> 2] | 0 | 0, HEAP32[($7 + 20 | 0) >> 2] | 0 | 0, HEAP32[($7 + 16 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$9 >> 2] = 94284 + 8 | 0;
|
|
FUNCTION_TABLE[629 | 0]($9 + 8 | 0, HEAP32[(HEAP32[($7 + 24 | 0) >> 2] | 0) >> 2] | 0, HEAP32[($7 + 20 | 0) >> 2] | 0, HEAP32[($7 + 16 | 0) >> 2] | 0, (HEAPU8[($7 + 15 | 0) >> 0] | 0) & 1 | 0) | 0;
|
|
HEAP8[($9 + 76 | 0) >> 0] = (HEAPU8[($7 + 15 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btConvexConcaveCollisionAlgorithm___btConvexConcaveCollisionAlgorithm_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 94284 + 8 | 0;
|
|
FUNCTION_TABLE[630 | 0]($4 + 8 | 0) | 0;
|
|
btActivatingCollisionAlgorithm___btActivatingCollisionAlgorithm_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexConcaveCollisionAlgorithm___btConvexConcaveCollisionAlgorithm_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[631 | 0]($4) | 0;
|
|
btConvexConcaveCollisionAlgorithm__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexConcaveCollisionAlgorithm__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexConcaveCollisionAlgorithm__getAllContactManifolds_28btAlignedObjectArray_btPersistentManifold____29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btPersistentManifold____push_back_28btPersistentManifold__20const__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, ($5 + 8 | 0) + 64 | 0 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexTriangleCallback__btConvexTriangleCallback_28btDispatcher__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20bool_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $9 = 0, $23 = 0, $30 = 0, $33 = 0, $41 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0, wasm2js_i32$5 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $3;
|
|
HEAP8[($7 + 11 | 0) >> 0] = $4;
|
|
$9 = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $9;
|
|
btTriangleCallback__btTriangleCallback_28_29($9 | 0) | 0;
|
|
HEAP32[$9 >> 2] = 94312 + 8 | 0;
|
|
btVector3__btVector3_28_29($9 + 4 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($9 + 20 | 0 | 0) | 0;
|
|
HEAP32[($9 + 48 | 0) >> 2] = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
HEAP32[($9 + 52 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($7 + 11 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$23 = HEAP32[($7 + 12 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
$23 = HEAP32[($7 + 16 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($9 + 36 | 0) >> 2] = $23;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAPU8[($7 + 11 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$30 = HEAP32[($7 + 16 | 0) >> 2] | 0;
|
|
break label$3;
|
|
}
|
|
$30 = HEAP32[($7 + 12 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($9 + 40 | 0) >> 2] = $30;
|
|
$33 = HEAP32[($9 + 48 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $9, wasm2js_i32$1 = ((((wasm2js_i32$3 = $33, wasm2js_i32$4 = btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($9 + 36 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$5 = btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($9 + 40 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$2 = HEAP32[((HEAP32[$33 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$2](wasm2js_i32$3 | 0, wasm2js_i32$4 | 0, wasm2js_i32$5 | 0) | 0)), HEAP32[(wasm2js_i32$0 + 64 | 0) >> 2] = wasm2js_i32$1;
|
|
btConvexTriangleCallback__clearCache_28_29($9 | 0);
|
|
$41 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return $41 | 0;
|
|
}
|
|
|
|
function btConvexTriangleCallback__clearCache_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$5 = HEAP32[($4 + 48 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5, HEAP32[($4 + 64 | 0) >> 2] | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexTriangleCallback___btConvexTriangleCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0, $8 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 94312 + 8 | 0;
|
|
btConvexTriangleCallback__clearCache_28_29($4 | 0);
|
|
$8 = HEAP32[($4 + 48 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($8, HEAP32[($4 + 64 | 0) >> 2] | 0);
|
|
btTriangleCallback___btTriangleCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexTriangleCallback___btConvexTriangleCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[630 | 0]($4) | 0;
|
|
btConvexTriangleCallback__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexTriangleCallback__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexTriangleCallback__processTriangle_28btVector3__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $65 = 0, $75 = 0, $101 = 0, $112 = 0, $117 = 0, $139 = 0, $142 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 176 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 172 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 168 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 164 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 160 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 172 | 0) >> 2] | 0;
|
|
CProfileSample__CProfileSample_28char_20const__29($6 + 159 | 0 | 0, 81819 | 0) | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if ((TestTriangleAgainstAabb2_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29(HEAP32[($6 + 168 | 0) >> 2] | 0 | 0, $7 + 4 | 0 | 0, $7 + 20 | 0 | 0) | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
HEAP32[($6 + 152 | 0) >> 2] = 1;
|
|
break label$1;
|
|
}
|
|
btCollisionAlgorithmConstructionInfo__btCollisionAlgorithmConstructionInfo_28_29($6 + 144 | 0 | 0) | 0;
|
|
HEAP32[($6 + 144 | 0) >> 2] = HEAP32[($7 + 48 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
if (!((btCollisionShape__isConvex_28_29_20const(btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 36 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
btTriangleShape__btTriangleShape_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($6 + 32 | 0 | 0, HEAP32[($6 + 168 | 0) >> 2] | 0 | 0, (HEAP32[($6 + 168 | 0) >> 2] | 0) + 16 | 0 | 0, (HEAP32[($6 + 168 | 0) >> 2] | 0) + 32 | 0 | 0) | 0;
|
|
btConvexInternalShape__setMargin_28float_29($6 + 32 | 0 | 0, Math_fround(Math_fround(HEAPF32[($7 + 56 | 0) >> 2])));
|
|
btCollisionObjectWrapper__btCollisionObjectWrapper_28btCollisionObjectWrapper_20const__2c_20btCollisionShape_20const__2c_20btCollisionObject_20const__2c_20btTransform_20const__2c_20int_2c_20int_29($6 + 8 | 0 | 0, HEAP32[($7 + 40 | 0) >> 2] | 0 | 0, $6 + 32 | 0 | 0, btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 40 | 0) >> 2] | 0 | 0) | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 40 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($6 + 164 | 0) >> 2] | 0 | 0, HEAP32[($6 + 160 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($6 + 4 | 0) >> 2] = 0;
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!(Math_fround(HEAPF32[((HEAP32[($7 + 44 | 0) >> 2] | 0) + 32 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
$65 = HEAP32[($6 + 144 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$65 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($65, HEAP32[($7 + 36 | 0) >> 2] | 0, $6 + 8 | 0, 0, 2) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$4;
|
|
}
|
|
$75 = HEAP32[($6 + 144 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$75 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($75, HEAP32[($7 + 36 | 0) >> 2] | 0, $6 + 8 | 0, HEAP32[($7 + 64 | 0) >> 2] | 0, 1) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
HEAP32[$6 >> 2] = 0;
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!((btManifoldResult__getBody0Internal_28_29_20const(HEAP32[($7 + 44 | 0) >> 2] | 0 | 0) | 0 | 0) == (btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 40 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btManifoldResult__getBody0Wrap_28_29_20const(HEAP32[($7 + 44 | 0) >> 2] | 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
btManifoldResult__setBody0Wrap_28btCollisionObjectWrapper_20const__29(HEAP32[($7 + 44 | 0) >> 2] | 0 | 0, $6 + 8 | 0 | 0);
|
|
$101 = HEAP32[($7 + 44 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$101 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($101, HEAP32[($6 + 164 | 0) >> 2] | 0, HEAP32[($6 + 160 | 0) >> 2] | 0);
|
|
break label$6;
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btManifoldResult__getBody1Wrap_28_29_20const(HEAP32[($7 + 44 | 0) >> 2] | 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
btManifoldResult__setBody1Wrap_28btCollisionObjectWrapper_20const__29(HEAP32[($7 + 44 | 0) >> 2] | 0 | 0, $6 + 8 | 0 | 0);
|
|
$112 = HEAP32[($7 + 44 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$112 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($112, HEAP32[($6 + 164 | 0) >> 2] | 0, HEAP32[($6 + 160 | 0) >> 2] | 0);
|
|
}
|
|
$117 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$117 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($117, HEAP32[($7 + 36 | 0) >> 2] | 0, $6 + 8 | 0, HEAP32[($7 + 52 | 0) >> 2] | 0, HEAP32[($7 + 44 | 0) >> 2] | 0);
|
|
label$8 : {
|
|
label$9 : {
|
|
if (!((btManifoldResult__getBody0Internal_28_29_20const(HEAP32[($7 + 44 | 0) >> 2] | 0 | 0) | 0 | 0) == (btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 40 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
btManifoldResult__setBody0Wrap_28btCollisionObjectWrapper_20const__29(HEAP32[($7 + 44 | 0) >> 2] | 0 | 0, HEAP32[$6 >> 2] | 0 | 0);
|
|
break label$8;
|
|
}
|
|
btManifoldResult__setBody1Wrap_28btCollisionObjectWrapper_20const__29(HEAP32[($7 + 44 | 0) >> 2] | 0 | 0, HEAP32[$6 >> 2] | 0 | 0);
|
|
}
|
|
$139 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$139 >> 2] | 0) >> 2] | 0 | 0]($139) | 0;
|
|
$142 = HEAP32[($6 + 144 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$142 >> 2] | 0) + 60 | 0) >> 2] | 0 | 0]($142, HEAP32[($6 + 4 | 0) >> 2] | 0);
|
|
btTriangleShape___btTriangleShape_28_29($6 + 32 | 0 | 0) | 0;
|
|
}
|
|
HEAP32[($6 + 152 | 0) >> 2] = 0;
|
|
}
|
|
CProfileSample___CProfileSample_28_29($6 + 159 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 176 | 0;
|
|
return;
|
|
}
|
|
|
|
function TestTriangleAgainstAabb2_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $150 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 16 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 24 | 0) >> 2] | 0) + 16 | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 24 | 0) >> 2] | 0) + 32 | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[(float_20const__20btMin_float__28float_20const__2c_20float_20const__29(float_20const__20btMin_float__28float_20const__2c_20float_20const__29(btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) >> 2]) > Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP8[($5 + 31 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[(float_20const__20btMax_float__28float_20const__2c_20float_20const__29(float_20const__20btMax_float__28float_20const__2c_20float_20const__29(btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) >> 2]) < Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP8[($5 + 31 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[(float_20const__20btMin_float__28float_20const__2c_20float_20const__29(float_20const__20btMin_float__28float_20const__2c_20float_20const__29((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0) >> 2]) > Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2]) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP8[($5 + 31 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
if (!(Math_fround(HEAPF32[(float_20const__20btMax_float__28float_20const__2c_20float_20const__29(float_20const__20btMax_float__28float_20const__2c_20float_20const__29((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) + 8 | 0 | 0) | 0) >> 2]) < Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2]) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAP8[($5 + 31 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[(float_20const__20btMin_float__28float_20const__2c_20float_20const__29(float_20const__20btMin_float__28float_20const__2c_20float_20const__29((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0) | 0) >> 2]) > Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2]) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAP8[($5 + 31 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
label$7 : {
|
|
if (!(Math_fround(HEAPF32[(float_20const__20btMax_float__28float_20const__2c_20float_20const__29(float_20const__20btMax_float__28float_20const__2c_20float_20const__29((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) + 4 | 0 | 0) | 0) >> 2]) < Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2]) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAP8[($5 + 31 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP8[($5 + 31 | 0) >> 0] = 1 & 1 | 0;
|
|
}
|
|
$150 = (HEAPU8[($5 + 31 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return $150 | 0;
|
|
}
|
|
|
|
function btTriangleShape__btTriangleShape_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, $7 = 0, $12 = 0, $15 = 0, $16 = 0, $18 = 0, $27 = 0, $29 = 0, $37 = 0, $39 = 0, $47 = 0, $49 = 0, $14 = 0, $114 = 0, $124 = 0, $136 = 0, $146 = 0, $158 = 0, $168 = 0, $53 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $7;
|
|
btPolyhedralConvexShape__btPolyhedralConvexShape_28_29($7 | 0) | 0;
|
|
HEAP32[$7 >> 2] = 94420 + 8 | 0;
|
|
$12 = $7 + 64 | 0;
|
|
$14 = $12 + 48 | 0;
|
|
$15 = $12;
|
|
label$1 : while (1) {
|
|
$16 = $15;
|
|
btVector3__btVector3_28_29($16 | 0) | 0;
|
|
$18 = $16 + 16 | 0;
|
|
$15 = $18;
|
|
if (!(($18 | 0) == ($14 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
HEAP32[($7 + 4 | 0) >> 2] = 1;
|
|
$27 = $7 + 64 | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$114 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $27;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $114;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$29 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $29 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$124 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $27 + $29 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $124;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$37 = ($7 + 64 | 0) + 16 | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$136 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $37;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $136;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$39 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $39 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$146 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $37 + $39 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $146;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$47 = ($7 + 64 | 0) + 32 | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$158 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $47;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $158;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$49 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $49 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$168 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $47 + $49 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $168;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$53 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return $53 | 0;
|
|
}
|
|
|
|
function btManifoldResult__getBody0Internal_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btManifoldResult__getBody0Wrap_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btManifoldResult__setBody0Wrap_28btCollisionObjectWrapper_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btManifoldResult__getBody1Wrap_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btManifoldResult__setBody1Wrap_28btCollisionObjectWrapper_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 12 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleShape___btTriangleShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btPolyhedralConvexShape___btPolyhedralConvexShape_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function float_20const__20btMax_float__28float_20const__2c_20float_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $13 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2]) > Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2]) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$13 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
$13 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
return $13 | 0;
|
|
}
|
|
|
|
function btConvexTriangleCallback__setTimeStepAndCounters_28float_2c_20btDispatcherInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btManifoldResult__29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, $9 = 0, $56 = 0, $39 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$8 = __stack_pointer - 240 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 236 | 0) >> 2] = $0;
|
|
HEAPF32[($8 + 232 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 228 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 224 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 220 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 216 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 236 | 0) >> 2] | 0;
|
|
HEAP32[($9 + 36 | 0) >> 2] = HEAP32[($8 + 224 | 0) >> 2] | 0;
|
|
HEAP32[($9 + 40 | 0) >> 2] = HEAP32[($8 + 220 | 0) >> 2] | 0;
|
|
HEAP32[($9 + 52 | 0) >> 2] = HEAP32[($8 + 228 | 0) >> 2] | 0;
|
|
HEAPF32[($9 + 56 | 0) >> 2] = Math_fround(HEAPF32[($8 + 232 | 0) >> 2]);
|
|
HEAP32[($9 + 44 | 0) >> 2] = HEAP32[($8 + 216 | 0) >> 2] | 0;
|
|
btTransform__btTransform_28_29($8 + 152 | 0 | 0) | 0;
|
|
btTransform__inverse_28_29_20const($8 + 24 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($9 + 40 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29_20const($8 + 88 | 0 | 0, $8 + 24 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($9 + 36 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29($8 + 152 | 0 | 0, $8 + 88 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($9 + 36 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
$39 = HEAP32[($8 + 20 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$39 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($39, $8 + 152 | 0, $9 + 4 | 0, $9 + 20 | 0);
|
|
HEAPF32[($8 + 16 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($8 + 232 | 0) >> 2]) + Math_fround(HEAPF32[((HEAP32[($8 + 216 | 0) >> 2] | 0) + 32 | 0) >> 2]));
|
|
$56 = $8 + 16 | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 | 0, $56 | 0, $56 | 0, $56 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($9 + 20 | 0 | 0, $8 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29($9 + 4 | 0 | 0, $8 | 0) | 0;
|
|
__stack_pointer = $8 + 240 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexConcaveCollisionAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0, $17 = 0, $24 = 0, $39 = 0, $57 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0;
|
|
$7 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 32 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 44 | 0) >> 2] | 0;
|
|
CProfileSample__CProfileSample_28char_20const__29($7 + 27 | 0 | 0, 76822 | 0) | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($8 + 76 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$17 = HEAP32[($7 + 36 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
$17 = HEAP32[($7 + 40 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($7 + 20 | 0) >> 2] = $17;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAPU8[($8 + 76 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$24 = HEAP32[($7 + 40 | 0) >> 2] | 0;
|
|
break label$3;
|
|
}
|
|
$24 = HEAP32[($7 + 36 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($7 + 16 | 0) >> 2] = $24;
|
|
label$5 : {
|
|
if (!((btCollisionShape__isConcave_28_29_20const(btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 16 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 16 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
label$6 : {
|
|
if (!((btCollisionShape__isConvex_28_29_20const(btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 20 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$39 = HEAP32[($7 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$39 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($39))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
btManifoldResult__setPersistentManifold_28btPersistentManifold__29(HEAP32[($7 + 28 | 0) >> 2] | 0 | 0, HEAP32[($8 + 72 | 0) >> 2] | 0 | 0);
|
|
btConvexTriangleCallback__setTimeStepAndCounters_28float_2c_20btDispatcherInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btManifoldResult__29($8 + 8 | 0 | 0, Math_fround(Math_fround(HEAPF32[($7 + 8 | 0) >> 2])), HEAP32[($7 + 32 | 0) >> 2] | 0 | 0, HEAP32[($7 + 20 | 0) >> 2] | 0 | 0, HEAP32[($7 + 16 | 0) >> 2] | 0 | 0, HEAP32[($7 + 28 | 0) >> 2] | 0 | 0);
|
|
btPersistentManifold__setBodies_28btCollisionObject_20const__2c_20btCollisionObject_20const__29(HEAP32[($8 + 72 | 0) >> 2] | 0 | 0, btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 20 | 0) >> 2] | 0 | 0) | 0 | 0, btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 16 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$57 = HEAP32[($7 + 12 | 0) >> 2] | 0;
|
|
((((wasm2js_i32$1 = $57, wasm2js_i32$2 = $8 + 8 | 0), wasm2js_i32$3 = btConvexTriangleCallback__getAabbMin_28_29_20const($8 + 8 | 0 | 0) | 0), wasm2js_i32$4 = btConvexTriangleCallback__getAabbMax_28_29_20const($8 + 8 | 0 | 0) | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$57 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, wasm2js_i32$3 | 0, wasm2js_i32$4 | 0);
|
|
btManifoldResult__refreshContactPoints_28_29(HEAP32[($7 + 28 | 0) >> 2] | 0 | 0);
|
|
btConvexTriangleCallback__clearWrapperData_28_29($8 + 8 | 0 | 0);
|
|
}
|
|
}
|
|
CProfileSample___CProfileSample_28_29($7 + 27 | 0 | 0) | 0;
|
|
__stack_pointer = $7 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPersistentManifold__setBodies_28btCollisionObject_20const__2c_20btCollisionObject_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 836 | 0) >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 840 | 0) >> 2] = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexTriangleCallback__getAabbMin_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0 | 0;
|
|
}
|
|
|
|
function btConvexTriangleCallback__getAabbMax_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 20 | 0 | 0;
|
|
}
|
|
|
|
function btConvexTriangleCallback__clearWrapperData_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 36 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 40 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexConcaveCollisionAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $112 = 0, $124 = 0, $8 = 0, $13 = 0, $20 = 0, $72 = 0, $73 = 0, $90 = 0, $91 = 0, $156 = 0, $347 = 0, $351 = 0, $382 = 0, $386 = 0, $183 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$1 = 0;
|
|
$7 = __stack_pointer - 544 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 536 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 532 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 528 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 524 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 520 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 536 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($8 + 76 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$13 = HEAP32[($7 + 528 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
$13 = HEAP32[($7 + 532 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($7 + 516 | 0) >> 2] = $13;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAPU8[($8 + 76 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$20 = HEAP32[($7 + 532 | 0) >> 2] | 0;
|
|
break label$3;
|
|
}
|
|
$20 = HEAP32[($7 + 528 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($7 + 512 | 0) >> 2] = $20;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($7 + 492 | 0 | 0, btTransform__getOrigin_28_29(btCollisionObject__getInterpolationWorldTransform_28_29(HEAP32[($7 + 516 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29(btCollisionObject__getWorldTransform_28_29(HEAP32[($7 + 516 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($7 + 492 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 508 | 0) >> 2] = wasm2js_f32$0;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 508 | 0) >> 2]) < Math_fround(btCollisionObject__getCcdSquareMotionThreshold_28_29_20const(HEAP32[($7 + 516 | 0) >> 2] | 0 | 0)) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAPF32[($7 + 540 | 0) >> 2] = Math_fround(1.0);
|
|
break label$5;
|
|
}
|
|
btTransform__inverse_28_29_20const($7 + 428 | 0 | 0, btCollisionObject__getWorldTransform_28_29(HEAP32[($7 + 512 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29_20const($7 + 364 | 0 | 0, $7 + 428 | 0 | 0, btCollisionObject__getWorldTransform_28_29(HEAP32[($7 + 516 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29_20const($7 + 300 | 0 | 0, $7 + 428 | 0 | 0, btCollisionObject__getInterpolationWorldTransform_28_29(HEAP32[($7 + 516 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
label$7 : {
|
|
if (!((btCollisionShape__isConcave_28_29_20const(btCollisionObject__getCollisionShape_28_29(HEAP32[($7 + 512 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
$72 = btTransform__getOrigin_28_29($7 + 364 | 0 | 0) | 0;
|
|
$73 = 8;
|
|
i64toi32_i32$2 = $72 + $73 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$347 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($7 + 280 | 0) + $73 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $347;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $72;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$351 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $7;
|
|
HEAP32[($7 + 280 | 0) >> 2] = $351;
|
|
HEAP32[($7 + 284 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__setMin_28btVector3_20const__29($7 + 280 | 0 | 0, btTransform__getOrigin_28_29($7 + 300 | 0 | 0) | 0 | 0);
|
|
$90 = btTransform__getOrigin_28_29($7 + 364 | 0 | 0) | 0;
|
|
$91 = 8;
|
|
i64toi32_i32$2 = $90 + $91 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$382 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($7 + 264 | 0) + $91 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $382;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $90;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$386 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $7;
|
|
HEAP32[($7 + 264 | 0) >> 2] = $386;
|
|
HEAP32[($7 + 268 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__setMax_28btVector3_20const__29($7 + 264 | 0 | 0, btTransform__getOrigin_28_29($7 + 300 | 0 | 0) | 0 | 0);
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btCollisionObject__getCcdSweptSphereRadius_28_29_20const(HEAP32[($7 + 516 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 260 | 0) >> 2] = wasm2js_f32$0;
|
|
$112 = $7 + 260 | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 244 | 0 | 0, $112 | 0, $112 | 0, $112 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29($7 + 280 | 0 | 0, $7 + 244 | 0 | 0) | 0;
|
|
$124 = $7 + 260 | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 228 | 0 | 0, $124 | 0, $124 | 0, $124 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($7 + 264 | 0 | 0, $7 + 228 | 0 | 0) | 0;
|
|
HEAPF32[($7 + 224 | 0) >> 2] = Math_fround(1.0);
|
|
btConvexConcaveCollisionAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__LocalTriangleSphereCastCallback__LocalTriangleSphereCastCallback_28btTransform_20const__2c_20btTransform_20const__2c_20float_2c_20float_29($7 + 20 | 0 | 0, $7 + 364 | 0 | 0, $7 + 300 | 0 | 0, Math_fround(Math_fround(btCollisionObject__getCcdSweptSphereRadius_28_29_20const(HEAP32[($7 + 516 | 0) >> 2] | 0 | 0))), Math_fround(Math_fround(HEAPF32[($7 + 224 | 0) >> 2]))) | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btCollisionObject__getHitFraction_28_29_20const(HEAP32[($7 + 516 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 220 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP32[($7 + 16 | 0) >> 2] = HEAP32[($7 + 512 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCollisionObject__getCollisionShape_28_29(HEAP32[($7 + 16 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
label$8 : {
|
|
if (!((HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
$156 = HEAP32[($7 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$156 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($156, $7 + 20 | 0, $7 + 280 | 0, $7 + 264 | 0);
|
|
}
|
|
label$9 : {
|
|
label$10 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 220 | 0) >> 2]) < Math_fround(btCollisionObject__getHitFraction_28_29_20const(HEAP32[($7 + 516 | 0) >> 2] | 0 | 0)) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
btCollisionObject__setHitFraction_28float_29(HEAP32[($7 + 516 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($7 + 220 | 0) >> 2])));
|
|
HEAPF32[($7 + 540 | 0) >> 2] = Math_fround(HEAPF32[($7 + 220 | 0) >> 2]);
|
|
HEAP32[($7 + 8 | 0) >> 2] = 1;
|
|
break label$9;
|
|
}
|
|
HEAP32[($7 + 8 | 0) >> 2] = 0;
|
|
}
|
|
btConvexConcaveCollisionAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__LocalTriangleSphereCastCallback___LocalTriangleSphereCastCallback_28_29($7 + 20 | 0 | 0) | 0;
|
|
label$11 : {
|
|
switch (HEAP32[($7 + 8 | 0) >> 2] | 0 | 0) {
|
|
case 1:
|
|
break label$5;
|
|
default:
|
|
break label$11;
|
|
};
|
|
}
|
|
}
|
|
HEAPF32[($7 + 540 | 0) >> 2] = Math_fround(1.0);
|
|
}
|
|
$183 = Math_fround(HEAPF32[($7 + 540 | 0) >> 2]);
|
|
__stack_pointer = $7 + 544 | 0;
|
|
return Math_fround($183);
|
|
}
|
|
|
|
function btConvexConcaveCollisionAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__LocalTriangleSphereCastCallback__LocalTriangleSphereCastCallback_28btTransform_20const__2c_20btTransform_20const__2c_20float_2c_20float_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
$4 = Math_fround($4);
|
|
var $7 = 0, $8 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAPF32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAPF32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
btTriangleCallback__btTriangleCallback_28_29($8 | 0) | 0;
|
|
HEAP32[$8 >> 2] = 94588 + 8 | 0;
|
|
btTransform__btTransform_28btTransform_20const__29($8 + 4 | 0 | 0, HEAP32[($7 + 24 | 0) >> 2] | 0 | 0) | 0;
|
|
btTransform__btTransform_28btTransform_20const__29($8 + 68 | 0 | 0, HEAP32[($7 + 20 | 0) >> 2] | 0 | 0) | 0;
|
|
btTransform__btTransform_28_29($8 + 132 | 0 | 0) | 0;
|
|
HEAPF32[($8 + 196 | 0) >> 2] = Math_fround(HEAPF32[($7 + 16 | 0) >> 2]);
|
|
HEAPF32[($8 + 200 | 0) >> 2] = Math_fround(HEAPF32[($7 + 12 | 0) >> 2]);
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btConvexConcaveCollisionAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__LocalTriangleSphereCastCallback___LocalTriangleSphereCastCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btTriangleCallback___btTriangleCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btTriangleShape___btTriangleShape_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btTriangleShape___btTriangleShape_28_29($4 | 0) | 0;
|
|
btTriangleShape__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleShape__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 80 | 0) >> 2] | 0 | 0]($7, HEAP32[($6 + 8 | 0) >> 2] | 0, HEAP32[($6 + 4 | 0) >> 2] | 0, HEAP32[$6 >> 2] | 0);
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexInternalShape__getLocalScaling_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 20 | 0 | 0;
|
|
}
|
|
|
|
function btTriangleShape__calculateLocalInertia_28float_2c_20btVector3__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
__assert_fail(86177 | 0, 79443 | 0, 127 | 0, 83783 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btTriangleShape__getName_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 81877 | 0;
|
|
}
|
|
|
|
function btConvexInternalShape__getMargin_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 52 | 0) >> 2]));
|
|
}
|
|
|
|
function btConvexInternalShape__calculateSerializeBufferSize_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 52 | 0;
|
|
}
|
|
|
|
function btConvexInternalShape__serialize_28void__2c_20btSerializer__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
btCollisionShape__serialize_28void__2c_20btSerializer__29_20const($6 | 0, HEAP32[$5 >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
btVector3__serializeFloat_28btVector3FloatData__29_20const($6 + 36 | 0 | 0, (HEAP32[$5 >> 2] | 0) + 28 | 0 | 0);
|
|
btVector3__serializeFloat_28btVector3FloatData__29_20const($6 + 20 | 0 | 0, (HEAP32[$5 >> 2] | 0) + 12 | 0 | 0);
|
|
HEAPF32[((HEAP32[$5 >> 2] | 0) + 44 | 0) >> 2] = Math_fround(HEAPF32[($6 + 52 | 0) >> 2]);
|
|
HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] = 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return 83475 | 0;
|
|
}
|
|
|
|
function btVector3__serializeFloat_28btVector3FloatData__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) < (4 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + ((HEAP32[($4 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($5 + ((HEAP32[($4 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btTriangleShape__localGetSupportingVertexWithoutMargin_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, $31 = 0, $92 = 0, $102 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
btVector3__dot3_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29_20const($5 + 8 | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0, $6 + 64 | 0 | 0, ($6 + 64 | 0) + 16 | 0 | 0, ($6 + 64 | 0) + 32 | 0 | 0);
|
|
i64toi32_i32$2 = ($6 + 64 | 0) + ((btVector3__maxAxis_28_29_20const($5 + 8 | 0 | 0) | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$92 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $92;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$31 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $31 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$102 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0 + $31 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $102;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btVector3__maxAxis_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0, $18 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[$4 >> 2]) < Math_fround(HEAPF32[($4 + 4 | 0) >> 2]) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$18 = Math_fround(HEAPF32[($4 + 4 | 0) >> 2]) < Math_fround(HEAPF32[($4 + 8 | 0) >> 2]) & 1 | 0 ? 2 : 1;
|
|
break label$1;
|
|
}
|
|
$18 = Math_fround(HEAPF32[$4 >> 2]) < Math_fround(HEAPF32[($4 + 8 | 0) >> 2]) & 1 | 0 ? 2 : 0;
|
|
}
|
|
return $18 | 0;
|
|
}
|
|
|
|
function btTriangleShape__batchedUnitVectorGetSupportingVertexWithoutMargin_28btVector3_20const__2c_20btVector3__2c_20int_29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $7 = 0, $48 = 0, $50 = 0, $43 = 0, $156 = 0, $166 = 0;
|
|
$6 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 32 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 32 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($6 + 24 | 0) >> 2] = (HEAP32[($6 + 40 | 0) >> 2] | 0) + ((HEAP32[($6 + 28 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
btVector3__dot3_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29_20const($6 + 8 | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, $7 + 64 | 0 | 0, ($7 + 64 | 0) + 16 | 0 | 0, ($7 + 64 | 0) + 32 | 0 | 0);
|
|
$43 = ($7 + 64 | 0) + ((btVector3__maxAxis_28_29_20const($6 + 8 | 0 | 0) | 0) << 4 | 0) | 0;
|
|
$48 = (HEAP32[($6 + 36 | 0) >> 2] | 0) + ((HEAP32[($6 + 28 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = $43;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$156 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $48;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $156;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$50 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $50 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$166 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $48 + $50 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $166;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = (HEAP32[($6 + 28 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleShape__getNumPreferredPenetrationDirections_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 2 | 0;
|
|
}
|
|
|
|
function btTriangleShape__getPreferredPenetrationDirection_28int_2c_20btVector3__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
btTriangleShape__calcNormal_28btVector3__29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0);
|
|
label$1 : {
|
|
if (!(HEAP32[($5 + 8 | 0) >> 2] | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[$5 >> 2] = Math_fround(-1.0);
|
|
btVector3__operator___28float_20const__29_1(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0, $5 | 0) | 0;
|
|
}
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleShape__calcNormal_28btVector3__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $5 = 0, i64toi32_i32$2 = 0, $33 = 0, $35 = 0, $107 = 0, $120 = 0;
|
|
$4 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 60 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 56 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 60 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 24 | 0 | 0, ($5 + 64 | 0) + 16 | 0 | 0, $5 + 64 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 8 | 0 | 0, ($5 + 64 | 0) + 32 | 0 | 0, $5 + 64 | 0 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($4 + 40 | 0 | 0, $4 + 24 | 0 | 0, $4 + 8 | 0 | 0);
|
|
$33 = HEAP32[($4 + 56 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[($4 + 40 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($4 + 44 | 0) >> 2] | 0;
|
|
$107 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $33;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $107;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$35 = 8;
|
|
i64toi32_i32$2 = ($4 + 40 | 0) + $35 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$120 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $33 + $35 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $120;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__normalize_28_29(HEAP32[($4 + 56 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleShape__getNumVertices_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 3 | 0;
|
|
}
|
|
|
|
function btTriangleShape__getNumEdges_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 3 | 0;
|
|
}
|
|
|
|
function btTriangleShape__getEdge_28int_2c_20btVector3__2c_20btVector3__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 108 | 0) >> 2] | 0 | 0]($7, HEAP32[($6 + 8 | 0) >> 2] | 0, HEAP32[($6 + 4 | 0) >> 2] | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 108 | 0) >> 2] | 0 | 0]($7, ((HEAP32[($6 + 8 | 0) >> 2] | 0) + 1 | 0 | 0) % (3 | 0) | 0, HEAP32[$6 >> 2] | 0);
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleShape__getVertex_28int_2c_20btVector3__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $13 = 0, $15 = 0, $47 = 0, $57 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$13 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = ((HEAP32[($5 + 12 | 0) >> 2] | 0) + 64 | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$47 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $13;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $47;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$15 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $15 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$57 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $13 + $15 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $57;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleShape__getNumPlanes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 1 | 0;
|
|
}
|
|
|
|
function btTriangleShape__getPlane_28btVector3__2c_20btVector3__2c_20int_29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 124 | 0) >> 2] | 0 | 0]($7, HEAP32[$6 >> 2] | 0, HEAP32[($6 + 8 | 0) >> 2] | 0, HEAP32[($6 + 4 | 0) >> 2] | 0);
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleShape__isInside_28btVector3_20const__2c_20float_29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $6 = 0, $117 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 128 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 120 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 116 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 112 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 120 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($5 + 96 | 0 | 0) | 0;
|
|
btTriangleShape__calcNormal_28btVector3__29_20const($6 | 0, $5 + 96 | 0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($5 + 116 | 0) >> 2] | 0 | 0, $5 + 96 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 92 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($6 + 64 | 0 | 0, $5 + 96 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 88 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($5 + 92 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 92 | 0) >> 2]) - Math_fround(HEAPF32[($5 + 88 | 0) >> 2]));
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 92 | 0) >> 2]) >= Math_fround(-Math_fround(HEAPF32[($5 + 112 | 0) >> 2])) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if (!(Math_fround(HEAPF32[($5 + 92 | 0) >> 2]) <= Math_fround(HEAPF32[($5 + 112 | 0) >> 2]) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 84 | 0) >> 2] = 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 84 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
btVector3__btVector3_28_29($5 + 68 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 52 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 104 | 0) >> 2] | 0 | 0]($6, HEAP32[($5 + 84 | 0) >> 2] | 0, $5 + 68 | 0, $5 + 52 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 36 | 0 | 0, $5 + 52 | 0 | 0, $5 + 68 | 0 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($5 + 20 | 0 | 0, $5 + 36 | 0 | 0, $5 + 96 | 0 | 0);
|
|
btVector3__normalize_28_29($5 + 20 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($5 + 116 | 0) >> 2] | 0 | 0, $5 + 20 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($5 + 68 | 0 | 0, $5 + 20 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 16 | 0) >> 2]) - Math_fround(HEAPF32[($5 + 12 | 0) >> 2]));
|
|
label$5 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 16 | 0) >> 2]) < Math_fround(-Math_fround(HEAPF32[($5 + 112 | 0) >> 2])) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAP8[($5 + 127 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[($5 + 84 | 0) >> 2] = (HEAP32[($5 + 84 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
HEAP8[($5 + 127 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP8[($5 + 127 | 0) >> 0] = 0 & 1 | 0;
|
|
}
|
|
$117 = (HEAPU8[($5 + 127 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $5 + 128 | 0;
|
|
return $117 | 0;
|
|
}
|
|
|
|
function btTriangleShape__getPlaneEquation_28int_2c_20btVector3__2c_20btVector3__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $7 = 0, $11 = 0, $13 = 0, $46 = 0, $56 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btTriangleShape__calcNormal_28btVector3__29_20const($7 | 0, HEAP32[($6 + 4 | 0) >> 2] | 0 | 0);
|
|
$11 = HEAP32[$6 >> 2] | 0;
|
|
i64toi32_i32$2 = $7 + 64 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$46 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $11;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $46;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$13 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $13 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$56 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11 + $13 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $56;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexConcaveCollisionAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__LocalTriangleSphereCastCallback___LocalTriangleSphereCastCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConvexConcaveCollisionAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__LocalTriangleSphereCastCallback___LocalTriangleSphereCastCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexConcaveCollisionAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__LocalTriangleSphereCastCallback__processTriangle_28btVector3__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $60 = 0;
|
|
$6 = __stack_pointer - 816 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 812 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 808 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 804 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 800 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 812 | 0) >> 2] | 0;
|
|
CProfileSample__CProfileSample_28char_20const__29($6 + 799 | 0 | 0, 81845 | 0) | 0;
|
|
btTransform__btTransform_28_29($6 + 732 | 0 | 0) | 0;
|
|
btTransform__setIdentity_28_29($6 + 732 | 0 | 0);
|
|
btConvexCast__CastResult__CastResult_28_29($6 + 556 | 0 | 0) | 0;
|
|
HEAPF32[($6 + 720 | 0) >> 2] = Math_fround(HEAPF32[($7 + 200 | 0) >> 2]);
|
|
btSphereShape__btSphereShape_28float_29($6 + 496 | 0 | 0, Math_fround(Math_fround(HEAPF32[($7 + 196 | 0) >> 2]))) | 0;
|
|
btTriangleShape__btTriangleShape_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($6 + 384 | 0 | 0, HEAP32[($6 + 808 | 0) >> 2] | 0 | 0, (HEAP32[($6 + 808 | 0) >> 2] | 0) + 16 | 0 | 0, (HEAP32[($6 + 808 | 0) >> 2] | 0) + 32 | 0 | 0) | 0;
|
|
btVoronoiSimplexSolver__btVoronoiSimplexSolver_28_29($6 + 24 | 0 | 0) | 0;
|
|
btSubsimplexConvexCast__btSubsimplexConvexCast_28btConvexShape_20const__2c_20btConvexShape_20const__2c_20btVoronoiSimplexSolver__29($6 + 8 | 0 | 0, $6 + 496 | 0 | 0, $6 + 384 | 0 | 0, $6 + 24 | 0 | 0) | 0;
|
|
$60 = $6 + 732 | 0;
|
|
label$1 : {
|
|
if (!((btSubsimplexConvexCast__calcTimeOfImpact_28btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btConvexCast__CastResult__29($6 + 8 | 0 | 0, $7 + 4 | 0 | 0, $7 + 68 | 0 | 0, $60 | 0, $60 | 0, $6 + 556 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 200 | 0) >> 2]) > Math_fround(HEAPF32[($6 + 720 | 0) >> 2]) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($7 + 200 | 0) >> 2] = Math_fround(HEAPF32[($6 + 720 | 0) >> 2]);
|
|
}
|
|
}
|
|
btSubsimplexConvexCast___btSubsimplexConvexCast_28_29($6 + 8 | 0 | 0) | 0;
|
|
btTriangleShape___btTriangleShape_28_29($6 + 384 | 0 | 0) | 0;
|
|
btSphereShape___btSphereShape_28_29($6 + 496 | 0 | 0) | 0;
|
|
btConvexCast__CastResult___CastResult_28_29($6 + 556 | 0 | 0) | 0;
|
|
CProfileSample___CProfileSample_28_29($6 + 799 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 816 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btConvexConcaveCollisionAlgorithm_cpp() {
|
|
__cxx_global_var_init_15();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_16() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114004 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundCollisionAlgorithm__btCompoundCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20bool_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $9 = 0, $32 = 0, $50 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $3;
|
|
HEAP8[($7 + 11 | 0) >> 0] = $4;
|
|
$9 = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $9;
|
|
btActivatingCollisionAlgorithm__btActivatingCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($9 | 0, HEAP32[($7 + 20 | 0) >> 2] | 0 | 0, HEAP32[($7 + 16 | 0) >> 2] | 0 | 0, HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$9 >> 2] = 94780 + 8 | 0;
|
|
btAlignedObjectArray_btDbvtNode_20const____btAlignedObjectArray_28_29($9 + 8 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btPersistentManifold____btAlignedObjectArray_28_29($9 + 28 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btCollisionAlgorithm____btAlignedObjectArray_28_29($9 + 48 | 0 | 0) | 0;
|
|
HEAP8[($9 + 68 | 0) >> 0] = (HEAPU8[($7 + 11 | 0) >> 0] | 0) & 1 | 0;
|
|
HEAP32[($9 + 72 | 0) >> 2] = HEAP32[((HEAP32[($7 + 20 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
HEAP8[($9 + 76 | 0) >> 0] = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($9 + 68 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$32 = HEAP32[($7 + 12 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
$32 = HEAP32[($7 + 16 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($7 + 4 | 0) >> 2] = $32;
|
|
label$3 : {
|
|
if ((btCollisionShape__isCompound_28_29_20const(btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 4 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
__assert_fail(87719 | 0, 73354 | 0, 36 | 0, 77182 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 4 | 0) >> 2] | 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $9, wasm2js_i32$1 = btCompoundShape__getUpdateRevision_28_29_20const(HEAP32[$7 >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 80 | 0) >> 2] = wasm2js_i32$1;
|
|
btCompoundCollisionAlgorithm__preallocateChildAlgorithms_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($9 | 0, HEAP32[($7 + 16 | 0) >> 2] | 0 | 0, HEAP32[($7 + 12 | 0) >> 2] | 0 | 0);
|
|
$50 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return $50 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionAlgorithm____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btCollisionAlgorithm__2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btCollisionAlgorithm____init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCompoundShape__getUpdateRevision_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 76 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btCompoundCollisionAlgorithm__preallocateChildAlgorithms_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $11 = 0, $18 = 0, $76 = 0, $36 = 0, $85 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 108 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 104 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 100 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 108 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($6 + 68 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$11 = HEAP32[($5 + 100 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
$11 = HEAP32[($5 + 104 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($5 + 96 | 0) >> 2] = $11;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAPU8[($6 + 68 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$18 = HEAP32[($5 + 104 | 0) >> 2] | 0;
|
|
break label$3;
|
|
}
|
|
$18 = HEAP32[($5 + 100 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($5 + 92 | 0) >> 2] = $18;
|
|
label$5 : {
|
|
if ((btCollisionShape__isCompound_28_29_20const(btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($5 + 96 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) & 1 | 0) {
|
|
break label$5
|
|
}
|
|
__assert_fail(87719 | 0, 73354 | 0, 49 | 0, 69793 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($5 + 96 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 88 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btCompoundShape__getNumChildShapes_28_29_20const(HEAP32[($5 + 88 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 84 | 0) >> 2] = wasm2js_i32$1;
|
|
$36 = HEAP32[($5 + 84 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 76 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btCollisionAlgorithm____resize_28int_2c_20btCollisionAlgorithm__20const__29($6 + 48 | 0 | 0, $36 | 0, $5 + 76 | 0 | 0);
|
|
HEAP32[($5 + 80 | 0) >> 2] = 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($5 + 80 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 84 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
label$8 : {
|
|
label$9 : {
|
|
if (!((btCompoundShape__getDynamicAabbTree_28_29_20const(HEAP32[($5 + 88 | 0) >> 2] | 0 | 0) | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btCollisionAlgorithm____operator_5b_5d_28int_29($6 + 48 | 0 | 0, HEAP32[($5 + 80 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
break label$8;
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btCompoundShape__getChildShape_28int_29_20const(HEAP32[($5 + 88 | 0) >> 2] | 0 | 0, HEAP32[($5 + 80 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 72 | 0) >> 2] = wasm2js_i32$1;
|
|
btCollisionObjectWrapper__btCollisionObjectWrapper_28btCollisionObjectWrapper_20const__2c_20btCollisionShape_20const__2c_20btCollisionObject_20const__2c_20btTransform_20const__2c_20int_2c_20int_29($5 + 48 | 0 | 0, HEAP32[($5 + 96 | 0) >> 2] | 0 | 0, HEAP32[($5 + 72 | 0) >> 2] | 0 | 0, btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($5 + 96 | 0) >> 2] | 0 | 0) | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($5 + 96 | 0) >> 2] | 0 | 0) | 0 | 0, -1 | 0, HEAP32[($5 + 80 | 0) >> 2] | 0 | 0) | 0;
|
|
$76 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
$85 = FUNCTION_TABLE[HEAP32[((HEAP32[$76 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($76, $5 + 48 | 0, HEAP32[($5 + 92 | 0) >> 2] | 0, HEAP32[($6 + 72 | 0) >> 2] | 0, 1) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btCollisionAlgorithm____operator_5b_5d_28int_29($6 + 48 | 0 | 0, HEAP32[($5 + 80 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $85), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btCollisionAlgorithm____btAlignedObjectArray_28_29($5 + 28 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btCollisionAlgorithm____btAlignedObjectArray_28_29($5 + 8 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btCollisionAlgorithm_____btAlignedObjectArray_28_29($5 + 8 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btCollisionAlgorithm_____btAlignedObjectArray_28_29($5 + 28 | 0 | 0) | 0;
|
|
}
|
|
HEAP32[($5 + 80 | 0) >> 2] = (HEAP32[($5 + 80 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
__stack_pointer = $5 + 112 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btCollisionAlgorithm__2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionAlgorithm____init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionAlgorithm____resize_28int_2c_20btCollisionAlgorithm__20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btCollisionAlgorithm____size_28_29_20const($6 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) > (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btAlignedObjectArray_btCollisionAlgorithm____reserve_28int_29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[(HEAP32[($5 + 20 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionAlgorithm____operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btCollisionAlgorithm____size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionAlgorithm_____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btCollisionAlgorithm____clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionAlgorithm____size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionAlgorithm____reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btCollisionAlgorithm____capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btCollisionAlgorithm____allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btCollisionAlgorithm____copy_28int_2c_20int_2c_20btCollisionAlgorithm___29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btCollisionAlgorithm____size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btCollisionAlgorithm____destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btCollisionAlgorithm____size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btCollisionAlgorithm____deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionAlgorithm____clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btCollisionAlgorithm____destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btCollisionAlgorithm____size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btCollisionAlgorithm____deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btCollisionAlgorithm____init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundCollisionAlgorithm__removeChildAlgorithms_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $31 = 0, $34 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btAlignedObjectArray_btCollisionAlgorithm____size_28_29_20const($4 + 48 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($3 + 4 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) < (HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$3 : {
|
|
if (!((HEAP32[(btAlignedObjectArray_btCollisionAlgorithm____operator_5b_5d_28int_29($4 + 48 | 0 | 0, HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$31 = HEAP32[(btAlignedObjectArray_btCollisionAlgorithm____operator_5b_5d_28int_29($4 + 48 | 0 | 0, HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$31 >> 2] | 0) >> 2] | 0 | 0]($31) | 0;
|
|
$34 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
((wasm2js_i32$1 = $34, wasm2js_i32$2 = HEAP32[(btAlignedObjectArray_btCollisionAlgorithm____operator_5b_5d_28int_29($4 + 48 | 0 | 0, HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$34 >> 2] | 0) + 60 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0);
|
|
}
|
|
HEAP32[($3 + 4 | 0) >> 2] = (HEAP32[($3 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundCollisionAlgorithm___btCompoundCollisionAlgorithm_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 94780 + 8 | 0;
|
|
btCompoundCollisionAlgorithm__removeChildAlgorithms_28_29($4 | 0);
|
|
btAlignedObjectArray_btCollisionAlgorithm_____btAlignedObjectArray_28_29($4 + 48 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btPersistentManifold_____btAlignedObjectArray_28_29($4 + 28 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btDbvtNode_20const_____btAlignedObjectArray_28_29($4 + 8 | 0 | 0) | 0;
|
|
btActivatingCollisionAlgorithm___btActivatingCollisionAlgorithm_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCompoundCollisionAlgorithm___btCompoundCollisionAlgorithm_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[668 | 0]($4) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundCollisionAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0, $13 = 0, $20 = 0, $96 = 0, $175 = 0, $320 = 0, $333 = 0, $363 = 0, $366 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0;
|
|
$7 = __stack_pointer - 640 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 636 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 632 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 628 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 624 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 620 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 636 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($8 + 68 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$13 = HEAP32[($7 + 628 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
$13 = HEAP32[($7 + 632 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($7 + 616 | 0) >> 2] = $13;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAPU8[($8 + 68 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$20 = HEAP32[($7 + 632 | 0) >> 2] | 0;
|
|
break label$3;
|
|
}
|
|
$20 = HEAP32[($7 + 628 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($7 + 612 | 0) >> 2] = $20;
|
|
label$5 : {
|
|
if ((btCollisionShape__isCompound_28_29_20const(btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 616 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) & 1 | 0) {
|
|
break label$5
|
|
}
|
|
__assert_fail(87719 | 0, 73354 | 0, 242 | 0, 76857 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 616 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 608 | 0) >> 2] = wasm2js_i32$1;
|
|
label$6 : {
|
|
if (!((btCompoundShape__getUpdateRevision_28_29_20const(HEAP32[($7 + 608 | 0) >> 2] | 0 | 0) | 0 | 0) != (HEAP32[($8 + 80 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
btCompoundCollisionAlgorithm__removeChildAlgorithms_28_29($8 | 0);
|
|
btCompoundCollisionAlgorithm__preallocateChildAlgorithms_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($8 | 0, HEAP32[($7 + 632 | 0) >> 2] | 0 | 0, HEAP32[($7 + 628 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = btCompoundShape__getUpdateRevision_28_29_20const(HEAP32[($7 + 608 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 80 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
label$7 : {
|
|
label$8 : {
|
|
if (btAlignedObjectArray_btCollisionAlgorithm____size_28_29_20const($8 + 48 | 0 | 0) | 0) {
|
|
break label$8
|
|
}
|
|
break label$7;
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCompoundShape__getDynamicAabbTree_28_29_20const(HEAP32[($7 + 608 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 604 | 0) >> 2] = wasm2js_i32$1;
|
|
btCompoundLeafCallback__btCompoundLeafCallback_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcher__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__2c_20btCollisionAlgorithm___2c_20btPersistentManifold__29($7 + 572 | 0 | 0, HEAP32[($7 + 616 | 0) >> 2] | 0 | 0, HEAP32[($7 + 612 | 0) >> 2] | 0 | 0, HEAP32[($8 + 4 | 0) >> 2] | 0 | 0, HEAP32[($7 + 624 | 0) >> 2] | 0 | 0, HEAP32[($7 + 620 | 0) >> 2] | 0 | 0, btAlignedObjectArray_btCollisionAlgorithm____operator_5b_5d_28int_29($8 + 48 | 0 | 0, 0 | 0) | 0 | 0, HEAP32[($8 + 72 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($7 + 564 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btPersistentManifold____resize_28int_2c_20btPersistentManifold__20const__29($8 + 28 | 0 | 0, 0 | 0, $7 + 564 | 0 | 0);
|
|
HEAP32[($7 + 568 | 0) >> 2] = 0;
|
|
label$9 : {
|
|
label$10 : while (1) {
|
|
if (!((HEAP32[($7 + 568 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btCollisionAlgorithm____size_28_29_20const($8 + 48 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
label$11 : {
|
|
if (!((HEAP32[(btAlignedObjectArray_btCollisionAlgorithm____operator_5b_5d_28int_29($8 + 48 | 0 | 0, HEAP32[($7 + 568 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
$96 = HEAP32[(btAlignedObjectArray_btCollisionAlgorithm____operator_5b_5d_28int_29($8 + 48 | 0 | 0, HEAP32[($7 + 568 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$96 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($96, $8 + 28 | 0);
|
|
HEAP32[($7 + 560 | 0) >> 2] = 0;
|
|
label$12 : {
|
|
label$13 : while (1) {
|
|
if (!((HEAP32[($7 + 560 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btPersistentManifold____size_28_29_20const($8 + 28 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
label$14 : {
|
|
if (!(btPersistentManifold__getNumContacts_28_29_20const(HEAP32[(btAlignedObjectArray_btPersistentManifold____operator_5b_5d_28int_29($8 + 28 | 0 | 0, HEAP32[($7 + 560 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) | 0)) {
|
|
break label$14
|
|
}
|
|
btManifoldResult__setPersistentManifold_28btPersistentManifold__29(HEAP32[($7 + 620 | 0) >> 2] | 0 | 0, HEAP32[(btAlignedObjectArray_btPersistentManifold____operator_5b_5d_28int_29($8 + 28 | 0 | 0, HEAP32[($7 + 560 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0);
|
|
btManifoldResult__refreshContactPoints_28_29(HEAP32[($7 + 620 | 0) >> 2] | 0 | 0);
|
|
btManifoldResult__setPersistentManifold_28btPersistentManifold__29(HEAP32[($7 + 620 | 0) >> 2] | 0 | 0, 0 | 0);
|
|
}
|
|
HEAP32[($7 + 560 | 0) >> 2] = (HEAP32[($7 + 560 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$13;
|
|
};
|
|
}
|
|
HEAP32[($7 + 556 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btPersistentManifold____resize_28int_2c_20btPersistentManifold__20const__29($8 + 28 | 0 | 0, 0 | 0, $7 + 556 | 0 | 0);
|
|
}
|
|
HEAP32[($7 + 568 | 0) >> 2] = (HEAP32[($7 + 568 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$10;
|
|
};
|
|
}
|
|
label$15 : {
|
|
label$16 : {
|
|
if (!((HEAP32[($7 + 604 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
btVector3__btVector3_28_29($7 + 540 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($7 + 524 | 0 | 0) | 0;
|
|
btTransform__btTransform_28_29($7 + 460 | 0 | 0) | 0;
|
|
btTransform__inverse_28_29_20const($7 + 332 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 616 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29_20const($7 + 396 | 0 | 0, $7 + 332 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 612 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29($7 + 460 | 0 | 0, $7 + 396 | 0 | 0) | 0;
|
|
$175 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 612 | 0) >> 2] | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$175 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($175, $7 + 460 | 0, $7 + 540 | 0, $7 + 524 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 316 | 0 | 0, (HEAP32[($7 + 620 | 0) >> 2] | 0) + 32 | 0 | 0, (HEAP32[($7 + 620 | 0) >> 2] | 0) + 32 | 0 | 0, (HEAP32[($7 + 620 | 0) >> 2] | 0) + 32 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29($7 + 540 | 0 | 0, $7 + 316 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($7 + 524 | 0 | 0, $7 + 316 | 0 | 0) | 0;
|
|
btDbvtAabbMm__FromMM_28btVector3_20const__2c_20btVector3_20const__29($7 + 284 | 0 | 0, $7 + 540 | 0 | 0, $7 + 524 | 0 | 0);
|
|
btDbvt__collideTVNoStackAlloc_28btDbvtNode_20const__2c_20btDbvtAabbMm_20const__2c_20btAlignedObjectArray_btDbvtNode_20const____2c_20btDbvt__ICollide__29_20const(HEAP32[($7 + 604 | 0) >> 2] | 0 | 0, HEAP32[(HEAP32[($7 + 604 | 0) >> 2] | 0) >> 2] | 0 | 0, $7 + 284 | 0 | 0, $8 + 8 | 0 | 0, $7 + 572 | 0 | 0);
|
|
break label$15;
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btAlignedObjectArray_btCollisionAlgorithm____size_28_29_20const($8 + 48 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 280 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($7 + 276 | 0) >> 2] = 0;
|
|
label$17 : {
|
|
label$18 : while (1) {
|
|
if (!((HEAP32[($7 + 276 | 0) >> 2] | 0 | 0) < (HEAP32[($7 + 280 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
btCompoundLeafCallback__ProcessChildShape_28btCollisionShape_20const__2c_20int_29($7 + 572 | 0 | 0, btCompoundShape__getChildShape_28int_29_20const(HEAP32[($7 + 608 | 0) >> 2] | 0 | 0, HEAP32[($7 + 276 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($7 + 276 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($7 + 276 | 0) >> 2] = (HEAP32[($7 + 276 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$18;
|
|
};
|
|
}
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btAlignedObjectArray_btCollisionAlgorithm____size_28_29_20const($8 + 48 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 272 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($7 + 264 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btPersistentManifold____resize_28int_2c_20btPersistentManifold__20const__29($8 + 28 | 0 | 0, 0 | 0, $7 + 264 | 0 | 0);
|
|
HEAP32[($7 + 260 | 0) >> 2] = 0;
|
|
btTransform__btTransform_28_29($7 + 196 | 0 | 0) | 0;
|
|
btTransform__btTransform_28_29($7 + 132 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($7 + 116 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($7 + 100 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($7 + 84 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($7 + 68 | 0 | 0) | 0;
|
|
HEAP32[($7 + 268 | 0) >> 2] = 0;
|
|
label$19 : {
|
|
label$20 : while (1) {
|
|
if (!((HEAP32[($7 + 268 | 0) >> 2] | 0 | 0) < (HEAP32[($7 + 272 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
label$21 : {
|
|
if (!((HEAP32[(btAlignedObjectArray_btCollisionAlgorithm____operator_5b_5d_28int_29($8 + 48 | 0 | 0, HEAP32[($7 + 268 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$21
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCompoundShape__getChildShape_28int_29_20const(HEAP32[($7 + 608 | 0) >> 2] | 0 | 0, HEAP32[($7 + 268 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 260 | 0) >> 2] = wasm2js_i32$1;
|
|
btTransform__operator__28btTransform_20const__29($7 + 196 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 616 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCompoundShape__getChildTransform_28int_29_20const(HEAP32[($7 + 608 | 0) >> 2] | 0 | 0, HEAP32[($7 + 268 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 64 | 0) >> 2] = wasm2js_i32$1;
|
|
btTransform__operator__28btTransform_20const__29_20const($7 | 0, $7 + 196 | 0 | 0, HEAP32[($7 + 64 | 0) >> 2] | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29($7 + 132 | 0 | 0, $7 | 0) | 0;
|
|
$320 = HEAP32[($7 + 260 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$320 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($320, $7 + 132 | 0, $7 + 116 | 0, $7 + 100 | 0);
|
|
$333 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 612 | 0) >> 2] | 0 | 0) | 0;
|
|
((((wasm2js_i32$1 = $333, wasm2js_i32$2 = btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 612 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$3 = $7 + 84 | 0), wasm2js_i32$4 = $7 + 68 | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$333 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, wasm2js_i32$3 | 0, wasm2js_i32$4 | 0);
|
|
label$22 : {
|
|
if ((TestAabbAgainstAabb2_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($7 + 116 | 0 | 0, $7 + 100 | 0 | 0, $7 + 84 | 0 | 0, $7 + 68 | 0 | 0) | 0) & 1 | 0) {
|
|
break label$22
|
|
}
|
|
$363 = HEAP32[(btAlignedObjectArray_btCollisionAlgorithm____operator_5b_5d_28int_29($8 + 48 | 0 | 0, HEAP32[($7 + 268 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$363 >> 2] | 0) >> 2] | 0 | 0]($363) | 0;
|
|
$366 = HEAP32[($8 + 4 | 0) >> 2] | 0;
|
|
((wasm2js_i32$4 = $366, wasm2js_i32$3 = HEAP32[(btAlignedObjectArray_btCollisionAlgorithm____operator_5b_5d_28int_29($8 + 48 | 0 | 0, HEAP32[($7 + 268 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$366 >> 2] | 0) + 60 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$4 | 0, wasm2js_i32$3 | 0);
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btCollisionAlgorithm____operator_5b_5d_28int_29($8 + 48 | 0 | 0, HEAP32[($7 + 268 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$3 = 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$3;
|
|
}
|
|
}
|
|
HEAP32[($7 + 268 | 0) >> 2] = (HEAP32[($7 + 268 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$20;
|
|
};
|
|
}
|
|
btCompoundLeafCallback___btCompoundLeafCallback_28_29($7 + 572 | 0 | 0) | 0;
|
|
}
|
|
__stack_pointer = $7 + 640 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundLeafCallback__btCompoundLeafCallback_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcher__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__2c_20btCollisionAlgorithm___2c_20btPersistentManifold__29($0, $1, $2, $3, $4, $5, $6, $7) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
var $10 = 0, $11 = 0;
|
|
$10 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $10;
|
|
HEAP32[($10 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($10 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($10 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($10 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($10 + 12 | 0) >> 2] = $4;
|
|
HEAP32[($10 + 8 | 0) >> 2] = $5;
|
|
HEAP32[($10 + 4 | 0) >> 2] = $6;
|
|
HEAP32[$10 >> 2] = $7;
|
|
$11 = HEAP32[($10 + 28 | 0) >> 2] | 0;
|
|
btDbvt__ICollide__ICollide_28_29($11 | 0) | 0;
|
|
HEAP32[$11 >> 2] = 94852 + 8 | 0;
|
|
HEAP32[($11 + 4 | 0) >> 2] = HEAP32[($10 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($11 + 8 | 0) >> 2] = HEAP32[($10 + 20 | 0) >> 2] | 0;
|
|
HEAP32[($11 + 12 | 0) >> 2] = HEAP32[($10 + 16 | 0) >> 2] | 0;
|
|
HEAP32[($11 + 16 | 0) >> 2] = HEAP32[($10 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($11 + 20 | 0) >> 2] = HEAP32[($10 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($11 + 24 | 0) >> 2] = HEAP32[($10 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($11 + 28 | 0) >> 2] = HEAP32[$10 >> 2] | 0;
|
|
__stack_pointer = $10 + 32 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btPersistentManifold____resize_28int_2c_20btPersistentManifold__20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btPersistentManifold____size_28_29_20const($6 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) > (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btAlignedObjectArray_btPersistentManifold____reserve_28int_29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[(HEAP32[($5 + 20 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDbvt__collideTVNoStackAlloc_28btDbvtNode_20const__2c_20btDbvtAabbMm_20const__2c_20btAlignedObjectArray_btDbvtNode_20const____2c_20btDbvt__ICollide__29_20const($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $15 = 0, $16 = 0, $22 = 0, $28 = 0, $76 = 0, $131 = 0, $144 = 0, $157 = 0, $161 = 0, $35 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$7 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 60 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 56 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 52 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 48 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 44 | 0) >> 2] = $4;
|
|
label$1 : {
|
|
if (!((HEAP32[($7 + 56 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$15 = HEAP32[($7 + 52 | 0) >> 2] | 0;
|
|
$16 = 24;
|
|
i64toi32_i32$2 = $15 + $16 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$131 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($7 + 8 | 0) + $16 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $131;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$22 = 16;
|
|
i64toi32_i32$2 = $15 + $22 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$144 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($7 + 8 | 0) + $22 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $144;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$28 = 8;
|
|
i64toi32_i32$2 = $15 + $28 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$157 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($7 + 8 | 0) + $28 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $157;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $15;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$161 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $7;
|
|
HEAP32[($7 + 8 | 0) >> 2] = $161;
|
|
HEAP32[($7 + 12 | 0) >> 2] = i64toi32_i32$0;
|
|
$35 = HEAP32[($7 + 48 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btDbvtNode_20const____resize_28int_2c_20btDbvtNode_20const__20const__29($35 | 0, 0 | 0, $7 + 4 | 0 | 0);
|
|
btAlignedObjectArray_btDbvtNode_20const____reserve_28int_29(HEAP32[($7 + 48 | 0) >> 2] | 0 | 0, 64 | 0);
|
|
btAlignedObjectArray_btDbvtNode_20const____push_back_28btDbvtNode_20const__20const__29(HEAP32[($7 + 48 | 0) >> 2] | 0 | 0, $7 + 56 | 0 | 0);
|
|
label$2 : while (1) {
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btDbvtNode_20const____operator_5b_5d_28int_29(HEAP32[($7 + 48 | 0) >> 2] | 0 | 0, (btAlignedObjectArray_btDbvtNode_20const____size_28_29_20const(HEAP32[($7 + 48 | 0) >> 2] | 0 | 0) | 0) - 1 | 0 | 0) | 0) >> 2] | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btDbvtNode_20const____pop_back_28_29(HEAP32[($7 + 48 | 0) >> 2] | 0 | 0);
|
|
label$3 : {
|
|
if (!((Intersect_28btDbvtAabbMm_20const__2c_20btDbvtAabbMm_20const__29(HEAP32[$7 >> 2] | 0 | 0, $7 + 8 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!((btDbvtNode__isinternal_28_29_20const(HEAP32[$7 >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btAlignedObjectArray_btDbvtNode_20const____push_back_28btDbvtNode_20const__20const__29(HEAP32[($7 + 48 | 0) >> 2] | 0 | 0, (HEAP32[$7 >> 2] | 0) + 36 | 0 | 0);
|
|
btAlignedObjectArray_btDbvtNode_20const____push_back_28btDbvtNode_20const__20const__29(HEAP32[($7 + 48 | 0) >> 2] | 0 | 0, ((HEAP32[$7 >> 2] | 0) + 36 | 0) + 4 | 0 | 0);
|
|
break label$4;
|
|
}
|
|
$76 = HEAP32[($7 + 44 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$76 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($76, HEAP32[$7 >> 2] | 0);
|
|
}
|
|
}
|
|
if ((btAlignedObjectArray_btDbvtNode_20const____size_28_29_20const(HEAP32[($7 + 48 | 0) >> 2] | 0 | 0) | 0 | 0) > (0 | 0) & 1 | 0) {
|
|
continue label$2
|
|
}
|
|
break label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $7 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundLeafCallback__ProcessChildShape_28btCollisionShape_20const__2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $53 = 0, $96 = 0, $158 = 0, $180 = 0, $217 = 0, $228 = 0, $233 = 0, $116 = 0, $189 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0;
|
|
$5 = __stack_pointer - 272 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 268 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 264 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 260 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 268 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($5 + 260 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85814 | 0, 73354 | 0, 125 | 0, 81712 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($6 + 4 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 256 | 0) >> 2] = wasm2js_i32$1;
|
|
label$2 : {
|
|
if ((HEAP32[($5 + 260 | 0) >> 2] | 0 | 0) < (btCompoundShape__getNumChildShapes_28_29_20const(HEAP32[($5 + 256 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87116 | 0, 73354 | 0, 127 | 0, 81712 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
btTransform__btTransform_28btTransform_20const__29($5 + 192 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($6 + 4 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btCompoundShape__getChildTransform_28int_29_20const(HEAP32[($5 + 256 | 0) >> 2] | 0 | 0, HEAP32[($5 + 260 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 188 | 0) >> 2] = wasm2js_i32$1;
|
|
btTransform__operator__28btTransform_20const__29_20const($5 + 124 | 0 | 0, $5 + 192 | 0 | 0, HEAP32[($5 + 188 | 0) >> 2] | 0 | 0);
|
|
btVector3__btVector3_28_29($5 + 108 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 92 | 0 | 0) | 0;
|
|
$53 = HEAP32[($5 + 264 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$53 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($53, $5 + 124 | 0, $5 + 108 | 0, $5 + 92 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 76 | 0 | 0, (HEAP32[($6 + 20 | 0) >> 2] | 0) + 32 | 0 | 0, (HEAP32[($6 + 20 | 0) >> 2] | 0) + 32 | 0 | 0, (HEAP32[($6 + 20 | 0) >> 2] | 0) + 32 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29($5 + 108 | 0 | 0, $5 + 76 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($5 + 92 | 0 | 0, $5 + 76 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 60 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 44 | 0 | 0) | 0;
|
|
$96 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
((((wasm2js_i32$1 = $96, wasm2js_i32$2 = btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$3 = $5 + 60 | 0), wasm2js_i32$4 = $5 + 44 | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$96 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, wasm2js_i32$3 | 0, wasm2js_i32$4 | 0);
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAP32[(0 + 114008 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$116 = HEAP32[(0 + 114008 | 0) >> 2] | 0;
|
|
label$5 : {
|
|
if ((FUNCTION_TABLE[$116 | 0](btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0, HEAP32[($5 + 264 | 0) >> 2] | 0) | 0) & 1 | 0) {
|
|
break label$5
|
|
}
|
|
break label$3;
|
|
}
|
|
}
|
|
if (!((TestAabbAgainstAabb2_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($5 + 108 | 0 | 0, $5 + 92 | 0 | 0, $5 + 60 | 0 | 0, $5 + 44 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
btCollisionObjectWrapper__btCollisionObjectWrapper_28btCollisionObjectWrapper_20const__2c_20btCollisionShape_20const__2c_20btCollisionObject_20const__2c_20btTransform_20const__2c_20int_2c_20int_29($5 + 20 | 0 | 0, HEAP32[($6 + 4 | 0) >> 2] | 0 | 0, HEAP32[($5 + 264 | 0) >> 2] | 0 | 0, btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($6 + 4 | 0) >> 2] | 0 | 0) | 0 | 0, $5 + 124 | 0 | 0, -1 | 0, HEAP32[($5 + 260 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($5 + 16 | 0) >> 2] = 0;
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!(Math_fround(HEAPF32[((HEAP32[($6 + 20 | 0) >> 2] | 0) + 32 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
$158 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$4 = FUNCTION_TABLE[HEAP32[((HEAP32[$158 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($158, $5 + 20 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0, 0, 2) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$4;
|
|
break label$6;
|
|
}
|
|
label$8 : {
|
|
if ((HEAP32[((HEAP32[($6 + 24 | 0) >> 2] | 0) + ((HEAP32[($5 + 260 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$8
|
|
}
|
|
$180 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
$189 = FUNCTION_TABLE[HEAP32[((HEAP32[$180 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($180, $5 + 20 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0, HEAP32[($6 + 28 | 0) >> 2] | 0, 1) | 0;
|
|
HEAP32[((HEAP32[($6 + 24 | 0) >> 2] | 0) + ((HEAP32[($5 + 260 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = $189;
|
|
}
|
|
HEAP32[($5 + 16 | 0) >> 2] = HEAP32[((HEAP32[($6 + 24 | 0) >> 2] | 0) + ((HEAP32[($5 + 260 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = 0;
|
|
label$9 : {
|
|
label$10 : {
|
|
if (!((btManifoldResult__getBody0Internal_28_29_20const(HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0 | 0) == (btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($6 + 4 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$4 = btManifoldResult__getBody0Wrap_28_29_20const(HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$4;
|
|
btManifoldResult__setBody0Wrap_28btCollisionObjectWrapper_20const__29(HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, $5 + 20 | 0 | 0);
|
|
$217 = HEAP32[($6 + 20 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$217 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($217, -1, HEAP32[($5 + 260 | 0) >> 2] | 0);
|
|
break label$9;
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$4 = btManifoldResult__getBody1Wrap_28_29_20const(HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$4;
|
|
btManifoldResult__setBody1Wrap_28btCollisionObjectWrapper_20const__29(HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, $5 + 20 | 0 | 0);
|
|
$228 = HEAP32[($6 + 20 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$228 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($228, -1, HEAP32[($5 + 260 | 0) >> 2] | 0);
|
|
}
|
|
$233 = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$233 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($233, $5 + 20 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0, HEAP32[($6 + 16 | 0) >> 2] | 0, HEAP32[($6 + 20 | 0) >> 2] | 0);
|
|
label$11 : {
|
|
label$12 : {
|
|
if (!((btManifoldResult__getBody0Internal_28_29_20const(HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0 | 0) == (btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($6 + 4 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
btManifoldResult__setBody0Wrap_28btCollisionObjectWrapper_20const__29(HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0);
|
|
break label$11;
|
|
}
|
|
btManifoldResult__setBody1Wrap_28btCollisionObjectWrapper_20const__29(HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
}
|
|
__stack_pointer = $5 + 272 | 0;
|
|
return;
|
|
}
|
|
|
|
function TestAabbAgainstAabb2_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $27 = 0, $51 = 0, $75 = 0, $82 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
HEAP8[($6 + 15 | 0) >> 0] = 1;
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : {
|
|
if (Math_fround(HEAPF32[(btVector3__getX_28_29_20const(HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) > Math_fround(HEAPF32[(btVector3__getX_28_29_20const(HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) | 0) >> 2]) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
if (!(Math_fround(HEAPF32[(btVector3__getX_28_29_20const(HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2]) < Math_fround(HEAPF32[(btVector3__getX_28_29_20const(HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
}
|
|
$27 = 0;
|
|
break label$1;
|
|
}
|
|
$27 = HEAPU8[($6 + 15 | 0) >> 0] | 0;
|
|
}
|
|
HEAP8[($6 + 15 | 0) >> 0] = $27 & 1 | 0;
|
|
label$4 : {
|
|
label$5 : {
|
|
label$6 : {
|
|
if (Math_fround(HEAPF32[(btVector3__getZ_28_29_20const(HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) > Math_fround(HEAPF32[(btVector3__getZ_28_29_20const(HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) | 0) >> 2]) & 1 | 0) {
|
|
break label$6
|
|
}
|
|
if (!(Math_fround(HEAPF32[(btVector3__getZ_28_29_20const(HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2]) < Math_fround(HEAPF32[(btVector3__getZ_28_29_20const(HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
}
|
|
$51 = 0;
|
|
break label$4;
|
|
}
|
|
$51 = HEAPU8[($6 + 15 | 0) >> 0] | 0;
|
|
}
|
|
HEAP8[($6 + 15 | 0) >> 0] = $51 & 1 | 0;
|
|
label$7 : {
|
|
label$8 : {
|
|
label$9 : {
|
|
if (Math_fround(HEAPF32[(btVector3__getY_28_29_20const(HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) > Math_fround(HEAPF32[(btVector3__getY_28_29_20const(HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) | 0) >> 2]) & 1 | 0) {
|
|
break label$9
|
|
}
|
|
if (!(Math_fround(HEAPF32[(btVector3__getY_28_29_20const(HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2]) < Math_fround(HEAPF32[(btVector3__getY_28_29_20const(HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
}
|
|
$75 = 0;
|
|
break label$7;
|
|
}
|
|
$75 = HEAPU8[($6 + 15 | 0) >> 0] | 0;
|
|
}
|
|
HEAP8[($6 + 15 | 0) >> 0] = $75 & 1 | 0;
|
|
$82 = (HEAPU8[($6 + 15 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return $82 | 0;
|
|
}
|
|
|
|
function btCompoundLeafCallback___btCompoundLeafCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btDbvt__ICollide___ICollide_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCompoundCollisionAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0;
|
|
$7 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 108 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 104 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 100 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 96 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 92 | 0) >> 2] = $4;
|
|
__assert_fail(86177 | 0, 73354 | 0, 353 | 0, 68931 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btCompoundCollisionAlgorithm__getAllContactManifolds_28btAlignedObjectArray_btPersistentManifold____29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $31 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btCollisionAlgorithm____size_28_29_20const($5 + 48 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$3 : {
|
|
if (!((HEAP32[(btAlignedObjectArray_btCollisionAlgorithm____operator_5b_5d_28int_29($5 + 48 | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$31 = HEAP32[(btAlignedObjectArray_btCollisionAlgorithm____operator_5b_5d_28int_29($5 + 48 | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$31 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($31, HEAP32[($4 + 8 | 0) >> 2] | 0);
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundLeafCallback___btCompoundLeafCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCompoundLeafCallback___btCompoundLeafCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundLeafCallback__Process_28btDbvtNode_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = HEAP32[((HEAP32[($4 + 24 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btCompoundShape__getChildShape_28int_29_20const(HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, HEAP32[($4 + 20 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
btCompoundLeafCallback__ProcessChildShape_28btCollisionShape_20const__2c_20int_29($5 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, HEAP32[($4 + 20 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionAlgorithm____destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionAlgorithm____deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btCollisionAlgorithm__2c_2016u___deallocate_28btCollisionAlgorithm___29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btCollisionAlgorithm__2c_2016u___deallocate_28btCollisionAlgorithm___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionAlgorithm____capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionAlgorithm____allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btCollisionAlgorithm__2c_2016u___allocate_28int_2c_20btCollisionAlgorithm__20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionAlgorithm____copy_28int_2c_20int_2c_20btCollisionAlgorithm___29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[((HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[((HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btCollisionAlgorithm__2c_2016u___allocate_28int_2c_20btCollisionAlgorithm__20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btCompoundCollisionAlgorithm_cpp() {
|
|
__cxx_global_var_init_16();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_17() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114012 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundCompoundCollisionAlgorithm__btCompoundCompoundCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20bool_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $9 = 0, $24 = 0, $53 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$7 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 40 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 36 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 32 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $3;
|
|
HEAP8[($7 + 27 | 0) >> 0] = $4;
|
|
$9 = HEAP32[($7 + 40 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 44 | 0) >> 2] = $9;
|
|
btCompoundCollisionAlgorithm__btCompoundCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20bool_29($9 | 0, HEAP32[($7 + 36 | 0) >> 2] | 0 | 0, HEAP32[($7 + 32 | 0) >> 2] | 0 | 0, HEAP32[($7 + 28 | 0) >> 2] | 0 | 0, (HEAPU8[($7 + 27 | 0) >> 0] | 0) & 1 | 0 | 0) | 0;
|
|
HEAP32[$9 >> 2] = 94928 + 8 | 0;
|
|
btAlignedObjectArray_btSimplePair___btAlignedObjectArray_28_29($9 + 88 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(64 | 0, 16 | 0) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
$24 = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
btHashedSimplePairCache__btHashedSimplePairCache_28_29($24 | 0) | 0;
|
|
HEAP32[($9 + 84 | 0) >> 2] = $24;
|
|
HEAP32[($7 + 16 | 0) >> 2] = HEAP32[($7 + 32 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((btCollisionShape__isCompound_28_29_20const(btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 16 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(87812 | 0, 73490 | 0, 40 | 0, 77211 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($7 + 12 | 0) >> 2] = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
label$2 : {
|
|
if ((btCollisionShape__isCompound_28_29_20const(btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87765 | 0, 73490 | 0, 43 | 0, 77211 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 16 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $9, wasm2js_i32$1 = btCompoundShape__getUpdateRevision_28_29_20const(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 108 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $9, wasm2js_i32$1 = btCompoundShape__getUpdateRevision_28_29_20const(HEAP32[($7 + 4 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 112 | 0) >> 2] = wasm2js_i32$1;
|
|
$53 = HEAP32[($7 + 44 | 0) >> 2] | 0;
|
|
__stack_pointer = $7 + 48 | 0;
|
|
return $53 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSimplePair___btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btSimplePair_2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btSimplePair___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_btSimplePair_2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSimplePair___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundCompoundCollisionAlgorithm___btCompoundCompoundCollisionAlgorithm_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0, $8 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 94928 + 8 | 0;
|
|
btCompoundCompoundCollisionAlgorithm__removeChildAlgorithms_28_29($4 | 0);
|
|
$8 = HEAP32[($4 + 84 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$8 >> 2] | 0) >> 2] | 0 | 0]($8) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 84 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btSimplePair____btAlignedObjectArray_28_29($4 + 88 | 0 | 0) | 0;
|
|
btCompoundCollisionAlgorithm___btCompoundCollisionAlgorithm_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCompoundCompoundCollisionAlgorithm__removeChildAlgorithms_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $31 = 0, $34 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$3 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 28 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btHashedSimplePairCache__getOverlappingPairArray_28_29(HEAP32[($4 + 84 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btAlignedObjectArray_btSimplePair___size_28_29_20const(HEAP32[($3 + 24 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($3 + 16 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($3 + 16 | 0) >> 2] | 0 | 0) < (HEAP32[($3 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$3 : {
|
|
if (!((HEAP32[((btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29(HEAP32[($3 + 24 | 0) >> 2] | 0 | 0, HEAP32[($3 + 16 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = HEAP32[((btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29(HEAP32[($3 + 24 | 0) >> 2] | 0 | 0, HEAP32[($3 + 16 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$31 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$31 >> 2] | 0) >> 2] | 0 | 0]($31) | 0;
|
|
$34 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$34 >> 2] | 0) + 60 | 0) >> 2] | 0 | 0]($34, HEAP32[($3 + 12 | 0) >> 2] | 0);
|
|
}
|
|
HEAP32[($3 + 16 | 0) >> 2] = (HEAP32[($3 + 16 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
btHashedSimplePairCache__removeAllPairs_28_29(HEAP32[($4 + 84 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSimplePair____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btSimplePair___clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btHashedSimplePairCache__getOverlappingPairArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSimplePair___size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btSimplePair___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($4 + 8 | 0) >> 2] | 0, 12) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSimplePair___clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btSimplePair___destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btSimplePair___size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btSimplePair___deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btSimplePair___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundCompoundCollisionAlgorithm___btCompoundCompoundCollisionAlgorithm_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[676 | 0]($4) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundCompoundCollisionAlgorithm__getAllContactManifolds_28btAlignedObjectArray_btPersistentManifold____29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $30 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btHashedSimplePairCache__getOverlappingPairArray_28_29(HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 84 | 0) >> 2] | 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btSimplePair___size_28_29_20const(HEAP32[$4 >> 2] | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$3 : {
|
|
if (!((HEAP32[((btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29(HEAP32[$4 >> 2] | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$30 = HEAP32[((btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29(HEAP32[$4 >> 2] | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$30 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($30, HEAP32[($4 + 8 | 0) >> 2] | 0);
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundCompoundCollisionAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0, $80 = 0, $83 = 0, $84 = 0, $86 = 0, $125 = 0, $303 = 0, $384 = 0, $423 = 0, $426 = 0, $459 = 0, $82 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0;
|
|
$7 = __stack_pointer - 4400 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 4396 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 4392 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 4388 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 4384 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 4380 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 4396 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 4376 | 0) >> 2] = HEAP32[($7 + 4392 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 4372 | 0) >> 2] = HEAP32[($7 + 4388 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((btCollisionShape__isCompound_28_29_20const(btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 4376 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(87812 | 0, 73490 | 0, 310 | 0, 76857 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((btCollisionShape__isCompound_28_29_20const(btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 4372 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87765 | 0, 73490 | 0, 311 | 0, 76857 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 4376 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4368 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 4372 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4364 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCompoundShape__getDynamicAabbTree_28_29_20const(HEAP32[($7 + 4368 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4360 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCompoundShape__getDynamicAabbTree_28_29_20const(HEAP32[($7 + 4364 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4356 | 0) >> 2] = wasm2js_i32$1;
|
|
label$3 : {
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!((HEAP32[($7 + 4360 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
if ((HEAP32[($7 + 4356 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
}
|
|
btCompoundCollisionAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29($8 | 0, HEAP32[($7 + 4392 | 0) >> 2] | 0 | 0, HEAP32[($7 + 4388 | 0) >> 2] | 0 | 0, HEAP32[($7 + 4384 | 0) >> 2] | 0 | 0, HEAP32[($7 + 4380 | 0) >> 2] | 0 | 0);
|
|
break label$3;
|
|
}
|
|
label$6 : {
|
|
label$7 : {
|
|
if ((btCompoundShape__getUpdateRevision_28_29_20const(HEAP32[($7 + 4368 | 0) >> 2] | 0 | 0) | 0 | 0) != (HEAP32[($8 + 108 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$7
|
|
}
|
|
if (!((btCompoundShape__getUpdateRevision_28_29_20const(HEAP32[($7 + 4364 | 0) >> 2] | 0 | 0) | 0 | 0) != (HEAP32[($8 + 112 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
}
|
|
btCompoundCompoundCollisionAlgorithm__removeChildAlgorithms_28_29($8 | 0);
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = btCompoundShape__getUpdateRevision_28_29_20const(HEAP32[($7 + 4368 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 108 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = btCompoundShape__getUpdateRevision_28_29_20const(HEAP32[($7 + 4364 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 112 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
btAlignedObjectArray_btPersistentManifold____btAlignedObjectArray_28_29($7 + 4332 | 0 | 0) | 0;
|
|
$80 = $7 + 848 | 0;
|
|
$82 = $80 + 3472 | 0;
|
|
$83 = $80;
|
|
label$8 : while (1) {
|
|
$84 = $83;
|
|
btPersistentManifold__btPersistentManifold_28_29($84 | 0) | 0;
|
|
$86 = $84 + 868 | 0;
|
|
$83 = $86;
|
|
if (!(($86 | 0) == ($82 | 0) & 1 | 0)) {
|
|
continue label$8
|
|
}
|
|
break label$8;
|
|
};
|
|
btAlignedObjectArray_btPersistentManifold____initializeFromBuffer_28void__2c_20int_2c_20int_29($7 + 4332 | 0 | 0, $7 + 848 | 0 | 0, 0 | 0, 4 | 0);
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btHashedSimplePairCache__getOverlappingPairArray_28_29(HEAP32[($8 + 84 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 844 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($7 + 4352 | 0) >> 2] = 0;
|
|
label$9 : {
|
|
label$10 : while (1) {
|
|
if (!((HEAP32[($7 + 4352 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btSimplePair___size_28_29_20const(HEAP32[($7 + 844 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
label$11 : {
|
|
if (!((HEAP32[((btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29(HEAP32[($7 + 844 | 0) >> 2] | 0 | 0, HEAP32[($7 + 4352 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = HEAP32[((btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29(HEAP32[($7 + 844 | 0) >> 2] | 0 | 0, HEAP32[($7 + 4352 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 840 | 0) >> 2] = wasm2js_i32$1;
|
|
$125 = HEAP32[($7 + 840 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$125 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($125, $7 + 4332 | 0);
|
|
HEAP32[($7 + 836 | 0) >> 2] = 0;
|
|
label$12 : {
|
|
label$13 : while (1) {
|
|
if (!((HEAP32[($7 + 836 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btPersistentManifold____size_28_29_20const($7 + 4332 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
label$14 : {
|
|
if (!(btPersistentManifold__getNumContacts_28_29_20const(HEAP32[(btAlignedObjectArray_btPersistentManifold____operator_5b_5d_28int_29($7 + 4332 | 0 | 0, HEAP32[($7 + 836 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) | 0)) {
|
|
break label$14
|
|
}
|
|
btManifoldResult__setPersistentManifold_28btPersistentManifold__29(HEAP32[($7 + 4380 | 0) >> 2] | 0 | 0, HEAP32[(btAlignedObjectArray_btPersistentManifold____operator_5b_5d_28int_29($7 + 4332 | 0 | 0, HEAP32[($7 + 836 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0);
|
|
btManifoldResult__refreshContactPoints_28_29(HEAP32[($7 + 4380 | 0) >> 2] | 0 | 0);
|
|
btManifoldResult__setPersistentManifold_28btPersistentManifold__29(HEAP32[($7 + 4380 | 0) >> 2] | 0 | 0, 0 | 0);
|
|
}
|
|
HEAP32[($7 + 836 | 0) >> 2] = (HEAP32[($7 + 836 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$13;
|
|
};
|
|
}
|
|
HEAP32[($7 + 832 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btPersistentManifold____resize_28int_2c_20btPersistentManifold__20const__29($7 + 4332 | 0 | 0, 0 | 0, $7 + 832 | 0 | 0);
|
|
}
|
|
HEAP32[($7 + 4352 | 0) >> 2] = (HEAP32[($7 + 4352 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$10;
|
|
};
|
|
}
|
|
btAlignedObjectArray_btPersistentManifold_____btAlignedObjectArray_28_29($7 + 4332 | 0 | 0) | 0;
|
|
btCompoundCompoundLeafCallback__btCompoundCompoundLeafCallback_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcher__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__2c_20btHashedSimplePairCache__2c_20btPersistentManifold__29($7 + 796 | 0 | 0, HEAP32[($7 + 4376 | 0) >> 2] | 0 | 0, HEAP32[($7 + 4372 | 0) >> 2] | 0 | 0, HEAP32[($8 + 4 | 0) >> 2] | 0 | 0, HEAP32[($7 + 4384 | 0) >> 2] | 0 | 0, HEAP32[($7 + 4380 | 0) >> 2] | 0 | 0, HEAP32[($8 + 84 | 0) >> 2] | 0 | 0, HEAP32[($8 + 72 | 0) >> 2] | 0 | 0) | 0;
|
|
btTransform__inverse_28_29_20const($7 + 668 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 4376 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29_20const($7 + 732 | 0 | 0, $7 + 668 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 4372 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
MycollideTT_28btDbvtNode_20const__2c_20btDbvtNode_20const__2c_20btTransform_20const__2c_20btCompoundCompoundLeafCallback__2c_20float_29(HEAP32[(HEAP32[($7 + 4360 | 0) >> 2] | 0) >> 2] | 0 | 0, HEAP32[(HEAP32[($7 + 4356 | 0) >> 2] | 0) >> 2] | 0 | 0, $7 + 732 | 0 | 0, $7 + 796 | 0 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($7 + 4380 | 0) >> 2] | 0) + 32 | 0) >> 2])));
|
|
label$15 : {
|
|
if (!(btAlignedObjectArray_btSimplePair___size_28_29_20const($8 + 88 | 0 | 0) | 0)) {
|
|
break label$15
|
|
}
|
|
__assert_fail(85995 | 0, 73490 | 0, 378 | 0, 76857 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btHashedSimplePairCache__getOverlappingPairArray_28_29(HEAP32[($8 + 84 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 664 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btPersistentManifold____btAlignedObjectArray_28_29($7 + 640 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($7 + 624 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($7 + 608 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($7 + 592 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($7 + 576 | 0 | 0) | 0;
|
|
HEAP32[($7 + 660 | 0) >> 2] = 0;
|
|
label$16 : {
|
|
label$17 : while (1) {
|
|
if (!((HEAP32[($7 + 660 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btSimplePair___size_28_29_20const(HEAP32[($7 + 664 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
label$18 : {
|
|
if (!((HEAP32[((btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29(HEAP32[($7 + 664 | 0) >> 2] | 0 | 0, HEAP32[($7 + 660 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$18
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = HEAP32[((btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29(HEAP32[($7 + 664 | 0) >> 2] | 0 | 0, HEAP32[($7 + 660 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 572 | 0) >> 2] = wasm2js_i32$1;
|
|
btTransform__btTransform_28_29($7 + 508 | 0 | 0) | 0;
|
|
HEAP32[($7 + 504 | 0) >> 2] = 0;
|
|
btTransform__btTransform_28_29($7 + 440 | 0 | 0) | 0;
|
|
btTransform__btTransform_28_29($7 + 376 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCompoundShape__getChildShape_28int_29_20const(HEAP32[($7 + 4368 | 0) >> 2] | 0 | 0, HEAP32[(btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29(HEAP32[($7 + 664 | 0) >> 2] | 0 | 0, HEAP32[($7 + 660 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 504 | 0) >> 2] = wasm2js_i32$1;
|
|
btTransform__operator__28btTransform_20const__29($7 + 508 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 4376 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
btTransform__operator__28btTransform_20const__29($7 + 376 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 4376 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCompoundShape__getChildTransform_28int_29_20const(HEAP32[($7 + 4368 | 0) >> 2] | 0 | 0, HEAP32[(btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29(HEAP32[($7 + 664 | 0) >> 2] | 0 | 0, HEAP32[($7 + 660 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 372 | 0) >> 2] = wasm2js_i32$1;
|
|
btTransform__operator__28btTransform_20const__29_20const($7 + 308 | 0 | 0, $7 + 508 | 0 | 0, HEAP32[($7 + 372 | 0) >> 2] | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29($7 + 440 | 0 | 0, $7 + 308 | 0 | 0) | 0;
|
|
$303 = HEAP32[($7 + 504 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$303 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($303, $7 + 440 | 0, $7 + 624 | 0, $7 + 608 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 292 | 0 | 0, (HEAP32[($7 + 4380 | 0) >> 2] | 0) + 32 | 0 | 0, (HEAP32[($7 + 4380 | 0) >> 2] | 0) + 32 | 0 | 0, (HEAP32[($7 + 4380 | 0) >> 2] | 0) + 32 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29($7 + 624 | 0 | 0, $7 + 292 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($7 + 608 | 0 | 0, $7 + 292 | 0 | 0) | 0;
|
|
btTransform__btTransform_28_29($7 + 228 | 0 | 0) | 0;
|
|
HEAP32[($7 + 224 | 0) >> 2] = 0;
|
|
btTransform__btTransform_28_29($7 + 160 | 0 | 0) | 0;
|
|
btTransform__btTransform_28_29($7 + 96 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCompoundShape__getChildShape_28int_29_20const(HEAP32[($7 + 4364 | 0) >> 2] | 0 | 0, HEAP32[((btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29(HEAP32[($7 + 664 | 0) >> 2] | 0 | 0, HEAP32[($7 + 660 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 224 | 0) >> 2] = wasm2js_i32$1;
|
|
btTransform__operator__28btTransform_20const__29($7 + 160 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 4372 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
btTransform__operator__28btTransform_20const__29($7 + 228 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 4372 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCompoundShape__getChildTransform_28int_29_20const(HEAP32[($7 + 4364 | 0) >> 2] | 0 | 0, HEAP32[((btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29(HEAP32[($7 + 664 | 0) >> 2] | 0 | 0, HEAP32[($7 + 660 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 92 | 0) >> 2] = wasm2js_i32$1;
|
|
btTransform__operator__28btTransform_20const__29_20const($7 + 28 | 0 | 0, $7 + 160 | 0 | 0, HEAP32[($7 + 92 | 0) >> 2] | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29($7 + 96 | 0 | 0, $7 + 28 | 0 | 0) | 0;
|
|
$384 = HEAP32[($7 + 224 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$384 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($384, $7 + 96 | 0, $7 + 592 | 0, $7 + 576 | 0);
|
|
btVector3__operator___28btVector3_20const__29($7 + 592 | 0 | 0, $7 + 292 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($7 + 576 | 0 | 0, $7 + 292 | 0 | 0) | 0;
|
|
label$19 : {
|
|
if ((TestAabbAgainstAabb2_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($7 + 624 | 0 | 0, $7 + 608 | 0 | 0, $7 + 592 | 0 | 0, $7 + 576 | 0 | 0) | 0) & 1 | 0) {
|
|
break label$19
|
|
}
|
|
$423 = HEAP32[($7 + 572 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$423 >> 2] | 0) >> 2] | 0 | 0]($423) | 0;
|
|
$426 = HEAP32[($8 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$426 >> 2] | 0) + 60 | 0) >> 2] | 0 | 0]($426, HEAP32[($7 + 572 | 0) >> 2] | 0);
|
|
btSimplePair__btSimplePair_28int_2c_20int_29($7 + 16 | 0 | 0, HEAP32[(btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29(HEAP32[($7 + 664 | 0) >> 2] | 0 | 0, HEAP32[($7 + 660 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0, HEAP32[((btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29(HEAP32[($7 + 664 | 0) >> 2] | 0 | 0, HEAP32[($7 + 660 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
btAlignedObjectArray_btSimplePair___push_back_28btSimplePair_20const__29($8 + 88 | 0 | 0, $7 + 16 | 0 | 0);
|
|
}
|
|
}
|
|
HEAP32[($7 + 660 | 0) >> 2] = (HEAP32[($7 + 660 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$17;
|
|
};
|
|
}
|
|
HEAP32[($7 + 12 | 0) >> 2] = 0;
|
|
label$20 : {
|
|
label$21 : while (1) {
|
|
if (!((HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btSimplePair___size_28_29_20const($8 + 88 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$20
|
|
}
|
|
$459 = HEAP32[($8 + 84 | 0) >> 2] | 0;
|
|
(((wasm2js_i32$1 = $459, wasm2js_i32$2 = HEAP32[(btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29($8 + 88 | 0 | 0, HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), wasm2js_i32$3 = HEAP32[((btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29($8 + 88 | 0 | 0, HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2] | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$459 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, wasm2js_i32$3 | 0) | 0;
|
|
HEAP32[($7 + 12 | 0) >> 2] = (HEAP32[($7 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$21;
|
|
};
|
|
}
|
|
btAlignedObjectArray_btSimplePair___clear_28_29($8 + 88 | 0 | 0);
|
|
btAlignedObjectArray_btPersistentManifold_____btAlignedObjectArray_28_29($7 + 640 | 0 | 0) | 0;
|
|
btCompoundCompoundLeafCallback___btCompoundCompoundLeafCallback_28_29($7 + 796 | 0 | 0) | 0;
|
|
}
|
|
__stack_pointer = $7 + 4400 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btPersistentManifold____initializeFromBuffer_28void__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btPersistentManifold____clear_28_29($7 | 0);
|
|
HEAP8[($7 + 16 | 0) >> 0] = 0;
|
|
HEAP32[($7 + 12 | 0) >> 2] = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 8 | 0) >> 2] = HEAP32[$6 >> 2] | 0;
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundCompoundLeafCallback__btCompoundCompoundLeafCallback_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcher__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__2c_20btHashedSimplePairCache__2c_20btPersistentManifold__29($0, $1, $2, $3, $4, $5, $6, $7) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
var $10 = 0, $11 = 0;
|
|
$10 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $10;
|
|
HEAP32[($10 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($10 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($10 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($10 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($10 + 12 | 0) >> 2] = $4;
|
|
HEAP32[($10 + 8 | 0) >> 2] = $5;
|
|
HEAP32[($10 + 4 | 0) >> 2] = $6;
|
|
HEAP32[$10 >> 2] = $7;
|
|
$11 = HEAP32[($10 + 28 | 0) >> 2] | 0;
|
|
btDbvt__ICollide__ICollide_28_29($11 | 0) | 0;
|
|
HEAP32[$11 >> 2] = 95008 + 8 | 0;
|
|
HEAP32[($11 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($11 + 8 | 0) >> 2] = HEAP32[($10 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($11 + 12 | 0) >> 2] = HEAP32[($10 + 20 | 0) >> 2] | 0;
|
|
HEAP32[($11 + 16 | 0) >> 2] = HEAP32[($10 + 16 | 0) >> 2] | 0;
|
|
HEAP32[($11 + 20 | 0) >> 2] = HEAP32[($10 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($11 + 24 | 0) >> 2] = HEAP32[($10 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($11 + 28 | 0) >> 2] = HEAP32[($10 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($11 + 32 | 0) >> 2] = HEAP32[$10 >> 2] | 0;
|
|
__stack_pointer = $10 + 32 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function MycollideTT_28btDbvtNode_20const__2c_20btDbvtNode_20const__2c_20btTransform_20const__2c_20btCompoundCompoundLeafCallback__2c_20float_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = Math_fround($4);
|
|
var $7 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $29 = 0, $32 = 0, $33 = 0, $35 = 0, $47 = 0, $61 = 0, $117 = 0, $132 = 0, $147 = 0, $162 = 0, $176 = 0, $190 = 0, $208 = 0, $222 = 0, $230 = 0, $31 = 0, $57 = 0, $349 = 0, $367 = 0, $86 = 0, $123 = 0, $488 = 0, $138 = 0, $522 = 0, $153 = 0, $556 = 0, $168 = 0, $590 = 0, $182 = 0, $622 = 0, $196 = 0, $654 = 0, $214 = 0, $695 = 0, $228 = 0, $727 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$7 = __stack_pointer - 1168 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 1164 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 1160 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 1156 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 1152 | 0) >> 2] = $3;
|
|
HEAPF32[($7 + 1148 | 0) >> 2] = $4;
|
|
label$1 : {
|
|
if (!((HEAP32[($7 + 1164 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
if (!((HEAP32[($7 + 1160 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($7 + 1144 | 0) >> 2] = 1;
|
|
HEAP32[($7 + 1140 | 0) >> 2] = 124;
|
|
btAlignedObjectArray_btDbvt__sStkNN___btAlignedObjectArray_28_29($7 + 1120 | 0 | 0) | 0;
|
|
$29 = $7 + 96 | 0;
|
|
$31 = $29 + 1024 | 0;
|
|
$32 = $29;
|
|
label$2 : while (1) {
|
|
$33 = $32;
|
|
btDbvt__sStkNN__sStkNN_28_29($33 | 0) | 0;
|
|
$35 = $33 + 8 | 0;
|
|
$32 = $35;
|
|
if (!(($35 | 0) == ($31 | 0) & 1 | 0)) {
|
|
continue label$2
|
|
}
|
|
break label$2;
|
|
};
|
|
$47 = 128;
|
|
btAlignedObjectArray_btDbvt__sStkNN___initializeFromBuffer_28void__2c_20int_2c_20int_29($7 + 1120 | 0 | 0, $7 + 96 | 0 | 0, $47 | 0, $47 | 0);
|
|
btDbvt__sStkNN__sStkNN_28btDbvtNode_20const__2c_20btDbvtNode_20const__29($7 + 88 | 0 | 0, HEAP32[($7 + 1164 | 0) >> 2] | 0 | 0, HEAP32[($7 + 1160 | 0) >> 2] | 0 | 0) | 0;
|
|
$57 = btAlignedObjectArray_btDbvt__sStkNN___operator_5b_5d_28int_29($7 + 1120 | 0 | 0, 0 | 0) | 0;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$0 = HEAP32[($7 + 88 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($7 + 92 | 0) >> 2] | 0;
|
|
$349 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $57;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $349;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
label$3 : while (1) {
|
|
$61 = (HEAP32[($7 + 1144 | 0) >> 2] | 0) + -1 | 0;
|
|
HEAP32[($7 + 1144 | 0) >> 2] = $61;
|
|
i64toi32_i32$2 = btAlignedObjectArray_btDbvt__sStkNN___operator_5b_5d_28int_29($7 + 1120 | 0 | 0, $61 | 0) | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$367 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $7;
|
|
HEAP32[($7 + 80 | 0) >> 2] = $367;
|
|
HEAP32[($7 + 84 | 0) >> 2] = i64toi32_i32$0;
|
|
label$4 : {
|
|
if (!((MyIntersect_28btDbvtAabbMm_20const__2c_20btDbvtAabbMm_20const__2c_20btTransform_20const__2c_20float_29(HEAP32[($7 + 80 | 0) >> 2] | 0 | 0, HEAP32[($7 + 84 | 0) >> 2] | 0 | 0, HEAP32[($7 + 1156 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($7 + 1148 | 0) >> 2]))) | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[($7 + 1144 | 0) >> 2] | 0 | 0) > (HEAP32[($7 + 1140 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
$86 = (btAlignedObjectArray_btDbvt__sStkNN___size_28_29_20const($7 + 1120 | 0 | 0) | 0) << 1 | 0;
|
|
btDbvt__sStkNN__sStkNN_28_29($7 + 72 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btDbvt__sStkNN___resize_28int_2c_20btDbvt__sStkNN_20const__29($7 + 1120 | 0 | 0, $86 | 0, $7 + 72 | 0 | 0);
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = (btAlignedObjectArray_btDbvt__sStkNN___size_28_29_20const($7 + 1120 | 0 | 0) | 0) - 4 | 0), HEAP32[(wasm2js_i32$0 + 1140 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!((btDbvtNode__isinternal_28_29_20const(HEAP32[($7 + 80 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
label$8 : {
|
|
label$9 : {
|
|
if (!((btDbvtNode__isinternal_28_29_20const(HEAP32[($7 + 84 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
btDbvt__sStkNN__sStkNN_28btDbvtNode_20const__2c_20btDbvtNode_20const__29($7 + 64 | 0 | 0, HEAP32[((HEAP32[($7 + 80 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($7 + 84 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0 | 0) | 0;
|
|
$117 = HEAP32[($7 + 1144 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 1144 | 0) >> 2] = $117 + 1 | 0;
|
|
$123 = btAlignedObjectArray_btDbvt__sStkNN___operator_5b_5d_28int_29($7 + 1120 | 0 | 0, $117 | 0) | 0;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$0 = HEAP32[($7 + 64 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($7 + 68 | 0) >> 2] | 0;
|
|
$488 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $123;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $488;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
btDbvt__sStkNN__sStkNN_28btDbvtNode_20const__2c_20btDbvtNode_20const__29($7 + 56 | 0 | 0, HEAP32[((HEAP32[($7 + 80 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($7 + 84 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0 | 0) | 0;
|
|
$132 = HEAP32[($7 + 1144 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 1144 | 0) >> 2] = $132 + 1 | 0;
|
|
$138 = btAlignedObjectArray_btDbvt__sStkNN___operator_5b_5d_28int_29($7 + 1120 | 0 | 0, $132 | 0) | 0;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$1 = HEAP32[($7 + 56 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($7 + 60 | 0) >> 2] | 0;
|
|
$522 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $138;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $522;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btDbvt__sStkNN__sStkNN_28btDbvtNode_20const__2c_20btDbvtNode_20const__29($7 + 48 | 0 | 0, HEAP32[((HEAP32[($7 + 80 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($7 + 84 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0 | 0) | 0;
|
|
$147 = HEAP32[($7 + 1144 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 1144 | 0) >> 2] = $147 + 1 | 0;
|
|
$153 = btAlignedObjectArray_btDbvt__sStkNN___operator_5b_5d_28int_29($7 + 1120 | 0 | 0, $147 | 0) | 0;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$0 = HEAP32[($7 + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($7 + 52 | 0) >> 2] | 0;
|
|
$556 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $153;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $556;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
btDbvt__sStkNN__sStkNN_28btDbvtNode_20const__2c_20btDbvtNode_20const__29($7 + 40 | 0 | 0, HEAP32[((HEAP32[($7 + 80 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($7 + 84 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0 | 0) | 0;
|
|
$162 = HEAP32[($7 + 1144 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 1144 | 0) >> 2] = $162 + 1 | 0;
|
|
$168 = btAlignedObjectArray_btDbvt__sStkNN___operator_5b_5d_28int_29($7 + 1120 | 0 | 0, $162 | 0) | 0;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$1 = HEAP32[($7 + 40 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($7 + 44 | 0) >> 2] | 0;
|
|
$590 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $168;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $590;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$8;
|
|
}
|
|
btDbvt__sStkNN__sStkNN_28btDbvtNode_20const__2c_20btDbvtNode_20const__29($7 + 32 | 0 | 0, HEAP32[((HEAP32[($7 + 80 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0 | 0, HEAP32[($7 + 84 | 0) >> 2] | 0 | 0) | 0;
|
|
$176 = HEAP32[($7 + 1144 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 1144 | 0) >> 2] = $176 + 1 | 0;
|
|
$182 = btAlignedObjectArray_btDbvt__sStkNN___operator_5b_5d_28int_29($7 + 1120 | 0 | 0, $176 | 0) | 0;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$0 = HEAP32[($7 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($7 + 36 | 0) >> 2] | 0;
|
|
$622 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $182;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $622;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
btDbvt__sStkNN__sStkNN_28btDbvtNode_20const__2c_20btDbvtNode_20const__29($7 + 24 | 0 | 0, HEAP32[((HEAP32[($7 + 80 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0 | 0, HEAP32[($7 + 84 | 0) >> 2] | 0 | 0) | 0;
|
|
$190 = HEAP32[($7 + 1144 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 1144 | 0) >> 2] = $190 + 1 | 0;
|
|
$196 = btAlignedObjectArray_btDbvt__sStkNN___operator_5b_5d_28int_29($7 + 1120 | 0 | 0, $190 | 0) | 0;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$1 = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
$654 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $196;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $654;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
break label$6;
|
|
}
|
|
label$10 : {
|
|
label$11 : {
|
|
if (!((btDbvtNode__isinternal_28_29_20const(HEAP32[($7 + 84 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
btDbvt__sStkNN__sStkNN_28btDbvtNode_20const__2c_20btDbvtNode_20const__29($7 + 16 | 0 | 0, HEAP32[($7 + 80 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($7 + 84 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0 | 0) | 0;
|
|
$208 = HEAP32[($7 + 1144 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 1144 | 0) >> 2] = $208 + 1 | 0;
|
|
$214 = btAlignedObjectArray_btDbvt__sStkNN___operator_5b_5d_28int_29($7 + 1120 | 0 | 0, $208 | 0) | 0;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$0 = HEAP32[($7 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
$695 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $214;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $695;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
btDbvt__sStkNN__sStkNN_28btDbvtNode_20const__2c_20btDbvtNode_20const__29($7 + 8 | 0 | 0, HEAP32[($7 + 80 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($7 + 84 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0 | 0) | 0;
|
|
$222 = HEAP32[($7 + 1144 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 1144 | 0) >> 2] = $222 + 1 | 0;
|
|
$228 = btAlignedObjectArray_btDbvt__sStkNN___operator_5b_5d_28int_29($7 + 1120 | 0 | 0, $222 | 0) | 0;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$1 = HEAP32[($7 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($7 + 12 | 0) >> 2] | 0;
|
|
$727 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $228;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $727;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$10;
|
|
}
|
|
$230 = HEAP32[($7 + 1152 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$230 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($230, HEAP32[($7 + 80 | 0) >> 2] | 0, HEAP32[($7 + 84 | 0) >> 2] | 0);
|
|
}
|
|
}
|
|
}
|
|
if (HEAP32[($7 + 1144 | 0) >> 2] | 0) {
|
|
continue label$3
|
|
}
|
|
break label$3;
|
|
};
|
|
btAlignedObjectArray_btDbvt__sStkNN____btAlignedObjectArray_28_29($7 + 1120 | 0 | 0) | 0;
|
|
}
|
|
__stack_pointer = $7 + 1168 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSimplePair__btSimplePair_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$6 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSimplePair___push_back_28btSimplePair_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, i64toi32_i32$0 = 0, $21 = 0, $23 = 0, i64toi32_i32$1 = 0, $83 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btSimplePair___size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btSimplePair___capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btSimplePair___reserve_28int_29($5 | 0, btAlignedObjectArray_btSimplePair___allocSize_28int_29($5 | 0, btAlignedObjectArray_btSimplePair___size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
$21 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[$21 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($21 + 4 | 0) >> 2] | 0;
|
|
$83 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 4 | 0) >> 2] | 0, 12) | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $83;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$23 = 8;
|
|
HEAP32[(i64toi32_i32$0 + $23 | 0) >> 2] = HEAP32[($21 + $23 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundCompoundLeafCallback___btCompoundCompoundLeafCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btDbvt__ICollide___ICollide_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btDbvt__sStkNN___initializeFromBuffer_28void__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btDbvt__sStkNN___clear_28_29($7 | 0);
|
|
HEAP8[($7 + 16 | 0) >> 0] = 0;
|
|
HEAP32[($7 + 12 | 0) >> 2] = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 8 | 0) >> 2] = HEAP32[$6 >> 2] | 0;
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function MyIntersect_28btDbvtAabbMm_20const__2c_20btDbvtAabbMm_20const__2c_20btTransform_20const__2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $31 = 0, $43 = 0, $61 = 0;
|
|
$6 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 108 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 104 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 100 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 96 | 0) >> 2] = $3;
|
|
btVector3__btVector3_28_29($6 + 80 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 64 | 0 | 0) | 0;
|
|
btTransformAabb_28btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20btTransform_20const__2c_20btVector3__2c_20btVector3__29(btDbvtAabbMm__Mins_28_29_20const(HEAP32[($6 + 104 | 0) >> 2] | 0 | 0) | 0 | 0, btDbvtAabbMm__Maxs_28_29_20const(HEAP32[($6 + 104 | 0) >> 2] | 0 | 0) | 0 | 0, Math_fround(Math_fround(0 | 0)), HEAP32[($6 + 100 | 0) >> 2] | 0 | 0, $6 + 80 | 0 | 0, $6 + 64 | 0 | 0);
|
|
$31 = $6 + 96 | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 48 | 0 | 0, $31 | 0, $31 | 0, $31 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29($6 + 80 | 0 | 0, $6 + 48 | 0 | 0) | 0;
|
|
$43 = $6 + 96 | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 32 | 0 | 0, $43 | 0, $43 | 0, $43 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($6 + 64 | 0 | 0, $6 + 32 | 0 | 0) | 0;
|
|
btDbvtAabbMm__FromMM_28btVector3_20const__2c_20btVector3_20const__29($6 | 0, $6 + 80 | 0 | 0, $6 + 64 | 0 | 0);
|
|
$61 = (Intersect_28btDbvtAabbMm_20const__2c_20btDbvtAabbMm_20const__29(HEAP32[($6 + 108 | 0) >> 2] | 0 | 0, $6 | 0) | 0) & 1 | 0;
|
|
__stack_pointer = $6 + 112 | 0;
|
|
return $61 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSimplePair___capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSimplePair___allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSimplePair___reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btSimplePair___capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btSimplePair___allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btSimplePair___copy_28int_2c_20int_2c_20btSimplePair__29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btSimplePair___size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btSimplePair___destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btSimplePair___size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btSimplePair___deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSimplePair___destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSimplePair___deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btSimplePair_2c_2016u___deallocate_28btSimplePair__29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundCompoundCollisionAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
__assert_fail(86177 | 0, 73490 | 0, 450 | 0, 68931 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btCompoundCompoundLeafCallback___btCompoundCompoundLeafCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCompoundCompoundLeafCallback___btCompoundCompoundLeafCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundCompoundLeafCallback__Process_28btDbvtNode_20const__2c_20btDbvtNode_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $116 = 0, $128 = 0, $231 = 0, $252 = 0, $264 = 0, $308 = 0, $313 = 0, $318 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 464 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 460 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 456 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 452 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 460 | 0) >> 2] | 0;
|
|
CProfileSample__CProfileSample_28char_20const__29($5 + 451 | 0 | 0, 69357 | 0) | 0;
|
|
HEAP32[($6 + 4 | 0) >> 2] = (HEAP32[($6 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($5 + 444 | 0) >> 2] = HEAP32[((HEAP32[($5 + 456 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 440 | 0) >> 2] = HEAP32[((HEAP32[($5 + 452 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($5 + 444 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85860 | 0, 73490 | 0, 138 | 0, 69389 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($5 + 440 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(85845 | 0, 73490 | 0, 139 | 0, 69389 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 436 | 0) >> 2] = wasm2js_i32$1;
|
|
label$3 : {
|
|
if ((HEAP32[($5 + 444 | 0) >> 2] | 0 | 0) < (btCompoundShape__getNumChildShapes_28_29_20const(HEAP32[($5 + 436 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
__assert_fail(87205 | 0, 73490 | 0, 143 | 0, 69389 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 432 | 0) >> 2] = wasm2js_i32$1;
|
|
label$4 : {
|
|
if ((HEAP32[($5 + 440 | 0) >> 2] | 0 | 0) < (btCompoundShape__getNumChildShapes_28_29_20const(HEAP32[($5 + 432 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
__assert_fail(87157 | 0, 73490 | 0, 146 | 0, 69389 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btCompoundShape__getChildShape_28int_29_20const(HEAP32[($5 + 436 | 0) >> 2] | 0 | 0, HEAP32[($5 + 444 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 428 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btCompoundShape__getChildShape_28int_29_20const(HEAP32[($5 + 432 | 0) >> 2] | 0 | 0, HEAP32[($5 + 440 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 424 | 0) >> 2] = wasm2js_i32$1;
|
|
btTransform__btTransform_28btTransform_20const__29($5 + 360 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btCompoundShape__getChildTransform_28int_29_20const(HEAP32[($5 + 436 | 0) >> 2] | 0 | 0, HEAP32[($5 + 444 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 356 | 0) >> 2] = wasm2js_i32$1;
|
|
btTransform__operator__28btTransform_20const__29_20const($5 + 292 | 0 | 0, $5 + 360 | 0 | 0, HEAP32[($5 + 356 | 0) >> 2] | 0 | 0);
|
|
btTransform__btTransform_28btTransform_20const__29($5 + 228 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btCompoundShape__getChildTransform_28int_29_20const(HEAP32[($5 + 432 | 0) >> 2] | 0 | 0, HEAP32[($5 + 440 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 224 | 0) >> 2] = wasm2js_i32$1;
|
|
btTransform__operator__28btTransform_20const__29_20const($5 + 160 | 0 | 0, $5 + 228 | 0 | 0, HEAP32[($5 + 224 | 0) >> 2] | 0 | 0);
|
|
btVector3__btVector3_28_29($5 + 144 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 128 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 112 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 96 | 0 | 0) | 0;
|
|
$116 = HEAP32[($5 + 428 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$116 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($116, $5 + 292 | 0, $5 + 144 | 0, $5 + 128 | 0);
|
|
$128 = HEAP32[($5 + 424 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$128 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($128, $5 + 160 | 0, $5 + 112 | 0, $5 + 96 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 80 | 0 | 0, (HEAP32[($6 + 24 | 0) >> 2] | 0) + 32 | 0 | 0, (HEAP32[($6 + 24 | 0) >> 2] | 0) + 32 | 0 | 0, (HEAP32[($6 + 24 | 0) >> 2] | 0) + 32 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29($5 + 144 | 0 | 0, $5 + 80 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($5 + 128 | 0 | 0, $5 + 80 | 0 | 0) | 0;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!((HEAP32[(0 + 114016 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
label$7 : {
|
|
if ((FUNCTION_TABLE[HEAP32[(0 + 114016 | 0) >> 2] | 0 | 0](HEAP32[($5 + 428 | 0) >> 2] | 0, HEAP32[($5 + 424 | 0) >> 2] | 0) | 0) & 1 | 0) {
|
|
break label$7
|
|
}
|
|
HEAP32[($5 + 76 | 0) >> 2] = 1;
|
|
break label$5;
|
|
}
|
|
}
|
|
label$8 : {
|
|
if (!((TestAabbAgainstAabb2_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($5 + 144 | 0 | 0, $5 + 128 | 0 | 0, $5 + 112 | 0 | 0, $5 + 96 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
btCollisionObjectWrapper__btCollisionObjectWrapper_28btCollisionObjectWrapper_20const__2c_20btCollisionShape_20const__2c_20btCollisionObject_20const__2c_20btTransform_20const__2c_20int_2c_20int_29($5 + 52 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0, HEAP32[($5 + 428 | 0) >> 2] | 0 | 0, btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0 | 0, $5 + 292 | 0 | 0, -1 | 0, HEAP32[($5 + 444 | 0) >> 2] | 0 | 0) | 0;
|
|
btCollisionObjectWrapper__btCollisionObjectWrapper_28btCollisionObjectWrapper_20const__2c_20btCollisionShape_20const__2c_20btCollisionObject_20const__2c_20btTransform_20const__2c_20int_2c_20int_29($5 + 28 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0, HEAP32[($5 + 424 | 0) >> 2] | 0 | 0, btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0 | 0, $5 + 160 | 0 | 0, -1 | 0, HEAP32[($5 + 440 | 0) >> 2] | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btHashedSimplePairCache__findPair_28int_2c_20int_29(HEAP32[($6 + 28 | 0) >> 2] | 0 | 0, HEAP32[($5 + 444 | 0) >> 2] | 0 | 0, HEAP32[($5 + 440 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = 0;
|
|
label$9 : {
|
|
label$10 : {
|
|
if (!(Math_fround(HEAPF32[((HEAP32[($6 + 24 | 0) >> 2] | 0) + 32 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
$231 = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$231 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($231, $5 + 52 | 0, $5 + 28 | 0, 0, 2) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$9;
|
|
}
|
|
label$11 : {
|
|
label$12 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
HEAP32[($5 + 20 | 0) >> 2] = HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
break label$11;
|
|
}
|
|
$252 = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$252 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($252, $5 + 52 | 0, $5 + 28 | 0, HEAP32[($6 + 32 | 0) >> 2] | 0, 1) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
$264 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$264 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($264, HEAP32[($5 + 444 | 0) >> 2] | 0, HEAP32[($5 + 440 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_i32$1;
|
|
label$13 : {
|
|
if ((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$13
|
|
}
|
|
__assert_fail(71001 | 0, 73490 | 0, 201 | 0, 69389 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
}
|
|
}
|
|
label$14 : {
|
|
if ((HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$14
|
|
}
|
|
__assert_fail(76200 | 0, 73490 | 0, 206 | 0, 69389 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($5 + 16 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btManifoldResult__getBody0Wrap_28_29_20const(HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btManifoldResult__getBody1Wrap_28_29_20const(HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
btManifoldResult__setBody0Wrap_28btCollisionObjectWrapper_20const__29(HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, $5 + 52 | 0 | 0);
|
|
btManifoldResult__setBody1Wrap_28btCollisionObjectWrapper_20const__29(HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, $5 + 28 | 0 | 0);
|
|
$308 = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$308 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($308, -1, HEAP32[($5 + 444 | 0) >> 2] | 0);
|
|
$313 = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$313 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($313, -1, HEAP32[($5 + 440 | 0) >> 2] | 0);
|
|
$318 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$318 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($318, $5 + 52 | 0, $5 + 28 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0, HEAP32[($6 + 24 | 0) >> 2] | 0);
|
|
btManifoldResult__setBody0Wrap_28btCollisionObjectWrapper_20const__29(HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[($5 + 16 | 0) >> 2] | 0 | 0);
|
|
btManifoldResult__setBody1Wrap_28btCollisionObjectWrapper_20const__29(HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 76 | 0) >> 2] = 0;
|
|
}
|
|
CProfileSample___CProfileSample_28_29($5 + 451 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 464 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTransformAabb_28btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20btTransform_20const__2c_20btVector3__2c_20btVector3__29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $68 = 0, $132 = 0, $134 = 0, $147 = 0, $149 = 0, $398 = 0, $411 = 0, $429 = 0, $439 = 0;
|
|
$8 = __stack_pointer - 224 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 220 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 216 | 0) >> 2] = $1;
|
|
HEAPF32[($8 + 212 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 208 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 204 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 200 | 0) >> 2] = $5;
|
|
label$1 : {
|
|
if (Math_fround(HEAPF32[(btVector3__getX_28_29_20const(HEAP32[($8 + 220 | 0) >> 2] | 0 | 0) | 0) >> 2]) <= Math_fround(HEAPF32[(btVector3__getX_28_29_20const(HEAP32[($8 + 216 | 0) >> 2] | 0 | 0) | 0) >> 2]) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(88089 | 0, 80387 | 0, 195 | 0, 83061 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if (Math_fround(HEAPF32[(btVector3__getY_28_29_20const(HEAP32[($8 + 220 | 0) >> 2] | 0 | 0) | 0) >> 2]) <= Math_fround(HEAPF32[(btVector3__getY_28_29_20const(HEAP32[($8 + 216 | 0) >> 2] | 0 | 0) | 0) >> 2]) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87974 | 0, 80387 | 0, 196 | 0, 83061 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$3 : {
|
|
if (Math_fround(HEAPF32[(btVector3__getZ_28_29_20const(HEAP32[($8 + 220 | 0) >> 2] | 0 | 0) | 0) >> 2]) <= Math_fround(HEAPF32[(btVector3__getZ_28_29_20const(HEAP32[($8 + 216 | 0) >> 2] | 0 | 0) | 0) >> 2]) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
__assert_fail(87859 | 0, 80387 | 0, 197 | 0, 83061 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAPF32[($8 + 180 | 0) >> 2] = Math_fround(.5);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 164 | 0 | 0, HEAP32[($8 + 216 | 0) >> 2] | 0 | 0, HEAP32[($8 + 220 | 0) >> 2] | 0 | 0);
|
|
operator__28float_20const__2c_20btVector3_20const__29($8 + 184 | 0 | 0, $8 + 180 | 0 | 0, $8 + 164 | 0 | 0);
|
|
$68 = $8 + 212 | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 148 | 0 | 0, $68 | 0, $68 | 0, $68 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($8 + 184 | 0 | 0, $8 + 148 | 0 | 0) | 0;
|
|
HEAPF32[($8 + 128 | 0) >> 2] = Math_fround(.5);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 112 | 0 | 0, HEAP32[($8 + 216 | 0) >> 2] | 0 | 0, HEAP32[($8 + 220 | 0) >> 2] | 0 | 0);
|
|
operator__28float_20const__2c_20btVector3_20const__29($8 + 132 | 0 | 0, $8 + 128 | 0 | 0, $8 + 112 | 0 | 0);
|
|
btMatrix3x3__absolute_28_29_20const($8 + 64 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 208 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($8 + 48 | 0 | 0, HEAP32[($8 + 208 | 0) >> 2] | 0 | 0, $8 + 132 | 0 | 0);
|
|
btVector3__dot3_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29_20const($8 + 32 | 0 | 0, $8 + 184 | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($8 + 64 | 0 | 0, 0 | 0) | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($8 + 64 | 0 | 0, 1 | 0) | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($8 + 64 | 0 | 0, 2 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 16 | 0 | 0, $8 + 48 | 0 | 0, $8 + 32 | 0 | 0);
|
|
$132 = HEAP32[($8 + 204 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$0 = HEAP32[($8 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($8 + 20 | 0) >> 2] | 0;
|
|
$398 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $132;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $398;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$134 = 8;
|
|
i64toi32_i32$2 = ($8 + 16 | 0) + $134 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$411 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $132 + $134 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $411;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 | 0, $8 + 48 | 0 | 0, $8 + 32 | 0 | 0);
|
|
$147 = HEAP32[($8 + 200 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$0 = HEAP32[$8 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($8 + 4 | 0) >> 2] | 0;
|
|
$429 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $147;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $429;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$149 = 8;
|
|
i64toi32_i32$2 = $8 + $149 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$439 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $147 + $149 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $439;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $8 + 224 | 0;
|
|
return;
|
|
}
|
|
|
|
function btMatrix3x3__absolute_28_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 40 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 40 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 | 0) | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 | 0) | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 | 0) | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 + 16 | 0 | 0) | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 + 16 | 0 | 0) | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 + 16 | 0 | 0) | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 + 32 | 0 | 0) | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 + 32 | 0 | 0) | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 + 32 | 0 | 0) | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
btMatrix3x3__btMatrix3x3_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $4 + 36 | 0 | 0, $4 + 32 | 0 | 0, $4 + 28 | 0 | 0, $4 + 24 | 0 | 0, $4 + 20 | 0 | 0, $4 + 16 | 0 | 0, $4 + 12 | 0 | 0, $4 + 8 | 0 | 0, $4 + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btMatrix3x3__operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return (HEAP32[($4 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 4 | 0) | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSimplePair___allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btSimplePair_2c_2016u___allocate_28int_2c_20btSimplePair_20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSimplePair___copy_28int_2c_20int_2c_20btSimplePair__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, $25 = 0, $27 = 0, $7 = 0, i64toi32_i32$1 = 0, $89 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$25 = (HEAP32[($7 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($6 + 12 | 0) >> 2] | 0, 12) | 0;
|
|
i64toi32_i32$0 = HEAP32[$25 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($25 + 4 | 0) >> 2] | 0;
|
|
$89 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = (HEAP32[($6 + 16 | 0) >> 2] | 0) + Math_imul(HEAP32[($6 + 12 | 0) >> 2] | 0, 12) | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $89;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$27 = 8;
|
|
HEAP32[(i64toi32_i32$0 + $27 | 0) >> 2] = HEAP32[($25 + $27 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btSimplePair_2c_2016u___allocate_28int_2c_20btSimplePair_20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(Math_imul(HEAP32[($5 + 8 | 0) >> 2] | 0, 12) | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_btSimplePair_2c_2016u___deallocate_28btSimplePair__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btCompoundCompoundCollisionAlgorithm_cpp() {
|
|
__cxx_global_var_init_17();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_18() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114020 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btBoxBoxDetector__btBoxBoxDetector_28btBoxShape_20const__2c_20btBoxShape_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btDiscreteCollisionDetectorInterface__btDiscreteCollisionDetectorInterface_28_29($6 | 0) | 0;
|
|
HEAP32[$6 >> 2] = 95092 + 8 | 0;
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btDiscreteCollisionDetectorInterface__btDiscreteCollisionDetectorInterface_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 95192 + 8 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function dLineClosestApproach_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float__2c_20float__29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, $18 = Math_fround(0), $29 = Math_fround(0), $40 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$8 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 60 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 56 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 52 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 48 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 44 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 40 | 0) >> 2] = $5;
|
|
btVector3__btVector3_28_29($8 + 24 | 0 | 0) | 0;
|
|
$18 = Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(HEAP32[($8 + 52 | 0) >> 2] | 0 | 0) | 0) >> 2]) - Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(HEAP32[($8 + 60 | 0) >> 2] | 0 | 0) | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($8 + 24 | 0 | 0) | 0, wasm2js_f32$0 = $18), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$29 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($8 + 52 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2]) - Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($8 + 60 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($8 + 24 | 0 | 0) | 0, wasm2js_f32$0 = $29), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$40 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($8 + 52 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2]) - Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($8 + 60 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($8 + 24 | 0 | 0) | 0, wasm2js_f32$0 = $40), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(dDOT_28float_20const__2c_20float_20const__29(btVector3__operator_20float_20const__28_29_20const(HEAP32[($8 + 56 | 0) >> 2] | 0 | 0) | 0 | 0, btVector3__operator_20float_20const__28_29_20const(HEAP32[($8 + 48 | 0) >> 2] | 0 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(dDOT_28float_20const__2c_20float_20const__29(btVector3__operator_20float_20const__28_29_20const(HEAP32[($8 + 56 | 0) >> 2] | 0 | 0) | 0 | 0, btVector3__operator_20float__28_29($8 + 24 | 0 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(-Math_fround(dDOT_28float_20const__2c_20float_20const__29(btVector3__operator_20float_20const__28_29_20const(HEAP32[($8 + 48 | 0) >> 2] | 0 | 0) | 0 | 0, btVector3__operator_20float__28_29($8 + 24 | 0 | 0) | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($8 + 8 | 0) >> 2] = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($8 + 20 | 0) >> 2])) * Math_fround(HEAPF32[($8 + 20 | 0) >> 2])) + Math_fround(1.0));
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 8 | 0) >> 2]) <= Math_fround(9.999999747378752e-05) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[(HEAP32[($8 + 44 | 0) >> 2] | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[(HEAP32[($8 + 40 | 0) >> 2] | 0) >> 2] = Math_fround(0 | 0);
|
|
break label$1;
|
|
}
|
|
HEAPF32[($8 + 8 | 0) >> 2] = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[($8 + 8 | 0) >> 2]));
|
|
HEAPF32[(HEAP32[($8 + 44 | 0) >> 2] | 0) >> 2] = Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[($8 + 20 | 0) >> 2]) * Math_fround(HEAPF32[($8 + 12 | 0) >> 2])) + Math_fround(HEAPF32[($8 + 16 | 0) >> 2])) * Math_fround(HEAPF32[($8 + 8 | 0) >> 2]));
|
|
HEAPF32[(HEAP32[($8 + 40 | 0) >> 2] | 0) >> 2] = Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[($8 + 20 | 0) >> 2]) * Math_fround(HEAPF32[($8 + 16 | 0) >> 2])) + Math_fround(HEAPF32[($8 + 12 | 0) >> 2])) * Math_fround(HEAPF32[($8 + 8 | 0) >> 2]));
|
|
}
|
|
__stack_pointer = $8 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function dDOT_28float_20const__2c_20float_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2])))));
|
|
}
|
|
|
|
function cullPoints2_28int_2c_20float__2c_20int_2c_20int_2c_20int__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $264 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$7 = __stack_pointer - 128 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 124 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 120 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 116 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 112 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 108 | 0) >> 2] = $4;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($7 + 124 | 0) >> 2] | 0 | 0) == (1 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($7 + 92 | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[($7 + 120 | 0) >> 2] | 0) >> 2]);
|
|
HEAPF32[($7 + 88 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + 4 | 0) >> 2]);
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAP32[($7 + 124 | 0) >> 2] | 0 | 0) == (2 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAPF32[($7 + 92 | 0) >> 2] = Math_fround(Math_fround(.5) * Math_fround(Math_fround(HEAPF32[(HEAP32[($7 + 120 | 0) >> 2] | 0) >> 2]) + Math_fround(HEAPF32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + 8 | 0) >> 2])));
|
|
HEAPF32[($7 + 88 | 0) >> 2] = Math_fround(Math_fround(.5) * Math_fround(Math_fround(HEAPF32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + 4 | 0) >> 2]) + Math_fround(HEAPF32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + 12 | 0) >> 2])));
|
|
break label$3;
|
|
}
|
|
HEAPF32[($7 + 96 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($7 + 92 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($7 + 88 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP32[($7 + 104 | 0) >> 2] = 0;
|
|
label$5 : {
|
|
label$6 : while (1) {
|
|
if (!((HEAP32[($7 + 104 | 0) >> 2] | 0 | 0) < ((HEAP32[($7 + 124 | 0) >> 2] | 0) - 1 | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAPF32[($7 + 84 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + (((HEAP32[($7 + 104 | 0) >> 2] | 0) << 1 | 0) << 2 | 0) | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + ((((HEAP32[($7 + 104 | 0) >> 2] | 0) << 1 | 0) + 3 | 0) << 2 | 0) | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + ((((HEAP32[($7 + 104 | 0) >> 2] | 0) << 1 | 0) + 2 | 0) << 2 | 0) | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + ((((HEAP32[($7 + 104 | 0) >> 2] | 0) << 1 | 0) + 1 | 0) << 2 | 0) | 0) >> 2]))));
|
|
HEAPF32[($7 + 96 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($7 + 96 | 0) >> 2]) + Math_fround(HEAPF32[($7 + 84 | 0) >> 2]));
|
|
HEAPF32[($7 + 92 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($7 + 84 | 0) >> 2]) * Math_fround(Math_fround(HEAPF32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + (((HEAP32[($7 + 104 | 0) >> 2] | 0) << 1 | 0) << 2 | 0) | 0) >> 2]) + Math_fround(HEAPF32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + ((((HEAP32[($7 + 104 | 0) >> 2] | 0) << 1 | 0) + 2 | 0) << 2 | 0) | 0) >> 2]))) + Math_fround(HEAPF32[($7 + 92 | 0) >> 2]));
|
|
HEAPF32[($7 + 88 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($7 + 84 | 0) >> 2]) * Math_fround(Math_fround(HEAPF32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + ((((HEAP32[($7 + 104 | 0) >> 2] | 0) << 1 | 0) + 1 | 0) << 2 | 0) | 0) >> 2]) + Math_fround(HEAPF32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + ((((HEAP32[($7 + 104 | 0) >> 2] | 0) << 1 | 0) + 3 | 0) << 2 | 0) | 0) >> 2]))) + Math_fround(HEAPF32[($7 + 88 | 0) >> 2]));
|
|
HEAP32[($7 + 104 | 0) >> 2] = (HEAP32[($7 + 104 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$6;
|
|
};
|
|
}
|
|
HEAPF32[($7 + 84 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + ((((HEAP32[($7 + 124 | 0) >> 2] | 0) << 1 | 0) - 2 | 0) << 2 | 0) | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + 4 | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[(HEAP32[($7 + 120 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + ((((HEAP32[($7 + 124 | 0) >> 2] | 0) << 1 | 0) - 1 | 0) << 2 | 0) | 0) >> 2]))));
|
|
label$7 : {
|
|
label$8 : {
|
|
if (!(Math_fround(btFabs_28float_29(Math_fround(Math_fround(Math_fround(HEAPF32[($7 + 96 | 0) >> 2]) + Math_fround(HEAPF32[($7 + 84 | 0) >> 2]))))) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
HEAPF32[($7 + 96 | 0) >> 2] = Math_fround(Math_fround(1.0) / Math_fround(Math_fround(3.0) * Math_fround(Math_fround(HEAPF32[($7 + 96 | 0) >> 2]) + Math_fround(HEAPF32[($7 + 84 | 0) >> 2]))));
|
|
break label$7;
|
|
}
|
|
HEAPF32[($7 + 96 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
}
|
|
HEAPF32[($7 + 92 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($7 + 96 | 0) >> 2]) * Math_fround(Math_fround(Math_fround(HEAPF32[($7 + 84 | 0) >> 2]) * Math_fround(Math_fround(HEAPF32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + ((((HEAP32[($7 + 124 | 0) >> 2] | 0) << 1 | 0) - 2 | 0) << 2 | 0) | 0) >> 2]) + Math_fround(HEAPF32[(HEAP32[($7 + 120 | 0) >> 2] | 0) >> 2]))) + Math_fround(HEAPF32[($7 + 92 | 0) >> 2])));
|
|
HEAPF32[($7 + 88 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($7 + 96 | 0) >> 2]) * Math_fround(Math_fround(Math_fround(HEAPF32[($7 + 84 | 0) >> 2]) * Math_fround(Math_fround(HEAPF32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + ((((HEAP32[($7 + 124 | 0) >> 2] | 0) << 1 | 0) - 1 | 0) << 2 | 0) | 0) >> 2]) + Math_fround(HEAPF32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + 4 | 0) >> 2]))) + Math_fround(HEAPF32[($7 + 88 | 0) >> 2])));
|
|
}
|
|
}
|
|
HEAP32[($7 + 104 | 0) >> 2] = 0;
|
|
label$9 : {
|
|
label$10 : while (1) {
|
|
if (!((HEAP32[($7 + 104 | 0) >> 2] | 0 | 0) < (HEAP32[($7 + 124 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
$264 = Math_fround(btAtan2_28float_2c_20float_29(Math_fround(Math_fround(Math_fround(HEAPF32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + ((((HEAP32[($7 + 104 | 0) >> 2] | 0) << 1 | 0) + 1 | 0) << 2 | 0) | 0) >> 2]) - Math_fround(HEAPF32[($7 + 88 | 0) >> 2]))), Math_fround(Math_fround(Math_fround(HEAPF32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + (((HEAP32[($7 + 104 | 0) >> 2] | 0) << 1 | 0) << 2 | 0) | 0) >> 2]) - Math_fround(HEAPF32[($7 + 92 | 0) >> 2])))));
|
|
HEAPF32[(($7 + 48 | 0) + ((HEAP32[($7 + 104 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = $264;
|
|
HEAP32[($7 + 104 | 0) >> 2] = (HEAP32[($7 + 104 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$10;
|
|
};
|
|
}
|
|
HEAP32[($7 + 104 | 0) >> 2] = 0;
|
|
label$11 : {
|
|
label$12 : while (1) {
|
|
if (!((HEAP32[($7 + 104 | 0) >> 2] | 0 | 0) < (HEAP32[($7 + 124 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
HEAP32[(($7 + 16 | 0) + ((HEAP32[($7 + 104 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = 1;
|
|
HEAP32[($7 + 104 | 0) >> 2] = (HEAP32[($7 + 104 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$12;
|
|
};
|
|
}
|
|
HEAP32[(($7 + 16 | 0) + ((HEAP32[($7 + 112 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = 0;
|
|
HEAP32[(HEAP32[($7 + 108 | 0) >> 2] | 0) >> 2] = HEAP32[($7 + 112 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 108 | 0) >> 2] = (HEAP32[($7 + 108 | 0) >> 2] | 0) + 4 | 0;
|
|
HEAP32[($7 + 100 | 0) >> 2] = 1;
|
|
label$13 : {
|
|
label$14 : while (1) {
|
|
if (!((HEAP32[($7 + 100 | 0) >> 2] | 0 | 0) < (HEAP32[($7 + 116 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
HEAPF32[($7 + 96 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAP32[($7 + 100 | 0) >> 2] | 0 | 0) * Math_fround(Math_fround(6.2831854820251465) / Math_fround(HEAP32[($7 + 116 | 0) >> 2] | 0 | 0))) + Math_fround(HEAPF32[(($7 + 48 | 0) + ((HEAP32[($7 + 112 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]));
|
|
label$15 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 96 | 0) >> 2]) > Math_fround(3.1415927410125732) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
HEAPF32[($7 + 96 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($7 + 96 | 0) >> 2]) - Math_fround(6.2831854820251465));
|
|
}
|
|
HEAPF32[($7 + 12 | 0) >> 2] = Math_fround(1.0e9);
|
|
HEAP32[(HEAP32[($7 + 108 | 0) >> 2] | 0) >> 2] = HEAP32[($7 + 112 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 104 | 0) >> 2] = 0;
|
|
label$16 : {
|
|
label$17 : while (1) {
|
|
if (!((HEAP32[($7 + 104 | 0) >> 2] | 0 | 0) < (HEAP32[($7 + 124 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
label$18 : {
|
|
if (!(HEAP32[(($7 + 16 | 0) + ((HEAP32[($7 + 104 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0)) {
|
|
break label$18
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(Math_fround(HEAPF32[(($7 + 48 | 0) + ((HEAP32[($7 + 104 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) - Math_fround(HEAPF32[($7 + 96 | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
label$19 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 8 | 0) >> 2]) > Math_fround(3.1415927410125732) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
HEAPF32[($7 + 8 | 0) >> 2] = Math_fround(Math_fround(6.2831854820251465) - Math_fround(HEAPF32[($7 + 8 | 0) >> 2]));
|
|
}
|
|
label$20 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 8 | 0) >> 2]) < Math_fround(HEAPF32[($7 + 12 | 0) >> 2]) & 1 | 0)) {
|
|
break label$20
|
|
}
|
|
HEAPF32[($7 + 12 | 0) >> 2] = Math_fround(HEAPF32[($7 + 8 | 0) >> 2]);
|
|
HEAP32[(HEAP32[($7 + 108 | 0) >> 2] | 0) >> 2] = HEAP32[($7 + 104 | 0) >> 2] | 0;
|
|
}
|
|
}
|
|
HEAP32[($7 + 104 | 0) >> 2] = (HEAP32[($7 + 104 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$17;
|
|
};
|
|
}
|
|
label$21 : {
|
|
if ((HEAP32[(HEAP32[($7 + 108 | 0) >> 2] | 0) >> 2] | 0 | 0) != (HEAP32[($7 + 112 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$21
|
|
}
|
|
__assert_fail(85735 | 0, 72206 | 0, 248 | 0, 85393 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[(($7 + 16 | 0) + ((HEAP32[(HEAP32[($7 + 108 | 0) >> 2] | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = 0;
|
|
HEAP32[($7 + 108 | 0) >> 2] = (HEAP32[($7 + 108 | 0) >> 2] | 0) + 4 | 0;
|
|
HEAP32[($7 + 100 | 0) >> 2] = (HEAP32[($7 + 100 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$14;
|
|
};
|
|
}
|
|
__stack_pointer = $7 + 128 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAtan2_28float_2c_20float_29($0, $1) {
|
|
$0 = Math_fround($0);
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $7 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAPF32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
$7 = Math_fround(atan2f(Math_fround(Math_fround(HEAPF32[($4 + 12 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2]))));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return Math_fround($7);
|
|
}
|
|
|
|
function dBoxBox2_28btVector3_20const__2c_20float_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_20const__2c_20btVector3_20const__2c_20btVector3__2c_20float__2c_20int__2c_20int_2c_20dContactGeom__2c_20int_2c_20btDiscreteCollisionDetectorInterface__Result__29($0, $1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
$9 = $9 | 0;
|
|
$10 = $10 | 0;
|
|
$11 = $11 | 0;
|
|
$12 = $12 | 0;
|
|
var $15 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $47 = 0, $1698 = 0, $1796 = 0, $1921 = 0, $1953 = 0, $1963 = 0, $2828 = 0, $2920 = 0, $3051 = 0, $3080 = 0, $3248 = 0, $3252 = 0, $61 = Math_fround(0), $73 = Math_fround(0), $85 = Math_fround(0), $583 = Math_fround(0), $591 = Math_fround(0), $598 = Math_fround(0), $696 = Math_fround(0), $704 = Math_fround(0), $711 = Math_fround(0), $809 = Math_fround(0), $817 = Math_fround(0), $824 = Math_fround(0), $921 = Math_fround(0), $929 = Math_fround(0), $937 = Math_fround(0), $1034 = Math_fround(0), $1042 = Math_fround(0), $1050 = Math_fround(0), $1147 = Math_fround(0), $1155 = Math_fround(0), $1163 = Math_fround(0), $1262 = Math_fround(0), $1269 = Math_fround(0), $1277 = Math_fround(0), $1376 = Math_fround(0), $1383 = Math_fround(0), $1391 = Math_fround(0), $1490 = Math_fround(0), $1497 = Math_fround(0), $1505 = Math_fround(0), $1542 = Math_fround(0), $1546 = Math_fround(0), $1550 = Math_fround(0), $1558 = Math_fround(0), $1568 = Math_fround(0), $1578 = Math_fround(0), $1585 = Math_fround(0), $1591 = Math_fround(0), $1597 = Math_fround(0), $1627 = Math_fround(0), $1680 = Math_fround(0), $1690 = Math_fround(0), $1725 = Math_fround(0), $1778 = Math_fround(0), $1788 = Math_fround(0), $1833 = Math_fround(0), $1866 = Math_fround(0), $1912 = Math_fround(0), $1913 = Math_fround(0), $1944 = Math_fround(0), $1945 = Math_fround(0), $2031 = Math_fround(0), $2038 = Math_fround(0), $2045 = Math_fround(0), $2053 = Math_fround(0), $2061 = Math_fround(0), $2069 = Math_fround(0), $2079 = Math_fround(0), $2091 = Math_fround(0), $2103 = Math_fround(0), $2113 = Math_fround(0), $2123 = Math_fround(0), $2133 = Math_fround(0), $2244 = Math_fround(0), $2295 = Math_fround(0), $2606 = 0, $2672 = Math_fround(0), $2816 = Math_fround(0), $2890 = Math_fround(0), $2908 = Math_fround(0), $3032 = Math_fround(0), $3139 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$1 = 0;
|
|
$15 = __stack_pointer - 992 | 0;
|
|
__stack_pointer = $15;
|
|
HEAP32[($15 + 984 | 0) >> 2] = $0;
|
|
HEAP32[($15 + 980 | 0) >> 2] = $1;
|
|
HEAP32[($15 + 976 | 0) >> 2] = $2;
|
|
HEAP32[($15 + 972 | 0) >> 2] = $3;
|
|
HEAP32[($15 + 968 | 0) >> 2] = $4;
|
|
HEAP32[($15 + 964 | 0) >> 2] = $5;
|
|
HEAP32[($15 + 960 | 0) >> 2] = $6;
|
|
HEAP32[($15 + 956 | 0) >> 2] = $7;
|
|
HEAP32[($15 + 952 | 0) >> 2] = $8;
|
|
HEAP32[($15 + 948 | 0) >> 2] = $9;
|
|
HEAP32[($15 + 944 | 0) >> 2] = $10;
|
|
HEAP32[($15 + 940 | 0) >> 2] = $11;
|
|
HEAP32[($15 + 936 | 0) >> 2] = $12;
|
|
HEAPF32[($15 + 932 | 0) >> 2] = Math_fround(1.0499999523162842);
|
|
btVector3__btVector3_28_29($15 + 912 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($15 + 896 | 0 | 0) | 0;
|
|
HEAPF32[($15 + 876 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($15 + 872 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($15 + 868 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($15 + 880 | 0 | 0, $15 + 876 | 0 | 0, $15 + 872 | 0 | 0, $15 + 868 | 0 | 0) | 0;
|
|
HEAP32[($15 + 864 | 0) >> 2] = 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($15 + 724 | 0 | 0, HEAP32[($15 + 972 | 0) >> 2] | 0 | 0, HEAP32[($15 + 984 | 0) >> 2] | 0 | 0);
|
|
$47 = 8;
|
|
i64toi32_i32$2 = ($15 + 724 | 0) + $47 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$3248 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($15 + 912 | 0) + $47 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $3248;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $15;
|
|
i64toi32_i32$1 = HEAP32[($15 + 724 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($15 + 728 | 0) >> 2] | 0;
|
|
$3252 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $15;
|
|
HEAP32[($15 + 912 | 0) >> 2] = $3252;
|
|
HEAP32[($15 + 916 | 0) >> 2] = i64toi32_i32$0;
|
|
$61 = Math_fround(dDOT41_28float_20const__2c_20float_20const__29(HEAP32[($15 + 980 | 0) >> 2] | 0 | 0, btVector3__operator_20float__28_29($15 + 912 | 0 | 0) | 0 | 0));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0, wasm2js_f32$0 = $61), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$73 = Math_fround(dDOT41_28float_20const__2c_20float_20const__29((HEAP32[($15 + 980 | 0) >> 2] | 0) + 4 | 0 | 0, btVector3__operator_20float__28_29($15 + 912 | 0 | 0) | 0 | 0));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0, wasm2js_f32$0 = $73), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$85 = Math_fround(dDOT41_28float_20const__2c_20float_20const__29((HEAP32[($15 + 980 | 0) >> 2] | 0) + 8 | 0 | 0, btVector3__operator_20float__28_29($15 + 912 | 0 | 0) | 0 | 0));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0, wasm2js_f32$0 = $85), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(HEAP32[($15 + 976 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(.5))), HEAPF32[(wasm2js_i32$0 + 852 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($15 + 976 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2]) * Math_fround(.5))), HEAPF32[(wasm2js_i32$0 + 856 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($15 + 976 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2]) * Math_fround(.5))), HEAPF32[(wasm2js_i32$0 + 860 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(HEAP32[($15 + 964 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(.5))), HEAPF32[(wasm2js_i32$0 + 840 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($15 + 964 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2]) * Math_fround(.5))), HEAPF32[(wasm2js_i32$0 + 844 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($15 + 964 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2]) * Math_fround(.5))), HEAPF32[(wasm2js_i32$0 + 848 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(dDOT44_28float_20const__2c_20float_20const__29(HEAP32[($15 + 980 | 0) >> 2] | 0 | 0, HEAP32[($15 + 968 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 836 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(dDOT44_28float_20const__2c_20float_20const__29(HEAP32[($15 + 980 | 0) >> 2] | 0 | 0, (HEAP32[($15 + 968 | 0) >> 2] | 0) + 4 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 832 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(dDOT44_28float_20const__2c_20float_20const__29(HEAP32[($15 + 980 | 0) >> 2] | 0 | 0, (HEAP32[($15 + 968 | 0) >> 2] | 0) + 8 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 828 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(dDOT44_28float_20const__2c_20float_20const__29((HEAP32[($15 + 980 | 0) >> 2] | 0) + 4 | 0 | 0, HEAP32[($15 + 968 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 824 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(dDOT44_28float_20const__2c_20float_20const__29((HEAP32[($15 + 980 | 0) >> 2] | 0) + 4 | 0 | 0, (HEAP32[($15 + 968 | 0) >> 2] | 0) + 4 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 820 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(dDOT44_28float_20const__2c_20float_20const__29((HEAP32[($15 + 980 | 0) >> 2] | 0) + 4 | 0 | 0, (HEAP32[($15 + 968 | 0) >> 2] | 0) + 8 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 816 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(dDOT44_28float_20const__2c_20float_20const__29((HEAP32[($15 + 980 | 0) >> 2] | 0) + 8 | 0 | 0, HEAP32[($15 + 968 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 812 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(dDOT44_28float_20const__2c_20float_20const__29((HEAP32[($15 + 980 | 0) >> 2] | 0) + 8 | 0 | 0, (HEAP32[($15 + 968 | 0) >> 2] | 0) + 4 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 808 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(dDOT44_28float_20const__2c_20float_20const__29((HEAP32[($15 + 980 | 0) >> 2] | 0) + 8 | 0 | 0, (HEAP32[($15 + 968 | 0) >> 2] | 0) + 8 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 804 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[($15 + 836 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 800 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[($15 + 832 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 796 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[($15 + 828 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 792 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[($15 + 824 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 788 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[($15 + 820 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 784 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[($15 + 816 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 780 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[($15 + 812 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 776 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[($15 + 808 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 772 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[($15 + 804 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 768 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($15 + 764 | 0) >> 2] = Math_fround(-3402823466385288598117041.0e14);
|
|
HEAP32[($15 + 744 | 0) >> 2] = 0;
|
|
HEAP32[($15 + 740 | 0) >> 2] = 0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) >> 2])))) - Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 848 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 792 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 844 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 796 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 840 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 800 | 0) >> 2])) + Math_fround(HEAPF32[($15 + 852 | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 760 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($15 + 988 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) > Math_fround(HEAPF32[($15 + 764 | 0) >> 2]) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAPF32[($15 + 764 | 0) >> 2] = Math_fround(HEAPF32[($15 + 760 | 0) >> 2]);
|
|
HEAP32[($15 + 864 | 0) >> 2] = HEAP32[($15 + 980 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $15, wasm2js_i32$1 = Math_fround(HEAPF32[(btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0), HEAP32[(wasm2js_i32$0 + 744 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($15 + 740 | 0) >> 2] = 1;
|
|
}
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 4 | 0) >> 2])))) - Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 848 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 780 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 844 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 784 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 840 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 788 | 0) >> 2])) + Math_fround(HEAPF32[($15 + 856 | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 760 | 0) >> 2] = wasm2js_f32$0;
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP32[($15 + 988 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) > Math_fround(HEAPF32[($15 + 764 | 0) >> 2]) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAPF32[($15 + 764 | 0) >> 2] = Math_fround(HEAPF32[($15 + 760 | 0) >> 2]);
|
|
HEAP32[($15 + 864 | 0) >> 2] = (HEAP32[($15 + 980 | 0) >> 2] | 0) + 4 | 0;
|
|
(wasm2js_i32$0 = $15, wasm2js_i32$1 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 4 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0), HEAP32[(wasm2js_i32$0 + 744 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($15 + 740 | 0) >> 2] = 2;
|
|
}
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 8 | 0) >> 2])))) - Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 848 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 768 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 844 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 772 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 840 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 776 | 0) >> 2])) + Math_fround(HEAPF32[($15 + 860 | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 760 | 0) >> 2] = wasm2js_f32$0;
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAP32[($15 + 988 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
label$7 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) > Math_fround(HEAPF32[($15 + 764 | 0) >> 2]) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAPF32[($15 + 764 | 0) >> 2] = Math_fround(HEAPF32[($15 + 760 | 0) >> 2]);
|
|
HEAP32[($15 + 864 | 0) >> 2] = (HEAP32[($15 + 980 | 0) >> 2] | 0) + 8 | 0;
|
|
(wasm2js_i32$0 = $15, wasm2js_i32$1 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 8 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0), HEAP32[(wasm2js_i32$0 + 744 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($15 + 740 | 0) >> 2] = 3;
|
|
}
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(Math_fround(btFabs_28float_29(Math_fround(Math_fround(dDOT41_28float_20const__2c_20float_20const__29(HEAP32[($15 + 968 | 0) >> 2] | 0 | 0, btVector3__operator_20float__28_29($15 + 912 | 0 | 0) | 0 | 0))))) - Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 860 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 776 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 852 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 800 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($15 + 856 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 788 | 0) >> 2])))) + Math_fround(HEAPF32[($15 + 840 | 0) >> 2])))), HEAPF32[(wasm2js_i32$0 + 760 | 0) >> 2] = wasm2js_f32$0;
|
|
label$8 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
HEAP32[($15 + 988 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
label$9 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) > Math_fround(HEAPF32[($15 + 764 | 0) >> 2]) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
HEAPF32[($15 + 764 | 0) >> 2] = Math_fround(HEAPF32[($15 + 760 | 0) >> 2]);
|
|
HEAP32[($15 + 864 | 0) >> 2] = HEAP32[($15 + 968 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $15, wasm2js_i32$1 = Math_fround(dDOT41_28float_20const__2c_20float_20const__29(HEAP32[($15 + 968 | 0) >> 2] | 0 | 0, btVector3__operator_20float__28_29($15 + 912 | 0 | 0) | 0 | 0)) < Math_fround(0 | 0) & 1 | 0), HEAP32[(wasm2js_i32$0 + 744 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($15 + 740 | 0) >> 2] = 4;
|
|
}
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(Math_fround(btFabs_28float_29(Math_fround(Math_fround(dDOT41_28float_20const__2c_20float_20const__29((HEAP32[($15 + 968 | 0) >> 2] | 0) + 4 | 0 | 0, btVector3__operator_20float__28_29($15 + 912 | 0 | 0) | 0 | 0))))) - Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 860 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 772 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 852 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 796 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($15 + 856 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 784 | 0) >> 2])))) + Math_fround(HEAPF32[($15 + 844 | 0) >> 2])))), HEAPF32[(wasm2js_i32$0 + 760 | 0) >> 2] = wasm2js_f32$0;
|
|
label$10 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
HEAP32[($15 + 988 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
label$11 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) > Math_fround(HEAPF32[($15 + 764 | 0) >> 2]) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
HEAPF32[($15 + 764 | 0) >> 2] = Math_fround(HEAPF32[($15 + 760 | 0) >> 2]);
|
|
HEAP32[($15 + 864 | 0) >> 2] = (HEAP32[($15 + 968 | 0) >> 2] | 0) + 4 | 0;
|
|
(wasm2js_i32$0 = $15, wasm2js_i32$1 = Math_fround(dDOT41_28float_20const__2c_20float_20const__29((HEAP32[($15 + 968 | 0) >> 2] | 0) + 4 | 0 | 0, btVector3__operator_20float__28_29($15 + 912 | 0 | 0) | 0 | 0)) < Math_fround(0 | 0) & 1 | 0), HEAP32[(wasm2js_i32$0 + 744 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($15 + 740 | 0) >> 2] = 5;
|
|
}
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(Math_fround(btFabs_28float_29(Math_fround(Math_fround(dDOT41_28float_20const__2c_20float_20const__29((HEAP32[($15 + 968 | 0) >> 2] | 0) + 8 | 0 | 0, btVector3__operator_20float__28_29($15 + 912 | 0 | 0) | 0 | 0))))) - Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 860 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 768 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 852 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 792 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($15 + 856 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 780 | 0) >> 2])))) + Math_fround(HEAPF32[($15 + 848 | 0) >> 2])))), HEAPF32[(wasm2js_i32$0 + 760 | 0) >> 2] = wasm2js_f32$0;
|
|
label$12 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
HEAP32[($15 + 988 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
label$13 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) > Math_fround(HEAPF32[($15 + 764 | 0) >> 2]) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
HEAPF32[($15 + 764 | 0) >> 2] = Math_fround(HEAPF32[($15 + 760 | 0) >> 2]);
|
|
HEAP32[($15 + 864 | 0) >> 2] = (HEAP32[($15 + 968 | 0) >> 2] | 0) + 8 | 0;
|
|
(wasm2js_i32$0 = $15, wasm2js_i32$1 = Math_fround(dDOT41_28float_20const__2c_20float_20const__29((HEAP32[($15 + 968 | 0) >> 2] | 0) + 8 | 0 | 0, btVector3__operator_20float__28_29($15 + 912 | 0 | 0) | 0 | 0)) < Math_fround(0 | 0) & 1 | 0), HEAP32[(wasm2js_i32$0 + 744 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($15 + 740 | 0) >> 2] = 6;
|
|
}
|
|
HEAPF32[($15 + 720 | 0) >> 2] = Math_fround(9.999999747378752e-06);
|
|
HEAPF32[($15 + 800 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 800 | 0) >> 2]) + Math_fround(HEAPF32[($15 + 720 | 0) >> 2]));
|
|
HEAPF32[($15 + 796 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 796 | 0) >> 2]) + Math_fround(HEAPF32[($15 + 720 | 0) >> 2]));
|
|
HEAPF32[($15 + 792 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 792 | 0) >> 2]) + Math_fround(HEAPF32[($15 + 720 | 0) >> 2]));
|
|
HEAPF32[($15 + 788 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 788 | 0) >> 2]) + Math_fround(HEAPF32[($15 + 720 | 0) >> 2]));
|
|
HEAPF32[($15 + 784 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 784 | 0) >> 2]) + Math_fround(HEAPF32[($15 + 720 | 0) >> 2]));
|
|
HEAPF32[($15 + 780 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 780 | 0) >> 2]) + Math_fround(HEAPF32[($15 + 720 | 0) >> 2]));
|
|
HEAPF32[($15 + 776 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 776 | 0) >> 2]) + Math_fround(HEAPF32[($15 + 720 | 0) >> 2]));
|
|
HEAPF32[($15 + 772 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 772 | 0) >> 2]) + Math_fround(HEAPF32[($15 + 720 | 0) >> 2]));
|
|
HEAPF32[($15 + 768 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 768 | 0) >> 2]) + Math_fround(HEAPF32[($15 + 720 | 0) >> 2]));
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(Math_fround(btFabs_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 824 | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 812 | 0) >> 2]))))))) - Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 848 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 796 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 844 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 792 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 856 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 776 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($15 + 860 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 788 | 0) >> 2]))))))), HEAPF32[(wasm2js_i32$0 + 760 | 0) >> 2] = wasm2js_f32$0;
|
|
label$14 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
HEAP32[($15 + 988 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(btSqrt_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 824 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 824 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($15 + 812 | 0) >> 2])) * Math_fround(-Math_fround(HEAPF32[($15 + 812 | 0) >> 2]))) + Math_fround(0.0))))))), HEAPF32[(wasm2js_i32$0 + 756 | 0) >> 2] = wasm2js_f32$0;
|
|
label$15 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 756 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
HEAPF32[($15 + 760 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
label$16 : {
|
|
if (!(Math_fround(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) * Math_fround(1.0499999523162842)) > Math_fround(HEAPF32[($15 + 764 | 0) >> 2]) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
HEAPF32[($15 + 764 | 0) >> 2] = Math_fround(HEAPF32[($15 + 760 | 0) >> 2]);
|
|
HEAP32[($15 + 864 | 0) >> 2] = 0;
|
|
$583 = Math_fround(Math_fround(0 | 0) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $583), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$591 = Math_fround(Math_fround(-Math_fround(HEAPF32[($15 + 812 | 0) >> 2])) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $591), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$598 = Math_fround(Math_fround(HEAPF32[($15 + 824 | 0) >> 2]) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $598), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_i32$1 = Math_fround(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 824 | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 812 | 0) >> 2])))) < Math_fround(0 | 0) & 1 | 0), HEAP32[(wasm2js_i32$0 + 744 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($15 + 740 | 0) >> 2] = 7;
|
|
}
|
|
}
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(Math_fround(btFabs_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 820 | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 808 | 0) >> 2]))))))) - Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 848 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 800 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 840 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 792 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 856 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 772 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($15 + 860 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 784 | 0) >> 2]))))))), HEAPF32[(wasm2js_i32$0 + 760 | 0) >> 2] = wasm2js_f32$0;
|
|
label$17 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
HEAP32[($15 + 988 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(btSqrt_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 820 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 820 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($15 + 808 | 0) >> 2])) * Math_fround(-Math_fround(HEAPF32[($15 + 808 | 0) >> 2]))) + Math_fround(0.0))))))), HEAPF32[(wasm2js_i32$0 + 756 | 0) >> 2] = wasm2js_f32$0;
|
|
label$18 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 756 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$18
|
|
}
|
|
HEAPF32[($15 + 760 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
label$19 : {
|
|
if (!(Math_fround(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) * Math_fround(1.0499999523162842)) > Math_fround(HEAPF32[($15 + 764 | 0) >> 2]) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
HEAPF32[($15 + 764 | 0) >> 2] = Math_fround(HEAPF32[($15 + 760 | 0) >> 2]);
|
|
HEAP32[($15 + 864 | 0) >> 2] = 0;
|
|
$696 = Math_fround(Math_fround(0 | 0) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $696), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$704 = Math_fround(Math_fround(-Math_fround(HEAPF32[($15 + 808 | 0) >> 2])) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $704), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$711 = Math_fround(Math_fround(HEAPF32[($15 + 820 | 0) >> 2]) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $711), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_i32$1 = Math_fround(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 820 | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 808 | 0) >> 2])))) < Math_fround(0 | 0) & 1 | 0), HEAP32[(wasm2js_i32$0 + 744 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($15 + 740 | 0) >> 2] = 8;
|
|
}
|
|
}
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(Math_fround(btFabs_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 816 | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 804 | 0) >> 2]))))))) - Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 844 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 800 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 840 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 796 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 856 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 768 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($15 + 860 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 780 | 0) >> 2]))))))), HEAPF32[(wasm2js_i32$0 + 760 | 0) >> 2] = wasm2js_f32$0;
|
|
label$20 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$20
|
|
}
|
|
HEAP32[($15 + 988 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(btSqrt_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 816 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 816 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($15 + 804 | 0) >> 2])) * Math_fround(-Math_fround(HEAPF32[($15 + 804 | 0) >> 2]))) + Math_fround(0.0))))))), HEAPF32[(wasm2js_i32$0 + 756 | 0) >> 2] = wasm2js_f32$0;
|
|
label$21 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 756 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$21
|
|
}
|
|
HEAPF32[($15 + 760 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
label$22 : {
|
|
if (!(Math_fround(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) * Math_fround(1.0499999523162842)) > Math_fround(HEAPF32[($15 + 764 | 0) >> 2]) & 1 | 0)) {
|
|
break label$22
|
|
}
|
|
HEAPF32[($15 + 764 | 0) >> 2] = Math_fround(HEAPF32[($15 + 760 | 0) >> 2]);
|
|
HEAP32[($15 + 864 | 0) >> 2] = 0;
|
|
$809 = Math_fround(Math_fround(0 | 0) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $809), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$817 = Math_fround(Math_fround(-Math_fround(HEAPF32[($15 + 804 | 0) >> 2])) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $817), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$824 = Math_fround(Math_fround(HEAPF32[($15 + 816 | 0) >> 2]) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $824), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_i32$1 = Math_fround(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 816 | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 804 | 0) >> 2])))) < Math_fround(0 | 0) & 1 | 0), HEAP32[(wasm2js_i32$0 + 744 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($15 + 740 | 0) >> 2] = 9;
|
|
}
|
|
}
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(Math_fround(btFabs_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($15 + 812 | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 836 | 0) >> 2]))))))) - Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 848 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 784 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 844 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 780 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 852 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 776 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($15 + 860 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 800 | 0) >> 2]))))))), HEAPF32[(wasm2js_i32$0 + 760 | 0) >> 2] = wasm2js_f32$0;
|
|
label$23 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$23
|
|
}
|
|
HEAP32[($15 + 988 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(btSqrt_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($15 + 836 | 0) >> 2])) * Math_fround(-Math_fround(HEAPF32[($15 + 836 | 0) >> 2]))) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 812 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 812 | 0) >> 2])) + Math_fround(0.0))))))), HEAPF32[(wasm2js_i32$0 + 756 | 0) >> 2] = wasm2js_f32$0;
|
|
label$24 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 756 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$24
|
|
}
|
|
HEAPF32[($15 + 760 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
label$25 : {
|
|
if (!(Math_fround(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) * Math_fround(1.0499999523162842)) > Math_fround(HEAPF32[($15 + 764 | 0) >> 2]) & 1 | 0)) {
|
|
break label$25
|
|
}
|
|
HEAPF32[($15 + 764 | 0) >> 2] = Math_fround(HEAPF32[($15 + 760 | 0) >> 2]);
|
|
HEAP32[($15 + 864 | 0) >> 2] = 0;
|
|
$921 = Math_fround(Math_fround(HEAPF32[($15 + 812 | 0) >> 2]) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $921), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$929 = Math_fround(Math_fround(0 | 0) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $929), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$937 = Math_fround(Math_fround(-Math_fround(HEAPF32[($15 + 836 | 0) >> 2])) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $937), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_i32$1 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($15 + 812 | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 836 | 0) >> 2])))) < Math_fround(0 | 0) & 1 | 0), HEAP32[(wasm2js_i32$0 + 744 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($15 + 740 | 0) >> 2] = 10;
|
|
}
|
|
}
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(Math_fround(btFabs_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($15 + 808 | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 832 | 0) >> 2]))))))) - Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 848 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 788 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 840 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 780 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 852 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 772 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($15 + 860 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 796 | 0) >> 2]))))))), HEAPF32[(wasm2js_i32$0 + 760 | 0) >> 2] = wasm2js_f32$0;
|
|
label$26 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$26
|
|
}
|
|
HEAP32[($15 + 988 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(btSqrt_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($15 + 832 | 0) >> 2])) * Math_fround(-Math_fround(HEAPF32[($15 + 832 | 0) >> 2]))) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 808 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 808 | 0) >> 2])) + Math_fround(0.0))))))), HEAPF32[(wasm2js_i32$0 + 756 | 0) >> 2] = wasm2js_f32$0;
|
|
label$27 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 756 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$27
|
|
}
|
|
HEAPF32[($15 + 760 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
label$28 : {
|
|
if (!(Math_fround(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) * Math_fround(1.0499999523162842)) > Math_fround(HEAPF32[($15 + 764 | 0) >> 2]) & 1 | 0)) {
|
|
break label$28
|
|
}
|
|
HEAPF32[($15 + 764 | 0) >> 2] = Math_fround(HEAPF32[($15 + 760 | 0) >> 2]);
|
|
HEAP32[($15 + 864 | 0) >> 2] = 0;
|
|
$1034 = Math_fround(Math_fround(HEAPF32[($15 + 808 | 0) >> 2]) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $1034), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$1042 = Math_fround(Math_fround(0 | 0) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $1042), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$1050 = Math_fround(Math_fround(-Math_fround(HEAPF32[($15 + 832 | 0) >> 2])) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $1050), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_i32$1 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($15 + 808 | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 832 | 0) >> 2])))) < Math_fround(0 | 0) & 1 | 0), HEAP32[(wasm2js_i32$0 + 744 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($15 + 740 | 0) >> 2] = 11;
|
|
}
|
|
}
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(Math_fround(btFabs_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($15 + 804 | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 828 | 0) >> 2]))))))) - Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 844 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 788 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 840 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 784 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 852 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 768 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($15 + 860 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 792 | 0) >> 2]))))))), HEAPF32[(wasm2js_i32$0 + 760 | 0) >> 2] = wasm2js_f32$0;
|
|
label$29 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$29
|
|
}
|
|
HEAP32[($15 + 988 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(btSqrt_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($15 + 828 | 0) >> 2])) * Math_fround(-Math_fround(HEAPF32[($15 + 828 | 0) >> 2]))) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 804 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 804 | 0) >> 2])) + Math_fround(0.0))))))), HEAPF32[(wasm2js_i32$0 + 756 | 0) >> 2] = wasm2js_f32$0;
|
|
label$30 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 756 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$30
|
|
}
|
|
HEAPF32[($15 + 760 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
label$31 : {
|
|
if (!(Math_fround(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) * Math_fround(1.0499999523162842)) > Math_fround(HEAPF32[($15 + 764 | 0) >> 2]) & 1 | 0)) {
|
|
break label$31
|
|
}
|
|
HEAPF32[($15 + 764 | 0) >> 2] = Math_fround(HEAPF32[($15 + 760 | 0) >> 2]);
|
|
HEAP32[($15 + 864 | 0) >> 2] = 0;
|
|
$1147 = Math_fround(Math_fround(HEAPF32[($15 + 804 | 0) >> 2]) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $1147), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$1155 = Math_fround(Math_fround(0 | 0) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $1155), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$1163 = Math_fround(Math_fround(-Math_fround(HEAPF32[($15 + 828 | 0) >> 2])) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $1163), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_i32$1 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($15 + 804 | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 828 | 0) >> 2])))) < Math_fround(0 | 0) & 1 | 0), HEAP32[(wasm2js_i32$0 + 744 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($15 + 740 | 0) >> 2] = 12;
|
|
}
|
|
}
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(Math_fround(btFabs_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 836 | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($15 + 824 | 0) >> 2]))))))) - Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 848 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 772 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 844 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 768 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 852 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 788 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($15 + 856 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 800 | 0) >> 2]))))))), HEAPF32[(wasm2js_i32$0 + 760 | 0) >> 2] = wasm2js_f32$0;
|
|
label$32 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$32
|
|
}
|
|
HEAP32[($15 + 988 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(btSqrt_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($15 + 824 | 0) >> 2])) * Math_fround(-Math_fround(HEAPF32[($15 + 824 | 0) >> 2]))) + Math_fround(Math_fround(HEAPF32[($15 + 836 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 836 | 0) >> 2]))) + Math_fround(0 | 0)))))), HEAPF32[(wasm2js_i32$0 + 756 | 0) >> 2] = wasm2js_f32$0;
|
|
label$33 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 756 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$33
|
|
}
|
|
HEAPF32[($15 + 760 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
label$34 : {
|
|
if (!(Math_fround(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) * Math_fround(1.0499999523162842)) > Math_fround(HEAPF32[($15 + 764 | 0) >> 2]) & 1 | 0)) {
|
|
break label$34
|
|
}
|
|
HEAPF32[($15 + 764 | 0) >> 2] = Math_fround(HEAPF32[($15 + 760 | 0) >> 2]);
|
|
HEAP32[($15 + 864 | 0) >> 2] = 0;
|
|
$1262 = Math_fround(Math_fround(-Math_fround(HEAPF32[($15 + 824 | 0) >> 2])) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $1262), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$1269 = Math_fround(Math_fround(HEAPF32[($15 + 836 | 0) >> 2]) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $1269), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$1277 = Math_fround(Math_fround(0 | 0) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $1277), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_i32$1 = Math_fround(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 836 | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($15 + 824 | 0) >> 2])))) < Math_fround(0 | 0) & 1 | 0), HEAP32[(wasm2js_i32$0 + 744 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($15 + 740 | 0) >> 2] = 13;
|
|
}
|
|
}
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(Math_fround(btFabs_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 832 | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($15 + 820 | 0) >> 2]))))))) - Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 848 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 776 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 840 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 768 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 852 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 784 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($15 + 856 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 796 | 0) >> 2]))))))), HEAPF32[(wasm2js_i32$0 + 760 | 0) >> 2] = wasm2js_f32$0;
|
|
label$35 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$35
|
|
}
|
|
HEAP32[($15 + 988 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(btSqrt_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($15 + 820 | 0) >> 2])) * Math_fround(-Math_fround(HEAPF32[($15 + 820 | 0) >> 2]))) + Math_fround(Math_fround(HEAPF32[($15 + 832 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 832 | 0) >> 2]))) + Math_fround(0 | 0)))))), HEAPF32[(wasm2js_i32$0 + 756 | 0) >> 2] = wasm2js_f32$0;
|
|
label$36 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 756 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$36
|
|
}
|
|
HEAPF32[($15 + 760 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
label$37 : {
|
|
if (!(Math_fround(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) * Math_fround(1.0499999523162842)) > Math_fround(HEAPF32[($15 + 764 | 0) >> 2]) & 1 | 0)) {
|
|
break label$37
|
|
}
|
|
HEAPF32[($15 + 764 | 0) >> 2] = Math_fround(HEAPF32[($15 + 760 | 0) >> 2]);
|
|
HEAP32[($15 + 864 | 0) >> 2] = 0;
|
|
$1376 = Math_fround(Math_fround(-Math_fround(HEAPF32[($15 + 820 | 0) >> 2])) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $1376), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$1383 = Math_fround(Math_fround(HEAPF32[($15 + 832 | 0) >> 2]) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $1383), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$1391 = Math_fround(Math_fround(0 | 0) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $1391), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_i32$1 = Math_fround(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 832 | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($15 + 820 | 0) >> 2])))) < Math_fround(0 | 0) & 1 | 0), HEAP32[(wasm2js_i32$0 + 744 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($15 + 740 | 0) >> 2] = 14;
|
|
}
|
|
}
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(Math_fround(btFabs_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 828 | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($15 + 816 | 0) >> 2]))))))) - Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 844 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 776 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 840 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 772 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 852 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 780 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($15 + 856 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 792 | 0) >> 2]))))))), HEAPF32[(wasm2js_i32$0 + 760 | 0) >> 2] = wasm2js_f32$0;
|
|
label$38 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$38
|
|
}
|
|
HEAP32[($15 + 988 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(btSqrt_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($15 + 816 | 0) >> 2])) * Math_fround(-Math_fround(HEAPF32[($15 + 816 | 0) >> 2]))) + Math_fround(Math_fround(HEAPF32[($15 + 828 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 828 | 0) >> 2]))) + Math_fround(0 | 0)))))), HEAPF32[(wasm2js_i32$0 + 756 | 0) >> 2] = wasm2js_f32$0;
|
|
label$39 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 756 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$39
|
|
}
|
|
HEAPF32[($15 + 760 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
label$40 : {
|
|
if (!(Math_fround(Math_fround(HEAPF32[($15 + 760 | 0) >> 2]) * Math_fround(1.0499999523162842)) > Math_fround(HEAPF32[($15 + 764 | 0) >> 2]) & 1 | 0)) {
|
|
break label$40
|
|
}
|
|
HEAPF32[($15 + 764 | 0) >> 2] = Math_fround(HEAPF32[($15 + 760 | 0) >> 2]);
|
|
HEAP32[($15 + 864 | 0) >> 2] = 0;
|
|
$1490 = Math_fround(Math_fround(-Math_fround(HEAPF32[($15 + 816 | 0) >> 2])) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $1490), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$1497 = Math_fround(Math_fround(HEAPF32[($15 + 828 | 0) >> 2]) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $1497), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$1505 = Math_fround(Math_fround(0 | 0) / Math_fround(HEAPF32[($15 + 756 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0, wasm2js_f32$0 = $1505), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_i32$1 = Math_fround(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 828 | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float__28_29($15 + 896 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($15 + 816 | 0) >> 2])))) < Math_fround(0 | 0) & 1 | 0), HEAP32[(wasm2js_i32$0 + 744 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($15 + 740 | 0) >> 2] = 15;
|
|
}
|
|
}
|
|
label$41 : {
|
|
if (HEAP32[($15 + 740 | 0) >> 2] | 0) {
|
|
break label$41
|
|
}
|
|
HEAP32[($15 + 988 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
label$42 : {
|
|
label$43 : {
|
|
if (!((HEAP32[($15 + 864 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$43
|
|
}
|
|
$1542 = Math_fround(HEAPF32[(HEAP32[($15 + 864 | 0) >> 2] | 0) >> 2]);
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($15 + 960 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $1542), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$1546 = Math_fround(HEAPF32[((HEAP32[($15 + 864 | 0) >> 2] | 0) + 16 | 0) >> 2]);
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($15 + 960 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $1546), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$1550 = Math_fround(HEAPF32[((HEAP32[($15 + 864 | 0) >> 2] | 0) + 32 | 0) >> 2]);
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($15 + 960 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $1550), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
break label$42;
|
|
}
|
|
$1558 = Math_fround(dDOT_28float_20const__2c_20float_20const__29(HEAP32[($15 + 980 | 0) >> 2] | 0 | 0, btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0 | 0));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($15 + 960 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $1558), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$1568 = Math_fround(dDOT_28float_20const__2c_20float_20const__29((HEAP32[($15 + 980 | 0) >> 2] | 0) + 16 | 0 | 0, btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0 | 0));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($15 + 960 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $1568), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$1578 = Math_fround(dDOT_28float_20const__2c_20float_20const__29((HEAP32[($15 + 980 | 0) >> 2] | 0) + 32 | 0 | 0, btVector3__operator_20float__28_29($15 + 880 | 0 | 0) | 0 | 0));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($15 + 960 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $1578), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
label$44 : {
|
|
if (!(HEAP32[($15 + 744 | 0) >> 2] | 0)) {
|
|
break label$44
|
|
}
|
|
$1585 = Math_fround(-Math_fround(HEAPF32[(btVector3__operator_20float__28_29(HEAP32[($15 + 960 | 0) >> 2] | 0 | 0) | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($15 + 960 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $1585), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$1591 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float__28_29(HEAP32[($15 + 960 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($15 + 960 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $1591), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$1597 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float__28_29(HEAP32[($15 + 960 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($15 + 960 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $1597), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
HEAPF32[(HEAP32[($15 + 956 | 0) >> 2] | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($15 + 764 | 0) >> 2]));
|
|
label$45 : {
|
|
if (!((HEAP32[($15 + 740 | 0) >> 2] | 0 | 0) > (6 | 0) & 1 | 0)) {
|
|
break label$45
|
|
}
|
|
btVector3__btVector3_28_29($15 + 704 | 0 | 0) | 0;
|
|
HEAP32[($15 + 752 | 0) >> 2] = 0;
|
|
label$46 : {
|
|
label$47 : while (1) {
|
|
if (!((HEAP32[($15 + 752 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$46
|
|
}
|
|
$1627 = Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($15 + 984 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($15 + 704 | 0 | 0) | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $1627), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP32[($15 + 752 | 0) >> 2] = (HEAP32[($15 + 752 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$47;
|
|
};
|
|
}
|
|
HEAP32[($15 + 748 | 0) >> 2] = 0;
|
|
label$48 : {
|
|
label$49 : while (1) {
|
|
if (!((HEAP32[($15 + 748 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$48
|
|
}
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(dDOT14_28float_20const__2c_20float_20const__29(btVector3__operator_20float__28_29(HEAP32[($15 + 960 | 0) >> 2] | 0 | 0) | 0 | 0, (HEAP32[($15 + 980 | 0) >> 2] | 0) + ((HEAP32[($15 + 748 | 0) >> 2] | 0) << 2 | 0) | 0 | 0)) > Math_fround(0 | 0) & 1 | 0 ? Math_fround(1.0) : Math_fround(-1.0)), HEAPF32[(wasm2js_i32$0 + 700 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP32[($15 + 752 | 0) >> 2] = 0;
|
|
label$50 : {
|
|
label$51 : while (1) {
|
|
if (!((HEAP32[($15 + 752 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$50
|
|
}
|
|
$1680 = Math_fround(Math_fround(HEAPF32[($15 + 700 | 0) >> 2]) * Math_fround(HEAPF32[(($15 + 852 | 0) + ((HEAP32[($15 + 748 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]));
|
|
$1690 = Math_fround(HEAPF32[((HEAP32[($15 + 980 | 0) >> 2] | 0) + ((((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) + (HEAP32[($15 + 748 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2]);
|
|
$1698 = (btVector3__operator_20float__28_29($15 + 704 | 0 | 0) | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
HEAPF32[$1698 >> 2] = Math_fround(Math_fround($1680 * $1690) + Math_fround(HEAPF32[$1698 >> 2]));
|
|
HEAP32[($15 + 752 | 0) >> 2] = (HEAP32[($15 + 752 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$51;
|
|
};
|
|
}
|
|
HEAP32[($15 + 748 | 0) >> 2] = (HEAP32[($15 + 748 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$49;
|
|
};
|
|
}
|
|
btVector3__btVector3_28_29($15 + 684 | 0 | 0) | 0;
|
|
HEAP32[($15 + 752 | 0) >> 2] = 0;
|
|
label$52 : {
|
|
label$53 : while (1) {
|
|
if (!((HEAP32[($15 + 752 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$52
|
|
}
|
|
$1725 = Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($15 + 972 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($15 + 684 | 0 | 0) | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $1725), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP32[($15 + 752 | 0) >> 2] = (HEAP32[($15 + 752 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$53;
|
|
};
|
|
}
|
|
HEAP32[($15 + 748 | 0) >> 2] = 0;
|
|
label$54 : {
|
|
label$55 : while (1) {
|
|
if (!((HEAP32[($15 + 748 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$54
|
|
}
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(dDOT14_28float_20const__2c_20float_20const__29(btVector3__operator_20float__28_29(HEAP32[($15 + 960 | 0) >> 2] | 0 | 0) | 0 | 0, (HEAP32[($15 + 968 | 0) >> 2] | 0) + ((HEAP32[($15 + 748 | 0) >> 2] | 0) << 2 | 0) | 0 | 0)) > Math_fround(0 | 0) & 1 | 0 ? Math_fround(-1.0) : Math_fround(1.0)), HEAPF32[(wasm2js_i32$0 + 700 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP32[($15 + 752 | 0) >> 2] = 0;
|
|
label$56 : {
|
|
label$57 : while (1) {
|
|
if (!((HEAP32[($15 + 752 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$56
|
|
}
|
|
$1778 = Math_fround(Math_fround(HEAPF32[($15 + 700 | 0) >> 2]) * Math_fround(HEAPF32[(($15 + 840 | 0) + ((HEAP32[($15 + 748 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]));
|
|
$1788 = Math_fround(HEAPF32[((HEAP32[($15 + 968 | 0) >> 2] | 0) + ((((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) + (HEAP32[($15 + 748 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2]);
|
|
$1796 = (btVector3__operator_20float__28_29($15 + 684 | 0 | 0) | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
HEAPF32[$1796 >> 2] = Math_fround(Math_fround($1778 * $1788) + Math_fround(HEAPF32[$1796 >> 2]));
|
|
HEAP32[($15 + 752 | 0) >> 2] = (HEAP32[($15 + 752 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$57;
|
|
};
|
|
}
|
|
HEAP32[($15 + 748 | 0) >> 2] = (HEAP32[($15 + 748 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$55;
|
|
};
|
|
}
|
|
btVector3__btVector3_28_29($15 + 660 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($15 + 644 | 0 | 0) | 0;
|
|
HEAP32[($15 + 752 | 0) >> 2] = 0;
|
|
label$58 : {
|
|
label$59 : while (1) {
|
|
if (!((HEAP32[($15 + 752 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$58
|
|
}
|
|
$1833 = Math_fround(HEAPF32[((HEAP32[($15 + 980 | 0) >> 2] | 0) + (((((HEAP32[($15 + 740 | 0) >> 2] | 0) - 7 | 0 | 0) / (3 | 0) | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0) << 2 | 0) | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($15 + 660 | 0 | 0) | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $1833), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP32[($15 + 752 | 0) >> 2] = (HEAP32[($15 + 752 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$59;
|
|
};
|
|
}
|
|
HEAP32[($15 + 752 | 0) >> 2] = 0;
|
|
label$60 : {
|
|
label$61 : while (1) {
|
|
if (!((HEAP32[($15 + 752 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$60
|
|
}
|
|
$1866 = Math_fround(HEAPF32[((HEAP32[($15 + 968 | 0) >> 2] | 0) + (((((HEAP32[($15 + 740 | 0) >> 2] | 0) - 7 | 0 | 0) % (3 | 0) | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0) << 2 | 0) | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($15 + 644 | 0 | 0) | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $1866), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP32[($15 + 752 | 0) >> 2] = (HEAP32[($15 + 752 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$61;
|
|
};
|
|
}
|
|
dLineClosestApproach_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float__2c_20float__29($15 + 704 | 0 | 0, $15 + 660 | 0 | 0, $15 + 684 | 0 | 0, $15 + 644 | 0 | 0, $15 + 680 | 0 | 0, $15 + 676 | 0 | 0);
|
|
HEAP32[($15 + 752 | 0) >> 2] = 0;
|
|
label$62 : {
|
|
label$63 : while (1) {
|
|
if (!((HEAP32[($15 + 752 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$62
|
|
}
|
|
$1912 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 660 | 0 | 0) | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
$1913 = Math_fround(HEAPF32[($15 + 680 | 0) >> 2]);
|
|
$1921 = (btVector3__operator_20float__28_29($15 + 704 | 0 | 0) | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
HEAPF32[$1921 >> 2] = Math_fround(Math_fround($1912 * $1913) + Math_fround(HEAPF32[$1921 >> 2]));
|
|
HEAP32[($15 + 752 | 0) >> 2] = (HEAP32[($15 + 752 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$63;
|
|
};
|
|
}
|
|
HEAP32[($15 + 752 | 0) >> 2] = 0;
|
|
label$64 : {
|
|
label$65 : while (1) {
|
|
if (!((HEAP32[($15 + 752 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$64
|
|
}
|
|
$1944 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 644 | 0 | 0) | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
$1945 = Math_fround(HEAPF32[($15 + 676 | 0) >> 2]);
|
|
$1953 = (btVector3__operator_20float__28_29($15 + 684 | 0 | 0) | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
HEAPF32[$1953 >> 2] = Math_fround(Math_fround($1944 * $1945) + Math_fround(HEAPF32[$1953 >> 2]));
|
|
HEAP32[($15 + 752 | 0) >> 2] = (HEAP32[($15 + 752 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$65;
|
|
};
|
|
}
|
|
btVector3__btVector3_28_29($15 + 628 | 0 | 0) | 0;
|
|
$1963 = HEAP32[($15 + 936 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__29($15 + 612 | 0 | 0, HEAP32[($15 + 960 | 0) >> 2] | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$1963 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($1963, $15 + 612 | 0, $15 + 684 | 0, Math_fround(-Math_fround(HEAPF32[(HEAP32[($15 + 956 | 0) >> 2] | 0) >> 2])));
|
|
HEAP32[(HEAP32[($15 + 952 | 0) >> 2] | 0) >> 2] = HEAP32[($15 + 740 | 0) >> 2] | 0;
|
|
HEAP32[($15 + 988 | 0) >> 2] = 1;
|
|
break label$1;
|
|
}
|
|
label$66 : {
|
|
label$67 : {
|
|
if (!((HEAP32[($15 + 740 | 0) >> 2] | 0 | 0) <= (3 | 0) & 1 | 0)) {
|
|
break label$67
|
|
}
|
|
HEAP32[($15 + 608 | 0) >> 2] = HEAP32[($15 + 980 | 0) >> 2] | 0;
|
|
HEAP32[($15 + 604 | 0) >> 2] = HEAP32[($15 + 968 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $15, wasm2js_i32$1 = btVector3__operator_20float_20const__28_29_20const(HEAP32[($15 + 984 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 600 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $15, wasm2js_i32$1 = btVector3__operator_20float_20const__28_29_20const(HEAP32[($15 + 972 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 596 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($15 + 592 | 0) >> 2] = $15 + 852 | 0;
|
|
HEAP32[($15 + 588 | 0) >> 2] = $15 + 840 | 0;
|
|
break label$66;
|
|
}
|
|
HEAP32[($15 + 608 | 0) >> 2] = HEAP32[($15 + 968 | 0) >> 2] | 0;
|
|
HEAP32[($15 + 604 | 0) >> 2] = HEAP32[($15 + 980 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $15, wasm2js_i32$1 = btVector3__operator_20float_20const__28_29_20const(HEAP32[($15 + 972 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 600 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $15, wasm2js_i32$1 = btVector3__operator_20float_20const__28_29_20const(HEAP32[($15 + 984 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 596 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($15 + 592 | 0) >> 2] = $15 + 840 | 0;
|
|
HEAP32[($15 + 588 | 0) >> 2] = $15 + 852 | 0;
|
|
}
|
|
btVector3__btVector3_28_29($15 + 572 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($15 + 556 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($15 + 540 | 0 | 0) | 0;
|
|
label$68 : {
|
|
label$69 : {
|
|
if (!((HEAP32[($15 + 740 | 0) >> 2] | 0 | 0) <= (3 | 0) & 1 | 0)) {
|
|
break label$69
|
|
}
|
|
$2031 = Math_fround(HEAPF32[(btVector3__operator_20float__28_29(HEAP32[($15 + 960 | 0) >> 2] | 0 | 0) | 0) >> 2]);
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 572 | 0 | 0) | 0, wasm2js_f32$0 = $2031), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$2038 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29(HEAP32[($15 + 960 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2]);
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 572 | 0 | 0) | 0, wasm2js_f32$0 = $2038), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$2045 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29(HEAP32[($15 + 960 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2]);
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 572 | 0 | 0) | 0, wasm2js_f32$0 = $2045), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
break label$68;
|
|
}
|
|
$2053 = Math_fround(-Math_fround(HEAPF32[(btVector3__operator_20float__28_29(HEAP32[($15 + 960 | 0) >> 2] | 0 | 0) | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 572 | 0 | 0) | 0, wasm2js_f32$0 = $2053), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$2061 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float__28_29(HEAP32[($15 + 960 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 572 | 0 | 0) | 0, wasm2js_f32$0 = $2061), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$2069 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float__28_29(HEAP32[($15 + 960 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 572 | 0 | 0) | 0, wasm2js_f32$0 = $2069), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
$2079 = Math_fround(dDOT41_28float_20const__2c_20float_20const__29(HEAP32[($15 + 604 | 0) >> 2] | 0 | 0, btVector3__operator_20float__28_29($15 + 572 | 0 | 0) | 0 | 0));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 556 | 0 | 0) | 0, wasm2js_f32$0 = $2079), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$2091 = Math_fround(dDOT41_28float_20const__2c_20float_20const__29((HEAP32[($15 + 604 | 0) >> 2] | 0) + 4 | 0 | 0, btVector3__operator_20float__28_29($15 + 572 | 0 | 0) | 0 | 0));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 556 | 0 | 0) | 0, wasm2js_f32$0 = $2091), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$2103 = Math_fround(dDOT41_28float_20const__2c_20float_20const__29((HEAP32[($15 + 604 | 0) >> 2] | 0) + 8 | 0 | 0, btVector3__operator_20float__28_29($15 + 572 | 0 | 0) | 0 | 0));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 556 | 0 | 0) | 0, wasm2js_f32$0 = $2103), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
$2113 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float__28_29($15 + 556 | 0 | 0) | 0) >> 2]))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 540 | 0 | 0) | 0, wasm2js_f32$0 = $2113), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$2123 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 556 | 0 | 0) | 0) + 4 | 0) >> 2]))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 540 | 0 | 0) | 0, wasm2js_f32$0 = $2123), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$2133 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 556 | 0 | 0) | 0) + 8 | 0) >> 2]))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($15 + 540 | 0 | 0) | 0, wasm2js_f32$0 = $2133), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
label$70 : {
|
|
label$71 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 540 | 0 | 0) | 0) + 4 | 0) >> 2]) > Math_fround(HEAPF32[(btVector3__operator_20float__28_29($15 + 540 | 0 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$71
|
|
}
|
|
label$72 : {
|
|
label$73 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 540 | 0 | 0) | 0) + 4 | 0) >> 2]) > Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 540 | 0 | 0) | 0) + 8 | 0) >> 2]) & 1 | 0)) {
|
|
break label$73
|
|
}
|
|
HEAP32[($15 + 532 | 0) >> 2] = 0;
|
|
HEAP32[($15 + 536 | 0) >> 2] = 1;
|
|
HEAP32[($15 + 528 | 0) >> 2] = 2;
|
|
break label$72;
|
|
}
|
|
HEAP32[($15 + 532 | 0) >> 2] = 0;
|
|
HEAP32[($15 + 528 | 0) >> 2] = 1;
|
|
HEAP32[($15 + 536 | 0) >> 2] = 2;
|
|
}
|
|
break label$70;
|
|
}
|
|
label$74 : {
|
|
label$75 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__operator_20float__28_29($15 + 540 | 0 | 0) | 0) >> 2]) > Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 540 | 0 | 0) | 0) + 8 | 0) >> 2]) & 1 | 0)) {
|
|
break label$75
|
|
}
|
|
HEAP32[($15 + 536 | 0) >> 2] = 0;
|
|
HEAP32[($15 + 532 | 0) >> 2] = 1;
|
|
HEAP32[($15 + 528 | 0) >> 2] = 2;
|
|
break label$74;
|
|
}
|
|
HEAP32[($15 + 532 | 0) >> 2] = 0;
|
|
HEAP32[($15 + 528 | 0) >> 2] = 1;
|
|
HEAP32[($15 + 536 | 0) >> 2] = 2;
|
|
}
|
|
}
|
|
btVector3__btVector3_28_29($15 + 512 | 0 | 0) | 0;
|
|
label$76 : {
|
|
label$77 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($15 + 556 | 0 | 0) | 0) + ((HEAP32[($15 + 536 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$77
|
|
}
|
|
HEAP32[($15 + 752 | 0) >> 2] = 0;
|
|
label$78 : {
|
|
label$79 : while (1) {
|
|
if (!((HEAP32[($15 + 752 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$78
|
|
}
|
|
$2244 = Math_fround(Math_fround(Math_fround(HEAPF32[((HEAP32[($15 + 588 | 0) >> 2] | 0) + ((HEAP32[($15 + 536 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($15 + 604 | 0) >> 2] | 0) + ((((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) + (HEAP32[($15 + 536 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[((HEAP32[($15 + 596 | 0) >> 2] | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) - Math_fround(HEAPF32[((HEAP32[($15 + 600 | 0) >> 2] | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($15 + 512 | 0 | 0) | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $2244), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP32[($15 + 752 | 0) >> 2] = (HEAP32[($15 + 752 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$79;
|
|
};
|
|
}
|
|
break label$76;
|
|
}
|
|
HEAP32[($15 + 752 | 0) >> 2] = 0;
|
|
label$80 : {
|
|
label$81 : while (1) {
|
|
if (!((HEAP32[($15 + 752 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$80
|
|
}
|
|
$2295 = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[((HEAP32[($15 + 588 | 0) >> 2] | 0) + ((HEAP32[($15 + 536 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])) * Math_fround(HEAPF32[((HEAP32[($15 + 604 | 0) >> 2] | 0) + ((((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) + (HEAP32[($15 + 536 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[((HEAP32[($15 + 596 | 0) >> 2] | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) - Math_fround(HEAPF32[((HEAP32[($15 + 600 | 0) >> 2] | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($15 + 512 | 0 | 0) | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $2295), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP32[($15 + 752 | 0) >> 2] = (HEAP32[($15 + 752 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$81;
|
|
};
|
|
}
|
|
}
|
|
label$82 : {
|
|
label$83 : {
|
|
if (!((HEAP32[($15 + 740 | 0) >> 2] | 0 | 0) <= (3 | 0) & 1 | 0)) {
|
|
break label$83
|
|
}
|
|
HEAP32[($15 + 508 | 0) >> 2] = (HEAP32[($15 + 740 | 0) >> 2] | 0) - 1 | 0;
|
|
break label$82;
|
|
}
|
|
HEAP32[($15 + 508 | 0) >> 2] = (HEAP32[($15 + 740 | 0) >> 2] | 0) - 4 | 0;
|
|
}
|
|
label$84 : {
|
|
label$85 : {
|
|
if (HEAP32[($15 + 508 | 0) >> 2] | 0) {
|
|
break label$85
|
|
}
|
|
HEAP32[($15 + 504 | 0) >> 2] = 1;
|
|
HEAP32[($15 + 500 | 0) >> 2] = 2;
|
|
break label$84;
|
|
}
|
|
label$86 : {
|
|
label$87 : {
|
|
if (!((HEAP32[($15 + 508 | 0) >> 2] | 0 | 0) == (1 | 0) & 1 | 0)) {
|
|
break label$87
|
|
}
|
|
HEAP32[($15 + 504 | 0) >> 2] = 0;
|
|
HEAP32[($15 + 500 | 0) >> 2] = 2;
|
|
break label$86;
|
|
}
|
|
HEAP32[($15 + 504 | 0) >> 2] = 0;
|
|
HEAP32[($15 + 500 | 0) >> 2] = 1;
|
|
}
|
|
}
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(dDOT14_28float_20const__2c_20float_20const__29(btVector3__operator_20float__28_29($15 + 512 | 0 | 0) | 0 | 0, (HEAP32[($15 + 608 | 0) >> 2] | 0) + ((HEAP32[($15 + 504 | 0) >> 2] | 0) << 2 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 460 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(dDOT14_28float_20const__2c_20float_20const__29(btVector3__operator_20float__28_29($15 + 512 | 0 | 0) | 0 | 0, (HEAP32[($15 + 608 | 0) >> 2] | 0) + ((HEAP32[($15 + 500 | 0) >> 2] | 0) << 2 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 456 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(dDOT44_28float_20const__2c_20float_20const__29((HEAP32[($15 + 608 | 0) >> 2] | 0) + ((HEAP32[($15 + 504 | 0) >> 2] | 0) << 2 | 0) | 0 | 0, (HEAP32[($15 + 604 | 0) >> 2] | 0) + ((HEAP32[($15 + 532 | 0) >> 2] | 0) << 2 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 452 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(dDOT44_28float_20const__2c_20float_20const__29((HEAP32[($15 + 608 | 0) >> 2] | 0) + ((HEAP32[($15 + 504 | 0) >> 2] | 0) << 2 | 0) | 0 | 0, (HEAP32[($15 + 604 | 0) >> 2] | 0) + ((HEAP32[($15 + 528 | 0) >> 2] | 0) << 2 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 448 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(dDOT44_28float_20const__2c_20float_20const__29((HEAP32[($15 + 608 | 0) >> 2] | 0) + ((HEAP32[($15 + 500 | 0) >> 2] | 0) << 2 | 0) | 0 | 0, (HEAP32[($15 + 604 | 0) >> 2] | 0) + ((HEAP32[($15 + 532 | 0) >> 2] | 0) << 2 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 444 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(dDOT44_28float_20const__2c_20float_20const__29((HEAP32[($15 + 608 | 0) >> 2] | 0) + ((HEAP32[($15 + 500 | 0) >> 2] | 0) << 2 | 0) | 0 | 0, (HEAP32[($15 + 604 | 0) >> 2] | 0) + ((HEAP32[($15 + 528 | 0) >> 2] | 0) << 2 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 440 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($15 + 436 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 452 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($15 + 588 | 0) >> 2] | 0) + ((HEAP32[($15 + 532 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]));
|
|
HEAPF32[($15 + 432 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 444 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($15 + 588 | 0) >> 2] | 0) + ((HEAP32[($15 + 532 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]));
|
|
HEAPF32[($15 + 428 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 448 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($15 + 588 | 0) >> 2] | 0) + ((HEAP32[($15 + 528 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]));
|
|
HEAPF32[($15 + 424 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 440 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($15 + 588 | 0) >> 2] | 0) + ((HEAP32[($15 + 528 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]));
|
|
HEAPF32[($15 + 464 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 460 | 0) >> 2]) - Math_fround(HEAPF32[($15 + 436 | 0) >> 2])) - Math_fround(HEAPF32[($15 + 428 | 0) >> 2]));
|
|
HEAPF32[($15 + 468 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 456 | 0) >> 2]) - Math_fround(HEAPF32[($15 + 432 | 0) >> 2])) - Math_fround(HEAPF32[($15 + 424 | 0) >> 2]));
|
|
HEAPF32[($15 + 472 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 460 | 0) >> 2]) - Math_fround(HEAPF32[($15 + 436 | 0) >> 2])) + Math_fround(HEAPF32[($15 + 428 | 0) >> 2]));
|
|
HEAPF32[($15 + 476 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 456 | 0) >> 2]) - Math_fround(HEAPF32[($15 + 432 | 0) >> 2])) + Math_fround(HEAPF32[($15 + 424 | 0) >> 2]));
|
|
HEAPF32[($15 + 480 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 460 | 0) >> 2]) + Math_fround(HEAPF32[($15 + 436 | 0) >> 2])) + Math_fround(HEAPF32[($15 + 428 | 0) >> 2]));
|
|
HEAPF32[($15 + 484 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 456 | 0) >> 2]) + Math_fround(HEAPF32[($15 + 432 | 0) >> 2])) + Math_fround(HEAPF32[($15 + 424 | 0) >> 2]));
|
|
HEAPF32[($15 + 488 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 460 | 0) >> 2]) + Math_fround(HEAPF32[($15 + 436 | 0) >> 2])) - Math_fround(HEAPF32[($15 + 428 | 0) >> 2]));
|
|
HEAPF32[($15 + 492 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 456 | 0) >> 2]) + Math_fround(HEAPF32[($15 + 432 | 0) >> 2])) - Math_fround(HEAPF32[($15 + 424 | 0) >> 2]));
|
|
HEAPF32[($15 + 416 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($15 + 592 | 0) >> 2] | 0) + ((HEAP32[($15 + 504 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
HEAPF32[($15 + 420 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($15 + 592 | 0) >> 2] | 0) + ((HEAP32[($15 + 500 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
(wasm2js_i32$0 = $15, wasm2js_i32$1 = intersectRectQuad2_28float__2c_20float__2c_20float__29($15 + 416 | 0 | 0, $15 + 464 | 0 | 0, $15 + 352 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 348 | 0) >> 2] = wasm2js_i32$1;
|
|
label$88 : {
|
|
if (!((HEAP32[($15 + 348 | 0) >> 2] | 0 | 0) < (1 | 0) & 1 | 0)) {
|
|
break label$88
|
|
}
|
|
HEAP32[($15 + 988 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
HEAPF32[($15 + 204 | 0) >> 2] = Math_fround(Math_fround(1.0) / Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 452 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 440 | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[($15 + 448 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 444 | 0) >> 2])))));
|
|
HEAPF32[($15 + 452 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 452 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 204 | 0) >> 2]));
|
|
HEAPF32[($15 + 448 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 448 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 204 | 0) >> 2]));
|
|
HEAPF32[($15 + 444 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 444 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 204 | 0) >> 2]));
|
|
HEAPF32[($15 + 440 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 440 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 204 | 0) >> 2]));
|
|
HEAP32[($15 + 200 | 0) >> 2] = 0;
|
|
HEAP32[($15 + 748 | 0) >> 2] = 0;
|
|
label$89 : {
|
|
label$90 : while (1) {
|
|
if (!((HEAP32[($15 + 748 | 0) >> 2] | 0 | 0) < (HEAP32[($15 + 348 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$89
|
|
}
|
|
HEAPF32[($15 + 196 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 440 | 0) >> 2]) * Math_fround(Math_fround(HEAPF32[(($15 + 352 | 0) + (((HEAP32[($15 + 748 | 0) >> 2] | 0) << 1 | 0) << 2 | 0) | 0) >> 2]) - Math_fround(HEAPF32[($15 + 460 | 0) >> 2]))) + Math_fround(-Math_fround(Math_fround(HEAPF32[($15 + 448 | 0) >> 2]) * Math_fround(Math_fround(HEAPF32[(($15 + 352 | 0) + ((((HEAP32[($15 + 748 | 0) >> 2] | 0) << 1 | 0) + 1 | 0) << 2 | 0) | 0) >> 2]) - Math_fround(HEAPF32[($15 + 456 | 0) >> 2])))));
|
|
HEAPF32[($15 + 192 | 0) >> 2] = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($15 + 444 | 0) >> 2])) * Math_fround(Math_fround(HEAPF32[(($15 + 352 | 0) + (((HEAP32[($15 + 748 | 0) >> 2] | 0) << 1 | 0) << 2 | 0) | 0) >> 2]) - Math_fround(HEAPF32[($15 + 460 | 0) >> 2]))) + Math_fround(Math_fround(HEAPF32[($15 + 452 | 0) >> 2]) * Math_fround(Math_fround(HEAPF32[(($15 + 352 | 0) + ((((HEAP32[($15 + 748 | 0) >> 2] | 0) << 1 | 0) + 1 | 0) << 2 | 0) | 0) >> 2]) - Math_fround(HEAPF32[($15 + 456 | 0) >> 2]))));
|
|
HEAP32[($15 + 752 | 0) >> 2] = 0;
|
|
label$91 : {
|
|
label$92 : while (1) {
|
|
if (!((HEAP32[($15 + 752 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$91
|
|
}
|
|
$2606 = btVector3__operator_20float__28_29($15 + 512 | 0 | 0) | 0;
|
|
HEAPF32[(($15 + 240 | 0) + ((Math_imul(HEAP32[($15 + 200 | 0) >> 2] | 0, 3) + (HEAP32[($15 + 752 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 192 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($15 + 604 | 0) >> 2] | 0) + ((((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) + (HEAP32[($15 + 528 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 196 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($15 + 604 | 0) >> 2] | 0) + ((((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) + (HEAP32[($15 + 532 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2])) + Math_fround(HEAPF32[($2606 + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])));
|
|
HEAP32[($15 + 752 | 0) >> 2] = (HEAP32[($15 + 752 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$92;
|
|
};
|
|
}
|
|
$2672 = Math_fround(Math_fround(HEAPF32[((HEAP32[($15 + 592 | 0) >> 2] | 0) + ((HEAP32[($15 + 508 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) - Math_fround(dDOT_28float_20const__2c_20float_20const__29(btVector3__operator_20float__28_29($15 + 572 | 0 | 0) | 0 | 0, ($15 + 240 | 0) + (Math_imul(HEAP32[($15 + 200 | 0) >> 2] | 0, 3) << 2 | 0) | 0 | 0)));
|
|
HEAPF32[(($15 + 208 | 0) + ((HEAP32[($15 + 200 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = $2672;
|
|
label$93 : {
|
|
if (!(Math_fround(HEAPF32[(($15 + 208 | 0) + ((HEAP32[($15 + 200 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) >= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$93
|
|
}
|
|
HEAPF32[(($15 + 352 | 0) + (((HEAP32[($15 + 200 | 0) >> 2] | 0) << 1 | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[(($15 + 352 | 0) + (((HEAP32[($15 + 748 | 0) >> 2] | 0) << 1 | 0) << 2 | 0) | 0) >> 2]);
|
|
HEAPF32[(($15 + 352 | 0) + ((((HEAP32[($15 + 200 | 0) >> 2] | 0) << 1 | 0) + 1 | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[(($15 + 352 | 0) + ((((HEAP32[($15 + 748 | 0) >> 2] | 0) << 1 | 0) + 1 | 0) << 2 | 0) | 0) >> 2]);
|
|
HEAP32[($15 + 200 | 0) >> 2] = (HEAP32[($15 + 200 | 0) >> 2] | 0) + 1 | 0;
|
|
}
|
|
HEAP32[($15 + 748 | 0) >> 2] = (HEAP32[($15 + 748 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$90;
|
|
};
|
|
}
|
|
label$94 : {
|
|
if (!((HEAP32[($15 + 200 | 0) >> 2] | 0 | 0) < (1 | 0) & 1 | 0)) {
|
|
break label$94
|
|
}
|
|
HEAP32[($15 + 988 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
label$95 : {
|
|
if (!((HEAP32[($15 + 948 | 0) >> 2] | 0 | 0) > (HEAP32[($15 + 200 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$95
|
|
}
|
|
HEAP32[($15 + 948 | 0) >> 2] = HEAP32[($15 + 200 | 0) >> 2] | 0;
|
|
}
|
|
label$96 : {
|
|
if (!((HEAP32[($15 + 948 | 0) >> 2] | 0 | 0) < (1 | 0) & 1 | 0)) {
|
|
break label$96
|
|
}
|
|
HEAP32[($15 + 948 | 0) >> 2] = 1;
|
|
}
|
|
label$97 : {
|
|
label$98 : {
|
|
if (!((HEAP32[($15 + 200 | 0) >> 2] | 0 | 0) <= (HEAP32[($15 + 948 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$98
|
|
}
|
|
label$99 : {
|
|
label$100 : {
|
|
if (!((HEAP32[($15 + 740 | 0) >> 2] | 0 | 0) < (4 | 0) & 1 | 0)) {
|
|
break label$100
|
|
}
|
|
HEAP32[($15 + 748 | 0) >> 2] = 0;
|
|
label$101 : {
|
|
label$102 : while (1) {
|
|
if (!((HEAP32[($15 + 748 | 0) >> 2] | 0 | 0) < (HEAP32[($15 + 200 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$101
|
|
}
|
|
btVector3__btVector3_28_29($15 + 176 | 0 | 0) | 0;
|
|
HEAP32[($15 + 752 | 0) >> 2] = 0;
|
|
label$103 : {
|
|
label$104 : while (1) {
|
|
if (!((HEAP32[($15 + 752 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$103
|
|
}
|
|
$2816 = Math_fround(Math_fround(HEAPF32[(($15 + 240 | 0) + ((Math_imul(HEAP32[($15 + 748 | 0) >> 2] | 0, 3) + (HEAP32[($15 + 752 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2]) + Math_fround(HEAPF32[((HEAP32[($15 + 600 | 0) >> 2] | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($15 + 176 | 0 | 0) | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $2816), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP32[($15 + 752 | 0) >> 2] = (HEAP32[($15 + 752 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$104;
|
|
};
|
|
}
|
|
$2828 = HEAP32[($15 + 936 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__29($15 + 160 | 0 | 0, HEAP32[($15 + 960 | 0) >> 2] | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$2828 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($2828, $15 + 160 | 0, $15 + 176 | 0, Math_fround(-Math_fround(HEAPF32[(($15 + 208 | 0) + ((HEAP32[($15 + 748 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])));
|
|
HEAP32[($15 + 748 | 0) >> 2] = (HEAP32[($15 + 748 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$102;
|
|
};
|
|
}
|
|
break label$99;
|
|
}
|
|
HEAP32[($15 + 748 | 0) >> 2] = 0;
|
|
label$105 : {
|
|
label$106 : while (1) {
|
|
if (!((HEAP32[($15 + 748 | 0) >> 2] | 0 | 0) < (HEAP32[($15 + 200 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$105
|
|
}
|
|
btVector3__btVector3_28_29($15 + 144 | 0 | 0) | 0;
|
|
HEAP32[($15 + 752 | 0) >> 2] = 0;
|
|
label$107 : {
|
|
label$108 : while (1) {
|
|
if (!((HEAP32[($15 + 752 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$107
|
|
}
|
|
$2890 = Math_fround(Math_fround(HEAPF32[(($15 + 240 | 0) + ((Math_imul(HEAP32[($15 + 748 | 0) >> 2] | 0, 3) + (HEAP32[($15 + 752 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2]) + Math_fround(HEAPF32[((HEAP32[($15 + 600 | 0) >> 2] | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]));
|
|
$2908 = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float__28_29(HEAP32[($15 + 960 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])) * Math_fround(HEAPF32[(($15 + 208 | 0) + ((HEAP32[($15 + 748 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])) + $2890);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($15 + 144 | 0 | 0) | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $2908), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP32[($15 + 752 | 0) >> 2] = (HEAP32[($15 + 752 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$108;
|
|
};
|
|
}
|
|
$2920 = HEAP32[($15 + 936 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__29($15 + 128 | 0 | 0, HEAP32[($15 + 960 | 0) >> 2] | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$2920 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($2920, $15 + 128 | 0, $15 + 144 | 0, Math_fround(-Math_fround(HEAPF32[(($15 + 208 | 0) + ((HEAP32[($15 + 748 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])));
|
|
HEAP32[($15 + 748 | 0) >> 2] = (HEAP32[($15 + 748 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$106;
|
|
};
|
|
}
|
|
}
|
|
break label$97;
|
|
}
|
|
HEAP32[($15 + 124 | 0) >> 2] = 0;
|
|
HEAPF32[($15 + 120 | 0) >> 2] = Math_fround(HEAPF32[($15 + 208 | 0) >> 2]);
|
|
HEAP32[($15 + 752 | 0) >> 2] = 1;
|
|
label$109 : {
|
|
label$110 : while (1) {
|
|
if (!((HEAP32[($15 + 752 | 0) >> 2] | 0 | 0) < (HEAP32[($15 + 200 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$109
|
|
}
|
|
label$111 : {
|
|
if (!(Math_fround(HEAPF32[(($15 + 208 | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) > Math_fround(HEAPF32[($15 + 120 | 0) >> 2]) & 1 | 0)) {
|
|
break label$111
|
|
}
|
|
HEAPF32[($15 + 120 | 0) >> 2] = Math_fround(HEAPF32[(($15 + 208 | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
HEAP32[($15 + 124 | 0) >> 2] = HEAP32[($15 + 752 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($15 + 752 | 0) >> 2] = (HEAP32[($15 + 752 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$110;
|
|
};
|
|
}
|
|
cullPoints2_28int_2c_20float__2c_20int_2c_20int_2c_20int__29(HEAP32[($15 + 200 | 0) >> 2] | 0 | 0, $15 + 352 | 0 | 0, HEAP32[($15 + 948 | 0) >> 2] | 0 | 0, HEAP32[($15 + 124 | 0) >> 2] | 0 | 0, $15 + 80 | 0 | 0);
|
|
HEAP32[($15 + 748 | 0) >> 2] = 0;
|
|
label$112 : {
|
|
label$113 : while (1) {
|
|
if (!((HEAP32[($15 + 748 | 0) >> 2] | 0 | 0) < (HEAP32[($15 + 948 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$112
|
|
}
|
|
btVector3__btVector3_28_29($15 + 64 | 0 | 0) | 0;
|
|
HEAP32[($15 + 752 | 0) >> 2] = 0;
|
|
label$114 : {
|
|
label$115 : while (1) {
|
|
if (!((HEAP32[($15 + 752 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$114
|
|
}
|
|
$3032 = Math_fround(Math_fround(HEAPF32[(($15 + 240 | 0) + ((Math_imul(HEAP32[(($15 + 80 | 0) + ((HEAP32[($15 + 748 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0, 3) + (HEAP32[($15 + 752 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2]) + Math_fround(HEAPF32[((HEAP32[($15 + 600 | 0) >> 2] | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($15 + 64 | 0 | 0) | 0) + ((HEAP32[($15 + 752 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $3032), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP32[($15 + 752 | 0) >> 2] = (HEAP32[($15 + 752 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$115;
|
|
};
|
|
}
|
|
label$116 : {
|
|
label$117 : {
|
|
if (!((HEAP32[($15 + 740 | 0) >> 2] | 0 | 0) < (4 | 0) & 1 | 0)) {
|
|
break label$117
|
|
}
|
|
$3051 = HEAP32[($15 + 936 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__29($15 + 48 | 0 | 0, HEAP32[($15 + 960 | 0) >> 2] | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$3051 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($3051, $15 + 48 | 0, $15 + 64 | 0, Math_fround(-Math_fround(HEAPF32[(($15 + 208 | 0) + ((HEAP32[(($15 + 80 | 0) + ((HEAP32[($15 + 748 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])));
|
|
break label$116;
|
|
}
|
|
$3080 = HEAP32[($15 + 936 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__29($15 + 32 | 0 | 0, HEAP32[($15 + 960 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($15 | 0, HEAP32[($15 + 960 | 0) >> 2] | 0 | 0, ($15 + 208 | 0) + ((HEAP32[(($15 + 80 | 0) + ((HEAP32[($15 + 748 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0) << 2 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($15 + 16 | 0 | 0, $15 + 64 | 0 | 0, $15 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$3080 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($3080, $15 + 32 | 0, $15 + 16 | 0, Math_fround(-Math_fround(HEAPF32[(($15 + 208 | 0) + ((HEAP32[(($15 + 80 | 0) + ((HEAP32[($15 + 748 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])));
|
|
}
|
|
HEAP32[($15 + 748 | 0) >> 2] = (HEAP32[($15 + 748 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$113;
|
|
};
|
|
}
|
|
HEAP32[($15 + 200 | 0) >> 2] = HEAP32[($15 + 948 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[(HEAP32[($15 + 952 | 0) >> 2] | 0) >> 2] = HEAP32[($15 + 740 | 0) >> 2] | 0;
|
|
HEAP32[($15 + 988 | 0) >> 2] = HEAP32[($15 + 200 | 0) >> 2] | 0;
|
|
}
|
|
$3139 = HEAP32[($15 + 988 | 0) >> 2] | 0;
|
|
__stack_pointer = $15 + 992 | 0;
|
|
return $3139 | 0;
|
|
}
|
|
|
|
function dDOT41_28float_20const__2c_20float_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 32 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 16 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2])))));
|
|
}
|
|
|
|
function dDOT44_28float_20const__2c_20float_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 32 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 32 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 16 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 16 | 0) >> 2])))));
|
|
}
|
|
|
|
function dDOT14_28float_20const__2c_20float_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 32 | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 16 | 0) >> 2])))));
|
|
}
|
|
|
|
function intersectRectQuad2_28float__2c_20float__2c_20float__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $81 = 0, $227 = 0, $251 = 0;
|
|
$5 = __stack_pointer - 128 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 124 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 120 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 116 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 112 | 0) >> 2] = 4;
|
|
HEAP32[($5 + 108 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 28 | 0) >> 2] = HEAP32[($5 + 120 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = HEAP32[($5 + 116 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 20 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) <= (1 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 16 | 0) >> 2] = -1;
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) <= (1 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 108 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = HEAP32[($5 + 112 | 0) >> 2] | 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) > (0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
label$8 : {
|
|
if (!(Math_fround(Math_fround(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) * Math_fround(HEAPF32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 20 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])) < Math_fround(HEAPF32[((HEAP32[($5 + 124 | 0) >> 2] | 0) + ((HEAP32[($5 + 20 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
HEAPF32[(HEAP32[($5 + 8 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[($5 + 12 | 0) >> 2] | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2]);
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 8 | 0;
|
|
HEAP32[($5 + 108 | 0) >> 2] = (HEAP32[($5 + 108 | 0) >> 2] | 0) + 1 | 0;
|
|
label$9 : {
|
|
if (!((HEAP32[($5 + 108 | 0) >> 2] | 0) & 8 | 0)) {
|
|
break label$9
|
|
}
|
|
HEAP32[($5 + 28 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
}
|
|
label$10 : {
|
|
label$11 : {
|
|
if (!((HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) > (1 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
$81 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 8 | 0;
|
|
break label$10;
|
|
}
|
|
$81 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[$5 >> 2] = $81;
|
|
label$12 : {
|
|
if (!((Math_fround(Math_fround(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) * Math_fround(HEAPF32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 20 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])) < Math_fround(HEAPF32[((HEAP32[($5 + 124 | 0) >> 2] | 0) + ((HEAP32[($5 + 20 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) & 1 | 0) ^ (Math_fround(Math_fround(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) * Math_fround(HEAPF32[((HEAP32[$5 >> 2] | 0) + ((HEAP32[($5 + 20 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])) < Math_fround(HEAPF32[((HEAP32[($5 + 124 | 0) >> 2] | 0) + ((HEAP32[($5 + 20 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) & 1 | 0) | 0)) {
|
|
break label$12
|
|
}
|
|
HEAPF32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + ((1 - (HEAP32[($5 + 20 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2] = Math_fround(Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[((HEAP32[$5 >> 2] | 0) + ((1 - (HEAP32[($5 + 20 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2]) - Math_fround(HEAPF32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((1 - (HEAP32[($5 + 20 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2])) / Math_fround(Math_fround(HEAPF32[((HEAP32[$5 >> 2] | 0) + ((HEAP32[($5 + 20 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) - Math_fround(HEAPF32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 20 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]))) * Math_fround(Math_fround(Math_fround(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) * Math_fround(HEAPF32[((HEAP32[($5 + 124 | 0) >> 2] | 0) + ((HEAP32[($5 + 20 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])) + Math_fround(-Math_fround(HEAPF32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 20 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])))) + Math_fround(HEAPF32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((1 - (HEAP32[($5 + 20 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2]));
|
|
HEAPF32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + ((HEAP32[($5 + 20 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(Math_fround(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) * Math_fround(HEAPF32[((HEAP32[($5 + 124 | 0) >> 2] | 0) + ((HEAP32[($5 + 20 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]));
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 8 | 0;
|
|
HEAP32[($5 + 108 | 0) >> 2] = (HEAP32[($5 + 108 | 0) >> 2] | 0) + 1 | 0;
|
|
label$13 : {
|
|
if (!((HEAP32[($5 + 108 | 0) >> 2] | 0) & 8 | 0)) {
|
|
break label$13
|
|
}
|
|
HEAP32[($5 + 28 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 8 | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + -1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
HEAP32[($5 + 28 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
label$14 : {
|
|
label$15 : {
|
|
if (!((HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) == (HEAP32[($5 + 116 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
$227 = $5 + 32 | 0;
|
|
break label$14;
|
|
}
|
|
$227 = HEAP32[($5 + 116 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($5 + 24 | 0) >> 2] = $227;
|
|
HEAP32[($5 + 112 | 0) >> 2] = HEAP32[($5 + 108 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 16 | 0) >> 2] = (HEAP32[($5 + 16 | 0) >> 2] | 0) + 2 | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
HEAP32[($5 + 20 | 0) >> 2] = (HEAP32[($5 + 20 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
}
|
|
label$16 : {
|
|
if (!((HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) != (HEAP32[($5 + 116 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
__memcpy(HEAP32[($5 + 116 | 0) >> 2] | 0 | 0, HEAP32[($5 + 28 | 0) >> 2] | 0 | 0, ((HEAP32[($5 + 108 | 0) >> 2] | 0) << 1 | 0) << 2 | 0 | 0) | 0;
|
|
}
|
|
$251 = HEAP32[($5 + 108 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 128 | 0;
|
|
return $251 | 0;
|
|
}
|
|
|
|
function btBoxBoxDetector__getClosestPoints_28btDiscreteCollisionDetectorInterface__ClosestPointInput_20const__2c_20btDiscreteCollisionDetectorInterface__Result__2c_20btIDebugDraw__2c_20bool_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $9 = 0, $29 = Math_fround(0), $46 = Math_fround(0), $63 = Math_fround(0), $80 = Math_fround(0), $97 = Math_fround(0), $114 = Math_fround(0), $134 = 0, $153 = 0;
|
|
$7 = __stack_pointer - 256 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 252 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 248 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 244 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 240 | 0) >> 2] = $3;
|
|
HEAP8[($7 + 239 | 0) >> 0] = $4;
|
|
$9 = HEAP32[($7 + 252 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 232 | 0) >> 2] = HEAP32[($7 + 248 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 228 | 0) >> 2] = (HEAP32[($7 + 248 | 0) >> 2] | 0) + 64 | 0;
|
|
HEAP32[($7 + 224 | 0) >> 2] = 0;
|
|
HEAP32[($7 + 220 | 0) >> 2] = 0;
|
|
HEAP32[($7 + 108 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($7 + 108 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$29 = Math_fround(HEAPF32[(btVector3__x_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(btTransform__getBasis_28_29_20const(HEAP32[($7 + 232 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($7 + 108 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) >> 2]);
|
|
HEAPF32[(($7 + 160 | 0) + ((((HEAP32[($7 + 108 | 0) >> 2] | 0) << 2 | 0) + 0 | 0) << 2 | 0) | 0) >> 2] = $29;
|
|
$46 = Math_fround(HEAPF32[(btVector3__x_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(btTransform__getBasis_28_29_20const(HEAP32[($7 + 228 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($7 + 108 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) >> 2]);
|
|
HEAPF32[(($7 + 112 | 0) + ((((HEAP32[($7 + 108 | 0) >> 2] | 0) << 2 | 0) + 0 | 0) << 2 | 0) | 0) >> 2] = $46;
|
|
$63 = Math_fround(HEAPF32[(btVector3__y_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(btTransform__getBasis_28_29_20const(HEAP32[($7 + 232 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($7 + 108 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) >> 2]);
|
|
HEAPF32[(($7 + 160 | 0) + ((((HEAP32[($7 + 108 | 0) >> 2] | 0) << 2 | 0) + 1 | 0) << 2 | 0) | 0) >> 2] = $63;
|
|
$80 = Math_fround(HEAPF32[(btVector3__y_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(btTransform__getBasis_28_29_20const(HEAP32[($7 + 228 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($7 + 108 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) >> 2]);
|
|
HEAPF32[(($7 + 112 | 0) + ((((HEAP32[($7 + 108 | 0) >> 2] | 0) << 2 | 0) + 1 | 0) << 2 | 0) | 0) >> 2] = $80;
|
|
$97 = Math_fround(HEAPF32[(btVector3__z_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(btTransform__getBasis_28_29_20const(HEAP32[($7 + 232 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($7 + 108 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) >> 2]);
|
|
HEAPF32[(($7 + 160 | 0) + ((((HEAP32[($7 + 108 | 0) >> 2] | 0) << 2 | 0) + 2 | 0) << 2 | 0) | 0) >> 2] = $97;
|
|
$114 = Math_fround(HEAPF32[(btVector3__z_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(btTransform__getBasis_28_29_20const(HEAP32[($7 + 228 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($7 + 108 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) >> 2]);
|
|
HEAPF32[(($7 + 112 | 0) + ((((HEAP32[($7 + 108 | 0) >> 2] | 0) << 2 | 0) + 2 | 0) << 2 | 0) | 0) >> 2] = $114;
|
|
HEAP32[($7 + 108 | 0) >> 2] = (HEAP32[($7 + 108 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
btVector3__btVector3_28_29($7 + 92 | 0 | 0) | 0;
|
|
HEAP32[($7 + 80 | 0) >> 2] = 4;
|
|
$134 = btTransform__getOrigin_28_29_20const(HEAP32[($7 + 232 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($7 + 60 | 0) >> 2] = Math_fround(2.0);
|
|
btBoxShape__getHalfExtentsWithMargin_28_29_20const($7 + 44 | 0 | 0, HEAP32[($9 + 4 | 0) >> 2] | 0 | 0);
|
|
operator__28float_20const__2c_20btVector3_20const__29($7 + 64 | 0 | 0, $7 + 60 | 0 | 0, $7 + 44 | 0 | 0);
|
|
$153 = btTransform__getOrigin_28_29_20const(HEAP32[($7 + 228 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($7 + 24 | 0) >> 2] = Math_fround(2.0);
|
|
btBoxShape__getHalfExtentsWithMargin_28_29_20const($7 + 8 | 0 | 0, HEAP32[($9 + 8 | 0) >> 2] | 0 | 0);
|
|
operator__28float_20const__2c_20btVector3_20const__29($7 + 28 | 0 | 0, $7 + 24 | 0 | 0, $7 + 8 | 0 | 0);
|
|
dBoxBox2_28btVector3_20const__2c_20float_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_20const__2c_20btVector3_20const__2c_20btVector3__2c_20float__2c_20int__2c_20int_2c_20dContactGeom__2c_20int_2c_20btDiscreteCollisionDetectorInterface__Result__29($134 | 0, $7 + 160 | 0 | 0, $7 + 64 | 0 | 0, $153 | 0, $7 + 112 | 0 | 0, $7 + 28 | 0 | 0, $7 + 92 | 0 | 0, $7 + 88 | 0 | 0, $7 + 84 | 0 | 0, HEAP32[($7 + 80 | 0) >> 2] | 0 | 0, HEAP32[($7 + 220 | 0) >> 2] | 0 | 0, HEAP32[($7 + 224 | 0) >> 2] | 0 | 0, HEAP32[($7 + 244 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $7 + 256 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBoxBoxDetector___btBoxBoxDetector_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btBoxBoxDetector___btBoxBoxDetector_28_29_1($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteCollisionDetectorInterface___btDiscreteCollisionDetectorInterface_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btBoxBoxDetector_cpp() {
|
|
__cxx_global_var_init_18();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_19() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114024 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btBoxBoxCollisionAlgorithm__btBoxBoxCollisionAlgorithm_28btPersistentManifold__2c_20btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0, $24 = 0, $34 = 0, $43 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0, wasm2js_i32$5 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 8 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $8;
|
|
btActivatingCollisionAlgorithm__btActivatingCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($8 | 0, HEAP32[($7 + 16 | 0) >> 2] | 0 | 0, HEAP32[($7 + 12 | 0) >> 2] | 0 | 0, HEAP32[($7 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$8 >> 2] = 95212 + 8 | 0;
|
|
HEAP8[($8 + 8 | 0) >> 0] = 0;
|
|
HEAP32[($8 + 12 | 0) >> 2] = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($8 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
$24 = HEAP32[($8 + 4 | 0) >> 2] | 0;
|
|
if (!(((((wasm2js_i32$1 = $24, wasm2js_i32$2 = btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$3 = btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$24 >> 2] | 0) + 24 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, wasm2js_i32$3 | 0) | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$34 = HEAP32[($8 + 4 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$3 = ((((wasm2js_i32$1 = $34, wasm2js_i32$4 = btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$5 = btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$2 = HEAP32[((HEAP32[$34 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$2](wasm2js_i32$1 | 0, wasm2js_i32$4 | 0, wasm2js_i32$5 | 0) | 0)), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$3;
|
|
HEAP8[($8 + 8 | 0) >> 0] = 1;
|
|
}
|
|
$43 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return $43 | 0;
|
|
}
|
|
|
|
function btBoxBoxCollisionAlgorithm___btBoxBoxCollisionAlgorithm_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0, $18 = 0, $22 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
HEAP32[$4 >> 2] = 95212 + 8 | 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($4 + 8 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$18 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$18 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($18, HEAP32[($4 + 12 | 0) >> 2] | 0);
|
|
}
|
|
}
|
|
btActivatingCollisionAlgorithm___btActivatingCollisionAlgorithm_28_29($4 | 0) | 0;
|
|
$22 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $22 | 0;
|
|
}
|
|
|
|
function btBoxBoxCollisionAlgorithm___btBoxBoxCollisionAlgorithm_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[689 | 0]($4) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBoxBoxCollisionAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$7 = __stack_pointer - 176 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 172 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 168 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 164 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 160 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 156 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 172 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if ((HEAP32[($8 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 168 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 152 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 164 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 148 | 0) >> 2] = wasm2js_i32$1;
|
|
btManifoldResult__setPersistentManifold_28btPersistentManifold__29(HEAP32[($7 + 156 | 0) >> 2] | 0 | 0, HEAP32[($8 + 12 | 0) >> 2] | 0 | 0);
|
|
btDiscreteCollisionDetectorInterface__ClosestPointInput__ClosestPointInput_28_29($7 + 16 | 0 | 0) | 0;
|
|
HEAPF32[($7 + 144 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
btTransform__operator__28btTransform_20const__29($7 + 16 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 168 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
btTransform__operator__28btTransform_20const__29(($7 + 16 | 0) + 64 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 164 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
btBoxBoxDetector__btBoxBoxDetector_28btBoxShape_20const__2c_20btBoxShape_20const__29($7 + 4 | 0 | 0, HEAP32[($7 + 152 | 0) >> 2] | 0 | 0, HEAP32[($7 + 148 | 0) >> 2] | 0 | 0) | 0;
|
|
btBoxBoxDetector__getClosestPoints_28btDiscreteCollisionDetectorInterface__ClosestPointInput_20const__2c_20btDiscreteCollisionDetectorInterface__Result__2c_20btIDebugDraw__2c_20bool_29($7 + 4 | 0 | 0, $7 + 16 | 0 | 0, HEAP32[($7 + 156 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($7 + 160 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
label$3 : {
|
|
if (!((HEAPU8[($8 + 8 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
btManifoldResult__refreshContactPoints_28_29(HEAP32[($7 + 156 | 0) >> 2] | 0 | 0);
|
|
}
|
|
btBoxBoxDetector___btBoxBoxDetector_28_29_1($7 + 4 | 0 | 0) | 0;
|
|
}
|
|
__stack_pointer = $7 + 176 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBoxBoxDetector___btBoxBoxDetector_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btDiscreteCollisionDetectorInterface___btDiscreteCollisionDetectorInterface_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btBoxBoxCollisionAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
return Math_fround(Math_fround(1.0));
|
|
}
|
|
|
|
function btBoxBoxCollisionAlgorithm__getAllContactManifolds_28btAlignedObjectArray_btPersistentManifold____29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
if (!((HEAPU8[($5 + 8 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btPersistentManifold____push_back_28btPersistentManifold__20const__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, $5 + 12 | 0 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btBoxBoxCollisionAlgorithm_cpp() {
|
|
__cxx_global_var_init_19();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_20() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114028 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexPlaneCollisionAlgorithm__btConvexPlaneCollisionAlgorithm_28btPersistentManifold__2c_20btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20bool_2c_20int_2c_20int_29($0, $1, $2, $3, $4, $5, $6, $7) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
var $10 = 0, $12 = 0, $28 = 0, $35 = 0, $45 = 0, $55 = 0, $64 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0, wasm2js_i32$5 = 0;
|
|
$10 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $10;
|
|
HEAP32[($10 + 40 | 0) >> 2] = $0;
|
|
HEAP32[($10 + 36 | 0) >> 2] = $1;
|
|
HEAP32[($10 + 32 | 0) >> 2] = $2;
|
|
HEAP32[($10 + 28 | 0) >> 2] = $3;
|
|
HEAP32[($10 + 24 | 0) >> 2] = $4;
|
|
HEAP8[($10 + 23 | 0) >> 0] = $5;
|
|
HEAP32[($10 + 16 | 0) >> 2] = $6;
|
|
HEAP32[($10 + 12 | 0) >> 2] = $7;
|
|
$12 = HEAP32[($10 + 40 | 0) >> 2] | 0;
|
|
HEAP32[($10 + 44 | 0) >> 2] = $12;
|
|
btCollisionAlgorithm__btCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo_20const__29($12 | 0, HEAP32[($10 + 32 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$12 >> 2] = 95284 + 8 | 0;
|
|
HEAP8[($12 + 8 | 0) >> 0] = 0;
|
|
HEAP32[($12 + 12 | 0) >> 2] = HEAP32[($10 + 36 | 0) >> 2] | 0;
|
|
HEAP8[($12 + 16 | 0) >> 0] = (HEAPU8[($10 + 23 | 0) >> 0] | 0) & 1 | 0;
|
|
HEAP32[($12 + 20 | 0) >> 2] = HEAP32[($10 + 16 | 0) >> 2] | 0;
|
|
HEAP32[($12 + 24 | 0) >> 2] = HEAP32[($10 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($12 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$28 = HEAP32[($10 + 24 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
$28 = HEAP32[($10 + 28 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($10 + 8 | 0) >> 2] = $28;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAPU8[($12 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$35 = HEAP32[($10 + 28 | 0) >> 2] | 0;
|
|
break label$3;
|
|
}
|
|
$35 = HEAP32[($10 + 24 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($10 + 4 | 0) >> 2] = $35;
|
|
label$5 : {
|
|
if ((HEAP32[($12 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$5
|
|
}
|
|
$45 = HEAP32[($12 + 4 | 0) >> 2] | 0;
|
|
if (!(((((wasm2js_i32$1 = $45, wasm2js_i32$2 = btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($10 + 8 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$3 = btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($10 + 4 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$45 >> 2] | 0) + 24 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, wasm2js_i32$3 | 0) | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
$55 = HEAP32[($12 + 4 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$3 = ((((wasm2js_i32$1 = $55, wasm2js_i32$4 = btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($10 + 8 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$5 = btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($10 + 4 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$2 = HEAP32[((HEAP32[$55 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$2](wasm2js_i32$1 | 0, wasm2js_i32$4 | 0, wasm2js_i32$5 | 0) | 0)), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$3;
|
|
HEAP8[($12 + 8 | 0) >> 0] = 1;
|
|
}
|
|
$64 = HEAP32[($10 + 44 | 0) >> 2] | 0;
|
|
__stack_pointer = $10 + 48 | 0;
|
|
return $64 | 0;
|
|
}
|
|
|
|
function btConvexPlaneCollisionAlgorithm___btConvexPlaneCollisionAlgorithm_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0, $18 = 0, $22 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
HEAP32[$4 >> 2] = 95284 + 8 | 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($4 + 8 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$18 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$18 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($18, HEAP32[($4 + 12 | 0) >> 2] | 0);
|
|
}
|
|
}
|
|
btCollisionAlgorithm___btCollisionAlgorithm_28_29_1($4 | 0) | 0;
|
|
$22 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $22 | 0;
|
|
}
|
|
|
|
function btConvexPlaneCollisionAlgorithm___btConvexPlaneCollisionAlgorithm_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[694 | 0]($4) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexPlaneCollisionAlgorithm__collideSingleContact_28btQuaternion_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, i64toi32_i32$0 = 0, $9 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $14 = 0, $21 = 0, $95 = 0, $177 = 0, $186 = 0, $99 = 0, $568 = 0, $572 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$8 = __stack_pointer - 704 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 700 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 696 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 692 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 688 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 684 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 680 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 700 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($9 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$14 = HEAP32[($8 + 688 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
$14 = HEAP32[($8 + 692 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($8 + 676 | 0) >> 2] = $14;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAPU8[($9 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$21 = HEAP32[($8 + 692 | 0) >> 2] | 0;
|
|
break label$3;
|
|
}
|
|
$21 = HEAP32[($8 + 688 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($8 + 672 | 0) >> 2] = $21;
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($8 + 676 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 668 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($8 + 672 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 664 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP8[($8 + 663 | 0) >> 0] = 0;
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = btStaticPlaneShape__getPlaneNormal_28_29_20const(HEAP32[($8 + 664 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 656 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = btStaticPlaneShape__getPlaneConstant_28_29_20const(HEAP32[($8 + 664 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 652 | 0) >> 2] = wasm2js_i32$1;
|
|
btTransform__btTransform_28btTransform_20const__29($8 + 588 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($8 + 676 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
btTransform__btTransform_28_29($8 + 524 | 0 | 0) | 0;
|
|
btTransform__inverse_28_29_20const($8 + 396 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($8 + 672 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29_20const($8 + 460 | 0 | 0, $8 + 396 | 0 | 0, $8 + 588 | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29($8 + 524 | 0 | 0, $8 + 460 | 0 | 0) | 0;
|
|
btMatrix3x3__btMatrix3x3_28btQuaternion_20const__29($8 + 348 | 0 | 0, HEAP32[($8 + 696 | 0) >> 2] | 0 | 0) | 0;
|
|
btMatrix3x3__operator___28btMatrix3x3_20const__29(btTransform__getBasis_28_29($8 + 588 | 0 | 0) | 0 | 0, $8 + 348 | 0 | 0) | 0;
|
|
btTransform__btTransform_28_29($8 + 284 | 0 | 0) | 0;
|
|
btTransform__inverse_28_29_20const($8 + 156 | 0 | 0, $8 + 588 | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29_20const($8 + 220 | 0 | 0, $8 + 156 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($8 + 672 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29($8 + 284 | 0 | 0, $8 + 220 | 0 | 0) | 0;
|
|
$95 = HEAP32[($8 + 668 | 0) >> 2] | 0;
|
|
$99 = btTransform__getBasis_28_29($8 + 284 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__29($8 + 108 | 0 | 0, HEAP32[($8 + 656 | 0) >> 2] | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 124 | 0 | 0, $99 | 0, $8 + 108 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$95 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($8 + 140 | 0, $95, $8 + 124 | 0);
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($8 + 92 | 0 | 0, $8 + 524 | 0 | 0, $8 + 140 | 0 | 0);
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($8 + 656 | 0) >> 2] | 0 | 0, $8 + 92 | 0 | 0)) - Math_fround(HEAPF32[(HEAP32[($8 + 652 | 0) >> 2] | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 88 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28float_20const__2c_20btVector3_20const__29($8 + 56 | 0 | 0, $8 + 88 | 0 | 0, HEAP32[($8 + 656 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 72 | 0 | 0, $8 + 92 | 0 | 0, $8 + 56 | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($8 + 40 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($8 + 672 | 0) >> 2] | 0 | 0) | 0 | 0, $8 + 72 | 0 | 0);
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = Math_fround(HEAPF32[($8 + 88 | 0) >> 2]) < Math_fround(btPersistentManifold__getContactBreakingThreshold_28_29_20const(HEAP32[($9 + 12 | 0) >> 2] | 0 | 0)) & 1 | 0), HEAP8[(wasm2js_i32$0 + 663 | 0) >> 0] = wasm2js_i32$1;
|
|
btManifoldResult__setPersistentManifold_28btPersistentManifold__29(HEAP32[($8 + 680 | 0) >> 2] | 0 | 0, HEAP32[($9 + 12 | 0) >> 2] | 0 | 0);
|
|
label$5 : {
|
|
if (!((HEAPU8[($8 + 663 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 24 | 0 | 0, btTransform__getBasis_28_29_20const(btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($8 + 672 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, HEAP32[($8 + 656 | 0) >> 2] | 0 | 0);
|
|
$177 = 8;
|
|
i64toi32_i32$2 = ($8 + 40 | 0) + $177 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$568 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 8 | 0) + $177 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $568;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 40 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 44 | 0) >> 2] | 0;
|
|
$572 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 8 | 0) >> 2] = $572;
|
|
HEAP32[($8 + 12 | 0) >> 2] = i64toi32_i32$0;
|
|
$186 = HEAP32[($8 + 680 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$186 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($186, $8 + 24 | 0, $8 + 8 | 0, Math_fround(HEAPF32[($8 + 88 | 0) >> 2]));
|
|
}
|
|
__stack_pointer = $8 + 704 | 0;
|
|
return;
|
|
}
|
|
|
|
function btMatrix3x3__operator___28btMatrix3x3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 40 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 44 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btMatrix3x3__tdotx_28btVector3_20const__29_20const(HEAP32[($4 + 40 | 0) >> 2] | 0 | 0, $5 | 0))), HEAPF32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btMatrix3x3__tdoty_28btVector3_20const__29_20const(HEAP32[($4 + 40 | 0) >> 2] | 0 | 0, $5 | 0))), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btMatrix3x3__tdotz_28btVector3_20const__29_20const(HEAP32[($4 + 40 | 0) >> 2] | 0 | 0, $5 | 0))), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btMatrix3x3__tdotx_28btVector3_20const__29_20const(HEAP32[($4 + 40 | 0) >> 2] | 0 | 0, $5 + 16 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btMatrix3x3__tdoty_28btVector3_20const__29_20const(HEAP32[($4 + 40 | 0) >> 2] | 0 | 0, $5 + 16 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btMatrix3x3__tdotz_28btVector3_20const__29_20const(HEAP32[($4 + 40 | 0) >> 2] | 0 | 0, $5 + 16 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btMatrix3x3__tdotx_28btVector3_20const__29_20const(HEAP32[($4 + 40 | 0) >> 2] | 0 | 0, $5 + 32 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btMatrix3x3__tdoty_28btVector3_20const__29_20const(HEAP32[($4 + 40 | 0) >> 2] | 0 | 0, $5 + 32 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btMatrix3x3__tdotz_28btVector3_20const__29_20const(HEAP32[($4 + 40 | 0) >> 2] | 0 | 0, $5 + 32 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
btMatrix3x3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($5 | 0, $4 + 36 | 0 | 0, $4 + 32 | 0 | 0, $4 + 28 | 0 | 0, $4 + 24 | 0 | 0, $4 + 20 | 0 | 0, $4 + 16 | 0 | 0, $4 + 12 | 0 | 0, $4 + 8 | 0 | 0, $4 + 4 | 0 | 0);
|
|
__stack_pointer = $4 + 48 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btConvexPlaneCollisionAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $20 = 0, $27 = 0, $83 = 0, $165 = 0, $174 = 0, $211 = 0, $87 = 0, $644 = 0, $648 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$7 = __stack_pointer - 720 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 716 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 712 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 708 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 704 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 700 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 716 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if ((HEAP32[($8 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAPU8[($8 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$20 = HEAP32[($7 + 708 | 0) >> 2] | 0;
|
|
break label$3;
|
|
}
|
|
$20 = HEAP32[($7 + 712 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($7 + 696 | 0) >> 2] = $20;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!((HEAPU8[($8 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$27 = HEAP32[($7 + 712 | 0) >> 2] | 0;
|
|
break label$5;
|
|
}
|
|
$27 = HEAP32[($7 + 708 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($7 + 692 | 0) >> 2] = $27;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 696 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 688 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 692 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 684 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP8[($7 + 683 | 0) >> 0] = 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btStaticPlaneShape__getPlaneNormal_28_29_20const(HEAP32[($7 + 684 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 676 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btStaticPlaneShape__getPlaneConstant_28_29_20const(HEAP32[($7 + 684 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 672 | 0) >> 2] = wasm2js_i32$1;
|
|
btTransform__btTransform_28_29($7 + 608 | 0 | 0) | 0;
|
|
btTransform__inverse_28_29_20const($7 + 480 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 696 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29_20const($7 + 544 | 0 | 0, $7 + 480 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 692 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29($7 + 608 | 0 | 0, $7 + 544 | 0 | 0) | 0;
|
|
btTransform__btTransform_28_29($7 + 416 | 0 | 0) | 0;
|
|
btTransform__inverse_28_29_20const($7 + 288 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 692 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29_20const($7 + 352 | 0 | 0, $7 + 288 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 696 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29($7 + 416 | 0 | 0, $7 + 352 | 0 | 0) | 0;
|
|
$83 = HEAP32[($7 + 688 | 0) >> 2] | 0;
|
|
$87 = btTransform__getBasis_28_29($7 + 608 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__29($7 + 240 | 0 | 0, HEAP32[($7 + 676 | 0) >> 2] | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($7 + 256 | 0 | 0, $87 | 0, $7 + 240 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$83 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($7 + 272 | 0, $83, $7 + 256 | 0);
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($7 + 224 | 0 | 0, $7 + 416 | 0 | 0, $7 + 272 | 0 | 0);
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($7 + 676 | 0) >> 2] | 0 | 0, $7 + 224 | 0 | 0)) - Math_fround(HEAPF32[(HEAP32[($7 + 672 | 0) >> 2] | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 220 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28float_20const__2c_20btVector3_20const__29($7 + 188 | 0 | 0, $7 + 220 | 0 | 0, HEAP32[($7 + 676 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($7 + 204 | 0 | 0, $7 + 224 | 0 | 0, $7 + 188 | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 172 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 692 | 0) >> 2] | 0 | 0) | 0 | 0, $7 + 204 | 0 | 0);
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = Math_fround(HEAPF32[($7 + 220 | 0) >> 2]) < Math_fround(btPersistentManifold__getContactBreakingThreshold_28_29_20const(HEAP32[($8 + 12 | 0) >> 2] | 0 | 0)) & 1 | 0), HEAP8[(wasm2js_i32$0 + 683 | 0) >> 0] = wasm2js_i32$1;
|
|
btManifoldResult__setPersistentManifold_28btPersistentManifold__29(HEAP32[($7 + 700 | 0) >> 2] | 0 | 0, HEAP32[($8 + 12 | 0) >> 2] | 0 | 0);
|
|
label$7 : {
|
|
if (!((HEAPU8[($7 + 683 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($7 + 156 | 0 | 0, btTransform__getBasis_28_29_20const(btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 692 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, HEAP32[($7 + 676 | 0) >> 2] | 0 | 0);
|
|
$165 = 8;
|
|
i64toi32_i32$2 = ($7 + 172 | 0) + $165 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$644 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($7 + 136 | 0) + $165 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $644;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$1 = HEAP32[($7 + 172 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($7 + 176 | 0) >> 2] | 0;
|
|
$648 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $7;
|
|
HEAP32[($7 + 136 | 0) >> 2] = $648;
|
|
HEAP32[($7 + 140 | 0) >> 2] = i64toi32_i32$0;
|
|
$174 = HEAP32[($7 + 700 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$174 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($174, $7 + 156 | 0, $7 + 136 | 0, Math_fround(HEAPF32[($7 + 220 | 0) >> 2]));
|
|
}
|
|
label$8 : {
|
|
if (!((btCollisionShape__isPolyhedral_28_29_20const(HEAP32[($7 + 688 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
if (!((btPersistentManifold__getNumContacts_28_29_20const(btManifoldResult__getPersistentManifold_28_29(HEAP32[($7 + 700 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0) < (HEAP32[($8 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
btVector3__btVector3_28_29($7 + 120 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($7 + 104 | 0 | 0) | 0;
|
|
void_20btPlaneSpace1_btVector3__28btVector3_20const__2c_20btVector3__2c_20btVector3__29(HEAP32[($7 + 676 | 0) >> 2] | 0 | 0, $7 + 120 | 0 | 0, $7 + 104 | 0 | 0);
|
|
HEAPF32[($7 + 100 | 0) >> 2] = Math_fround(.39269909262657166);
|
|
$211 = HEAP32[($7 + 688 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$211 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($211))), HEAPF32[(wasm2js_i32$0 + 92 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($7 + 96 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[(0 + 112840 | 0) >> 2]) / Math_fround(HEAPF32[($7 + 92 | 0) >> 2]));
|
|
label$9 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 96 | 0) >> 2]) > Math_fround(.39269909262657166) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
HEAPF32[($7 + 96 | 0) >> 2] = Math_fround(.39269909262657166);
|
|
}
|
|
btQuaternion__btQuaternion_28btVector3_20const__2c_20float_20const__29($7 + 76 | 0 | 0, $7 + 120 | 0 | 0, $7 + 96 | 0 | 0) | 0;
|
|
HEAP32[($7 + 72 | 0) >> 2] = 0;
|
|
label$10 : {
|
|
label$11 : while (1) {
|
|
if (!((HEAP32[($7 + 72 | 0) >> 2] | 0 | 0) < (HEAP32[($8 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
HEAPF32[($7 + 68 | 0) >> 2] = Math_fround(Math_fround(HEAP32[($7 + 72 | 0) >> 2] | 0 | 0) * Math_fround(Math_fround(6.2831854820251465) / Math_fround(HEAP32[($8 + 20 | 0) >> 2] | 0 | 0)));
|
|
btQuaternion__btQuaternion_28btVector3_20const__2c_20float_20const__29($7 + 52 | 0 | 0, HEAP32[($7 + 676 | 0) >> 2] | 0 | 0, $7 + 68 | 0 | 0) | 0;
|
|
btQuaternion__inverse_28_29_20const($7 + 4 | 0 | 0, $7 + 52 | 0 | 0);
|
|
operator__28btQuaternion_20const__2c_20btQuaternion_20const__29($7 + 20 | 0 | 0, $7 + 4 | 0 | 0, $7 + 76 | 0 | 0);
|
|
operator__28btQuaternion_20const__2c_20btQuaternion_20const__29($7 + 36 | 0 | 0, $7 + 20 | 0 | 0, $7 + 52 | 0 | 0);
|
|
btConvexPlaneCollisionAlgorithm__collideSingleContact_28btQuaternion_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29($8 | 0, $7 + 36 | 0 | 0, HEAP32[($7 + 712 | 0) >> 2] | 0 | 0, HEAP32[($7 + 708 | 0) >> 2] | 0 | 0, HEAP32[($7 + 704 | 0) >> 2] | 0 | 0, HEAP32[($7 + 700 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($7 + 72 | 0) >> 2] = (HEAP32[($7 + 72 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$11;
|
|
};
|
|
}
|
|
}
|
|
if (!((HEAPU8[($8 + 8 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$12 : {
|
|
if (!(btPersistentManifold__getNumContacts_28_29_20const(HEAP32[($8 + 12 | 0) >> 2] | 0 | 0) | 0)) {
|
|
break label$12
|
|
}
|
|
btManifoldResult__refreshContactPoints_28_29(HEAP32[($7 + 700 | 0) >> 2] | 0 | 0);
|
|
}
|
|
}
|
|
__stack_pointer = $7 + 720 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexPlaneCollisionAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
return Math_fround(Math_fround(1.0));
|
|
}
|
|
|
|
function btConvexPlaneCollisionAlgorithm__getAllContactManifolds_28btAlignedObjectArray_btPersistentManifold____29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
if (!((HEAPU8[($5 + 8 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btPersistentManifold____push_back_28btPersistentManifold__20const__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, $5 + 12 | 0 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btConvexPlaneCollisionAlgorithm_cpp() {
|
|
__cxx_global_var_init_20();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_21() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114032 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btDefaultCollisionConfiguration__btDefaultCollisionConfiguration_28btDefaultCollisionConstructionInfo_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $15 = 0, $19 = 0, $23 = 0, $28 = 0, $32 = 0, $36 = 0, $40 = 0, $44 = 0, $48 = 0, $52 = 0, $56 = 0, $60 = 0, $66 = 0, $67 = 0, $69 = 0, $70 = 0, $72 = 0, $126 = 0, $134$hi = 0, $135$hi = 0, $153 = 0, i64toi32_i32$2 = 0, $157 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 40 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 36 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 40 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 44 | 0) >> 2] = $5;
|
|
btCollisionConfiguration__btCollisionConfiguration_28_29($5 | 0) | 0;
|
|
HEAP32[$5 >> 2] = 95360 + 8 | 0;
|
|
HEAP32[($4 + 32 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[((HEAP32[($4 + 36 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(4 | 0, 16 | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
$15 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
btGjkEpaPenetrationDepthSolver__btGjkEpaPenetrationDepthSolver_28_29($15 | 0) | 0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $15;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(4 | 0, 16 | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
$19 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
btMinkowskiPenetrationDepthSolver__btMinkowskiPenetrationDepthSolver_28_29($19 | 0) | 0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $19;
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(20 | 0, 16 | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
$23 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
btConvexConvexAlgorithm__CreateFunc__CreateFunc_28btConvexPenetrationDepthSolver__29($23 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $23;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(8 | 0, 16 | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
$28 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
btConvexConcaveCollisionAlgorithm__CreateFunc__CreateFunc_28_29($28 | 0) | 0;
|
|
HEAP32[($5 + 32 | 0) >> 2] = $28;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(8 | 0, 16 | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
$32 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
btConvexConcaveCollisionAlgorithm__SwappedCreateFunc__SwappedCreateFunc_28_29($32 | 0) | 0;
|
|
HEAP32[($5 + 36 | 0) >> 2] = $32;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(8 | 0, 16 | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
$36 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
btCompoundCollisionAlgorithm__CreateFunc__CreateFunc_28_29($36 | 0) | 0;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $36;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(8 | 0, 16 | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
$40 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
btCompoundCompoundCollisionAlgorithm__CreateFunc__CreateFunc_28_29($40 | 0) | 0;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $40;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(8 | 0, 16 | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
$44 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
btCompoundCollisionAlgorithm__SwappedCreateFunc__SwappedCreateFunc_28_29($44 | 0) | 0;
|
|
HEAP32[($5 + 48 | 0) >> 2] = $44;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(8 | 0, 16 | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
$48 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
btEmptyAlgorithm__CreateFunc__CreateFunc_28_29($48 | 0) | 0;
|
|
HEAP32[($5 + 52 | 0) >> 2] = $48;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(8 | 0, 16 | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
$52 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
btSphereSphereCollisionAlgorithm__CreateFunc__CreateFunc_28_29($52 | 0) | 0;
|
|
HEAP32[($5 + 56 | 0) >> 2] = $52;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(8 | 0, 16 | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
$56 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
btSphereTriangleCollisionAlgorithm__CreateFunc__CreateFunc_28_29($56 | 0) | 0;
|
|
HEAP32[($5 + 72 | 0) >> 2] = $56;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(8 | 0, 16 | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
$60 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
btSphereTriangleCollisionAlgorithm__CreateFunc__CreateFunc_28_29($60 | 0) | 0;
|
|
HEAP32[($5 + 76 | 0) >> 2] = $60;
|
|
HEAP8[((HEAP32[($5 + 76 | 0) >> 2] | 0) + 4 | 0) >> 0] = 1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(8 | 0, 16 | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
$66 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
btBoxBoxCollisionAlgorithm__CreateFunc__CreateFunc_28_29($66 | 0) | 0;
|
|
HEAP32[($5 + 68 | 0) >> 2] = $66;
|
|
$67 = 16;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29($67 | 0, $67 | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
$69 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
btConvexPlaneCollisionAlgorithm__CreateFunc__CreateFunc_28_29($69 | 0) | 0;
|
|
HEAP32[($5 + 84 | 0) >> 2] = $69;
|
|
$70 = 16;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29($70 | 0, $70 | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
$72 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
btConvexPlaneCollisionAlgorithm__CreateFunc__CreateFunc_28_29($72 | 0) | 0;
|
|
HEAP32[($5 + 80 | 0) >> 2] = $72;
|
|
HEAP8[((HEAP32[($5 + 80 | 0) >> 2] | 0) + 4 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 28 | 0) >> 2] = 72;
|
|
HEAP32[($4 + 24 | 0) >> 2] = 80;
|
|
HEAP32[($4 + 20 | 0) >> 2] = 84;
|
|
HEAP32[($4 + 16 | 0) >> 2] = 116;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[(int_20const__20btMax_int__28int_20const__2c_20int_20const__29($4 + 28 | 0 | 0, (HEAP32[($4 + 36 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[(int_20const__20btMax_int__28int_20const__2c_20int_20const__29($4 + 12 | 0 | 0, $4 + 24 | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[(int_20const__20btMax_int__28int_20const__2c_20int_20const__29($4 + 12 | 0 | 0, $4 + 20 | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[(int_20const__20btMax_int__28int_20const__2c_20int_20const__29($4 + 12 | 0 | 0, $4 + 16 | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAP32[(HEAP32[($4 + 36 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP8[($5 + 12 | 0) >> 0] = 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[(HEAP32[($4 + 36 | 0) >> 2] | 0) >> 2] | 0;
|
|
break label$3;
|
|
}
|
|
HEAP8[($5 + 12 | 0) >> 0] = 1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(24 | 0, 16 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
$126 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
btPoolAllocator__btPoolAllocator_28int_2c_20int_29($126 | 0, 868 | 0, HEAP32[((HEAP32[($4 + 36 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $126;
|
|
}
|
|
i64toi32_i32$1 = (HEAP32[($4 + 12 | 0) >> 2] | 0) + 16 | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$1 >> 31 | 0;
|
|
$134$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 1048575;
|
|
$135$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $134$hi;
|
|
i64toi32_i32$0 = $135$hi;
|
|
i64toi32_i32$0 = $134$hi;
|
|
i64toi32_i32$2 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $135$hi;
|
|
i64toi32_i32$1 = i64toi32_i32$0 & i64toi32_i32$1 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = i64toi32_i32$2 & -16 | 0;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!((HEAP32[((HEAP32[($4 + 36 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAP8[($5 + 20 | 0) >> 0] = 0;
|
|
HEAP32[($5 + 16 | 0) >> 2] = HEAP32[((HEAP32[($4 + 36 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
break label$5;
|
|
}
|
|
HEAP8[($5 + 20 | 0) >> 0] = 1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(24 | 0, 16 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
$153 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
btPoolAllocator__btPoolAllocator_28int_2c_20int_29($153 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($4 + 36 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($5 + 16 | 0) >> 2] = $153;
|
|
}
|
|
$157 = HEAP32[($4 + 44 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 48 | 0;
|
|
return $157 | 0;
|
|
}
|
|
|
|
function btCollisionConfiguration__btCollisionConfiguration_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 95476 + 8 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btMinkowskiPenetrationDepthSolver__btMinkowskiPenetrationDepthSolver_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConvexPenetrationDepthSolver__btConvexPenetrationDepthSolver_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 101520 + 8 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexConcaveCollisionAlgorithm__CreateFunc__CreateFunc_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithmCreateFunc__btCollisionAlgorithmCreateFunc_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 95508 + 8 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexConcaveCollisionAlgorithm__SwappedCreateFunc__SwappedCreateFunc_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithmCreateFunc__btCollisionAlgorithmCreateFunc_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 95652 + 8 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCompoundCollisionAlgorithm__CreateFunc__CreateFunc_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithmCreateFunc__btCollisionAlgorithmCreateFunc_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 95744 + 8 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCompoundCompoundCollisionAlgorithm__CreateFunc__CreateFunc_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithmCreateFunc__btCollisionAlgorithmCreateFunc_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 95824 + 8 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCompoundCollisionAlgorithm__SwappedCreateFunc__SwappedCreateFunc_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithmCreateFunc__btCollisionAlgorithmCreateFunc_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 95912 + 8 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btEmptyAlgorithm__CreateFunc__CreateFunc_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithmCreateFunc__btCollisionAlgorithmCreateFunc_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 95996 + 8 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btSphereSphereCollisionAlgorithm__CreateFunc__CreateFunc_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithmCreateFunc__btCollisionAlgorithmCreateFunc_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 96064 + 8 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btSphereTriangleCollisionAlgorithm__CreateFunc__CreateFunc_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithmCreateFunc__btCollisionAlgorithmCreateFunc_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 96148 + 8 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btBoxBoxCollisionAlgorithm__CreateFunc__CreateFunc_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithmCreateFunc__btCollisionAlgorithmCreateFunc_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 96232 + 8 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexPlaneCollisionAlgorithm__CreateFunc__CreateFunc_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithmCreateFunc__btCollisionAlgorithmCreateFunc_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 96308 + 8 | 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btPoolAllocator__btPoolAllocator_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $22 = 0, $32 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 16 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $6;
|
|
HEAP32[$6 >> 2] = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
btSpinMutex__btSpinMutex_28_29($6 + 20 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(Math_imul(HEAP32[$6 >> 2] | 0, HEAP32[($6 + 4 | 0) >> 2] | 0) | 0, 16 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
$22 = (HEAP32[($5 + 8 | 0) >> 2] | 0) + -1 | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $22;
|
|
if (!$22) {
|
|
break label$1
|
|
}
|
|
HEAP32[(HEAP32[($5 + 12 | 0) >> 2] | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + (HEAP32[$6 >> 2] | 0) | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + (HEAP32[$6 >> 2] | 0) | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
HEAP32[(HEAP32[($5 + 12 | 0) >> 2] | 0) >> 2] = 0;
|
|
$32 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btCollisionAlgorithmCreateFunc__btCollisionAlgorithmCreateFunc_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 95632 + 8 | 0;
|
|
HEAP8[($4 + 4 | 0) >> 0] = 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btSpinMutex__btSpinMutex_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btDefaultCollisionConfiguration___btDefaultCollisionConfiguration_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0, $18 = 0, $22 = 0, $26 = 0, $30 = 0, $34 = 0, $38 = 0, $42 = 0, $46 = 0, $50 = 0, $54 = 0, $58 = 0, $62 = 0, $66 = 0, $70 = 0, $74 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
HEAP32[$4 >> 2] = 95360 + 8 | 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($4 + 20 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btPoolAllocator___btPoolAllocator_28_29(HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 16 | 0) >> 2] | 0 | 0);
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 12 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btPoolAllocator___btPoolAllocator_28_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
}
|
|
$18 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$18 >> 2] | 0) >> 2] | 0 | 0]($18) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 28 | 0) >> 2] | 0 | 0);
|
|
$22 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$22 >> 2] | 0) >> 2] | 0 | 0]($22) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 32 | 0) >> 2] | 0 | 0);
|
|
$26 = HEAP32[($4 + 36 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$26 >> 2] | 0) >> 2] | 0 | 0]($26) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 36 | 0) >> 2] | 0 | 0);
|
|
$30 = HEAP32[($4 + 40 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$30 >> 2] | 0) >> 2] | 0 | 0]($30) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 40 | 0) >> 2] | 0 | 0);
|
|
$34 = HEAP32[($4 + 44 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$34 >> 2] | 0) >> 2] | 0 | 0]($34) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 44 | 0) >> 2] | 0 | 0);
|
|
$38 = HEAP32[($4 + 48 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$38 >> 2] | 0) >> 2] | 0 | 0]($38) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 48 | 0) >> 2] | 0 | 0);
|
|
$42 = HEAP32[($4 + 52 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$42 >> 2] | 0) >> 2] | 0 | 0]($42) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 52 | 0) >> 2] | 0 | 0);
|
|
$46 = HEAP32[($4 + 56 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$46 >> 2] | 0) >> 2] | 0 | 0]($46) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 56 | 0) >> 2] | 0 | 0);
|
|
$50 = HEAP32[($4 + 72 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$50 >> 2] | 0) >> 2] | 0 | 0]($50) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 72 | 0) >> 2] | 0 | 0);
|
|
$54 = HEAP32[($4 + 76 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$54 >> 2] | 0) >> 2] | 0 | 0]($54) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 76 | 0) >> 2] | 0 | 0);
|
|
$58 = HEAP32[($4 + 68 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$58 >> 2] | 0) >> 2] | 0 | 0]($58) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 68 | 0) >> 2] | 0 | 0);
|
|
$62 = HEAP32[($4 + 84 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$62 >> 2] | 0) >> 2] | 0 | 0]($62) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 84 | 0) >> 2] | 0 | 0);
|
|
$66 = HEAP32[($4 + 80 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$66 >> 2] | 0) >> 2] | 0 | 0]($66) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 80 | 0) >> 2] | 0 | 0);
|
|
$70 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$70 >> 2] | 0) >> 2] | 0 | 0]($70) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0);
|
|
btCollisionConfiguration___btCollisionConfiguration_28_29($4 | 0) | 0;
|
|
$74 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $74 | 0;
|
|
}
|
|
|
|
function btPoolAllocator___btPoolAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 16 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionConfiguration___btCollisionConfiguration_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btDefaultCollisionConfiguration___btDefaultCollisionConfiguration_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[699 | 0]($4) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDefaultCollisionConfiguration__getClosestPointsAlgorithmCreateFunc_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $123 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $1;
|
|
HEAP32[$5 >> 2] = $2;
|
|
$6 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) == (8 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) == (8 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($6 + 56 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
if (!((HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) == (8 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) == (1 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($6 + 72 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
label$4 : {
|
|
if (!((HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) == (1 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) == (8 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($6 + 76 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
if (!((btBroadphaseProxy__isConvex_28int_29(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) == (28 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($6 + 84 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
label$6 : {
|
|
if (!((btBroadphaseProxy__isConvex_28int_29(HEAP32[$5 >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
if (!((HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) == (28 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($6 + 80 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
label$7 : {
|
|
if (!((btBroadphaseProxy__isConvex_28int_29(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
if (!((btBroadphaseProxy__isConvex_28int_29(HEAP32[$5 >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
label$8 : {
|
|
if (!((btBroadphaseProxy__isConvex_28int_29(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
if (!((btBroadphaseProxy__isConcave_28int_29(HEAP32[$5 >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($6 + 32 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
label$9 : {
|
|
if (!((btBroadphaseProxy__isConvex_28int_29(HEAP32[$5 >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
if (!((btBroadphaseProxy__isConcave_28int_29(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($6 + 36 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
label$10 : {
|
|
if (!((btBroadphaseProxy__isCompound_28int_29(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
if (!((btBroadphaseProxy__isCompound_28int_29(HEAP32[$5 >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
label$11 : {
|
|
if (!((btBroadphaseProxy__isCompound_28int_29(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($6 + 40 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
label$12 : {
|
|
if (!((btBroadphaseProxy__isCompound_28int_29(HEAP32[$5 >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($6 + 48 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($6 + 52 | 0) >> 2] | 0;
|
|
}
|
|
$123 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $123 | 0;
|
|
}
|
|
|
|
function btDefaultCollisionConfiguration__getCollisionAlgorithmCreateFunc_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $126 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $1;
|
|
HEAP32[$5 >> 2] = $2;
|
|
$6 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) == (8 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) == (8 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($6 + 56 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
if (!((HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) == (8 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) == (1 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($6 + 72 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
label$4 : {
|
|
if (!((HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) == (1 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) == (8 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($6 + 76 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
if (HEAP32[($5 + 4 | 0) >> 2] | 0) {
|
|
break label$5
|
|
}
|
|
if (HEAP32[$5 >> 2] | 0) {
|
|
break label$5
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($6 + 68 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
label$6 : {
|
|
if (!((btBroadphaseProxy__isConvex_28int_29(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) == (28 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($6 + 84 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
label$7 : {
|
|
if (!((btBroadphaseProxy__isConvex_28int_29(HEAP32[$5 >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
if (!((HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) == (28 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($6 + 80 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
label$8 : {
|
|
if (!((btBroadphaseProxy__isConvex_28int_29(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
if (!((btBroadphaseProxy__isConvex_28int_29(HEAP32[$5 >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
label$9 : {
|
|
if (!((btBroadphaseProxy__isConvex_28int_29(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
if (!((btBroadphaseProxy__isConcave_28int_29(HEAP32[$5 >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($6 + 32 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
label$10 : {
|
|
if (!((btBroadphaseProxy__isConvex_28int_29(HEAP32[$5 >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
if (!((btBroadphaseProxy__isConcave_28int_29(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($6 + 36 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
label$11 : {
|
|
if (!((btBroadphaseProxy__isCompound_28int_29(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
if (!((btBroadphaseProxy__isCompound_28int_29(HEAP32[$5 >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
label$12 : {
|
|
if (!((btBroadphaseProxy__isCompound_28int_29(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($6 + 40 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
label$13 : {
|
|
if (!((btBroadphaseProxy__isCompound_28int_29(HEAP32[$5 >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($6 + 48 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($6 + 52 | 0) >> 2] | 0;
|
|
}
|
|
$126 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $126 | 0;
|
|
}
|
|
|
|
function btDefaultCollisionConfiguration__getPersistentManifoldPool_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btDefaultCollisionConfiguration__getCollisionAlgorithmPool_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btCollisionConfiguration___btCollisionConfiguration_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btConvexConcaveCollisionAlgorithm__CreateFunc___CreateFunc_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithmCreateFunc___btCollisionAlgorithmCreateFunc_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionAlgorithmCreateFunc___btCollisionAlgorithmCreateFunc_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btConvexConcaveCollisionAlgorithm__CreateFunc___CreateFunc_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConvexConcaveCollisionAlgorithm__CreateFunc___CreateFunc_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexConcaveCollisionAlgorithm__CreateFunc__CreateCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $8 = 0, $15 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$8 = HEAP32[(HEAP32[($6 + 24 | 0) >> 2] | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($8, 80) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$15 = btConvexConcaveCollisionAlgorithm__operator_20new_28unsigned_20long_2c_20void__29(80 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
btConvexConcaveCollisionAlgorithm__btConvexConcaveCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20bool_29($15 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return $15 | 0;
|
|
}
|
|
|
|
function btConvexConcaveCollisionAlgorithm__operator_20new_28unsigned_20long_2c_20void__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return HEAP32[($4 + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btCollisionAlgorithmCreateFunc___btCollisionAlgorithmCreateFunc_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithmCreateFunc___btCollisionAlgorithmCreateFunc_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionAlgorithmCreateFunc__CreateCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
return 0 | 0;
|
|
}
|
|
|
|
function btConvexConcaveCollisionAlgorithm__SwappedCreateFunc___SwappedCreateFunc_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithmCreateFunc___btCollisionAlgorithmCreateFunc_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexConcaveCollisionAlgorithm__SwappedCreateFunc___SwappedCreateFunc_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConvexConcaveCollisionAlgorithm__SwappedCreateFunc___SwappedCreateFunc_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexConcaveCollisionAlgorithm__SwappedCreateFunc__CreateCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $8 = 0, $15 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$8 = HEAP32[(HEAP32[($6 + 24 | 0) >> 2] | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($8, 80) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$15 = btConvexConcaveCollisionAlgorithm__operator_20new_28unsigned_20long_2c_20void__29(80 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
btConvexConcaveCollisionAlgorithm__btConvexConcaveCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20bool_29($15 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0, 1 & 1 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return $15 | 0;
|
|
}
|
|
|
|
function btCompoundCollisionAlgorithm__CreateFunc___CreateFunc_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithmCreateFunc___btCollisionAlgorithmCreateFunc_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCompoundCollisionAlgorithm__CreateFunc___CreateFunc_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCompoundCollisionAlgorithm__CreateFunc___CreateFunc_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundCollisionAlgorithm__CreateFunc__CreateCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $8 = 0, $13 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$8 = HEAP32[(HEAP32[($6 + 24 | 0) >> 2] | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($8, 84) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$13 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btCompoundCollisionAlgorithm__btCompoundCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20bool_29($13 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return $13 | 0;
|
|
}
|
|
|
|
function btCompoundCompoundCollisionAlgorithm__CreateFunc___CreateFunc_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithmCreateFunc___btCollisionAlgorithmCreateFunc_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCompoundCompoundCollisionAlgorithm__CreateFunc___CreateFunc_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCompoundCompoundCollisionAlgorithm__CreateFunc___CreateFunc_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundCompoundCollisionAlgorithm__CreateFunc__CreateCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $8 = 0, $13 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$8 = HEAP32[(HEAP32[($6 + 24 | 0) >> 2] | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($8, 116) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$13 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btCompoundCompoundCollisionAlgorithm__btCompoundCompoundCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20bool_29($13 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return $13 | 0;
|
|
}
|
|
|
|
function btCompoundCollisionAlgorithm__SwappedCreateFunc___SwappedCreateFunc_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithmCreateFunc___btCollisionAlgorithmCreateFunc_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCompoundCollisionAlgorithm__SwappedCreateFunc___SwappedCreateFunc_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCompoundCollisionAlgorithm__SwappedCreateFunc___SwappedCreateFunc_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundCollisionAlgorithm__SwappedCreateFunc__CreateCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $8 = 0, $13 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$8 = HEAP32[(HEAP32[($6 + 24 | 0) >> 2] | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($8, 84) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$13 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btCompoundCollisionAlgorithm__btCompoundCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20bool_29($13 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0, 1 & 1 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return $13 | 0;
|
|
}
|
|
|
|
function btEmptyAlgorithm__CreateFunc___CreateFunc_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithmCreateFunc___btCollisionAlgorithmCreateFunc_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btEmptyAlgorithm__CreateFunc___CreateFunc_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btEmptyAlgorithm__CreateFunc___CreateFunc_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btEmptyAlgorithm__CreateFunc__CreateCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $8 = 0, $13 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$8 = HEAP32[(HEAP32[($6 + 24 | 0) >> 2] | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($8, 8) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$13 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btEmptyAlgorithm__btEmptyAlgorithm_28btCollisionAlgorithmConstructionInfo_20const__29($13 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return $13 | 0;
|
|
}
|
|
|
|
function btSphereSphereCollisionAlgorithm__CreateFunc___CreateFunc_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithmCreateFunc___btCollisionAlgorithmCreateFunc_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btSphereSphereCollisionAlgorithm__CreateFunc___CreateFunc_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btSphereSphereCollisionAlgorithm__CreateFunc___CreateFunc_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSphereSphereCollisionAlgorithm__CreateFunc__CreateCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $8 = 0, $13 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$8 = HEAP32[(HEAP32[($6 + 24 | 0) >> 2] | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($8, 16) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$13 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btSphereSphereCollisionAlgorithm__btSphereSphereCollisionAlgorithm_28btPersistentManifold__2c_20btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($13 | 0, 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return $13 | 0;
|
|
}
|
|
|
|
function btSphereTriangleCollisionAlgorithm__CreateFunc___CreateFunc_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithmCreateFunc___btCollisionAlgorithmCreateFunc_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btSphereTriangleCollisionAlgorithm__CreateFunc___CreateFunc_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btSphereTriangleCollisionAlgorithm__CreateFunc___CreateFunc_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSphereTriangleCollisionAlgorithm__CreateFunc__CreateCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $9 = 0, $14 = 0, $7 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
$9 = HEAP32[(HEAP32[($6 + 24 | 0) >> 2] | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$9 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($9, 20) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$14 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btSphereTriangleCollisionAlgorithm__btSphereTriangleCollisionAlgorithm_28btPersistentManifold__2c_20btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20bool_29($14 | 0, HEAP32[((HEAP32[($6 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0, (HEAPU8[($7 + 4 | 0) >> 0] | 0) & 1 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return $14 | 0;
|
|
}
|
|
|
|
function btBoxBoxCollisionAlgorithm__CreateFunc___CreateFunc_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithmCreateFunc___btCollisionAlgorithmCreateFunc_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btBoxBoxCollisionAlgorithm__CreateFunc___CreateFunc_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btBoxBoxCollisionAlgorithm__CreateFunc___CreateFunc_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBoxBoxCollisionAlgorithm__CreateFunc__CreateCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $9 = 0, $14 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 12 | 0) >> 2] = 16;
|
|
$9 = HEAP32[(HEAP32[($6 + 24 | 0) >> 2] | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$9 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($9, HEAP32[($6 + 12 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
$14 = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
btBoxBoxCollisionAlgorithm__btBoxBoxCollisionAlgorithm_28btPersistentManifold__2c_20btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($14 | 0, 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return $14 | 0;
|
|
}
|
|
|
|
function btConvexPlaneCollisionAlgorithm__CreateFunc___CreateFunc_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithmCreateFunc___btCollisionAlgorithmCreateFunc_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexPlaneCollisionAlgorithm__CreateFunc___CreateFunc_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConvexPlaneCollisionAlgorithm__CreateFunc___CreateFunc_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexPlaneCollisionAlgorithm__CreateFunc__CreateCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $9 = 0, $17 = 0, $27 = 0, $37 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
$9 = HEAP32[(HEAP32[($6 + 20 | 0) >> 2] | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$9 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($9, 28) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if ((HEAPU8[($7 + 4 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
$17 = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
btConvexPlaneCollisionAlgorithm__btConvexPlaneCollisionAlgorithm_28btPersistentManifold__2c_20btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20bool_2c_20int_2c_20int_29($17 | 0, 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0, HEAP32[($7 + 8 | 0) >> 2] | 0 | 0, HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $17;
|
|
break label$1;
|
|
}
|
|
$27 = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
btConvexPlaneCollisionAlgorithm__btConvexPlaneCollisionAlgorithm_28btPersistentManifold__2c_20btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20bool_2c_20int_2c_20int_29($27 | 0, 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0, 1 & 1 | 0 | 0, HEAP32[($7 + 8 | 0) >> 2] | 0 | 0, HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $27;
|
|
}
|
|
$37 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return $37 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btDefaultCollisionConfiguration_cpp() {
|
|
__cxx_global_var_init_21();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_22() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114036 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btEmptyAlgorithm__btEmptyAlgorithm_28btCollisionAlgorithmConstructionInfo_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithm__btCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo_20const__29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$5 >> 2] = 96388 + 8 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btEmptyAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
return;
|
|
}
|
|
|
|
function btEmptyAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
return Math_fround(Math_fround(1.0));
|
|
}
|
|
|
|
function btEmptyAlgorithm___btEmptyAlgorithm_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionAlgorithm___btCollisionAlgorithm_28_29_1($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btEmptyAlgorithm___btEmptyAlgorithm_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btEmptyAlgorithm___btEmptyAlgorithm_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btEmptyAlgorithm__getAllContactManifolds_28btAlignedObjectArray_btPersistentManifold____29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btEmptyCollisionAlgorithm_cpp() {
|
|
__cxx_global_var_init_22();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_23() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114040 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btHashedSimplePairCache__btHashedSimplePairCache_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 96448 + 8 | 0;
|
|
btAlignedObjectArray_btSimplePair___btAlignedObjectArray_28_29($4 + 4 | 0 | 0) | 0;
|
|
btAlignedObjectArray_int___btAlignedObjectArray_28_29($4 + 24 | 0 | 0) | 0;
|
|
btAlignedObjectArray_int___btAlignedObjectArray_28_29($4 + 44 | 0 | 0) | 0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = 2;
|
|
btAlignedObjectArray_btSimplePair___reserve_28int_29($4 + 4 | 0 | 0, HEAP32[($3 + 8 | 0) >> 2] | 0 | 0);
|
|
btHashedSimplePairCache__growTables_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btHashedSimplePairCache__growTables_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $22 = 0, $29 = 0, $95 = 0, $100 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$3 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 44 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 44 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btAlignedObjectArray_btSimplePair___capacity_28_29_20const($4 + 4 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_int___size_28_29_20const($4 + 24 | 0 | 0) | 0 | 0) < (HEAP32[($3 + 40 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btAlignedObjectArray_int___size_28_29_20const($4 + 24 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_i32$1;
|
|
$22 = HEAP32[($3 + 40 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 32 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_int___resize_28int_2c_20int_20const__29($4 + 24 | 0 | 0, $22 | 0, $3 + 32 | 0 | 0);
|
|
$29 = HEAP32[($3 + 40 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 28 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_int___resize_28int_2c_20int_20const__29($4 + 44 | 0 | 0, $29 | 0, $3 + 28 | 0 | 0);
|
|
HEAP32[($3 + 24 | 0) >> 2] = 0;
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($3 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($3 + 40 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($4 + 24 | 0 | 0, HEAP32[($3 + 24 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = -1), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[($3 + 24 | 0) >> 2] = (HEAP32[($3 + 24 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
HEAP32[($3 + 24 | 0) >> 2] = 0;
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((HEAP32[($3 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($3 + 40 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($4 + 44 | 0 | 0, HEAP32[($3 + 24 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = -1), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[($3 + 24 | 0) >> 2] = (HEAP32[($3 + 24 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
HEAP32[($3 + 24 | 0) >> 2] = 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($3 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($3 + 36 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29($4 + 4 | 0 | 0, HEAP32[($3 + 24 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($3 + 16 | 0) >> 2] = HEAP32[(HEAP32[($3 + 20 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = HEAP32[((HEAP32[($3 + 20 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = (btHashedSimplePairCache__getHash_28unsigned_20int_2c_20unsigned_20int_29($4 | 0, HEAP32[($3 + 16 | 0) >> 2] | 0 | 0, HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0) & ((btAlignedObjectArray_btSimplePair___capacity_28_29_20const($4 + 4 | 0 | 0) | 0) - 1 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
$95 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($4 + 24 | 0 | 0, HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($4 + 44 | 0 | 0, HEAP32[($3 + 24 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $95), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$100 = HEAP32[($3 + 24 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($4 + 24 | 0 | 0, HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $100), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[($3 + 24 | 0) >> 2] = (HEAP32[($3 + 24 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
__stack_pointer = $3 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHashedSimplePairCache__getHash_28unsigned_20int_2c_20unsigned_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0 | ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 16 | 0) | 0;
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + (((HEAP32[$5 >> 2] | 0) << 15 | 0) ^ -1 | 0) | 0;
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) ^ ((HEAP32[$5 >> 2] | 0) >>> 10 | 0) | 0;
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + ((HEAP32[$5 >> 2] | 0) << 3 | 0) | 0;
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) ^ ((HEAP32[$5 >> 2] | 0) >>> 6 | 0) | 0;
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + (((HEAP32[$5 >> 2] | 0) << 11 | 0) ^ -1 | 0) | 0;
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) ^ ((HEAP32[$5 >> 2] | 0) >>> 16 | 0) | 0;
|
|
return HEAP32[$5 >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btHashedSimplePairCache___btHashedSimplePairCache_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 96448 + 8 | 0;
|
|
btAlignedObjectArray_int____btAlignedObjectArray_28_29($4 + 44 | 0 | 0) | 0;
|
|
btAlignedObjectArray_int____btAlignedObjectArray_28_29($4 + 24 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btSimplePair____btAlignedObjectArray_28_29($4 + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btHashedSimplePairCache___btHashedSimplePairCache_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[745 | 0]($4) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHashedSimplePairCache__removeAllPairs_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btSimplePair___clear_28_29($4 + 4 | 0 | 0);
|
|
btAlignedObjectArray_int___clear_28_29($4 + 24 | 0 | 0);
|
|
btAlignedObjectArray_int___clear_28_29($4 + 44 | 0 | 0);
|
|
HEAP32[($3 + 8 | 0) >> 2] = 2;
|
|
btAlignedObjectArray_btSimplePair___reserve_28int_29($4 + 4 | 0 | 0, HEAP32[($3 + 8 | 0) >> 2] | 0 | 0);
|
|
btHashedSimplePairCache__growTables_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHashedSimplePairCache__findPair_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $44 = 0, $91 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 16 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
HEAP32[(0 + 114052 | 0) >> 2] = (HEAP32[(0 + 114052 | 0) >> 2] | 0) + 1 | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = (btHashedSimplePairCache__getHash_28unsigned_20int_2c_20unsigned_20int_29($6 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0, HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) | 0) & ((btAlignedObjectArray_btSimplePair___capacity_28_29_20const($6 + 4 | 0 | 0) | 0) - 1 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) >= (btAlignedObjectArray_int___size_28_29_20const($6 + 24 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 28 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 24 | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
label$3 : while (1) {
|
|
$44 = 0;
|
|
label$4 : {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) != (-1 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$44 = ((btHashedSimplePairCache__equalsPair_28btSimplePair_20const__2c_20int_2c_20int_29($6 | 0, btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29($6 + 4 | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0, HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) | 0) & 1 | 0 | 0) == (0 | 0);
|
|
}
|
|
label$5 : {
|
|
if (!($44 & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 44 | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
continue label$3;
|
|
}
|
|
break label$3;
|
|
};
|
|
label$6 : {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) == (-1 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAP32[($5 + 28 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
label$7 : {
|
|
if ((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btSimplePair___size_28_29_20const($6 + 4 | 0 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$7
|
|
}
|
|
__assert_fail(87330 | 0, 75393 | 0, 88 | 0, 71055 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29($6 + 4 | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
$91 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return $91 | 0;
|
|
}
|
|
|
|
function btHashedSimplePairCache__equalsPair_28btSimplePair_20const__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $16 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$16 = 0;
|
|
label$1 : {
|
|
if (!((HEAP32[(HEAP32[($6 + 8 | 0) >> 2] | 0) >> 2] | 0 | 0) == (HEAP32[($6 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$16 = (HEAP32[((HEAP32[($6 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) == (HEAP32[$6 >> 2] | 0 | 0);
|
|
}
|
|
return $16 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btHashedSimplePairCache__internalAddPair_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $56 = 0, $65 = 0, $70 = 0, $76 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 36 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 32 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 40 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = (btHashedSimplePairCache__getHash_28unsigned_20int_2c_20unsigned_20int_29($6 | 0, HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0) & ((btAlignedObjectArray_btSimplePair___capacity_28_29_20const($6 + 4 | 0 | 0) | 0) - 1 | 0) | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btHashedSimplePairCache__internalFindPair_28int_2c_20int_2c_20int_29($6 | 0, HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, HEAP32[($5 + 32 | 0) >> 2] | 0 | 0, HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 44 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btSimplePair___size_28_29_20const($6 + 4 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btSimplePair___capacity_28_29_20const($6 + 4 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btSimplePair___expandNonInitializing_28_29($6 + 4 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btSimplePair___capacity_28_29_20const($6 + 4 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
label$3 : {
|
|
if (!((HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
btHashedSimplePairCache__growTables_28_29($6 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = (btHashedSimplePairCache__getHash_28unsigned_20int_2c_20unsigned_20int_29($6 | 0, HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0) & ((btAlignedObjectArray_btSimplePair___capacity_28_29_20const($6 + 4 | 0 | 0) | 0) - 1 | 0) | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
$56 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btSimplePair__btSimplePair_28int_2c_20int_29($56 | 0, HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $56;
|
|
HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 8 | 0) >> 2] = 0;
|
|
$65 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 24 | 0 | 0, HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 44 | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $65), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$70 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 24 | 0 | 0, HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $70), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[($5 + 44 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
}
|
|
$76 = HEAP32[($5 + 44 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return $76 | 0;
|
|
}
|
|
|
|
function btHashedSimplePairCache__internalFindPair_28int_2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $21 = 0, $68 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($7 + 24 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : while (1) {
|
|
$21 = 0;
|
|
label$2 : {
|
|
if (!((HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) != (-1 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$21 = ((btHashedSimplePairCache__equalsPair_28btSimplePair_20const__2c_20int_2c_20int_29($7 | 0, btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29($7 + 4 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) | 0) & 1 | 0 | 0) == (0 | 0);
|
|
}
|
|
label$3 : {
|
|
if (!($21 & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($7 + 44 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
continue label$1;
|
|
}
|
|
break label$1;
|
|
};
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!((HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) == (-1 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAP32[($6 + 28 | 0) >> 2] = 0;
|
|
break label$4;
|
|
}
|
|
label$6 : {
|
|
if ((HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btSimplePair___size_28_29_20const($7 + 4 | 0 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$6
|
|
}
|
|
__assert_fail(87330 | 0, 79692 | 0, 159 | 0, 71064 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29($7 + 4 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
$68 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return $68 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSimplePair___expandNonInitializing_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0, $22 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btAlignedObjectArray_btSimplePair___size_28_29_20const($4 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btSimplePair___capacity_28_29_20const($4 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btSimplePair___reserve_28int_29($4 | 0, btAlignedObjectArray_btSimplePair___allocSize_28int_29($4 | 0, btAlignedObjectArray_btSimplePair___size_28_29_20const($4 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
$22 = (HEAP32[($4 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($3 + 8 | 0) >> 2] | 0, 12) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $22 | 0;
|
|
}
|
|
|
|
function btHashedSimplePairCache__removeOverlappingPair_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, i64toi32_i32$0 = 0, $229 = 0, $235 = 0, $112 = 0, $121 = 0, $212 = 0, $221 = 0, $233 = 0, i64toi32_i32$1 = 0, $727 = 0, $243 = 0, $248 = 0, $256 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 56 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 52 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 48 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 56 | 0) >> 2] | 0;
|
|
HEAP32[(0 + 114044 | 0) >> 2] = (HEAP32[(0 + 114044 | 0) >> 2] | 0) + 1 | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = (btHashedSimplePairCache__getHash_28unsigned_20int_2c_20unsigned_20int_29($6 | 0, HEAP32[($5 + 52 | 0) >> 2] | 0 | 0, HEAP32[($5 + 48 | 0) >> 2] | 0 | 0) | 0) & ((btAlignedObjectArray_btSimplePair___capacity_28_29_20const($6 + 4 | 0 | 0) | 0) - 1 | 0) | 0), HEAP32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btHashedSimplePairCache__internalFindPair_28int_2c_20int_2c_20int_29($6 | 0, HEAP32[($5 + 52 | 0) >> 2] | 0 | 0, HEAP32[($5 + 48 | 0) >> 2] | 0 | 0, HEAP32[($5 + 44 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 60 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[($5 + 36 | 0) >> 2] = HEAP32[((HEAP32[($5 + 40 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = ((HEAP32[($5 + 40 | 0) >> 2] | 0) - (btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29($6 + 4 | 0 | 0, 0 | 0) | 0) | 0 | 0) / (12 | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
label$3 : {
|
|
if ((HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btSimplePair___size_28_29_20const($6 + 4 | 0 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
__assert_fail(87368 | 0, 75393 | 0, 194 | 0, 71006 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 24 | 0 | 0, HEAP32[($5 + 44 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
label$4 : {
|
|
if ((HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) != (-1 | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
__assert_fail(84057 | 0, 75393 | 0, 198 | 0, 71006 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($5 + 24 | 0) >> 2] = -1;
|
|
label$5 : {
|
|
label$6 : while (1) {
|
|
if (!((HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) != (HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAP32[($5 + 24 | 0) >> 2] = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 44 | 0 | 0, HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
continue label$6;
|
|
};
|
|
}
|
|
label$7 : {
|
|
label$8 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) != (-1 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
label$9 : {
|
|
if ((HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 44 | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) == (HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$9
|
|
}
|
|
__assert_fail(66363 | 0, 75393 | 0, 209 | 0, 71006 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$112 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 44 | 0 | 0, HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 44 | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $112), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
break label$7;
|
|
}
|
|
$121 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 44 | 0 | 0, HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 24 | 0 | 0, HEAP32[($5 + 44 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $121), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = (btAlignedObjectArray_btSimplePair___size_28_29_20const($6 + 4 | 0 | 0) | 0) - 1 | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
label$10 : {
|
|
if (!((HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) == (HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
btAlignedObjectArray_btSimplePair___pop_back_28_29($6 + 4 | 0 | 0);
|
|
HEAP32[($5 + 60 | 0) >> 2] = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29($6 + 4 | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = (btHashedSimplePairCache__getHash_28unsigned_20int_2c_20unsigned_20int_29($6 | 0, HEAP32[(HEAP32[($5 + 16 | 0) >> 2] | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) | 0) & ((btAlignedObjectArray_btSimplePair___capacity_28_29_20const($6 + 4 | 0 | 0) | 0) - 1 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 24 | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
label$11 : {
|
|
if ((HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) != (-1 | 0) & 1 | 0) {
|
|
break label$11
|
|
}
|
|
__assert_fail(84057 | 0, 75393 | 0, 236 | 0, 71006 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($5 + 24 | 0) >> 2] = -1;
|
|
label$12 : {
|
|
label$13 : while (1) {
|
|
if (!((HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) != (HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
HEAP32[($5 + 24 | 0) >> 2] = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 44 | 0 | 0, HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
continue label$13;
|
|
};
|
|
}
|
|
label$14 : {
|
|
label$15 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) != (-1 | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
label$16 : {
|
|
if ((HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 44 | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) == (HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$16
|
|
}
|
|
__assert_fail(66393 | 0, 75393 | 0, 247 | 0, 71006 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$212 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 44 | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 44 | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $212), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
break label$14;
|
|
}
|
|
$221 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 44 | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 24 | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $221), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
}
|
|
$229 = btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29($6 + 4 | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0;
|
|
$233 = btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29($6 + 4 | 0 | 0, HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[$229 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($229 + 4 | 0) >> 2] | 0;
|
|
$727 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $233;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $727;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$235 = 8;
|
|
HEAP32[(i64toi32_i32$0 + $235 | 0) >> 2] = HEAP32[($229 + $235 | 0) >> 2] | 0;
|
|
$243 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 24 | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 44 | 0 | 0, HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $243), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$248 = HEAP32[($5 + 32 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 24 | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $248), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btSimplePair___pop_back_28_29($6 + 4 | 0 | 0);
|
|
HEAP32[($5 + 60 | 0) >> 2] = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
}
|
|
$256 = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 64 | 0;
|
|
return $256 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSimplePair___pop_back_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) > (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85800 | 0, 78192 | 0, 201 | 0, 77711 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + -1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHashedSimplePairCache__addOverlappingPair_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $14 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[(0 + 114048 | 0) >> 2] = (HEAP32[(0 + 114048 | 0) >> 2] | 0) + 1 | 0;
|
|
$14 = btHashedSimplePairCache__internalAddPair_28int_2c_20int_29($6 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $14 | 0;
|
|
}
|
|
|
|
function btHashedSimplePairCache__getOverlappingPairArrayPtr_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $8 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$8 = btAlignedObjectArray_btSimplePair___operator_5b_5d_28int_29((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0 | 0, 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btHashedSimplePairCache_cpp() {
|
|
__cxx_global_var_init_23();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_24() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114056 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btManifoldResult__calculateCombinedRollingFriction_28btCollisionObject_20const__2c_20btCollisionObject_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $29 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(btCollisionObject__getRollingFriction_28_29_20const(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0)) * Math_fround(btCollisionObject__getFriction_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0))) + Math_fround(Math_fround(btCollisionObject__getRollingFriction_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0)) * Math_fround(btCollisionObject__getFriction_28_29_20const(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0))))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[$4 >> 2] = Math_fround(10.0);
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 4 | 0) >> 2]) < Math_fround(-10.0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[($4 + 4 | 0) >> 2] = Math_fround(-10.0);
|
|
}
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 4 | 0) >> 2]) > Math_fround(10.0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($4 + 4 | 0) >> 2] = Math_fround(10.0);
|
|
}
|
|
$29 = Math_fround(HEAPF32[($4 + 4 | 0) >> 2]);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return Math_fround($29);
|
|
}
|
|
|
|
function btCollisionObject__getRollingFriction_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 236 | 0) >> 2]));
|
|
}
|
|
|
|
function btCollisionObject__getFriction_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 228 | 0) >> 2]));
|
|
}
|
|
|
|
function btManifoldResult__calculateCombinedSpinningFriction_28btCollisionObject_20const__2c_20btCollisionObject_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $29 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(btCollisionObject__getSpinningFriction_28_29_20const(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0)) * Math_fround(btCollisionObject__getFriction_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0))) + Math_fround(Math_fround(btCollisionObject__getSpinningFriction_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0)) * Math_fround(btCollisionObject__getFriction_28_29_20const(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0))))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[$4 >> 2] = Math_fround(10.0);
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 4 | 0) >> 2]) < Math_fround(-10.0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[($4 + 4 | 0) >> 2] = Math_fround(-10.0);
|
|
}
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 4 | 0) >> 2]) > Math_fround(10.0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($4 + 4 | 0) >> 2] = Math_fround(10.0);
|
|
}
|
|
$29 = Math_fround(HEAPF32[($4 + 4 | 0) >> 2]);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return Math_fround($29);
|
|
}
|
|
|
|
function btCollisionObject__getSpinningFriction_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 240 | 0) >> 2]));
|
|
}
|
|
|
|
function btManifoldResult__calculateCombinedFriction_28btCollisionObject_20const__2c_20btCollisionObject_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $23 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(btCollisionObject__getFriction_28_29_20const(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0)) * Math_fround(btCollisionObject__getFriction_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[$4 >> 2] = Math_fround(10.0);
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 4 | 0) >> 2]) < Math_fround(-10.0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[($4 + 4 | 0) >> 2] = Math_fround(-10.0);
|
|
}
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 4 | 0) >> 2]) > Math_fround(10.0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($4 + 4 | 0) >> 2] = Math_fround(10.0);
|
|
}
|
|
$23 = Math_fround(HEAPF32[($4 + 4 | 0) >> 2]);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return Math_fround($23);
|
|
}
|
|
|
|
function btManifoldResult__calculateCombinedRestitution_28btCollisionObject_20const__2c_20btCollisionObject_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$9 = Math_fround(Math_fround(btCollisionObject__getRestitution_28_29_20const(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0)) * Math_fround(btCollisionObject__getRestitution_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0)));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return Math_fround($9);
|
|
}
|
|
|
|
function btCollisionObject__getRestitution_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 232 | 0) >> 2]));
|
|
}
|
|
|
|
function btManifoldResult__btManifoldResult_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btDiscreteCollisionDetectorInterface__Result__Result_28_29($6 | 0) | 0;
|
|
HEAP32[$6 >> 2] = 96512 + 8 | 0;
|
|
HEAP32[($6 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
HEAPF32[($6 + 32 | 0) >> 2] = Math_fround(0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btManifoldResult__addContactPoint_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $7 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $74 = 0, $90 = 0, $108 = 0, $124 = 0, $148 = 0, $150 = 0, $161 = 0, $163 = 0, $189 = 0, $204 = 0, $227 = 0, $242 = 0, $255 = 0, $263 = 0, $382 = 0, $389 = 0, $42 = 0, $573 = 0, $577 = 0, $608 = 0, $612 = 0, $645 = 0, $649 = 0, $680 = 0, $684 = 0, $717 = 0, $730 = 0, $743 = 0, $753 = 0, $393 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 432 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 428 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 424 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 420 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 416 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 428 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($7 + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(70583 | 0, 71961 | 0, 109 | 0, 67640 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 416 | 0) >> 2]) > Math_fround(btPersistentManifold__getContactBreakingThreshold_28_29_20const(HEAP32[($7 + 4 | 0) >> 2] | 0 | 0)) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
break label$2;
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = (btPersistentManifold__getBody0_28_29_20const(HEAP32[($7 + 4 | 0) >> 2] | 0 | 0) | 0 | 0) != (btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 415 | 0) >> 0] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = (btPersistentManifold__getNumContacts_28_29_20const(HEAP32[($7 + 4 | 0) >> 2] | 0 | 0) | 0 | 0) == (0 | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 414 | 0) >> 0] = wasm2js_i32$1;
|
|
$42 = HEAP32[($6 + 420 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 380 | 0 | 0, HEAP32[($6 + 424 | 0) >> 2] | 0 | 0, $6 + 416 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 396 | 0 | 0, $42 | 0, $6 + 380 | 0 | 0);
|
|
btVector3__btVector3_28_29($6 + 360 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 344 | 0 | 0) | 0;
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!((HEAPU8[($6 + 415 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btTransform__invXform_28btVector3_20const__29_20const($6 + 328 | 0 | 0, btCollisionObject__getWorldTransform_28_29_20const(btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, $6 + 396 | 0 | 0);
|
|
$74 = 8;
|
|
i64toi32_i32$2 = ($6 + 328 | 0) + $74 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$573 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 360 | 0) + $74 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $573;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 328 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 332 | 0) >> 2] | 0;
|
|
$577 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 360 | 0) >> 2] = $577;
|
|
HEAP32[($6 + 364 | 0) >> 2] = i64toi32_i32$0;
|
|
btTransform__invXform_28btVector3_20const__29_20const($6 + 312 | 0 | 0, btCollisionObject__getWorldTransform_28_29_20const(btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, HEAP32[($6 + 420 | 0) >> 2] | 0 | 0);
|
|
$90 = 8;
|
|
i64toi32_i32$2 = ($6 + 312 | 0) + $90 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$608 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 344 | 0) + $90 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $608;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 312 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 316 | 0) >> 2] | 0;
|
|
$612 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 344 | 0) >> 2] = $612;
|
|
HEAP32[($6 + 348 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$4;
|
|
}
|
|
btTransform__invXform_28btVector3_20const__29_20const($6 + 296 | 0 | 0, btCollisionObject__getWorldTransform_28_29_20const(btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, $6 + 396 | 0 | 0);
|
|
$108 = 8;
|
|
i64toi32_i32$2 = ($6 + 296 | 0) + $108 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$645 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 360 | 0) + $108 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $645;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 296 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 300 | 0) >> 2] | 0;
|
|
$649 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 360 | 0) >> 2] = $649;
|
|
HEAP32[($6 + 364 | 0) >> 2] = i64toi32_i32$0;
|
|
btTransform__invXform_28btVector3_20const__29_20const($6 + 280 | 0 | 0, btCollisionObject__getWorldTransform_28_29_20const(btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, HEAP32[($6 + 420 | 0) >> 2] | 0 | 0);
|
|
$124 = 8;
|
|
i64toi32_i32$2 = ($6 + 280 | 0) + $124 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$680 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 344 | 0) + $124 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $680;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 280 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 284 | 0) >> 2] | 0;
|
|
$684 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 344 | 0) >> 2] = $684;
|
|
HEAP32[($6 + 348 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
btManifoldPoint__btManifoldPoint_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_29($6 + 72 | 0 | 0, $6 + 360 | 0 | 0, $6 + 344 | 0 | 0, HEAP32[($6 + 424 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 416 | 0) >> 2]))) | 0;
|
|
$148 = ($6 + 72 | 0) + 48 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 396 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 400 | 0) >> 2] | 0;
|
|
$717 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $148;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $717;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$150 = 8;
|
|
i64toi32_i32$2 = ($6 + 396 | 0) + $150 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$730 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $148 + $150 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $730;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$161 = ($6 + 72 | 0) + 32 | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 420 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$743 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $161;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $743;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$163 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $163 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$753 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $161 + $163 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $753;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 68 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 64 | 0) >> 2] = wasm2js_i32$1;
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!((HEAPU8[($6 + 415 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAP32[($6 + 172 | 0) >> 2] = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 176 | 0) >> 2] = HEAP32[($7 + 16 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 180 | 0) >> 2] = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 184 | 0) >> 2] = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
label$8 : {
|
|
label$9 : {
|
|
if (!((HEAP32[(HEAP32[($7 + 12 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
$189 = HEAP32[((HEAP32[(HEAP32[($7 + 12 | 0) >> 2] | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
break label$8;
|
|
}
|
|
$189 = HEAP32[((HEAP32[($7 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($6 + 272 | 0) >> 2] = $189;
|
|
label$10 : {
|
|
label$11 : {
|
|
if (!((HEAP32[(HEAP32[($7 + 8 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
$204 = HEAP32[((HEAP32[(HEAP32[($7 + 8 | 0) >> 2] | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
break label$10;
|
|
}
|
|
$204 = HEAP32[((HEAP32[($7 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($6 + 276 | 0) >> 2] = $204;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 68 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 64 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$6;
|
|
}
|
|
HEAP32[($6 + 172 | 0) >> 2] = HEAP32[($7 + 16 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 176 | 0) >> 2] = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 180 | 0) >> 2] = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 184 | 0) >> 2] = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
label$12 : {
|
|
label$13 : {
|
|
if (!((HEAP32[(HEAP32[($7 + 12 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
$227 = HEAP32[((HEAP32[(HEAP32[($7 + 12 | 0) >> 2] | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
break label$12;
|
|
}
|
|
$227 = HEAP32[((HEAP32[($7 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($6 + 276 | 0) >> 2] = $227;
|
|
label$14 : {
|
|
label$15 : {
|
|
if (!((HEAP32[(HEAP32[($7 + 8 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
$242 = HEAP32[((HEAP32[(HEAP32[($7 + 8 | 0) >> 2] | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
break label$14;
|
|
}
|
|
$242 = HEAP32[((HEAP32[($7 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($6 + 272 | 0) >> 2] = $242;
|
|
}
|
|
HEAP32[($6 + 60 | 0) >> 2] = HEAP32[($6 + 272 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 56 | 0) >> 2] = HEAP32[($6 + 276 | 0) >> 2] | 0;
|
|
label$16 : {
|
|
if (!((btCollisionShape__isCompound_28_29_20const(HEAP32[($6 + 60 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
HEAP32[($6 + 52 | 0) >> 2] = HEAP32[($6 + 60 | 0) >> 2] | 0;
|
|
$255 = btCompoundShape__getChildShape_28int_29_20const(HEAP32[($6 + 52 | 0) >> 2] | 0 | 0, HEAP32[($6 + 180 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($6 + 272 | 0) >> 2] = $255;
|
|
HEAP32[($6 + 60 | 0) >> 2] = $255;
|
|
}
|
|
label$17 : {
|
|
if (!((btCollisionShape__isCompound_28_29_20const(HEAP32[($6 + 56 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
HEAP32[($6 + 48 | 0) >> 2] = HEAP32[($6 + 56 | 0) >> 2] | 0;
|
|
$263 = btCompoundShape__getChildShape_28int_29_20const(HEAP32[($6 + 48 | 0) >> 2] | 0 | 0, HEAP32[($6 + 184 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($6 + 276 | 0) >> 2] = $263;
|
|
HEAP32[($6 + 56 | 0) >> 2] = $263;
|
|
}
|
|
label$18 : {
|
|
label$19 : {
|
|
if (!((btCollisionShape__getMaterial_28_29_20const(HEAP32[($6 + 60 | 0) >> 2] | 0 | 0) | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
if (!((btCollisionShape__getMaterial_28_29_20const(HEAP32[($6 + 56 | 0) >> 2] | 0 | 0) | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btCollisionShape__getMaterial_28_29_20const(HEAP32[($6 + 60 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btCollisionShape__getMaterial_28_29_20const(HEAP32[($6 + 56 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_i32$1;
|
|
cc__ccMaterial__combined_28cc__ccMaterial_20const__29_20const($6 + 20 | 0 | 0, HEAP32[($6 + 44 | 0) >> 2] | 0 | 0, HEAP32[($6 + 40 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($6 + 36 | 0) >> 2] = $6 + 20 | 0;
|
|
HEAPF32[($6 + 168 | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[($6 + 36 | 0) >> 2] | 0) >> 2]);
|
|
HEAPF32[($6 + 156 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($6 + 36 | 0) >> 2] | 0) + 4 | 0) >> 2]);
|
|
HEAPF32[($6 + 160 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($6 + 36 | 0) >> 2] | 0) + 8 | 0) >> 2]);
|
|
HEAPF32[($6 + 164 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($6 + 36 | 0) >> 2] | 0) + 12 | 0) >> 2]);
|
|
break label$18;
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btManifoldResult__calculateCombinedFriction_28btCollisionObject_20const__2c_20btCollisionObject_20const__29(btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0) | 0 | 0, btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 156 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btManifoldResult__calculateCombinedRestitution_28btCollisionObject_20const__2c_20btCollisionObject_20const__29(btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0) | 0 | 0, btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 168 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btManifoldResult__calculateCombinedRollingFriction_28btCollisionObject_20const__2c_20btCollisionObject_20const__29(btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0) | 0 | 0, btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 160 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btManifoldResult__calculateCombinedSpinningFriction_28btCollisionObject_20const__2c_20btCollisionObject_20const__29(btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0) | 0 | 0, btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 164 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
void_20btPlaneSpace1_btVector3__28btVector3_20const__2c_20btVector3__2c_20btVector3__29(($6 + 72 | 0) + 64 | 0 | 0, ($6 + 72 | 0) + 168 | 0 | 0, ($6 + 72 | 0) + 184 | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btPersistentManifold__getCacheEntry_28btManifoldPoint_20const__29_20const(HEAP32[($7 + 4 | 0) >> 2] | 0 | 0, $6 + 72 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$20 : {
|
|
label$21 : {
|
|
if (!((HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$21
|
|
}
|
|
btPersistentManifold__replaceContactPoint_28btManifoldPoint_20const__2c_20int_29(HEAP32[($7 + 4 | 0) >> 2] | 0 | 0, $6 + 72 | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0);
|
|
break label$20;
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btPersistentManifold__addManifoldPoint_28btManifoldPoint_20const__2c_20bool_29(HEAP32[($7 + 4 | 0) >> 2] | 0 | 0, $6 + 72 | 0 | 0, 0 & 1 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
label$22 : {
|
|
if (!((HEAP32[(0 + 114060 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$22
|
|
}
|
|
label$23 : {
|
|
if ((btCollisionObject__getCollisionFlags_28_29_20const(btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) & 8 | 0) {
|
|
break label$23
|
|
}
|
|
if (!((btCollisionObject__getCollisionFlags_28_29_20const(btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) & 8 | 0)) {
|
|
break label$22
|
|
}
|
|
}
|
|
label$24 : {
|
|
label$25 : {
|
|
if (!((HEAPU8[($6 + 415 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$25
|
|
}
|
|
$382 = HEAP32[($7 + 12 | 0) >> 2] | 0;
|
|
break label$24;
|
|
}
|
|
$382 = HEAP32[($7 + 8 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($6 + 12 | 0) >> 2] = $382;
|
|
label$26 : {
|
|
label$27 : {
|
|
if (!((HEAPU8[($6 + 415 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$27
|
|
}
|
|
$389 = HEAP32[($7 + 8 | 0) >> 2] | 0;
|
|
break label$26;
|
|
}
|
|
$389 = HEAP32[($7 + 12 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($6 + 8 | 0) >> 2] = $389;
|
|
$393 = HEAP32[(0 + 114060 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[$393 | 0](btPersistentManifold__getContactPoint_28int_29(HEAP32[($7 + 4 | 0) >> 2] | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) | 0, HEAP32[($6 + 12 | 0) >> 2] | 0, HEAP32[($6 + 172 | 0) >> 2] | 0, HEAP32[($6 + 180 | 0) >> 2] | 0, HEAP32[($6 + 8 | 0) >> 2] | 0, HEAP32[($6 + 176 | 0) >> 2] | 0, HEAP32[($6 + 184 | 0) >> 2] | 0) | 0;
|
|
}
|
|
if (!((HEAP32[(0 + 115360 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if (!((HEAPU8[($6 + 414 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
FUNCTION_TABLE[HEAP32[(0 + 115360 | 0) >> 2] | 0 | 0]($7 + 4 | 0);
|
|
}
|
|
__stack_pointer = $6 + 432 | 0;
|
|
return;
|
|
}
|
|
|
|
function cc__ccMaterial__combined_28cc__ccMaterial_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 20 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[$6 >> 2]) * Math_fround(HEAPF32[(HEAP32[($5 + 24 | 0) >> 2] | 0) >> 2]));
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($6 + 4 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2]));
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($6 + 8 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[($6 + 4 | 0) >> 2])));
|
|
HEAPF32[($5 + 8 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($6 + 12 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 12 | 0) >> 2]) * Math_fround(HEAPF32[($6 + 4 | 0) >> 2])));
|
|
HEAPF32[($5 + 4 | 0) >> 2] = Math_fround(10.0);
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 16 | 0) >> 2]) < Math_fround(-10.0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(-10.0);
|
|
}
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 16 | 0) >> 2]) > Math_fround(10.0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(10.0);
|
|
}
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 12 | 0) >> 2]) < Math_fround(-10.0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(-10.0);
|
|
}
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 12 | 0) >> 2]) > Math_fround(10.0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(10.0);
|
|
}
|
|
label$5 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 8 | 0) >> 2]) < Math_fround(-10.0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAPF32[($5 + 8 | 0) >> 2] = Math_fround(-10.0);
|
|
}
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 8 | 0) >> 2]) > Math_fround(10.0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAPF32[($5 + 8 | 0) >> 2] = Math_fround(10.0);
|
|
}
|
|
cc__ccMaterial__ccMaterial_28float_2c_20float_2c_20float_2c_20float_29($0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 20 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($5 + 16 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($5 + 12 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($5 + 8 | 0) >> 2]))) | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPersistentManifold__replaceContactPoint_28btManifoldPoint_20const__2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 60 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 56 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 52 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((btPersistentManifold__validContactDistance_28btManifoldPoint_20const__29_20const($6 | 0, HEAP32[($5 + 56 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(86236 | 0, 79943 | 0, 190 | 0, 67620 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btManifoldPoint__getLifeTime_28_29_20const(($6 + 4 | 0) + Math_imul(HEAP32[($5 + 52 | 0) >> 2] | 0, 208) | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 48 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAPF32[($5 + 44 | 0) >> 2] = Math_fround(HEAPF32[((($6 + 4 | 0) + Math_imul(HEAP32[($5 + 52 | 0) >> 2] | 0, 208) | 0) + 132 | 0) >> 2]);
|
|
HEAPF32[($5 + 40 | 0) >> 2] = Math_fround(HEAPF32[((($6 + 4 | 0) + Math_imul(HEAP32[($5 + 52 | 0) >> 2] | 0, 208) | 0) + 136 | 0) >> 2]);
|
|
HEAPF32[($5 + 36 | 0) >> 2] = Math_fround(HEAPF32[((($6 + 4 | 0) + Math_imul(HEAP32[($5 + 52 | 0) >> 2] | 0, 208) | 0) + 140 | 0) >> 2]);
|
|
HEAP8[($5 + 35 | 0) >> 0] = 1;
|
|
label$2 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 56 | 0) >> 2] | 0) + 128 | 0) >> 2] | 0) & 16 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($5 + 28 | 0) >> 2] = Math_fround(HEAPF32[((($6 + 4 | 0) + Math_imul(HEAP32[($5 + 52 | 0) >> 2] | 0, 208) | 0) + 84 | 0) >> 2]);
|
|
HEAPF32[($5 + 24 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 20 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 40 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 40 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($5 + 36 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 36 | 0) >> 2])));
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 28 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 44 | 0) >> 2])) + Math_fround(HEAPF32[($5 + 24 | 0) >> 2]));
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 16 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 16 | 0) >> 2]));
|
|
HEAP8[($5 + 35 | 0) >> 0] = Math_fround(HEAPF32[($5 + 20 | 0) >> 2]) > Math_fround(HEAPF32[($5 + 16 | 0) >> 2]) & 1 | 0;
|
|
}
|
|
label$3 : {
|
|
if (!((HEAPU8[($5 + 35 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
label$4 : {
|
|
if ((HEAP32[($5 + 48 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
__assert_fail(86102 | 0, 79943 | 0, 218 | 0, 67620 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[((($6 + 4 | 0) + Math_imul(HEAP32[($5 + 52 | 0) >> 2] | 0, 208) | 0) + 116 | 0) >> 2] | 0;
|
|
__memcpy(($6 + 4 | 0) + Math_imul(HEAP32[($5 + 52 | 0) >> 2] | 0, 208) | 0 | 0, HEAP32[($5 + 56 | 0) >> 2] | 0 | 0, 208 | 0) | 0;
|
|
HEAP32[((($6 + 4 | 0) + Math_imul(HEAP32[($5 + 52 | 0) >> 2] | 0, 208) | 0) + 116 | 0) >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[((($6 + 4 | 0) + Math_imul(HEAP32[($5 + 52 | 0) >> 2] | 0, 208) | 0) + 132 | 0) >> 2] = Math_fround(HEAPF32[($5 + 44 | 0) >> 2]);
|
|
HEAPF32[((($6 + 4 | 0) + Math_imul(HEAP32[($5 + 52 | 0) >> 2] | 0, 208) | 0) + 136 | 0) >> 2] = Math_fround(HEAPF32[($5 + 40 | 0) >> 2]);
|
|
HEAPF32[((($6 + 4 | 0) + Math_imul(HEAP32[($5 + 52 | 0) >> 2] | 0, 208) | 0) + 140 | 0) >> 2] = Math_fround(HEAPF32[($5 + 36 | 0) >> 2]);
|
|
}
|
|
HEAP32[((($6 + 4 | 0) + Math_imul(HEAP32[($5 + 52 | 0) >> 2] | 0, 208) | 0) + 164 | 0) >> 2] = HEAP32[($5 + 48 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPersistentManifold__validContactDistance_28btManifoldPoint_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $11 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$11 = Math_fround(HEAPF32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 80 | 0) >> 2]) <= Math_fround(btPersistentManifold__getContactBreakingThreshold_28_29_20const(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0)) & 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btManifoldResult___btManifoldResult_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btManifoldResult___btManifoldResult_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btManifoldResult_cpp() {
|
|
__cxx_global_var_init_24();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_25() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114064 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btSphereSphereCollisionAlgorithm__btSphereSphereCollisionAlgorithm_28btPersistentManifold__2c_20btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0, $24 = 0, $33 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0, wasm2js_i32$5 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 8 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $8;
|
|
btActivatingCollisionAlgorithm__btActivatingCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($8 | 0, HEAP32[($7 + 16 | 0) >> 2] | 0 | 0, HEAP32[($7 + 12 | 0) >> 2] | 0 | 0, HEAP32[($7 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$8 >> 2] = 96572 + 8 | 0;
|
|
HEAP8[($8 + 8 | 0) >> 0] = 0;
|
|
HEAP32[($8 + 12 | 0) >> 2] = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($8 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
$24 = HEAP32[($8 + 4 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = ((((wasm2js_i32$3 = $24, wasm2js_i32$4 = btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$5 = btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$2 = HEAP32[((HEAP32[$24 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$2](wasm2js_i32$3 | 0, wasm2js_i32$4 | 0, wasm2js_i32$5 | 0) | 0)), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP8[($8 + 8 | 0) >> 0] = 1;
|
|
}
|
|
$33 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return $33 | 0;
|
|
}
|
|
|
|
function btSphereSphereCollisionAlgorithm___btSphereSphereCollisionAlgorithm_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0, $18 = 0, $22 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
HEAP32[$4 >> 2] = 96572 + 8 | 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($4 + 8 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$18 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$18 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($18, HEAP32[($4 + 12 | 0) >> 2] | 0);
|
|
}
|
|
}
|
|
btActivatingCollisionAlgorithm___btActivatingCollisionAlgorithm_28_29($4 | 0) | 0;
|
|
$22 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $22 | 0;
|
|
}
|
|
|
|
function btSphereSphereCollisionAlgorithm___btSphereSphereCollisionAlgorithm_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[753 | 0]($4) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSphereSphereCollisionAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $8 = 0, i64toi32_i32$2 = 0, $86 = 0, $113 = 0, $322 = 0, $326 = 0, $97 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$7 = __stack_pointer - 144 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 140 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 136 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 132 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 128 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 124 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 140 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if ((HEAP32[($8 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
break label$1;
|
|
}
|
|
btManifoldResult__setPersistentManifold_28btPersistentManifold__29(HEAP32[($7 + 124 | 0) >> 2] | 0 | 0, HEAP32[($8 + 12 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 136 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 120 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 132 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 116 | 0) >> 2] = wasm2js_i32$1;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($7 + 100 | 0 | 0, btTransform__getOrigin_28_29_20const(btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 136 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29_20const(btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 132 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btVector3__length_28_29_20const($7 + 100 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 96 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btSphereShape__getRadius_28_29_20const(HEAP32[($7 + 120 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 92 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btSphereShape__getRadius_28_29_20const(HEAP32[($7 + 116 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 88 | 0) >> 2] = wasm2js_f32$0;
|
|
btPersistentManifold__clearManifold_28_29(HEAP32[($8 + 12 | 0) >> 2] | 0 | 0);
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 96 | 0) >> 2]) > Math_fround(Math_fround(Math_fround(HEAPF32[($7 + 92 | 0) >> 2]) + Math_fround(HEAPF32[($7 + 88 | 0) >> 2])) + Math_fround(HEAPF32[((HEAP32[($7 + 124 | 0) >> 2] | 0) + 32 | 0) >> 2])) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
break label$1;
|
|
}
|
|
HEAPF32[($7 + 84 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($7 + 96 | 0) >> 2]) - Math_fround(Math_fround(HEAPF32[($7 + 92 | 0) >> 2]) + Math_fround(HEAPF32[($7 + 88 | 0) >> 2])));
|
|
HEAPF32[($7 + 60 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($7 + 56 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($7 + 52 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 64 | 0 | 0, $7 + 60 | 0 | 0, $7 + 56 | 0 | 0, $7 + 52 | 0 | 0) | 0;
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 96 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
operator__28btVector3_20const__2c_20float_20const__29_1($7 + 36 | 0 | 0, $7 + 100 | 0 | 0, $7 + 96 | 0 | 0);
|
|
$86 = 8;
|
|
i64toi32_i32$2 = ($7 + 36 | 0) + $86 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$322 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($7 + 64 | 0) + $86 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $322;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$1 = HEAP32[($7 + 36 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($7 + 40 | 0) >> 2] | 0;
|
|
$326 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $7;
|
|
HEAP32[($7 + 64 | 0) >> 2] = $326;
|
|
HEAP32[($7 + 68 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
$97 = btTransform__getOrigin_28_29_20const(btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 132 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
operator__28float_20const__2c_20btVector3_20const__29($7 + 4 | 0 | 0, $7 + 88 | 0 | 0, $7 + 64 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($7 + 20 | 0 | 0, $97 | 0, $7 + 4 | 0 | 0);
|
|
$113 = HEAP32[($7 + 124 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$113 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($113, $7 + 64 | 0, $7 + 20 | 0, Math_fround(HEAPF32[($7 + 84 | 0) >> 2]));
|
|
}
|
|
__stack_pointer = $7 + 144 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSphereSphereCollisionAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
return Math_fround(Math_fround(1.0));
|
|
}
|
|
|
|
function btSphereSphereCollisionAlgorithm__getAllContactManifolds_28btAlignedObjectArray_btPersistentManifold____29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
if (!((HEAPU8[($5 + 8 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btPersistentManifold____push_back_28btPersistentManifold__20const__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, $5 + 12 | 0 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btSphereSphereCollisionAlgorithm_cpp() {
|
|
__cxx_global_var_init_25();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_26() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114068 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btSphereTriangleCollisionAlgorithm__btSphereTriangleCollisionAlgorithm_28btPersistentManifold__2c_20btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20bool_29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, $10 = 0, $29 = 0, $38 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0, wasm2js_i32$5 = 0;
|
|
$8 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 16 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 12 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 8 | 0) >> 2] = $4;
|
|
HEAP8[($8 + 7 | 0) >> 0] = $5;
|
|
$10 = HEAP32[($8 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $10;
|
|
btActivatingCollisionAlgorithm__btActivatingCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29($10 | 0, HEAP32[($8 + 16 | 0) >> 2] | 0 | 0, HEAP32[($8 + 12 | 0) >> 2] | 0 | 0, HEAP32[($8 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$10 >> 2] = 96648 + 8 | 0;
|
|
HEAP8[($10 + 8 | 0) >> 0] = 0;
|
|
HEAP32[($10 + 12 | 0) >> 2] = HEAP32[($8 + 20 | 0) >> 2] | 0;
|
|
HEAP8[($10 + 16 | 0) >> 0] = (HEAPU8[($8 + 7 | 0) >> 0] | 0) & 1 | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($10 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
$29 = HEAP32[($10 + 4 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $10, wasm2js_i32$1 = ((((wasm2js_i32$3 = $29, wasm2js_i32$4 = btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($8 + 12 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$5 = btCollisionObjectWrapper__getCollisionObject_28_29_20const(HEAP32[($8 + 8 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$2 = HEAP32[((HEAP32[$29 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$2](wasm2js_i32$3 | 0, wasm2js_i32$4 | 0, wasm2js_i32$5 | 0) | 0)), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP8[($10 + 8 | 0) >> 0] = 1;
|
|
}
|
|
$38 = HEAP32[($8 + 28 | 0) >> 2] | 0;
|
|
__stack_pointer = $8 + 32 | 0;
|
|
return $38 | 0;
|
|
}
|
|
|
|
function btSphereTriangleCollisionAlgorithm___btSphereTriangleCollisionAlgorithm_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0, $18 = 0, $22 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
HEAP32[$4 >> 2] = 96648 + 8 | 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($4 + 8 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$18 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$18 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($18, HEAP32[($4 + 12 | 0) >> 2] | 0);
|
|
}
|
|
}
|
|
btActivatingCollisionAlgorithm___btActivatingCollisionAlgorithm_28_29($4 | 0) | 0;
|
|
$22 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $22 | 0;
|
|
}
|
|
|
|
function btSphereTriangleCollisionAlgorithm___btSphereTriangleCollisionAlgorithm_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[758 | 0]($4) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSphereTriangleCollisionAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0, $20 = 0, $27 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$7 = __stack_pointer - 192 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 188 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 184 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 180 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 176 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 172 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 188 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if ((HEAP32[($8 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAPU8[($8 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$20 = HEAP32[($7 + 180 | 0) >> 2] | 0;
|
|
break label$3;
|
|
}
|
|
$20 = HEAP32[($7 + 184 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($7 + 168 | 0) >> 2] = $20;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!((HEAPU8[($8 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$27 = HEAP32[($7 + 184 | 0) >> 2] | 0;
|
|
break label$5;
|
|
}
|
|
$27 = HEAP32[($7 + 180 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($7 + 164 | 0) >> 2] = $27;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 168 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 160 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCollisionObjectWrapper__getCollisionShape_28_29_20const(HEAP32[($7 + 164 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 156 | 0) >> 2] = wasm2js_i32$1;
|
|
btManifoldResult__setPersistentManifold_28btPersistentManifold__29(HEAP32[($7 + 172 | 0) >> 2] | 0 | 0, HEAP32[($8 + 12 | 0) >> 2] | 0 | 0);
|
|
SphereTriangleDetector__SphereTriangleDetector_28btSphereShape__2c_20btTriangleShape__2c_20float_29($7 + 140 | 0 | 0, HEAP32[($7 + 160 | 0) >> 2] | 0 | 0, HEAP32[($7 + 156 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(Math_fround(btPersistentManifold__getContactBreakingThreshold_28_29_20const(HEAP32[($8 + 12 | 0) >> 2] | 0 | 0)) + Math_fround(HEAPF32[((HEAP32[($7 + 172 | 0) >> 2] | 0) + 32 | 0) >> 2])))) | 0;
|
|
btDiscreteCollisionDetectorInterface__ClosestPointInput__ClosestPointInput_28_29($7 + 8 | 0 | 0) | 0;
|
|
HEAPF32[($7 + 136 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
btTransform__operator__28btTransform_20const__29($7 + 8 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 168 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
btTransform__operator__28btTransform_20const__29(($7 + 8 | 0) + 64 | 0 | 0, btCollisionObjectWrapper__getWorldTransform_28_29_20const(HEAP32[($7 + 164 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
HEAP8[($7 + 7 | 0) >> 0] = (HEAPU8[($8 + 16 | 0) >> 0] | 0) & 1 | 0;
|
|
SphereTriangleDetector__getClosestPoints_28btDiscreteCollisionDetectorInterface__ClosestPointInput_20const__2c_20btDiscreteCollisionDetectorInterface__Result__2c_20btIDebugDraw__2c_20bool_29($7 + 140 | 0 | 0, $7 + 8 | 0 | 0, HEAP32[($7 + 172 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($7 + 176 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0, (HEAPU8[($7 + 7 | 0) >> 0] | 0) & 1 | 0 | 0);
|
|
label$7 : {
|
|
if (!((HEAPU8[($8 + 8 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
btManifoldResult__refreshContactPoints_28_29(HEAP32[($7 + 172 | 0) >> 2] | 0 | 0);
|
|
}
|
|
SphereTriangleDetector___SphereTriangleDetector_28_29($7 + 140 | 0 | 0) | 0;
|
|
}
|
|
__stack_pointer = $7 + 192 | 0;
|
|
return;
|
|
}
|
|
|
|
function SphereTriangleDetector___SphereTriangleDetector_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btDiscreteCollisionDetectorInterface___btDiscreteCollisionDetectorInterface_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btSphereTriangleCollisionAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
return Math_fround(Math_fround(1.0));
|
|
}
|
|
|
|
function btSphereTriangleCollisionAlgorithm__getAllContactManifolds_28btAlignedObjectArray_btPersistentManifold____29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
if (!((HEAPU8[($5 + 8 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btPersistentManifold____push_back_28btPersistentManifold__20const__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, $5 + 12 | 0 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btSphereTriangleCollisionAlgorithm_cpp() {
|
|
__cxx_global_var_init_26();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_27() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114072 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function SphereTriangleDetector__SphereTriangleDetector_28btSphereShape__2c_20btTriangleShape__2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAPF32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btDiscreteCollisionDetectorInterface__btDiscreteCollisionDetectorInterface_28_29($7 | 0) | 0;
|
|
HEAP32[$7 >> 2] = 96728 + 8 | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 8 | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
HEAPF32[($7 + 12 | 0) >> 2] = Math_fround(HEAPF32[$6 >> 2]);
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function SphereTriangleDetector__getClosestPoints_28btDiscreteCollisionDetectorInterface__ClosestPointInput_20const__2c_20btDiscreteCollisionDetectorInterface__Result__2c_20btIDebugDraw__2c_20bool_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $9 = 0, $90 = 0, $100 = 0;
|
|
$7 = __stack_pointer - 256 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 252 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 248 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 244 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 240 | 0) >> 2] = $3;
|
|
HEAP8[($7 + 239 | 0) >> 0] = $4;
|
|
$9 = HEAP32[($7 + 252 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 232 | 0) >> 2] = HEAP32[($7 + 248 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 228 | 0) >> 2] = (HEAP32[($7 + 248 | 0) >> 2] | 0) + 64 | 0;
|
|
btVector3__btVector3_28_29($7 + 212 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($7 + 196 | 0 | 0) | 0;
|
|
HEAPF32[($7 + 192 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($7 + 188 | 0) >> 2] = Math_fround(0 | 0);
|
|
btTransform__inverseTimes_28btTransform_20const__29_20const($7 + 124 | 0 | 0, HEAP32[($7 + 228 | 0) >> 2] | 0 | 0, HEAP32[($7 + 232 | 0) >> 2] | 0 | 0);
|
|
label$1 : {
|
|
if (!((SphereTriangleDetector__collide_28btVector3_20const__2c_20btVector3__2c_20btVector3__2c_20float__2c_20float__2c_20float_29($9 | 0, btTransform__getOrigin_28_29($7 + 124 | 0 | 0) | 0 | 0, $7 + 212 | 0 | 0, $7 + 196 | 0 | 0, $7 + 188 | 0 | 0, $7 + 192 | 0 | 0, Math_fround(Math_fround(HEAPF32[($9 + 12 | 0) >> 2]))) | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((HEAPU8[($7 + 239 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($7 + 108 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($7 + 228 | 0) >> 2] | 0 | 0) | 0 | 0, $7 + 196 | 0 | 0);
|
|
operator__28btVector3_20const__29($7 + 92 | 0 | 0, $7 + 108 | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 60 | 0 | 0, HEAP32[($7 + 228 | 0) >> 2] | 0 | 0, $7 + 212 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($7 + 44 | 0 | 0, $7 + 108 | 0 | 0, $7 + 188 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($7 + 76 | 0 | 0, $7 + 60 | 0 | 0, $7 + 44 | 0 | 0);
|
|
$90 = HEAP32[($7 + 244 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$90 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($90, $7 + 92 | 0, $7 + 76 | 0, Math_fround(HEAPF32[($7 + 188 | 0) >> 2]));
|
|
break label$2;
|
|
}
|
|
$100 = HEAP32[($7 + 244 | 0) >> 2] | 0;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($7 + 28 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($7 + 228 | 0) >> 2] | 0 | 0) | 0 | 0, $7 + 196 | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($7 + 12 | 0 | 0, HEAP32[($7 + 228 | 0) >> 2] | 0 | 0, $7 + 212 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$100 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($100, $7 + 28 | 0, $7 + 12 | 0, Math_fround(HEAPF32[($7 + 188 | 0) >> 2]));
|
|
}
|
|
}
|
|
__stack_pointer = $7 + 256 | 0;
|
|
return;
|
|
}
|
|
|
|
function SphereTriangleDetector__collide_28btVector3_20const__2c_20btVector3__2c_20btVector3__2c_20float__2c_20float__2c_20float_29($0, $1, $2, $3, $4, $5, $6) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = Math_fround($6);
|
|
var $9 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $10 = 0, $124 = 0, $141 = 0, $156 = 0, $183 = 0, $223 = 0, $225 = 0, $232 = 0, $234 = 0, $245 = 0, $247 = 0, $253 = 0, $255 = 0, $108 = 0, $542 = 0, $546 = 0, $668 = 0, $672 = 0, $746 = 0, $759 = 0, $769 = 0, $782 = 0, $801 = 0, $814 = 0, $820 = 0, $833 = 0, $272 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$9 = __stack_pointer - 272 | 0;
|
|
__stack_pointer = $9;
|
|
HEAP32[($9 + 264 | 0) >> 2] = $0;
|
|
HEAP32[($9 + 260 | 0) >> 2] = $1;
|
|
HEAP32[($9 + 256 | 0) >> 2] = $2;
|
|
HEAP32[($9 + 252 | 0) >> 2] = $3;
|
|
HEAP32[($9 + 248 | 0) >> 2] = $4;
|
|
HEAP32[($9 + 244 | 0) >> 2] = $5;
|
|
HEAPF32[($9 + 240 | 0) >> 2] = $6;
|
|
$10 = HEAP32[($9 + 264 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $9, wasm2js_i32$1 = btTriangleShape__getVertexPtr_28int_29(HEAP32[($10 + 8 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 236 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(btSphereShape__getRadius_28_29_20const(HEAP32[($10 + 4 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 232 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($9 + 228 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($9 + 232 | 0) >> 2]) + Math_fround(HEAPF32[($9 + 240 | 0) >> 2]));
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($9 + 196 | 0 | 0, (HEAP32[($9 + 236 | 0) >> 2] | 0) + 16 | 0 | 0, HEAP32[($9 + 236 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($9 + 180 | 0 | 0, (HEAP32[($9 + 236 | 0) >> 2] | 0) + 32 | 0 | 0, HEAP32[($9 + 236 | 0) >> 2] | 0 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($9 + 212 | 0 | 0, $9 + 196 | 0 | 0, $9 + 180 | 0 | 0);
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($9 + 212 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 176 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($9 + 175 | 0) >> 0] = 0;
|
|
btVector3__btVector3_28_29($9 + 152 | 0 | 0) | 0;
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[($9 + 176 | 0) >> 2]) >= Math_fround(1.4210854715202004e-14) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(btSqrt_28float_29(Math_fround(Math_fround(HEAPF32[($9 + 176 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 148 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__operator___28float_20const__29($9 + 212 | 0 | 0, $9 + 148 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($9 + 132 | 0 | 0, HEAP32[($9 + 260 | 0) >> 2] | 0 | 0, HEAP32[($9 + 236 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($9 + 132 | 0 | 0, $9 + 212 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 128 | 0) >> 2] = wasm2js_f32$0;
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($9 + 128 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($9 + 128 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($9 + 128 | 0) >> 2]) * Math_fround(-1.0));
|
|
HEAPF32[($9 + 124 | 0) >> 2] = Math_fround(-1.0);
|
|
btVector3__operator___28float_20const__29_1($9 + 212 | 0 | 0, $9 + 124 | 0 | 0) | 0;
|
|
}
|
|
HEAP8[($9 + 123 | 0) >> 0] = Math_fround(HEAPF32[($9 + 128 | 0) >> 2]) < Math_fround(HEAPF32[($9 + 228 | 0) >> 2]) & 1 | 0;
|
|
label$3 : {
|
|
if (!((HEAPU8[($9 + 123 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!((SphereTriangleDetector__facecontains_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3__29($10 | 0, HEAP32[($9 + 260 | 0) >> 2] | 0 | 0, HEAP32[($9 + 236 | 0) >> 2] | 0 | 0, $9 + 212 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAP8[($9 + 175 | 0) >> 0] = 1;
|
|
$108 = HEAP32[($9 + 260 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($9 + 88 | 0 | 0, $9 + 212 | 0 | 0, $9 + 128 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($9 + 104 | 0 | 0, $108 | 0, $9 + 88 | 0 | 0);
|
|
$124 = 8;
|
|
i64toi32_i32$2 = ($9 + 104 | 0) + $124 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$542 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($9 + 152 | 0) + $124 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $542;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$1 = HEAP32[($9 + 104 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($9 + 108 | 0) >> 2] | 0;
|
|
$546 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $9;
|
|
HEAP32[($9 + 152 | 0) >> 2] = $546;
|
|
HEAP32[($9 + 156 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$4;
|
|
}
|
|
HEAPF32[($9 + 84 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($9 + 228 | 0) >> 2]) * Math_fround(HEAPF32[($9 + 228 | 0) >> 2]));
|
|
btVector3__btVector3_28_29($9 + 68 | 0 | 0) | 0;
|
|
HEAP32[($9 + 64 | 0) >> 2] = 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
$141 = HEAP32[($10 + 8 | 0) >> 2] | 0;
|
|
if (!((HEAP32[($9 + 64 | 0) >> 2] | 0 | 0) < (FUNCTION_TABLE[HEAP32[((HEAP32[$141 >> 2] | 0) + 100 | 0) >> 2] | 0 | 0]($141) | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
btVector3__btVector3_28_29($9 + 48 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($9 + 32 | 0 | 0) | 0;
|
|
$156 = HEAP32[($10 + 8 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$156 >> 2] | 0) + 104 | 0) >> 2] | 0 | 0]($156, HEAP32[($9 + 64 | 0) >> 2] | 0, $9 + 48 | 0, $9 + 32 | 0);
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(SegmentSqrDistance_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3__29($9 + 48 | 0 | 0, $9 + 32 | 0 | 0, HEAP32[($9 + 260 | 0) >> 2] | 0 | 0, $9 + 68 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
label$8 : {
|
|
if (!(Math_fround(HEAPF32[($9 + 28 | 0) >> 2]) < Math_fround(HEAPF32[($9 + 84 | 0) >> 2]) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
HEAP8[($9 + 175 | 0) >> 0] = 1;
|
|
$183 = 8;
|
|
i64toi32_i32$2 = ($9 + 68 | 0) + $183 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$668 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($9 + 152 | 0) + $183 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $668;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$1 = HEAP32[($9 + 68 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($9 + 72 | 0) >> 2] | 0;
|
|
$672 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $9;
|
|
HEAP32[($9 + 152 | 0) >> 2] = $672;
|
|
HEAP32[($9 + 156 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
HEAP32[($9 + 64 | 0) >> 2] = (HEAP32[($9 + 64 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
}
|
|
}
|
|
label$9 : {
|
|
label$10 : {
|
|
if (!((HEAPU8[($9 + 175 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($9 + 12 | 0 | 0, HEAP32[($9 + 260 | 0) >> 2] | 0 | 0, $9 + 152 | 0 | 0);
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($9 + 12 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
label$11 : {
|
|
if (!(Math_fround(HEAPF32[($9 + 8 | 0) >> 2]) < Math_fround(Math_fround(HEAPF32[($9 + 228 | 0) >> 2]) * Math_fround(HEAPF32[($9 + 228 | 0) >> 2])) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
label$12 : {
|
|
label$13 : {
|
|
if (!(Math_fround(HEAPF32[($9 + 8 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(btSqrt_28float_29(Math_fround(Math_fround(HEAPF32[($9 + 8 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$223 = HEAP32[($9 + 252 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$0 = HEAP32[($9 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 16 | 0) >> 2] | 0;
|
|
$746 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $223;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $746;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$225 = 8;
|
|
i64toi32_i32$2 = ($9 + 12 | 0) + $225 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$759 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $223 + $225 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $759;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__normalize_28_29(HEAP32[($9 + 252 | 0) >> 2] | 0 | 0) | 0;
|
|
$232 = HEAP32[($9 + 256 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$0 = HEAP32[($9 + 152 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 156 | 0) >> 2] | 0;
|
|
$769 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $232;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $769;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$234 = 8;
|
|
i64toi32_i32$2 = ($9 + 152 | 0) + $234 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$782 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $232 + $234 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $782;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[(HEAP32[($9 + 248 | 0) >> 2] | 0) >> 2] = Math_fround(-Math_fround(Math_fround(HEAPF32[($9 + 232 | 0) >> 2]) - Math_fround(HEAPF32[($9 + 4 | 0) >> 2])));
|
|
break label$12;
|
|
}
|
|
$245 = HEAP32[($9 + 252 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$0 = HEAP32[($9 + 212 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 216 | 0) >> 2] | 0;
|
|
$801 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $245;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $801;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$247 = 8;
|
|
i64toi32_i32$2 = ($9 + 212 | 0) + $247 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$814 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $245 + $247 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $814;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$253 = HEAP32[($9 + 256 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$0 = HEAP32[($9 + 152 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 156 | 0) >> 2] | 0;
|
|
$820 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $253;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $820;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$255 = 8;
|
|
i64toi32_i32$2 = ($9 + 152 | 0) + $255 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$833 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $253 + $255 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $833;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[(HEAP32[($9 + 248 | 0) >> 2] | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($9 + 232 | 0) >> 2]));
|
|
}
|
|
HEAP8[($9 + 271 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$9;
|
|
}
|
|
}
|
|
HEAP8[($9 + 271 | 0) >> 0] = 0 & 1 | 0;
|
|
}
|
|
$272 = (HEAPU8[($9 + 271 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $9 + 272 | 0;
|
|
return $272 | 0;
|
|
}
|
|
|
|
function btTriangleShape__getVertexPtr_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return ((HEAP32[($4 + 12 | 0) >> 2] | 0) + 64 | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 4 | 0) | 0 | 0;
|
|
}
|
|
|
|
function SphereTriangleDetector__facecontains_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $8 = 0, $9 = 0, $16 = 0, $17 = 0, $7 = 0, $61 = 0, $65 = 0, $77 = 0, $81 = 0, $29 = 0;
|
|
$6 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 32 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
$8 = HEAP32[($6 + 40 | 0) >> 2] | 0;
|
|
$9 = 8;
|
|
i64toi32_i32$2 = $8 + $9 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$61 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 16 | 0) + $9 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $61;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$65 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $65;
|
|
HEAP32[($6 + 20 | 0) >> 2] = i64toi32_i32$0;
|
|
$16 = HEAP32[($6 + 32 | 0) >> 2] | 0;
|
|
$17 = 8;
|
|
i64toi32_i32$2 = $16 + $17 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$77 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6 + $17 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $77;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $16;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$81 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[$6 >> 2] = $81;
|
|
HEAP32[($6 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$29 = (SphereTriangleDetector__pointInTriangle_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3__29($7 | 0, HEAP32[($6 + 36 | 0) >> 2] | 0 | 0, $6 | 0, $6 + 16 | 0 | 0) | 0) & 1 | 0;
|
|
__stack_pointer = $6 + 48 | 0;
|
|
return $29 | 0;
|
|
}
|
|
|
|
function SegmentSqrDistance_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $32 = 0, $82 = 0, $84 = 0, $92 = 0, $66 = 0, $262 = 0, $275 = 0, $93 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 108 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 104 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 100 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 96 | 0) >> 2] = $3;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 80 | 0 | 0, HEAP32[($6 + 100 | 0) >> 2] | 0 | 0, HEAP32[($6 + 108 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 64 | 0 | 0, HEAP32[($6 + 104 | 0) >> 2] | 0 | 0, HEAP32[($6 + 108 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($6 + 64 | 0 | 0, $6 + 80 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 60 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 60 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$32 = $6 + 64 | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($32 | 0, $32 | 0))), HEAPF32[(wasm2js_i32$0 + 56 | 0) >> 2] = wasm2js_f32$0;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 60 | 0) >> 2]) < Math_fround(HEAPF32[($6 + 56 | 0) >> 2]) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAPF32[($6 + 60 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($6 + 60 | 0) >> 2]) / Math_fround(HEAPF32[($6 + 56 | 0) >> 2]));
|
|
operator__28float_20const__2c_20btVector3_20const__29($6 + 40 | 0 | 0, $6 + 60 | 0 | 0, $6 + 64 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29($6 + 80 | 0 | 0, $6 + 40 | 0 | 0) | 0;
|
|
break label$3;
|
|
}
|
|
HEAPF32[($6 + 60 | 0) >> 2] = Math_fround(1.0);
|
|
btVector3__operator___28btVector3_20const__29($6 + 80 | 0 | 0, $6 + 64 | 0 | 0) | 0;
|
|
}
|
|
break label$1;
|
|
}
|
|
HEAPF32[($6 + 60 | 0) >> 2] = Math_fround(0 | 0);
|
|
}
|
|
$66 = HEAP32[($6 + 108 | 0) >> 2] | 0;
|
|
operator__28float_20const__2c_20btVector3_20const__29($6 + 8 | 0 | 0, $6 + 60 | 0 | 0, $6 + 64 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 24 | 0 | 0, $66 | 0, $6 + 8 | 0 | 0);
|
|
$82 = HEAP32[($6 + 96 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
$262 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $82;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $262;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$84 = 8;
|
|
i64toi32_i32$2 = ($6 + 24 | 0) + $84 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$275 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $82 + $84 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $275;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$92 = $6 + 80 | 0;
|
|
$93 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($92 | 0, $92 | 0));
|
|
__stack_pointer = $6 + 112 | 0;
|
|
return Math_fround($93);
|
|
}
|
|
|
|
function SphereTriangleDetector__pointInTriangle_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $130 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 192 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 184 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 180 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 176 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 172 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 168 | 0) >> 2] = HEAP32[($6 + 180 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 164 | 0) >> 2] = (HEAP32[($6 + 180 | 0) >> 2] | 0) + 16 | 0;
|
|
HEAP32[($6 + 160 | 0) >> 2] = (HEAP32[($6 + 180 | 0) >> 2] | 0) + 32 | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 144 | 0 | 0, HEAP32[($6 + 164 | 0) >> 2] | 0 | 0, HEAP32[($6 + 168 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 128 | 0 | 0, HEAP32[($6 + 160 | 0) >> 2] | 0 | 0, HEAP32[($6 + 164 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 112 | 0 | 0, HEAP32[($6 + 168 | 0) >> 2] | 0 | 0, HEAP32[($6 + 160 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 96 | 0 | 0, HEAP32[($6 + 172 | 0) >> 2] | 0 | 0, HEAP32[($6 + 168 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 80 | 0 | 0, HEAP32[($6 + 172 | 0) >> 2] | 0 | 0, HEAP32[($6 + 164 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 64 | 0 | 0, HEAP32[($6 + 172 | 0) >> 2] | 0 | 0, HEAP32[($6 + 160 | 0) >> 2] | 0 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($6 + 48 | 0 | 0, $6 + 144 | 0 | 0, HEAP32[($6 + 176 | 0) >> 2] | 0 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($6 + 32 | 0 | 0, $6 + 128 | 0 | 0, HEAP32[($6 + 176 | 0) >> 2] | 0 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($6 + 16 | 0 | 0, $6 + 112 | 0 | 0, HEAP32[($6 + 176 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($6 + 48 | 0 | 0, $6 + 96 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($6 + 32 | 0 | 0, $6 + 80 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($6 + 16 | 0 | 0, $6 + 64 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 12 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
if (!(Math_fround(HEAPF32[($6 + 8 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
if (Math_fround(HEAPF32[($6 + 4 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
}
|
|
if (!(Math_fround(HEAPF32[($6 + 12 | 0) >> 2]) <= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if (!(Math_fround(HEAPF32[($6 + 8 | 0) >> 2]) <= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if (!(Math_fround(HEAPF32[($6 + 4 | 0) >> 2]) <= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
}
|
|
HEAP8[($6 + 191 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP8[($6 + 191 | 0) >> 0] = 0 & 1 | 0;
|
|
}
|
|
$130 = (HEAPU8[($6 + 191 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $6 + 192 | 0;
|
|
return $130 | 0;
|
|
}
|
|
|
|
function SphereTriangleDetector___SphereTriangleDetector_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
SphereTriangleDetector___SphereTriangleDetector_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_SphereTriangleDetector_cpp() {
|
|
__cxx_global_var_init_27();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_28() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114076 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btBoxShape__btBoxShape_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $47 = 0, $49 = 0, $160 = 0, $173 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 76 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 72 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 76 | 0) >> 2] | 0;
|
|
btPolyhedralConvexShape__btPolyhedralConvexShape_28_29($5 | 0) | 0;
|
|
HEAP32[$5 >> 2] = 96788 + 8 | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 52 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 48 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 56 | 0 | 0, $4 + 52 | 0 | 0, $4 + 48 | 0 | 0, $4 + 44 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($4 + 12 | 0 | 0, HEAP32[($4 + 72 | 0) >> 2] | 0 | 0, $5 + 20 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 28 | 0 | 0, $4 + 12 | 0 | 0, $4 + 56 | 0 | 0);
|
|
$47 = $5 + 36 | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
$160 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $47;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $160;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$49 = 8;
|
|
i64toi32_i32$2 = ($4 + 28 | 0) + $49 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$173 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $47 + $49 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $173;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btConvexInternalShape__setSafeMargin_28btVector3_20const__2c_20float_29($5 | 0, HEAP32[($4 + 72 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(.10000000149011612)));
|
|
__stack_pointer = $4 + 80 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btBoxShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btTransformAabb_28btVector3_20const__2c_20float_2c_20btTransform_20const__2c_20btVector3__2c_20btVector3__29(btBoxShape__getHalfExtentsWithoutMargin_28_29_20const($7 | 0) | 0 | 0, Math_fround(Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($7))), HEAP32[($6 + 8 | 0) >> 2] | 0 | 0, HEAP32[($6 + 4 | 0) >> 2] | 0 | 0, HEAP32[$6 >> 2] | 0 | 0);
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTransformAabb_28btVector3_20const__2c_20float_2c_20btTransform_20const__2c_20btVector3__2c_20btVector3__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $14 = 0, $27 = 0, $28 = 0, $65 = 0, $67 = 0, $82 = 0, $84 = 0, $8 = 0, $159 = 0, $163 = 0, $218 = 0, $231 = 0, $252 = 0, $265 = 0;
|
|
$7 = __stack_pointer - 176 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 172 | 0) >> 2] = $0;
|
|
HEAPF32[($7 + 168 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 164 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 160 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 156 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 172 | 0) >> 2] | 0;
|
|
$14 = $7 + 168 | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 124 | 0 | 0, $14 | 0, $14 | 0, $14 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($7 + 140 | 0 | 0, $8 | 0, $7 + 124 | 0 | 0);
|
|
btMatrix3x3__absolute_28_29_20const($7 + 76 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($7 + 164 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$27 = btTransform__getOrigin_28_29_20const(HEAP32[($7 + 164 | 0) >> 2] | 0 | 0) | 0;
|
|
$28 = 8;
|
|
i64toi32_i32$2 = $27 + $28 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$159 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($7 + 56 | 0) + $28 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $159;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $27;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$163 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $7;
|
|
HEAP32[($7 + 56 | 0) >> 2] = $163;
|
|
HEAP32[($7 + 60 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__dot3_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29_20const($7 + 40 | 0 | 0, $7 + 140 | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($7 + 76 | 0 | 0, 0 | 0) | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($7 + 76 | 0 | 0, 1 | 0) | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($7 + 76 | 0 | 0, 2 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($7 + 24 | 0 | 0, $7 + 56 | 0 | 0, $7 + 40 | 0 | 0);
|
|
$65 = HEAP32[($7 + 160 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$0 = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
$218 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $65;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $218;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$67 = 8;
|
|
i64toi32_i32$2 = ($7 + 24 | 0) + $67 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$231 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $65 + $67 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $231;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($7 + 8 | 0 | 0, $7 + 56 | 0 | 0, $7 + 40 | 0 | 0);
|
|
$82 = HEAP32[($7 + 156 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$0 = HEAP32[($7 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($7 + 12 | 0) >> 2] | 0;
|
|
$252 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $82;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $252;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$84 = 8;
|
|
i64toi32_i32$2 = ($7 + 8 | 0) + $84 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$265 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $82 + $84 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $265;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $7 + 176 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBoxShape__calculateLocalInertia_28float_2c_20btVector3__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $31 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 60 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 56 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 52 | 0) >> 2] = $2;
|
|
btBoxShape__getHalfExtentsWithMargin_28_29_20const($5 + 36 | 0 | 0, HEAP32[($5 + 60 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(2.0) * Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 + 36 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(2.0) * Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 + 36 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(2.0) * Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 + 36 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_f32$0;
|
|
$31 = HEAP32[($5 + 52 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 20 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 56 | 0) >> 2]) / Math_fround(12.0)) * Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 28 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 28 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($5 + 24 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 24 | 0) >> 2]))));
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 56 | 0) >> 2]) / Math_fround(12.0)) * Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 32 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 32 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($5 + 24 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 24 | 0) >> 2]))));
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 56 | 0) >> 2]) / Math_fround(12.0)) * Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 32 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 32 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($5 + 28 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 28 | 0) >> 2]))));
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($31 | 0, $5 + 20 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0);
|
|
__stack_pointer = $5 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBoxShape___btBoxShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btPolyhedralConvexShape___btPolyhedralConvexShape_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btBoxShape___btBoxShape_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btBoxShape___btBoxShape_28_29($4 | 0) | 0;
|
|
btBoxShape__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBoxShape__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBoxShape__setLocalScaling_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $62 = 0, $64 = 0, $198 = 0, $211 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 108 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 104 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 108 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 84 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 80 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 76 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 88 | 0 | 0, $4 + 84 | 0 | 0, $4 + 80 | 0 | 0, $4 + 76 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($4 + 60 | 0 | 0, $5 + 36 | 0 | 0, $4 + 88 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_3($4 + 44 | 0 | 0, $4 + 60 | 0 | 0, $5 + 20 | 0 | 0);
|
|
btConvexInternalShape__setLocalScaling_28btVector3_20const__29($5 | 0, HEAP32[($4 + 104 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($4 + 12 | 0 | 0, $4 + 44 | 0 | 0, $5 + 20 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 28 | 0 | 0, $4 + 12 | 0 | 0, $4 + 88 | 0 | 0);
|
|
$62 = $5 + 36 | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
$198 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $62;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $198;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$64 = 8;
|
|
i64toi32_i32$2 = ($4 + 28 | 0) + $64 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$211 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $62 + $64 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $211;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $4 + 112 | 0;
|
|
return;
|
|
}
|
|
|
|
function operator__28btVector3_20const__2c_20btVector3_20const__29_3($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $2;
|
|
HEAPF32[($5 + 20 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[(HEAP32[($5 + 28 | 0) >> 2] | 0) >> 2]) / Math_fround(HEAPF32[(HEAP32[($5 + 24 | 0) >> 2] | 0) >> 2]));
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 28 | 0) >> 2] | 0) + 4 | 0) >> 2]) / Math_fround(HEAPF32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2]));
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 28 | 0) >> 2] | 0) + 8 | 0) >> 2]) / Math_fround(HEAPF32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 8 | 0) >> 2]));
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $5 + 20 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBoxShape__getName_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 66262 | 0;
|
|
}
|
|
|
|
function btBoxShape__setMargin_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $65 = 0, $67 = 0, $216 = 0, $226 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 96 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 92 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 88 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 92 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 68 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 64 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 60 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 72 | 0 | 0, $4 + 68 | 0 | 0, $4 + 64 | 0 | 0, $4 + 60 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($4 + 44 | 0 | 0, $5 + 36 | 0 | 0, $4 + 72 | 0 | 0);
|
|
btConvexInternalShape__setMargin_28float_29($5 | 0, Math_fround(Math_fround(HEAPF32[($4 + 88 | 0) >> 2])));
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 28 | 0 | 0, $4 + 24 | 0 | 0, $4 + 20 | 0 | 0, $4 + 16 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 | 0, $4 + 44 | 0 | 0, $4 + 28 | 0 | 0);
|
|
$65 = $5 + 36 | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[$4 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
$216 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $65;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $216;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$67 = 8;
|
|
i64toi32_i32$2 = $4 + $67 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$226 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $65 + $67 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $226;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $4 + 96 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBoxShape__localGetSupportingVertex_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $7 = 0, $8 = 0, $121 = 0, $125 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 60 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 56 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
$7 = btBoxShape__getHalfExtentsWithoutMargin_28_29_20const($6 | 0) | 0;
|
|
$8 = 8;
|
|
i64toi32_i32$2 = $7 + $8 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$121 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 40 | 0) + $8 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $121;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$125 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $125;
|
|
HEAP32[($5 + 44 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($6))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($6))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($6))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 24 | 0 | 0, $5 + 20 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($5 + 40 | 0 | 0, $5 + 24 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btFsel_28float_2c_20float_2c_20float_29(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 56 | 0) >> 2] | 0 | 0) | 0) >> 2])), Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 + 40 | 0 | 0) | 0) >> 2])), Math_fround(Math_fround(-Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 + 40 | 0 | 0) | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btFsel_28float_2c_20float_2c_20float_29(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 56 | 0) >> 2] | 0 | 0) | 0) >> 2])), Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 + 40 | 0 | 0) | 0) >> 2])), Math_fround(Math_fround(-Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 + 40 | 0 | 0) | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btFsel_28float_2c_20float_2c_20float_29(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 56 | 0) >> 2] | 0 | 0) | 0) >> 2])), Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 + 40 | 0 | 0) | 0) >> 2])), Math_fround(Math_fround(-Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 + 40 | 0 | 0) | 0) >> 2])))))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $5 + 8 | 0 | 0, $5 + 4 | 0 | 0, $5 | 0) | 0;
|
|
__stack_pointer = $5 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function btFsel_28float_2c_20float_2c_20float_29($0, $1, $2) {
|
|
$0 = Math_fround($0);
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $13 = Math_fround(0);
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAPF32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 12 | 0) >> 2]) >= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$13 = Math_fround(HEAPF32[($5 + 8 | 0) >> 2]);
|
|
break label$1;
|
|
}
|
|
$13 = Math_fround(HEAPF32[($5 + 4 | 0) >> 2]);
|
|
}
|
|
return Math_fround($13);
|
|
}
|
|
|
|
function btBoxShape__localGetSupportingVertexWithoutMargin_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $2;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btBoxShape__getHalfExtentsWithoutMargin_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btFsel_28float_2c_20float_2c_20float_29(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])), Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0) >> 2])), Math_fround(Math_fround(-Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btFsel_28float_2c_20float_2c_20float_29(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])), Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0) >> 2])), Math_fround(Math_fround(-Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btFsel_28float_2c_20float_2c_20float_29(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])), Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0) >> 2])), Math_fround(Math_fround(-Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0, $5 + 8 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBoxShape__batchedUnitVectorGetSupportingVertexWithoutMargin_28btVector3_20const__2c_20btVector3__2c_20int_29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $26 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 32 | 0) >> 2] = $3;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btBoxShape__getHalfExtentsWithoutMargin_28_29_20const(HEAP32[($6 + 44 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($6 + 24 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 32 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($6 + 20 | 0) >> 2] = (HEAP32[($6 + 40 | 0) >> 2] | 0) + ((HEAP32[($6 + 24 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
$26 = (HEAP32[($6 + 36 | 0) >> 2] | 0) + ((HEAP32[($6 + 24 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btFsel_28float_2c_20float_2c_20float_29(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0) >> 2])), Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2])), Math_fround(Math_fround(-Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btFsel_28float_2c_20float_2c_20float_29(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0) >> 2])), Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2])), Math_fround(Math_fround(-Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btFsel_28float_2c_20float_2c_20float_29(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0) >> 2])), Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2])), Math_fround(Math_fround(-Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($26 | 0, $6 + 16 | 0 | 0, $6 + 12 | 0 | 0, $6 + 8 | 0 | 0);
|
|
HEAP32[($6 + 24 | 0) >> 2] = (HEAP32[($6 + 24 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBoxShape__getNumPreferredPenetrationDirections_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 6 | 0;
|
|
}
|
|
|
|
function btBoxShape__getPreferredPenetrationDirection_28int_2c_20btVector3__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $8 = 0, $23 = 0, $38 = 0, $53 = 0, $68 = 0, $83 = 0;
|
|
$5 = __stack_pointer - 96 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 92 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 88 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 84 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 88 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
switch ($6 | 0) {
|
|
case 0:
|
|
$8 = HEAP32[($5 + 84 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 80 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($5 + 76 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 72 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($8 | 0, $5 + 80 | 0 | 0, $5 + 76 | 0 | 0, $5 + 72 | 0 | 0);
|
|
break label$1;
|
|
case 1:
|
|
$23 = HEAP32[($5 + 84 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 68 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[($5 + 64 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 60 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($23 | 0, $5 + 68 | 0 | 0, $5 + 64 | 0 | 0, $5 + 60 | 0 | 0);
|
|
break label$1;
|
|
case 2:
|
|
$38 = HEAP32[($5 + 84 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 56 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 52 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($5 + 48 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($38 | 0, $5 + 56 | 0 | 0, $5 + 52 | 0 | 0, $5 + 48 | 0 | 0);
|
|
break label$1;
|
|
case 3:
|
|
$53 = HEAP32[($5 + 84 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 44 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 40 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[($5 + 36 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($53 | 0, $5 + 44 | 0 | 0, $5 + 40 | 0 | 0, $5 + 36 | 0 | 0);
|
|
break label$1;
|
|
case 4:
|
|
$68 = HEAP32[($5 + 84 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 32 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 28 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 24 | 0) >> 2] = Math_fround(1.0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($68 | 0, $5 + 32 | 0 | 0, $5 + 28 | 0 | 0, $5 + 24 | 0 | 0);
|
|
break label$1;
|
|
case 5:
|
|
$83 = HEAP32[($5 + 84 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(-1.0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($83 | 0, $5 + 20 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0);
|
|
break label$1;
|
|
default:
|
|
break label$2;
|
|
};
|
|
}
|
|
__assert_fail(86177 | 0, 78954 | 0, 305 | 0, 76388 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
__stack_pointer = $5 + 96 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBoxShape__getNumVertices_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 8 | 0;
|
|
}
|
|
|
|
function btBoxShape__getNumEdges_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 12 | 0;
|
|
}
|
|
|
|
function btBoxShape__getEdge_28int_2c_20btVector3__2c_20btVector3__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $8 = 0, $9 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
$8 = 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $8;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $8;
|
|
$9 = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
switch ($9 | 0) {
|
|
case 0:
|
|
HEAP32[($6 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = 1;
|
|
break label$1;
|
|
case 1:
|
|
HEAP32[($6 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = 2;
|
|
break label$1;
|
|
case 2:
|
|
HEAP32[($6 + 12 | 0) >> 2] = 1;
|
|
HEAP32[($6 + 8 | 0) >> 2] = 3;
|
|
break label$1;
|
|
case 3:
|
|
HEAP32[($6 + 12 | 0) >> 2] = 2;
|
|
HEAP32[($6 + 8 | 0) >> 2] = 3;
|
|
break label$1;
|
|
case 4:
|
|
HEAP32[($6 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = 4;
|
|
break label$1;
|
|
case 5:
|
|
HEAP32[($6 + 12 | 0) >> 2] = 1;
|
|
HEAP32[($6 + 8 | 0) >> 2] = 5;
|
|
break label$1;
|
|
case 6:
|
|
HEAP32[($6 + 12 | 0) >> 2] = 2;
|
|
HEAP32[($6 + 8 | 0) >> 2] = 6;
|
|
break label$1;
|
|
case 7:
|
|
HEAP32[($6 + 12 | 0) >> 2] = 3;
|
|
HEAP32[($6 + 8 | 0) >> 2] = 7;
|
|
break label$1;
|
|
case 8:
|
|
HEAP32[($6 + 12 | 0) >> 2] = 4;
|
|
HEAP32[($6 + 8 | 0) >> 2] = 5;
|
|
break label$1;
|
|
case 9:
|
|
HEAP32[($6 + 12 | 0) >> 2] = 4;
|
|
HEAP32[($6 + 8 | 0) >> 2] = 6;
|
|
break label$1;
|
|
case 10:
|
|
HEAP32[($6 + 12 | 0) >> 2] = 5;
|
|
HEAP32[($6 + 8 | 0) >> 2] = 7;
|
|
break label$1;
|
|
case 11:
|
|
HEAP32[($6 + 12 | 0) >> 2] = 6;
|
|
HEAP32[($6 + 8 | 0) >> 2] = 7;
|
|
break label$1;
|
|
default:
|
|
break label$2;
|
|
};
|
|
}
|
|
__assert_fail(86177 | 0, 78954 | 0, 242 | 0, 81912 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 108 | 0) >> 2] | 0 | 0]($7, HEAP32[($6 + 12 | 0) >> 2] | 0, HEAP32[($6 + 20 | 0) >> 2] | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 108 | 0) >> 2] | 0 | 0]($7, HEAP32[($6 + 8 | 0) >> 2] | 0, HEAP32[($6 + 16 | 0) >> 2] | 0);
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBoxShape__getVertex_28int_2c_20btVector3__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $102 = 0, $104 = 0, $307 = 0, $320 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 60 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 56 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 52 | 0) >> 2] = $2;
|
|
btBoxShape__getHalfExtentsWithMargin_28_29_20const($5 + 36 | 0 | 0, HEAP32[($5 + 60 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 + 36 | 0 | 0) | 0) >> 2]) * Math_fround(1 - ((HEAP32[($5 + 56 | 0) >> 2] | 0) & 1 | 0) | 0 | 0)) + Math_fround(-Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 + 36 | 0 | 0) | 0) >> 2]) * Math_fround((HEAP32[($5 + 56 | 0) >> 2] | 0) & 1 | 0 | 0))))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 + 36 | 0 | 0) | 0) >> 2]) * Math_fround(1 - (((HEAP32[($5 + 56 | 0) >> 2] | 0) & 2 | 0) >> 1 | 0) | 0 | 0)) + Math_fround(-Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 + 36 | 0 | 0) | 0) >> 2]) * Math_fround(((HEAP32[($5 + 56 | 0) >> 2] | 0) & 2 | 0) >> 1 | 0 | 0))))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 + 36 | 0 | 0) | 0) >> 2]) * Math_fround(1 - (((HEAP32[($5 + 56 | 0) >> 2] | 0) & 4 | 0) >> 2 | 0) | 0 | 0)) + Math_fround(-Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 + 36 | 0 | 0) | 0) >> 2]) * Math_fround(((HEAP32[($5 + 56 | 0) >> 2] | 0) & 4 | 0) >> 2 | 0 | 0))))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 20 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0, $5 + 8 | 0 | 0) | 0;
|
|
$102 = HEAP32[($5 + 52 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
$307 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $102;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $307;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$104 = 8;
|
|
i64toi32_i32$2 = ($5 + 20 | 0) + $104 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$320 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $102 + $104 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $320;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $5 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBoxShape__getNumPlanes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 6 | 0;
|
|
}
|
|
|
|
function btBoxShape__getPlane_28btVector3__2c_20btVector3__2c_20int_29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $7 = 0, $32 = 0, $34 = 0, $48 = 0, $50 = 0, $125 = 0, $138 = 0, $162 = 0, $175 = 0;
|
|
$6 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 76 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 72 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 68 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 64 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 76 | 0) >> 2] | 0;
|
|
btVector4__btVector4_28_29($6 + 48 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 124 | 0) >> 2] | 0 | 0]($7, $6 + 48 | 0, HEAP32[($6 + 64 | 0) >> 2] | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 32 | 0 | 0, btVector3__getX_28_29_20const($6 + 48 | 0 | 0) | 0 | 0, btVector3__getY_28_29_20const($6 + 48 | 0 | 0) | 0 | 0, btVector3__getZ_28_29_20const($6 + 48 | 0 | 0) | 0 | 0) | 0;
|
|
$32 = HEAP32[($6 + 72 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 36 | 0) >> 2] | 0;
|
|
$125 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $32;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $125;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$34 = 8;
|
|
i64toi32_i32$2 = ($6 + 32 | 0) + $34 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$138 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $32 + $34 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $138;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__29($6 | 0, HEAP32[($6 + 72 | 0) >> 2] | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($6 + 16 | 0, $7, $6);
|
|
$48 = HEAP32[($6 + 68 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 20 | 0) >> 2] | 0;
|
|
$162 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $48;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $162;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$50 = 8;
|
|
i64toi32_i32$2 = ($6 + 16 | 0) + $50 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$175 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $48 + $50 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $175;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $6 + 80 | 0;
|
|
return;
|
|
}
|
|
|
|
function btVector4__btVector4_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btBoxShape__isInside_28btVector3_20const__2c_20float_29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, i64toi32_i32$0 = 0, $29 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $7 = 0, $8 = 0, $135 = 0, $139 = 0, $105 = 0;
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 36 | 0) >> 2] = $2;
|
|
$7 = btBoxShape__getHalfExtentsWithoutMargin_28_29_20const(HEAP32[($5 + 44 | 0) >> 2] | 0 | 0) | 0;
|
|
$8 = 8;
|
|
i64toi32_i32$2 = $7 + $8 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$135 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 16 | 0) + $8 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $135;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$139 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 16 | 0) >> 2] = $139;
|
|
HEAP32[($5 + 20 | 0) >> 2] = i64toi32_i32$0;
|
|
$29 = 0;
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) >> 2]) <= Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 + 16 | 0 | 0) | 0) >> 2]) + Math_fround(HEAPF32[($5 + 36 | 0) >> 2])) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$29 = 0;
|
|
if (!(Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) >> 2]) >= Math_fround(Math_fround(-Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 + 16 | 0 | 0) | 0) >> 2])) - Math_fround(HEAPF32[($5 + 36 | 0) >> 2])) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$29 = 0;
|
|
if (!(Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) >> 2]) <= Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 + 16 | 0 | 0) | 0) >> 2]) + Math_fround(HEAPF32[($5 + 36 | 0) >> 2])) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$29 = 0;
|
|
if (!(Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) >> 2]) >= Math_fround(Math_fround(-Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 + 16 | 0 | 0) | 0) >> 2])) - Math_fround(HEAPF32[($5 + 36 | 0) >> 2])) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$29 = 0;
|
|
if (!(Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) >> 2]) <= Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 + 16 | 0 | 0) | 0) >> 2]) + Math_fround(HEAPF32[($5 + 36 | 0) >> 2])) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$29 = Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) >> 2]) >= Math_fround(Math_fround(-Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 + 16 | 0 | 0) | 0) >> 2])) - Math_fround(HEAPF32[($5 + 36 | 0) >> 2]));
|
|
}
|
|
HEAP8[($5 + 15 | 0) >> 0] = $29 & 1 | 0;
|
|
$105 = (HEAPU8[($5 + 15 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return $105 | 0;
|
|
}
|
|
|
|
function btBoxShape__getPlaneEquation_28btVector4__2c_20int_29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $7 = 0, $8 = 0, $15 = 0, $192 = 0, $196 = 0, $17 = 0, $41 = 0, $65 = 0, $89 = 0, $113 = 0, $137 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 128 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 124 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 120 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 116 | 0) >> 2] = $2;
|
|
$7 = btBoxShape__getHalfExtentsWithoutMargin_28_29_20const(HEAP32[($5 + 124 | 0) >> 2] | 0 | 0) | 0;
|
|
$8 = 8;
|
|
i64toi32_i32$2 = $7 + $8 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$192 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 96 | 0) + $8 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $192;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$196 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 96 | 0) >> 2] = $196;
|
|
HEAP32[($5 + 100 | 0) >> 2] = i64toi32_i32$0;
|
|
$15 = HEAP32[($5 + 116 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
switch ($15 | 0) {
|
|
case 0:
|
|
$17 = HEAP32[($5 + 120 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 92 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($5 + 88 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 84 | 0) >> 2] = Math_fround(0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(-Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 + 96 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 80 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector4__setValue_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($17 | 0, $5 + 92 | 0 | 0, $5 + 88 | 0 | 0, $5 + 84 | 0 | 0, $5 + 80 | 0 | 0);
|
|
break label$1;
|
|
case 1:
|
|
$41 = HEAP32[($5 + 120 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 76 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[($5 + 72 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 68 | 0) >> 2] = Math_fround(0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(-Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 + 96 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 64 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector4__setValue_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($41 | 0, $5 + 76 | 0 | 0, $5 + 72 | 0 | 0, $5 + 68 | 0 | 0, $5 + 64 | 0 | 0);
|
|
break label$1;
|
|
case 2:
|
|
$65 = HEAP32[($5 + 120 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 60 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 56 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($5 + 52 | 0) >> 2] = Math_fround(0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(-Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 + 96 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 48 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector4__setValue_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($65 | 0, $5 + 60 | 0 | 0, $5 + 56 | 0 | 0, $5 + 52 | 0 | 0, $5 + 48 | 0 | 0);
|
|
break label$1;
|
|
case 3:
|
|
$89 = HEAP32[($5 + 120 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 44 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 40 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[($5 + 36 | 0) >> 2] = Math_fround(0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(-Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 + 96 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector4__setValue_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($89 | 0, $5 + 44 | 0 | 0, $5 + 40 | 0 | 0, $5 + 36 | 0 | 0, $5 + 32 | 0 | 0);
|
|
break label$1;
|
|
case 4:
|
|
$113 = HEAP32[($5 + 120 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 28 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 24 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 20 | 0) >> 2] = Math_fround(1.0);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(-Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 + 96 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector4__setValue_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($113 | 0, $5 + 28 | 0 | 0, $5 + 24 | 0 | 0, $5 + 20 | 0 | 0, $5 + 16 | 0 | 0);
|
|
break label$1;
|
|
case 5:
|
|
$137 = HEAP32[($5 + 120 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 4 | 0) >> 2] = Math_fround(-1.0);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(-Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 + 96 | 0 | 0) | 0) >> 2]))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
btVector4__setValue_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($137 | 0, $5 + 12 | 0 | 0, $5 + 8 | 0 | 0, $5 + 4 | 0 | 0, $5 | 0);
|
|
break label$1;
|
|
default:
|
|
break label$2;
|
|
};
|
|
}
|
|
__assert_fail(86177 | 0, 78954 | 0, 178 | 0, 76606 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
__stack_pointer = $5 + 128 | 0;
|
|
return;
|
|
}
|
|
|
|
function btVector4__setValue_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
HEAPF32[$8 >> 2] = Math_fround(HEAPF32[(HEAP32[($7 + 24 | 0) >> 2] | 0) >> 2]);
|
|
HEAPF32[($8 + 4 | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[($7 + 20 | 0) >> 2] | 0) >> 2]);
|
|
HEAPF32[($8 + 8 | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[($7 + 16 | 0) >> 2] | 0) >> 2]);
|
|
HEAPF32[($8 + 12 | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[($7 + 12 | 0) >> 2] | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btBoxShape_cpp() {
|
|
__cxx_global_var_init_28();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_29() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114080 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvh__btQuantizedBvh_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 28 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 28 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 96952 + 8 | 0;
|
|
btVector3__btVector3_28_29($4 + 4 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 20 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 36 | 0 | 0) | 0;
|
|
HEAP32[($4 + 52 | 0) >> 2] = 287;
|
|
HEAP8[($4 + 60 | 0) >> 0] = 0;
|
|
btAlignedObjectArray_btOptimizedBvhNode___btAlignedObjectArray_28_29($4 + 64 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btOptimizedBvhNode___btAlignedObjectArray_28_29($4 + 84 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btQuantizedBvhNode___btAlignedObjectArray_28_29($4 + 104 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btQuantizedBvhNode___btAlignedObjectArray_28_29($4 + 124 | 0 | 0) | 0;
|
|
HEAP32[($4 + 144 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btBvhSubtreeInfo___btAlignedObjectArray_28_29($4 + 148 | 0 | 0) | 0;
|
|
HEAP32[($4 + 168 | 0) >> 2] = 0;
|
|
HEAPF32[($3 + 24 | 0) >> 2] = Math_fround(-3402823466385288598117041.0e14);
|
|
HEAPF32[($3 + 20 | 0) >> 2] = Math_fround(-3402823466385288598117041.0e14);
|
|
HEAPF32[($3 + 16 | 0) >> 2] = Math_fround(-3402823466385288598117041.0e14);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 4 | 0 | 0, $3 + 24 | 0 | 0, $3 + 20 | 0 | 0, $3 + 16 | 0 | 0);
|
|
HEAPF32[($3 + 12 | 0) >> 2] = Math_fround(3402823466385288598117041.0e14);
|
|
HEAPF32[($3 + 8 | 0) >> 2] = Math_fround(3402823466385288598117041.0e14);
|
|
HEAPF32[($3 + 4 | 0) >> 2] = Math_fround(3402823466385288598117041.0e14);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 20 | 0 | 0, $3 + 12 | 0 | 0, $3 + 8 | 0 | 0, $3 + 4 | 0 | 0);
|
|
__stack_pointer = $3 + 32 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btOptimizedBvhNode___btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btOptimizedBvhNode_2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btOptimizedBvhNode___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btQuantizedBvhNode___btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btQuantizedBvhNode_2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btQuantizedBvhNode___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBvhSubtreeInfo___btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btBvhSubtreeInfo_2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btBvhSubtreeInfo___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_btOptimizedBvhNode_2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btOptimizedBvhNode___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btQuantizedBvhNode_2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btQuantizedBvhNode___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btBvhSubtreeInfo_2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBvhSubtreeInfo___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btQuantizedBvhNode___size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btQuantizedBvhNode___resize_28int_2c_20btQuantizedBvhNode_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, $48 = 0, $51 = 0, $171 = 0, $181 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btQuantizedBvhNode___size_28_29_20const($6 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) > (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btAlignedObjectArray_btQuantizedBvhNode___reserve_28int_29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$48 = btQuantizedBvhNode__operator_20new_28unsigned_20long_2c_20void__29(16 | 0, (HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$171 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $48;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $171;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$51 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $51 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$181 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $48 + $51 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $181;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvh__buildTree_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $56 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 96 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 92 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 88 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 84 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 92 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 68 | 0) >> 2] = (HEAP32[($5 + 84 | 0) >> 2] | 0) - (HEAP32[($5 + 88 | 0) >> 2] | 0) | 0;
|
|
HEAP32[($5 + 64 | 0) >> 2] = HEAP32[($6 + 56 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($5 + 68 | 0) >> 2] | 0 | 0) > (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85787 | 0, 73634 | 0, 147 | 0, 81944 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((HEAP32[($5 + 68 | 0) >> 2] | 0 | 0) == (1 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
btQuantizedBvh__assignInternalNodeFromLeafNode_28int_2c_20int_29($6 | 0, HEAP32[($6 + 56 | 0) >> 2] | 0 | 0, HEAP32[($5 + 88 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($6 + 56 | 0) >> 2] = (HEAP32[($6 + 56 | 0) >> 2] | 0) + 1 | 0;
|
|
break label$2;
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btQuantizedBvh__calcSplittingAxis_28int_2c_20int_29($6 | 0, HEAP32[($5 + 88 | 0) >> 2] | 0 | 0, HEAP32[($5 + 84 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 80 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btQuantizedBvh__sortAndCalcSplittingIndex_28int_2c_20int_2c_20int_29($6 | 0, HEAP32[($5 + 88 | 0) >> 2] | 0 | 0, HEAP32[($5 + 84 | 0) >> 2] | 0 | 0, HEAP32[($5 + 80 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 76 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($5 + 60 | 0) >> 2] = HEAP32[($6 + 56 | 0) >> 2] | 0;
|
|
btQuantizedBvh__setInternalNodeAabbMin_28int_2c_20btVector3_20const__29($6 | 0, HEAP32[($6 + 56 | 0) >> 2] | 0 | 0, $6 + 20 | 0 | 0);
|
|
btQuantizedBvh__setInternalNodeAabbMax_28int_2c_20btVector3_20const__29($6 | 0, HEAP32[($6 + 56 | 0) >> 2] | 0 | 0, $6 + 4 | 0 | 0);
|
|
HEAP32[($5 + 72 | 0) >> 2] = HEAP32[($5 + 88 | 0) >> 2] | 0;
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 84 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$56 = HEAP32[($6 + 56 | 0) >> 2] | 0;
|
|
btQuantizedBvh__getAabbMin_28int_29_20const($5 + 44 | 0 | 0, $6 | 0, HEAP32[($5 + 72 | 0) >> 2] | 0 | 0);
|
|
btQuantizedBvh__getAabbMax_28int_29_20const($5 + 28 | 0 | 0, $6 | 0, HEAP32[($5 + 72 | 0) >> 2] | 0 | 0);
|
|
btQuantizedBvh__mergeInternalNodeAabb_28int_2c_20btVector3_20const__2c_20btVector3_20const__29($6 | 0, $56 | 0, $5 + 44 | 0 | 0, $5 + 28 | 0 | 0);
|
|
HEAP32[($5 + 72 | 0) >> 2] = (HEAP32[($5 + 72 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
HEAP32[($6 + 56 | 0) >> 2] = (HEAP32[($6 + 56 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = HEAP32[($6 + 56 | 0) >> 2] | 0;
|
|
btQuantizedBvh__buildTree_28int_2c_20int_29($6 | 0, HEAP32[($5 + 88 | 0) >> 2] | 0 | 0, HEAP32[($5 + 76 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($5 + 20 | 0) >> 2] = HEAP32[($6 + 56 | 0) >> 2] | 0;
|
|
btQuantizedBvh__buildTree_28int_2c_20int_29($6 | 0, HEAP32[($5 + 76 | 0) >> 2] | 0 | 0, HEAP32[($5 + 84 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($5 + 16 | 0) >> 2] = (HEAP32[($6 + 56 | 0) >> 2] | 0) - (HEAP32[($5 + 64 | 0) >> 2] | 0) | 0;
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!((HEAPU8[($6 + 60 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = 16;
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 16 | 0) >> 2] | 0) << 4 | 0;
|
|
label$8 : {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) > (2048 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
btQuantizedBvh__updateSubtreeHeaders_28int_2c_20int_29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0);
|
|
}
|
|
break label$6;
|
|
}
|
|
}
|
|
btQuantizedBvh__setInternalNodeEscapeIndex_28int_2c_20int_29($6 | 0, HEAP32[($5 + 60 | 0) >> 2] | 0 | 0, HEAP32[($5 + 16 | 0) >> 2] | 0 | 0);
|
|
}
|
|
__stack_pointer = $5 + 96 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBvhSubtreeInfo___size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btBvhSubtreeInfo__btBvhSubtreeInfo_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBvhSubtreeInfo___expand_28btBvhSubtreeInfo_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $4 = 0, $5 = 0, $25 = 0, $26 = 0, $28 = 0, $32 = 0, $36 = 0, $108 = 0, $118 = 0, $128 = 0, $138 = 0, $44 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btBvhSubtreeInfo___size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btBvhSubtreeInfo___capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btBvhSubtreeInfo___reserve_28int_29($5 | 0, btAlignedObjectArray_btBvhSubtreeInfo___allocSize_28int_29($5 | 0, btAlignedObjectArray_btBvhSubtreeInfo___size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
$25 = btBvhSubtreeInfo__operator_20new_28unsigned_20long_2c_20void__29(32 | 0, (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 4 | 0) >> 2] | 0) << 5 | 0) | 0 | 0) | 0;
|
|
$26 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $26;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$108 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $25;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $108;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$28 = 24;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $28 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$118 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $25 + $28 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $118;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$32 = 16;
|
|
i64toi32_i32$2 = $26 + $32 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$128 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $25 + $32 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $128;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$36 = 8;
|
|
i64toi32_i32$2 = $26 + $36 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$138 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $25 + $36 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $138;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$44 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 4 | 0) >> 2] | 0) << 5 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $44 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btQuantizedBvhNode___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btBvhSubtreeInfo__setAabbFromQuantizeNode_28btQuantizedBvhNode_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP16[$5 >> 1] = HEAPU16[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 1] | 0;
|
|
HEAP16[($5 + 2 | 0) >> 1] = HEAPU16[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 2 | 0) >> 1] | 0;
|
|
HEAP16[($5 + 4 | 0) >> 1] = HEAPU16[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0) >> 1] | 0;
|
|
HEAP16[($5 + 6 | 0) >> 1] = HEAPU16[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 6 | 0) >> 1] | 0;
|
|
HEAP16[($5 + 8 | 0) >> 1] = HEAPU16[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 8 | 0) >> 1] | 0;
|
|
HEAP16[($5 + 10 | 0) >> 1] = HEAPU16[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 10 | 0) >> 1] | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvhNode__isLeafNode_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function btQuantizedBvhNode__getEscapeIndex_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $14 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btQuantizedBvhNode__isLeafNode_28_29_20const($4 | 0) | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
__assert_fail(87705 | 0, 78832 | 0, 75 | 0, 66536 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$14 = 0 - (HEAP32[($4 + 12 | 0) >> 2] | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $14 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btQuantizedBvhNode___clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btQuantizedBvhNode___destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btQuantizedBvhNode___size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btQuantizedBvhNode___deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btQuantizedBvhNode___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btOptimizedBvhNode___clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btOptimizedBvhNode___destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btOptimizedBvhNode___size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btOptimizedBvhNode___deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btOptimizedBvhNode___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btQuantizedBvhNode___reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btQuantizedBvhNode___capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btQuantizedBvhNode___allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btQuantizedBvhNode___copy_28int_2c_20int_2c_20btQuantizedBvhNode__29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btQuantizedBvhNode___size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btQuantizedBvhNode___destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btQuantizedBvhNode___size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btQuantizedBvhNode___deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvhNode__operator_20new_28unsigned_20long_2c_20void__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return HEAP32[($4 + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btQuantizedBvh__assignInternalNodeFromLeafNode_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $5 = 0, $30 = 0, $26 = 0, $6 = 0, $17 = 0, $19 = 0, $32 = 0, $36 = 0, $40 = 0, $44 = 0, $48 = 0, $52 = 0, $56 = 0, $13 = 0, $101 = 0, $111 = 0, $131 = 0, $141 = 0, $151 = 0, $161 = 0, $171 = 0, $181 = 0, $191 = 0, $201 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($6 + 60 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$13 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($6 + 104 | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
$17 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($6 + 124 | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
i64toi32_i32$2 = $13;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$101 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $17;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $101;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$19 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $19 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$111 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $17 + $19 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $111;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$1;
|
|
}
|
|
$26 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29($6 + 64 | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
$30 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29($6 + 84 | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
i64toi32_i32$2 = $26;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$131 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $30;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $131;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$32 = 56;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $32 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$141 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $30 + $32 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $141;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$36 = 48;
|
|
i64toi32_i32$2 = $26 + $36 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$151 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $30 + $36 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $151;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$40 = 40;
|
|
i64toi32_i32$2 = $26 + $40 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$161 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $30 + $40 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $161;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$44 = 32;
|
|
i64toi32_i32$2 = $26 + $44 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$171 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $30 + $44 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $171;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$48 = 24;
|
|
i64toi32_i32$2 = $26 + $48 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$181 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $30 + $48 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $181;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$52 = 16;
|
|
i64toi32_i32$2 = $26 + $52 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$191 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $30 + $52 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $191;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$56 = 8;
|
|
i64toi32_i32$2 = $26 + $56 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$201 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $30 + $56 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $201;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvh__calcSplittingAxis_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, $6 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $149 = 0, $150 = 0, $489 = 0, $493 = 0, $183 = 0;
|
|
$5 = __stack_pointer - 256 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 252 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 248 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 244 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 252 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 220 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 216 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 212 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 224 | 0 | 0, $5 + 220 | 0 | 0, $5 + 216 | 0 | 0, $5 + 212 | 0 | 0) | 0;
|
|
HEAPF32[($5 + 192 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 188 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 184 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 196 | 0 | 0, $5 + 192 | 0 | 0, $5 + 188 | 0 | 0, $5 + 184 | 0 | 0) | 0;
|
|
HEAP32[($5 + 180 | 0) >> 2] = (HEAP32[($5 + 244 | 0) >> 2] | 0) - (HEAP32[($5 + 248 | 0) >> 2] | 0) | 0;
|
|
HEAP32[($5 + 240 | 0) >> 2] = HEAP32[($5 + 248 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($5 + 240 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 244 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[($5 + 160 | 0) >> 2] = Math_fround(.5);
|
|
btQuantizedBvh__getAabbMax_28int_29_20const($5 + 128 | 0 | 0, $6 | 0, HEAP32[($5 + 240 | 0) >> 2] | 0 | 0);
|
|
btQuantizedBvh__getAabbMin_28int_29_20const($5 + 112 | 0 | 0, $6 | 0, HEAP32[($5 + 240 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($5 + 144 | 0 | 0, $5 + 128 | 0 | 0, $5 + 112 | 0 | 0);
|
|
operator__28float_20const__2c_20btVector3_20const__29($5 + 164 | 0 | 0, $5 + 160 | 0 | 0, $5 + 144 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($5 + 224 | 0 | 0, $5 + 164 | 0 | 0) | 0;
|
|
HEAP32[($5 + 240 | 0) >> 2] = (HEAP32[($5 + 240 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
HEAPF32[($5 + 108 | 0) >> 2] = Math_fround(Math_fround(1.0) / Math_fround(HEAP32[($5 + 180 | 0) >> 2] | 0 | 0));
|
|
btVector3__operator___28float_20const__29_1($5 + 224 | 0 | 0, $5 + 108 | 0 | 0) | 0;
|
|
HEAP32[($5 + 240 | 0) >> 2] = HEAP32[($5 + 248 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 240 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 244 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAPF32[($5 + 88 | 0) >> 2] = Math_fround(.5);
|
|
btQuantizedBvh__getAabbMax_28int_29_20const($5 + 56 | 0 | 0, $6 | 0, HEAP32[($5 + 240 | 0) >> 2] | 0 | 0);
|
|
btQuantizedBvh__getAabbMin_28int_29_20const($5 + 40 | 0 | 0, $6 | 0, HEAP32[($5 + 240 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($5 + 72 | 0 | 0, $5 + 56 | 0 | 0, $5 + 40 | 0 | 0);
|
|
operator__28float_20const__2c_20btVector3_20const__29($5 + 92 | 0 | 0, $5 + 88 | 0 | 0, $5 + 72 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 24 | 0 | 0, $5 + 92 | 0 | 0, $5 + 224 | 0 | 0);
|
|
$149 = $5 + 24 | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($5 + 8 | 0 | 0, $149 | 0, $149 | 0);
|
|
$150 = 8;
|
|
i64toi32_i32$2 = ($5 + 8 | 0) + $150 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$489 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 24 | 0) + $150 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $489;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
$493 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $493;
|
|
HEAP32[($5 + 28 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__operator___28btVector3_20const__29_1($5 + 196 | 0 | 0, $5 + 24 | 0 | 0) | 0;
|
|
HEAP32[($5 + 240 | 0) >> 2] = (HEAP32[($5 + 240 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
HEAPF32[($5 + 4 | 0) >> 2] = Math_fround(Math_fround(1.0) / Math_fround(Math_fround(HEAP32[($5 + 180 | 0) >> 2] | 0 | 0) - Math_fround(1.0)));
|
|
btVector3__operator___28float_20const__29_1($5 + 196 | 0 | 0, $5 + 4 | 0 | 0) | 0;
|
|
$183 = btVector3__maxAxis_28_29_20const($5 + 196 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 256 | 0;
|
|
return $183 | 0;
|
|
}
|
|
|
|
function btQuantizedBvh__sortAndCalcSplittingIndex_28int_2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $162 = 0, $191 = 0, $207 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 208 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 204 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 200 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 196 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 192 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 204 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 184 | 0) >> 2] = HEAP32[($6 + 200 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 180 | 0) >> 2] = (HEAP32[($6 + 196 | 0) >> 2] | 0) - (HEAP32[($6 + 200 | 0) >> 2] | 0) | 0;
|
|
HEAPF32[($6 + 156 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 152 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 148 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 160 | 0 | 0, $6 + 156 | 0 | 0, $6 + 152 | 0 | 0, $6 + 148 | 0 | 0) | 0;
|
|
HEAP32[($6 + 188 | 0) >> 2] = HEAP32[($6 + 200 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 188 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 196 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[($6 + 128 | 0) >> 2] = Math_fround(.5);
|
|
btQuantizedBvh__getAabbMax_28int_29_20const($6 + 96 | 0 | 0, $7 | 0, HEAP32[($6 + 188 | 0) >> 2] | 0 | 0);
|
|
btQuantizedBvh__getAabbMin_28int_29_20const($6 + 80 | 0 | 0, $7 | 0, HEAP32[($6 + 188 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 112 | 0 | 0, $6 + 96 | 0 | 0, $6 + 80 | 0 | 0);
|
|
operator__28float_20const__2c_20btVector3_20const__29($6 + 132 | 0 | 0, $6 + 128 | 0 | 0, $6 + 112 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($6 + 160 | 0 | 0, $6 + 132 | 0 | 0) | 0;
|
|
HEAP32[($6 + 188 | 0) >> 2] = (HEAP32[($6 + 188 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
HEAPF32[($6 + 76 | 0) >> 2] = Math_fround(Math_fround(1.0) / Math_fround(HEAP32[($6 + 180 | 0) >> 2] | 0 | 0));
|
|
btVector3__operator___28float_20const__29_1($6 + 160 | 0 | 0, $6 + 76 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 160 | 0 | 0) | 0) + ((HEAP32[($6 + 192 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 176 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP32[($6 + 188 | 0) >> 2] = HEAP32[($6 + 200 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($6 + 188 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 196 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAPF32[($6 + 56 | 0) >> 2] = Math_fround(.5);
|
|
btQuantizedBvh__getAabbMax_28int_29_20const($6 + 24 | 0 | 0, $7 | 0, HEAP32[($6 + 188 | 0) >> 2] | 0 | 0);
|
|
btQuantizedBvh__getAabbMin_28int_29_20const($6 + 8 | 0 | 0, $7 | 0, HEAP32[($6 + 188 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 40 | 0 | 0, $6 + 24 | 0 | 0, $6 + 8 | 0 | 0);
|
|
operator__28float_20const__2c_20btVector3_20const__29($6 + 60 | 0 | 0, $6 + 56 | 0 | 0, $6 + 40 | 0 | 0);
|
|
label$5 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 60 | 0 | 0) | 0) + ((HEAP32[($6 + 192 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) > Math_fround(HEAPF32[($6 + 176 | 0) >> 2]) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btQuantizedBvh__swapLeafNodes_28int_2c_20int_29($7 | 0, HEAP32[($6 + 188 | 0) >> 2] | 0 | 0, HEAP32[($6 + 184 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($6 + 184 | 0) >> 2] = (HEAP32[($6 + 184 | 0) >> 2] | 0) + 1 | 0;
|
|
}
|
|
HEAP32[($6 + 188 | 0) >> 2] = (HEAP32[($6 + 188 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
HEAP32[($6 + 4 | 0) >> 2] = (HEAP32[($6 + 180 | 0) >> 2] | 0 | 0) / (3 | 0) | 0;
|
|
$162 = 1;
|
|
label$6 : {
|
|
if ((HEAP32[($6 + 184 | 0) >> 2] | 0 | 0) <= ((HEAP32[($6 + 200 | 0) >> 2] | 0) + (HEAP32[($6 + 4 | 0) >> 2] | 0) | 0 | 0) & 1 | 0) {
|
|
break label$6
|
|
}
|
|
$162 = (HEAP32[($6 + 184 | 0) >> 2] | 0 | 0) >= (((HEAP32[($6 + 196 | 0) >> 2] | 0) - 1 | 0) - (HEAP32[($6 + 4 | 0) >> 2] | 0) | 0 | 0);
|
|
}
|
|
HEAP8[($6 + 3 | 0) >> 0] = $162 & 1 | 0;
|
|
label$7 : {
|
|
if (!((HEAPU8[($6 + 3 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAP32[($6 + 184 | 0) >> 2] = (HEAP32[($6 + 200 | 0) >> 2] | 0) + ((HEAP32[($6 + 180 | 0) >> 2] | 0) >> 1 | 0) | 0;
|
|
}
|
|
$191 = 1;
|
|
label$8 : {
|
|
if ((HEAP32[($6 + 184 | 0) >> 2] | 0 | 0) == (HEAP32[($6 + 200 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$8
|
|
}
|
|
$191 = (HEAP32[($6 + 184 | 0) >> 2] | 0 | 0) == (HEAP32[($6 + 196 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP8[($6 + 2 | 0) >> 0] = $191 & 1 | 0;
|
|
label$9 : {
|
|
if (!((HEAPU8[($6 + 2 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
__assert_fail(77652 | 0, 73634 | 0, 298 | 0, 66510 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$207 = HEAP32[($6 + 184 | 0) >> 2] | 0;
|
|
__stack_pointer = $6 + 208 | 0;
|
|
return $207 | 0;
|
|
}
|
|
|
|
function btQuantizedBvh__setInternalNodeAabbMin_28int_2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, $20 = 0, $22 = 0, $16 = 0, $75 = 0, $85 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($6 + 60 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btQuantizedBvh__quantize_28unsigned_20short__2c_20btVector3_20const__2c_20int_29_20const($6 | 0, btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($6 + 124 | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0, 0 | 0);
|
|
break label$1;
|
|
}
|
|
$16 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
$20 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29($6 + 84 | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
i64toi32_i32$2 = $16;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$75 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $20;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $75;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$22 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $22 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$85 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $20 + $22 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $85;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvh__setInternalNodeAabbMax_28int_2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, $24 = 0, $26 = 0, $18 = 0, $85 = 0, $95 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($6 + 60 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btQuantizedBvh__quantize_28unsigned_20short__2c_20btVector3_20const__2c_20int_29_20const($6 | 0, (btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($6 + 124 | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) + 6 | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0, 1 | 0);
|
|
break label$1;
|
|
}
|
|
$18 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
$24 = (btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29($6 + 84 | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) + 16 | 0;
|
|
i64toi32_i32$2 = $18;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$85 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $24;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $85;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$26 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $26 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$95 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $24 + $26 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $95;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvh__getAabbMin_28int_29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, $19 = 0, $65 = 0, $75 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($6 + 60 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btQuantizedBvh__unQuantize_28unsigned_20short_20const__29_20const($0 | 0, $6 | 0, btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($6 + 104 | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
break label$1;
|
|
}
|
|
i64toi32_i32$2 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29_20const($6 + 64 | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$65 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $65;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$19 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $19 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$75 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0 + $19 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $75;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvh__getAabbMax_28int_29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, $23 = 0, $75 = 0, $85 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($6 + 60 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btQuantizedBvh__unQuantize_28unsigned_20short_20const__29_20const($0 | 0, $6 | 0, (btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($6 + 104 | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) + 6 | 0 | 0);
|
|
break label$1;
|
|
}
|
|
i64toi32_i32$2 = (btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29_20const($6 + 64 | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) + 16 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$75 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $75;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$23 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $23 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$85 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0 + $23 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $85;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvh__mergeInternalNodeAabb_28int_2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $62 = 0, $106 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($7 + 60 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btQuantizedBvh__quantize_28unsigned_20short__2c_20btVector3_20const__2c_20int_29_20const($7 | 0, $6 + 10 | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, 0 | 0);
|
|
btQuantizedBvh__quantize_28unsigned_20short__2c_20btVector3_20const__2c_20int_29_20const($7 | 0, $6 + 4 | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0, 1 | 0);
|
|
HEAP32[$6 >> 2] = 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[$6 >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
label$5 : {
|
|
if (!(((HEAPU16[((btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($7 + 124 | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[$6 >> 2] | 0) << 1 | 0) | 0) >> 1] | 0) & 65535 | 0 | 0) > ((HEAPU16[(($6 + 10 | 0) + ((HEAP32[$6 >> 2] | 0) << 1 | 0) | 0) >> 1] | 0) & 65535 | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
$62 = HEAPU16[(($6 + 10 | 0) + ((HEAP32[$6 >> 2] | 0) << 1 | 0) | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = (btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($7 + 124 | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[$6 >> 2] | 0) << 1 | 0) | 0, wasm2js_i32$1 = $62), HEAP16[wasm2js_i32$0 >> 1] = wasm2js_i32$1;
|
|
}
|
|
label$6 : {
|
|
if (!(((HEAPU16[(((btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($7 + 124 | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0) + 6 | 0) + ((HEAP32[$6 >> 2] | 0) << 1 | 0) | 0) >> 1] | 0) & 65535 | 0 | 0) < ((HEAPU16[(($6 + 4 | 0) + ((HEAP32[$6 >> 2] | 0) << 1 | 0) | 0) >> 1] | 0) & 65535 | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$106 = HEAPU16[(($6 + 4 | 0) + ((HEAP32[$6 >> 2] | 0) << 1 | 0) | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = ((btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($7 + 124 | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0) + 6 | 0) + ((HEAP32[$6 >> 2] | 0) << 1 | 0) | 0, wasm2js_i32$1 = $106), HEAP16[wasm2js_i32$0 >> 1] = wasm2js_i32$1;
|
|
}
|
|
HEAP32[$6 >> 2] = (HEAP32[$6 >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
break label$1;
|
|
}
|
|
btVector3__setMin_28btVector3_20const__29(btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29($7 + 84 | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0);
|
|
btVector3__setMax_28btVector3_20const__29((btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29($7 + 84 | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0) + 16 | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0);
|
|
}
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvh__updateSubtreeHeaders_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $23 = 0, $39 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 108 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 104 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 100 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 108 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAPU8[($6 + 60 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(76588 | 0, 73634 | 0, 219 | 0, 69605 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($6 + 124 | 0 | 0, HEAP32[($5 + 104 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 96 | 0) >> 2] = wasm2js_i32$1;
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((btQuantizedBvhNode__isLeafNode_28_29_20const(HEAP32[($5 + 96 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$23 = 1;
|
|
break label$2;
|
|
}
|
|
$23 = btQuantizedBvhNode__getEscapeIndex_28_29_20const(HEAP32[($5 + 96 | 0) >> 2] | 0 | 0) | 0;
|
|
}
|
|
HEAP32[($5 + 92 | 0) >> 2] = $23;
|
|
HEAP32[($5 + 88 | 0) >> 2] = (HEAP32[($5 + 92 | 0) >> 2] | 0) << 4 | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($6 + 124 | 0 | 0, HEAP32[($5 + 100 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 84 | 0) >> 2] = wasm2js_i32$1;
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!((btQuantizedBvhNode__isLeafNode_28_29_20const(HEAP32[($5 + 84 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
$39 = 1;
|
|
break label$4;
|
|
}
|
|
$39 = btQuantizedBvhNode__getEscapeIndex_28_29_20const(HEAP32[($5 + 84 | 0) >> 2] | 0 | 0) | 0;
|
|
}
|
|
HEAP32[($5 + 80 | 0) >> 2] = $39;
|
|
HEAP32[($5 + 76 | 0) >> 2] = (HEAP32[($5 + 80 | 0) >> 2] | 0) << 4 | 0;
|
|
label$6 : {
|
|
if (!((HEAP32[($5 + 88 | 0) >> 2] | 0 | 0) <= (2048 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
btBvhSubtreeInfo__btBvhSubtreeInfo_28_29($5 + 40 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btBvhSubtreeInfo___expand_28btBvhSubtreeInfo_20const__29($6 + 148 | 0 | 0, $5 + 40 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 72 | 0) >> 2] = wasm2js_i32$1;
|
|
btBvhSubtreeInfo__setAabbFromQuantizeNode_28btQuantizedBvhNode_20const__29(HEAP32[($5 + 72 | 0) >> 2] | 0 | 0, HEAP32[($5 + 96 | 0) >> 2] | 0 | 0);
|
|
HEAP32[((HEAP32[($5 + 72 | 0) >> 2] | 0) + 12 | 0) >> 2] = HEAP32[($5 + 104 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 72 | 0) >> 2] | 0) + 16 | 0) >> 2] = HEAP32[($5 + 92 | 0) >> 2] | 0;
|
|
}
|
|
label$7 : {
|
|
if (!((HEAP32[($5 + 76 | 0) >> 2] | 0 | 0) <= (2048 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
btBvhSubtreeInfo__btBvhSubtreeInfo_28_29($5 + 4 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btBvhSubtreeInfo___expand_28btBvhSubtreeInfo_20const__29($6 + 148 | 0 | 0, $5 + 4 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_i32$1;
|
|
btBvhSubtreeInfo__setAabbFromQuantizeNode_28btQuantizedBvhNode_20const__29(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, HEAP32[($5 + 84 | 0) >> 2] | 0 | 0);
|
|
HEAP32[((HEAP32[($5 + 36 | 0) >> 2] | 0) + 12 | 0) >> 2] = HEAP32[($5 + 100 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 36 | 0) >> 2] | 0) + 16 | 0) >> 2] = HEAP32[($5 + 80 | 0) >> 2] | 0;
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btAlignedObjectArray_btBvhSubtreeInfo___size_28_29_20const($6 + 148 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 168 | 0) >> 2] = wasm2js_i32$1;
|
|
__stack_pointer = $5 + 112 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvh__setInternalNodeEscapeIndex_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $12 = 0, $17 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($6 + 60 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$12 = 0 - (HEAP32[($5 + 4 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($6 + 124 | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $12), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
$17 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29($6 + 84 | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $17), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBvhSubtreeInfo___capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBvhSubtreeInfo___allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBvhSubtreeInfo___reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btBvhSubtreeInfo___capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btBvhSubtreeInfo___allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btBvhSubtreeInfo___copy_28int_2c_20int_2c_20btBvhSubtreeInfo__29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btBvhSubtreeInfo___size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btBvhSubtreeInfo___destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btBvhSubtreeInfo___size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btBvhSubtreeInfo___deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBvhSubtreeInfo__operator_20new_28unsigned_20long_2c_20void__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return HEAP32[($4 + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btQuantizedBvhNode___destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btQuantizedBvhNode___deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btQuantizedBvhNode_2c_2016u___deallocate_28btQuantizedBvhNode__29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btOptimizedBvhNode___size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btOptimizedBvhNode___destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btOptimizedBvhNode___deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btOptimizedBvhNode_2c_2016u___deallocate_28btOptimizedBvhNode__29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvh__setQuantizationValues_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $7 = 0, $13 = 0, $22 = 0, $24 = 0, $38 = 0, $40 = 0, $78 = 0, $80 = 0, $102 = 0, $132 = 0, $166 = 0, $168 = 0, $186 = 0, $216 = 0, $248 = 0, $250 = 0, $305 = 0, $318 = 0, $338 = 0, $351 = 0, $413 = 0, $426 = 0, $472 = 0, $476 = 0, $529 = 0, $533 = 0, $582 = 0, $595 = 0, $633 = 0, $637 = 0, $690 = 0, $694 = 0, $740 = 0, $753 = 0;
|
|
$6 = __stack_pointer - 336 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 332 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 328 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 324 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 320 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 332 | 0) >> 2] | 0;
|
|
$13 = $6 + 320 | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 304 | 0 | 0, $13 | 0, $13 | 0, $13 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 288 | 0 | 0, HEAP32[($6 + 328 | 0) >> 2] | 0 | 0, $6 + 304 | 0 | 0);
|
|
$22 = $7 + 4 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 288 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 292 | 0) >> 2] | 0;
|
|
$305 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $305;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$24 = 8;
|
|
i64toi32_i32$2 = ($6 + 288 | 0) + $24 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$318 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $24 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $318;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 272 | 0 | 0, HEAP32[($6 + 324 | 0) >> 2] | 0 | 0, $6 + 304 | 0 | 0);
|
|
$38 = $7 + 20 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 272 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 276 | 0) >> 2] | 0;
|
|
$338 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $38;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $338;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$40 = 8;
|
|
i64toi32_i32$2 = ($6 + 272 | 0) + $40 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$351 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $38 + $40 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $351;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 256 | 0 | 0, $7 + 20 | 0 | 0, $7 + 4 | 0 | 0);
|
|
HEAPF32[($6 + 220 | 0) >> 2] = Math_fround(65533.0);
|
|
HEAPF32[($6 + 216 | 0) >> 2] = Math_fround(65533.0);
|
|
HEAPF32[($6 + 212 | 0) >> 2] = Math_fround(65533.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 224 | 0 | 0, $6 + 220 | 0 | 0, $6 + 216 | 0 | 0, $6 + 212 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_3($6 + 240 | 0 | 0, $6 + 224 | 0 | 0, $6 + 256 | 0 | 0);
|
|
$78 = $7 + 36 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 240 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 244 | 0) >> 2] | 0;
|
|
$413 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $78;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $413;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$80 = 8;
|
|
i64toi32_i32$2 = ($6 + 240 | 0) + $80 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$426 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $78 + $80 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $426;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP8[($7 + 60 | 0) >> 0] = 1;
|
|
btVector3__btVector3_28_29($6 + 184 | 0 | 0) | 0;
|
|
btQuantizedBvh__quantize_28unsigned_20short__2c_20btVector3_20const__2c_20int_29_20const($7 | 0, $6 + 206 | 0 | 0, $7 + 4 | 0 | 0, 0 | 0);
|
|
btQuantizedBvh__unQuantize_28unsigned_20short_20const__29_20const($6 + 168 | 0 | 0, $7 | 0, $6 + 206 | 0 | 0);
|
|
$102 = 8;
|
|
i64toi32_i32$2 = ($6 + 168 | 0) + $102 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$472 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 184 | 0) + $102 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $472;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 168 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 172 | 0) >> 2] | 0;
|
|
$476 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 184 | 0) >> 2] = $476;
|
|
HEAP32[($6 + 188 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 152 | 0 | 0, $6 + 184 | 0 | 0, $6 + 304 | 0 | 0);
|
|
btVector3__setMin_28btVector3_20const__29($7 + 4 | 0 | 0, $6 + 152 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 136 | 0 | 0, $7 + 20 | 0 | 0, $7 + 4 | 0 | 0);
|
|
$132 = 8;
|
|
i64toi32_i32$2 = ($6 + 136 | 0) + $132 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$529 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 256 | 0) + $132 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $529;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 136 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 140 | 0) >> 2] | 0;
|
|
$533 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 256 | 0) >> 2] = $533;
|
|
HEAP32[($6 + 260 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($6 + 100 | 0) >> 2] = Math_fround(65533.0);
|
|
HEAPF32[($6 + 96 | 0) >> 2] = Math_fround(65533.0);
|
|
HEAPF32[($6 + 92 | 0) >> 2] = Math_fround(65533.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 104 | 0 | 0, $6 + 100 | 0 | 0, $6 + 96 | 0 | 0, $6 + 92 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_3($6 + 120 | 0 | 0, $6 + 104 | 0 | 0, $6 + 256 | 0 | 0);
|
|
$166 = $7 + 36 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 120 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 124 | 0) >> 2] | 0;
|
|
$582 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $166;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $582;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$168 = 8;
|
|
i64toi32_i32$2 = ($6 + 120 | 0) + $168 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$595 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $166 + $168 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $595;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btQuantizedBvh__quantize_28unsigned_20short__2c_20btVector3_20const__2c_20int_29_20const($7 | 0, $6 + 206 | 0 | 0, $7 + 20 | 0 | 0, 1 | 0);
|
|
btQuantizedBvh__unQuantize_28unsigned_20short_20const__29_20const($6 + 76 | 0 | 0, $7 | 0, $6 + 206 | 0 | 0);
|
|
$186 = 8;
|
|
i64toi32_i32$2 = ($6 + 76 | 0) + $186 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$633 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 184 | 0) + $186 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $633;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 76 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 80 | 0) >> 2] | 0;
|
|
$637 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 184 | 0) >> 2] = $637;
|
|
HEAP32[($6 + 188 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 60 | 0 | 0, $6 + 184 | 0 | 0, $6 + 304 | 0 | 0);
|
|
btVector3__setMax_28btVector3_20const__29($7 + 20 | 0 | 0, $6 + 60 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 44 | 0 | 0, $7 + 20 | 0 | 0, $7 + 4 | 0 | 0);
|
|
$216 = 8;
|
|
i64toi32_i32$2 = ($6 + 44 | 0) + $216 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$690 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 256 | 0) + $216 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $690;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 48 | 0) >> 2] | 0;
|
|
$694 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 256 | 0) >> 2] = $694;
|
|
HEAP32[($6 + 260 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($6 + 8 | 0) >> 2] = Math_fround(65533.0);
|
|
HEAPF32[($6 + 4 | 0) >> 2] = Math_fround(65533.0);
|
|
HEAPF32[$6 >> 2] = Math_fround(65533.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 12 | 0 | 0, $6 + 8 | 0 | 0, $6 + 4 | 0 | 0, $6 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_3($6 + 28 | 0 | 0, $6 + 12 | 0 | 0, $6 + 256 | 0 | 0);
|
|
$248 = $7 + 36 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 32 | 0) >> 2] | 0;
|
|
$740 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $248;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $740;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$250 = 8;
|
|
i64toi32_i32$2 = ($6 + 28 | 0) + $250 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$753 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $248 + $250 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $753;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $6 + 336 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvh__quantize_28unsigned_20short__2c_20btVector3_20const__2c_20int_29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $114 = Math_fround(0), $115 = Math_fround(0), $133 = Math_fround(0), $150 = Math_fround(0), $169 = Math_fround(0), $186 = Math_fround(0), $202 = Math_fround(0), $123 = 0, $126 = 0, $141 = 0, $158 = 0, $177 = 0, $180 = 0, $194 = 0, $210 = 0;
|
|
$6 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 32 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAPU8[($7 + 60 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(76588 | 0, 78832 | 0, 355 | 0, 80790 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if (Math_fround(HEAPF32[(btVector3__getX_28_29_20const(HEAP32[($6 + 36 | 0) >> 2] | 0 | 0) | 0) >> 2]) <= Math_fround(HEAPF32[(btVector3__getX_28_29_20const($7 + 20 | 0 | 0) | 0) >> 2]) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(88132 | 0, 78832 | 0, 357 | 0, 80790 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$3 : {
|
|
if (Math_fround(HEAPF32[(btVector3__getY_28_29_20const(HEAP32[($6 + 36 | 0) >> 2] | 0 | 0) | 0) >> 2]) <= Math_fround(HEAPF32[(btVector3__getY_28_29_20const($7 + 20 | 0 | 0) | 0) >> 2]) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
__assert_fail(88017 | 0, 78832 | 0, 358 | 0, 80790 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$4 : {
|
|
if (Math_fround(HEAPF32[(btVector3__getZ_28_29_20const(HEAP32[($6 + 36 | 0) >> 2] | 0 | 0) | 0) >> 2]) <= Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($7 + 20 | 0 | 0) | 0) >> 2]) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
__assert_fail(87902 | 0, 78832 | 0, 359 | 0, 80790 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$5 : {
|
|
if (Math_fround(HEAPF32[(btVector3__getX_28_29_20const(HEAP32[($6 + 36 | 0) >> 2] | 0 | 0) | 0) >> 2]) >= Math_fround(HEAPF32[(btVector3__getX_28_29_20const($7 + 4 | 0 | 0) | 0) >> 2]) & 1 | 0) {
|
|
break label$5
|
|
}
|
|
__assert_fail(88168 | 0, 78832 | 0, 361 | 0, 80790 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$6 : {
|
|
if (Math_fround(HEAPF32[(btVector3__getY_28_29_20const(HEAP32[($6 + 36 | 0) >> 2] | 0 | 0) | 0) >> 2]) >= Math_fround(HEAPF32[(btVector3__getY_28_29_20const($7 + 4 | 0 | 0) | 0) >> 2]) & 1 | 0) {
|
|
break label$6
|
|
}
|
|
__assert_fail(88053 | 0, 78832 | 0, 362 | 0, 80790 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$7 : {
|
|
if (Math_fround(HEAPF32[(btVector3__getZ_28_29_20const(HEAP32[($6 + 36 | 0) >> 2] | 0 | 0) | 0) >> 2]) >= Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($7 + 4 | 0 | 0) | 0) >> 2]) & 1 | 0) {
|
|
break label$7
|
|
}
|
|
__assert_fail(87938 | 0, 78832 | 0, 363 | 0, 80790 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 | 0, HEAP32[($6 + 36 | 0) >> 2] | 0 | 0, $7 + 4 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($6 + 16 | 0 | 0, $6 | 0, $7 + 36 | 0 | 0);
|
|
label$8 : {
|
|
label$9 : {
|
|
if (!(HEAP32[($6 + 32 | 0) >> 2] | 0)) {
|
|
break label$9
|
|
}
|
|
$114 = Math_fround(1.0);
|
|
$115 = Math_fround(Math_fround(HEAPF32[(btVector3__getX_28_29_20const($6 + 16 | 0 | 0) | 0) >> 2]) + $114);
|
|
label$10 : {
|
|
label$11 : {
|
|
if (!($115 < Math_fround(4294967296.0) & $115 >= Math_fround(0.0) | 0)) {
|
|
break label$11
|
|
}
|
|
$123 = ~~$115 >>> 0;
|
|
break label$10;
|
|
}
|
|
$123 = 0;
|
|
}
|
|
$126 = 1;
|
|
HEAP16[(HEAP32[($6 + 40 | 0) >> 2] | 0) >> 1] = $123 | $126 | 0;
|
|
$133 = Math_fround(Math_fround(HEAPF32[(btVector3__getY_28_29_20const($6 + 16 | 0 | 0) | 0) >> 2]) + $114);
|
|
label$12 : {
|
|
label$13 : {
|
|
if (!($133 < Math_fround(4294967296.0) & $133 >= Math_fround(0.0) | 0)) {
|
|
break label$13
|
|
}
|
|
$141 = ~~$133 >>> 0;
|
|
break label$12;
|
|
}
|
|
$141 = 0;
|
|
}
|
|
HEAP16[((HEAP32[($6 + 40 | 0) >> 2] | 0) + 2 | 0) >> 1] = $141 | $126 | 0;
|
|
$150 = Math_fround(Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($6 + 16 | 0 | 0) | 0) >> 2]) + $114);
|
|
label$14 : {
|
|
label$15 : {
|
|
if (!($150 < Math_fround(4294967296.0) & $150 >= Math_fround(0.0) | 0)) {
|
|
break label$15
|
|
}
|
|
$158 = ~~$150 >>> 0;
|
|
break label$14;
|
|
}
|
|
$158 = 0;
|
|
}
|
|
HEAP16[((HEAP32[($6 + 40 | 0) >> 2] | 0) + 4 | 0) >> 1] = $158 & 65535 | 0 | 1 | 0;
|
|
break label$8;
|
|
}
|
|
$169 = Math_fround(HEAPF32[(btVector3__getX_28_29_20const($6 + 16 | 0 | 0) | 0) >> 2]);
|
|
label$16 : {
|
|
label$17 : {
|
|
if (!($169 < Math_fround(4294967296.0) & $169 >= Math_fround(0.0) | 0)) {
|
|
break label$17
|
|
}
|
|
$177 = ~~$169 >>> 0;
|
|
break label$16;
|
|
}
|
|
$177 = 0;
|
|
}
|
|
$180 = 65534;
|
|
HEAP16[(HEAP32[($6 + 40 | 0) >> 2] | 0) >> 1] = $177 & $180 | 0;
|
|
$186 = Math_fround(HEAPF32[(btVector3__getY_28_29_20const($6 + 16 | 0 | 0) | 0) >> 2]);
|
|
label$18 : {
|
|
label$19 : {
|
|
if (!($186 < Math_fround(4294967296.0) & $186 >= Math_fround(0.0) | 0)) {
|
|
break label$19
|
|
}
|
|
$194 = ~~$186 >>> 0;
|
|
break label$18;
|
|
}
|
|
$194 = 0;
|
|
}
|
|
HEAP16[((HEAP32[($6 + 40 | 0) >> 2] | 0) + 2 | 0) >> 1] = $194 & $180 | 0;
|
|
$202 = Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($6 + 16 | 0 | 0) | 0) >> 2]);
|
|
label$20 : {
|
|
label$21 : {
|
|
if (!($202 < Math_fround(4294967296.0) & $202 >= Math_fround(0.0) | 0)) {
|
|
break label$21
|
|
}
|
|
$210 = ~~$202 >>> 0;
|
|
break label$20;
|
|
}
|
|
$210 = 0;
|
|
}
|
|
HEAP16[((HEAP32[($6 + 40 | 0) >> 2] | 0) + 4 | 0) >> 1] = ($210 & 65535 | 0) & 65534 | 0;
|
|
}
|
|
__stack_pointer = $6 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvh__unQuantize_28unsigned_20short_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($0 | 0) | 0;
|
|
$11 = $6 + 36 | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround((HEAPU16[(HEAP32[($5 + 24 | 0) >> 2] | 0) >> 1] | 0) >>> 0) / Math_fround(HEAPF32[(btVector3__getX_28_29_20const($11 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround((HEAPU16[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 2 | 0) >> 1] | 0) >>> 0) / Math_fround(HEAPF32[(btVector3__getY_28_29_20const($11 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround((HEAPU16[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 4 | 0) >> 1] | 0) >>> 0) / Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($6 + 36 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $5 + 20 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($0 | 0, $6 + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvh___btQuantizedBvh_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 96952 + 8 | 0;
|
|
btAlignedObjectArray_btBvhSubtreeInfo____btAlignedObjectArray_28_29($4 + 148 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btQuantizedBvhNode____btAlignedObjectArray_28_29($4 + 124 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btQuantizedBvhNode____btAlignedObjectArray_28_29($4 + 104 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btOptimizedBvhNode____btAlignedObjectArray_28_29($4 + 84 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btOptimizedBvhNode____btAlignedObjectArray_28_29($4 + 64 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBvhSubtreeInfo____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btBvhSubtreeInfo___clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btQuantizedBvhNode____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btQuantizedBvhNode___clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btOptimizedBvhNode____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btOptimizedBvhNode___clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBvhSubtreeInfo___clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btBvhSubtreeInfo___destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btBvhSubtreeInfo___size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btBvhSubtreeInfo___deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btBvhSubtreeInfo___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvh___btQuantizedBvh_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[786 | 0]($4) | 0;
|
|
btQuantizedBvh__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvh__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btOptimizedBvhNode___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 6 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btQuantizedBvh__swapLeafNodes_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, $5 = 0, $6 = 0, $48 = 0, $85 = 0, $118 = 0, $81 = 0, $13 = 0, $14 = 0, $28 = 0, $30 = 0, $37 = 0, $39 = 0, $49 = 0, $53 = 0, $57 = 0, $61 = 0, $65 = 0, $69 = 0, $73 = 0, $87 = 0, $91 = 0, $95 = 0, $99 = 0, $103 = 0, $107 = 0, $111 = 0, $120 = 0, $124 = 0, $128 = 0, $132 = 0, $136 = 0, $140 = 0, $144 = 0, $190 = 0, $194 = 0, $24 = 0, $214 = 0, $224 = 0, $236 = 0, $249 = 0, $267 = 0, $277 = 0, $287 = 0, $297 = 0, $307 = 0, $317 = 0, $327 = 0, $331 = 0, $351 = 0, $361 = 0, $371 = 0, $381 = 0, $391 = 0, $401 = 0, $411 = 0, $421 = 0, $433 = 0, $443 = 0, $453 = 0, $463 = 0, $473 = 0, $483 = 0, $493 = 0, $503 = 0;
|
|
$5 = __stack_pointer - 96 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 92 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 88 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 84 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 92 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($6 + 60 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$13 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($6 + 104 | 0 | 0, HEAP32[($5 + 88 | 0) >> 2] | 0 | 0) | 0;
|
|
$14 = 8;
|
|
i64toi32_i32$2 = $13 + $14 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$190 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 64 | 0) + $14 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $190;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $13;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$194 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[(i64toi32_i32$1 + 64 | 0) >> 2] = $194;
|
|
HEAP32[(i64toi32_i32$1 + 68 | 0) >> 2] = i64toi32_i32$0;
|
|
$24 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($6 + 104 | 0 | 0, HEAP32[(i64toi32_i32$1 + 84 | 0) >> 2] | 0 | 0) | 0;
|
|
$28 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($6 + 104 | 0 | 0, HEAP32[(i64toi32_i32$1 + 88 | 0) >> 2] | 0 | 0) | 0;
|
|
i64toi32_i32$2 = $24;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$214 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $28;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $214;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$30 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $30 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$224 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $28 + $30 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $224;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$37 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($6 + 104 | 0 | 0, HEAP32[($5 + 84 | 0) >> 2] | 0 | 0) | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 64 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 68 | 0) >> 2] | 0;
|
|
$236 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $37;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $236;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$39 = 8;
|
|
i64toi32_i32$2 = (i64toi32_i32$2 + 64 | 0) + $39 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$249 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $37 + $39 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $249;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$1;
|
|
}
|
|
$48 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29($6 + 64 | 0 | 0, HEAP32[($5 + 88 | 0) >> 2] | 0 | 0) | 0;
|
|
$49 = 56;
|
|
i64toi32_i32$2 = $48 + $49 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$267 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $5 + $49 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $267;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$53 = 48;
|
|
i64toi32_i32$2 = $48 + $53 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$277 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5 + $53 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $277;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$57 = 40;
|
|
i64toi32_i32$2 = $48 + $57 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$287 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $5 + $57 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $287;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$61 = 32;
|
|
i64toi32_i32$2 = $48 + $61 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$297 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5 + $61 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $297;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$65 = 24;
|
|
i64toi32_i32$2 = $48 + $65 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$307 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $5 + $65 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $307;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$69 = 16;
|
|
i64toi32_i32$2 = $48 + $69 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$317 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5 + $69 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $317;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$73 = 8;
|
|
i64toi32_i32$2 = $48 + $73 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$327 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $5 + $73 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $327;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $48;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$331 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $331;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$81 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29($6 + 64 | 0 | 0, HEAP32[(i64toi32_i32$1 + 84 | 0) >> 2] | 0 | 0) | 0;
|
|
$85 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29($6 + 64 | 0 | 0, HEAP32[(i64toi32_i32$1 + 88 | 0) >> 2] | 0 | 0) | 0;
|
|
i64toi32_i32$2 = $81;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$351 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $85;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $351;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$87 = 56;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $87 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$361 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $85 + $87 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $361;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$91 = 48;
|
|
i64toi32_i32$2 = $81 + $91 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$371 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $85 + $91 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $371;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$95 = 40;
|
|
i64toi32_i32$2 = $81 + $95 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$381 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $85 + $95 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $381;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$99 = 32;
|
|
i64toi32_i32$2 = $81 + $99 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$391 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $85 + $99 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $391;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$103 = 24;
|
|
i64toi32_i32$2 = $81 + $103 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$401 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $85 + $103 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $401;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$107 = 16;
|
|
i64toi32_i32$2 = $81 + $107 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$411 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $85 + $107 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $411;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$111 = 8;
|
|
i64toi32_i32$2 = $81 + $111 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$421 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $85 + $111 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $421;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$118 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29($6 + 64 | 0 | 0, HEAP32[($5 + 84 | 0) >> 2] | 0 | 0) | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$433 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $118;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $433;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$120 = 56;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $120 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$443 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $118 + $120 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $443;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$124 = 48;
|
|
i64toi32_i32$2 = $5 + $124 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$453 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $118 + $124 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $453;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$128 = 40;
|
|
i64toi32_i32$2 = $5 + $128 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$463 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $118 + $128 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $463;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$132 = 32;
|
|
i64toi32_i32$2 = $5 + $132 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$473 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $118 + $132 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $473;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$136 = 24;
|
|
i64toi32_i32$2 = $5 + $136 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$483 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $118 + $136 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $483;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$140 = 16;
|
|
i64toi32_i32$2 = $5 + $140 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$493 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $118 + $140 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $493;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$144 = 8;
|
|
i64toi32_i32$2 = $5 + $144 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$503 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $118 + $144 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $503;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
__stack_pointer = $5 + 96 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 176 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btQuantizedBvhNode___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 177 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 176 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btOptimizedBvhNode___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 177 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 6 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btQuantizedBvh__reportAabbOverlappingNodex_28btNodeOverlapCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $19 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($7 + 60 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btQuantizedBvh__quantizeWithClamp_28unsigned_20short__2c_20btVector3_20const__2c_20int_29_20const($7 | 0, $6 + 10 | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, 0 | 0);
|
|
btQuantizedBvh__quantizeWithClamp_28unsigned_20short__2c_20btVector3_20const__2c_20int_29_20const($7 | 0, $6 + 4 | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0, 1 | 0);
|
|
$19 = HEAP32[($7 + 144 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : {
|
|
switch ($19 | 0) {
|
|
case 0:
|
|
btQuantizedBvh__walkStacklessQuantizedTree_28btNodeOverlapCallback__2c_20unsigned_20short__2c_20unsigned_20short__2c_20int_2c_20int_29_20const($7 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, $6 + 10 | 0 | 0, $6 + 4 | 0 | 0, 0 | 0, HEAP32[($7 + 56 | 0) >> 2] | 0 | 0);
|
|
break label$3;
|
|
case 1:
|
|
btQuantizedBvh__walkStacklessQuantizedTreeCacheFriendly_28btNodeOverlapCallback__2c_20unsigned_20short__2c_20unsigned_20short__29_20const($7 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, $6 + 10 | 0 | 0, $6 + 4 | 0 | 0);
|
|
break label$3;
|
|
case 2:
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($7 + 124 | 0 | 0, 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
btQuantizedBvh__walkRecursiveQuantizedTreeAgainstQueryAabb_28btQuantizedBvhNode_20const__2c_20btNodeOverlapCallback__2c_20unsigned_20short__2c_20unsigned_20short__29_20const($7 | 0, HEAP32[$6 >> 2] | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, $6 + 10 | 0 | 0, $6 + 4 | 0 | 0);
|
|
break label$3;
|
|
default:
|
|
break label$4;
|
|
};
|
|
}
|
|
__assert_fail(86177 | 0, 73634 | 0, 361 | 0, 66312 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
break label$1;
|
|
}
|
|
btQuantizedBvh__walkStacklessTree_28btNodeOverlapCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const($7 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0);
|
|
}
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvh__quantizeWithClamp_28unsigned_20short__2c_20btVector3_20const__2c_20int_29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, $7 = 0, i64toi32_i32$1 = 0, $15 = 0, $16 = 0, $68 = 0, $72 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAPU8[($7 + 60 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(76588 | 0, 78832 | 0, 422 | 0, 76095 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$15 = HEAP32[($6 + 20 | 0) >> 2] | 0;
|
|
$16 = 8;
|
|
i64toi32_i32$2 = $15 + $16 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$68 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6 + $16 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $68;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $15;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$72 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[$6 >> 2] = $72;
|
|
HEAP32[($6 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__setMax_28btVector3_20const__29($6 | 0, $7 + 4 | 0 | 0);
|
|
btVector3__setMin_28btVector3_20const__29($6 | 0, $7 + 20 | 0 | 0);
|
|
btQuantizedBvh__quantize_28unsigned_20short__2c_20btVector3_20const__2c_20int_29_20const($7 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, $6 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvh__walkStacklessQuantizedTree_28btNodeOverlapCallback__2c_20unsigned_20short__2c_20unsigned_20short__2c_20int_2c_20int_29_20const($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, $9 = 0, $62 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0;
|
|
$8 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 60 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 56 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 52 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 48 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 44 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 40 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 60 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAPU8[($9 + 60 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(76588 | 0, 73634 | 0, 689 | 0, 81954 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($8 + 36 | 0) >> 2] = HEAP32[($8 + 44 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 32 | 0) >> 2] = 0;
|
|
HEAP32[($8 + 28 | 0) >> 2] = (HEAP32[($8 + 40 | 0) >> 2] | 0) - (HEAP32[($8 + 44 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($9 + 124 | 0 | 0, HEAP32[($8 + 44 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_i32$1;
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($8 + 36 | 0) >> 2] | 0 | 0) < (HEAP32[($8 + 40 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
label$4 : {
|
|
if ((HEAP32[($8 + 32 | 0) >> 2] | 0 | 0) < (HEAP32[($8 + 28 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
__assert_fail(81024 | 0, 73634 | 0, 723 | 0, 81954 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($8 + 32 | 0) >> 2] = (HEAP32[($8 + 32 | 0) >> 2] | 0) + 1 | 0;
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = testQuantizedAabbAgainstQuantizedAabb_28unsigned_20short_20const__2c_20unsigned_20short_20const__2c_20unsigned_20short_20const__2c_20unsigned_20short_20const__29(HEAP32[($8 + 52 | 0) >> 2] | 0 | 0, HEAP32[($8 + 48 | 0) >> 2] | 0 | 0, HEAP32[($8 + 24 | 0) >> 2] | 0 | 0, (HEAP32[($8 + 24 | 0) >> 2] | 0) + 6 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = (btQuantizedBvhNode__isLeafNode_28_29_20const(HEAP32[($8 + 24 | 0) >> 2] | 0 | 0) | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 19 | 0) >> 0] = wasm2js_i32$1;
|
|
label$5 : {
|
|
if (!((HEAPU8[($8 + 19 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
if (!(HEAP32[($8 + 12 | 0) >> 2] | 0)) {
|
|
break label$5
|
|
}
|
|
$62 = HEAP32[($8 + 56 | 0) >> 2] | 0;
|
|
(((wasm2js_i32$1 = $62, wasm2js_i32$2 = btQuantizedBvhNode__getPartId_28_29_20const(HEAP32[($8 + 24 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$3 = btQuantizedBvhNode__getTriangleIndex_28_29_20const(HEAP32[($8 + 24 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$62 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, wasm2js_i32$3 | 0);
|
|
}
|
|
label$6 : {
|
|
label$7 : {
|
|
label$8 : {
|
|
if (HEAP32[($8 + 12 | 0) >> 2] | 0) {
|
|
break label$8
|
|
}
|
|
if (!((HEAPU8[($8 + 19 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
}
|
|
HEAP32[($8 + 24 | 0) >> 2] = (HEAP32[($8 + 24 | 0) >> 2] | 0) + 16 | 0;
|
|
HEAP32[($8 + 36 | 0) >> 2] = (HEAP32[($8 + 36 | 0) >> 2] | 0) + 1 | 0;
|
|
break label$6;
|
|
}
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$3 = btQuantizedBvhNode__getEscapeIndex_28_29_20const(HEAP32[($8 + 24 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$3;
|
|
HEAP32[($8 + 24 | 0) >> 2] = (HEAP32[($8 + 24 | 0) >> 2] | 0) + ((HEAP32[($8 + 20 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
HEAP32[($8 + 36 | 0) >> 2] = (HEAP32[($8 + 36 | 0) >> 2] | 0) + (HEAP32[($8 + 20 | 0) >> 2] | 0) | 0;
|
|
}
|
|
continue label$3;
|
|
};
|
|
}
|
|
label$9 : {
|
|
if (!((HEAP32[(0 + 114084 | 0) >> 2] | 0 | 0) < (HEAP32[($8 + 32 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
HEAP32[(0 + 114084 | 0) >> 2] = HEAP32[($8 + 32 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $8 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvh__walkStacklessQuantizedTreeCacheFriendly_28btNodeOverlapCallback__2c_20unsigned_20short__2c_20unsigned_20short__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAPU8[($7 + 60 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(76588 | 0, 73634 | 0, 755 | 0, 66019 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($6 + 12 | 0) >> 2] = 0;
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btBvhSubtreeInfo___size_28_29_20const($7 + 148 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($7 + 148 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = testQuantizedAabbAgainstQuantizedAabb_28unsigned_20short_20const__2c_20unsigned_20short_20const__2c_20unsigned_20short_20const__2c_20unsigned_20short_20const__29(HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0, (HEAP32[($6 + 8 | 0) >> 2] | 0) + 6 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$4 : {
|
|
if (!(HEAP32[($6 + 4 | 0) >> 2] | 0)) {
|
|
break label$4
|
|
}
|
|
btQuantizedBvh__walkStacklessQuantizedTree_28btNodeOverlapCallback__2c_20unsigned_20short__2c_20unsigned_20short__2c_20int_2c_20int_29_20const($7 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($6 + 8 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0, (HEAP32[((HEAP32[($6 + 8 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + (HEAP32[((HEAP32[($6 + 8 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0) | 0 | 0);
|
|
}
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvh__walkRecursiveQuantizedTreeAgainstQueryAabb_28btQuantizedBvhNode_20const__2c_20btNodeOverlapCallback__2c_20unsigned_20short__2c_20unsigned_20short__29_20const($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0, $31 = 0, $52 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0;
|
|
$7 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 32 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 44 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAPU8[($8 + 60 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(76588 | 0, 73634 | 0, 439 | 0, 82995 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = testQuantizedAabbAgainstQuantizedAabb_28unsigned_20short_20const__2c_20unsigned_20short_20const__2c_20unsigned_20short_20const__2c_20unsigned_20short_20const__29(HEAP32[($7 + 32 | 0) >> 2] | 0 | 0, HEAP32[($7 + 28 | 0) >> 2] | 0 | 0, HEAP32[($7 + 40 | 0) >> 2] | 0 | 0, (HEAP32[($7 + 40 | 0) >> 2] | 0) + 6 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = (btQuantizedBvhNode__isLeafNode_28_29_20const(HEAP32[($7 + 40 | 0) >> 2] | 0 | 0) | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 27 | 0) >> 0] = wasm2js_i32$1;
|
|
label$2 : {
|
|
if (!(HEAP32[($7 + 20 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAPU8[($7 + 27 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$31 = HEAP32[($7 + 36 | 0) >> 2] | 0;
|
|
(((wasm2js_i32$1 = $31, wasm2js_i32$2 = btQuantizedBvhNode__getPartId_28_29_20const(HEAP32[($7 + 40 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$3 = btQuantizedBvhNode__getTriangleIndex_28_29_20const(HEAP32[($7 + 40 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$31 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, wasm2js_i32$3 | 0);
|
|
break label$3;
|
|
}
|
|
HEAP32[($7 + 16 | 0) >> 2] = (HEAP32[($7 + 40 | 0) >> 2] | 0) + 16 | 0;
|
|
btQuantizedBvh__walkRecursiveQuantizedTreeAgainstQueryAabb_28btQuantizedBvhNode_20const__2c_20btNodeOverlapCallback__2c_20unsigned_20short__2c_20unsigned_20short__29_20const($8 | 0, HEAP32[($7 + 16 | 0) >> 2] | 0 | 0, HEAP32[($7 + 36 | 0) >> 2] | 0 | 0, HEAP32[($7 + 32 | 0) >> 2] | 0 | 0, HEAP32[($7 + 28 | 0) >> 2] | 0 | 0);
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!((btQuantizedBvhNode__isLeafNode_28_29_20const(HEAP32[($7 + 16 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$52 = (HEAP32[($7 + 16 | 0) >> 2] | 0) + 16 | 0;
|
|
break label$5;
|
|
}
|
|
$52 = (HEAP32[($7 + 16 | 0) >> 2] | 0) + ((btQuantizedBvhNode__getEscapeIndex_28_29_20const(HEAP32[($7 + 16 | 0) >> 2] | 0 | 0) | 0) << 4 | 0) | 0;
|
|
}
|
|
HEAP32[($7 + 12 | 0) >> 2] = $52;
|
|
btQuantizedBvh__walkRecursiveQuantizedTreeAgainstQueryAabb_28btQuantizedBvhNode_20const__2c_20btNodeOverlapCallback__2c_20unsigned_20short__2c_20unsigned_20short__29_20const($8 | 0, HEAP32[($7 + 12 | 0) >> 2] | 0 | 0, HEAP32[($7 + 36 | 0) >> 2] | 0 | 0, HEAP32[($7 + 32 | 0) >> 2] | 0 | 0, HEAP32[($7 + 28 | 0) >> 2] | 0 | 0);
|
|
}
|
|
}
|
|
__stack_pointer = $7 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvh__walkStacklessTree_28btNodeOverlapCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $63 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 32 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($7 + 60 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
__assert_fail(76587 | 0, 73634 | 0, 375 | 0, 81926 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29_20const($7 + 84 | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = 0;
|
|
HEAP32[($6 + 16 | 0) >> 2] = 0;
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) < (HEAP32[($7 + 56 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
label$4 : {
|
|
if ((HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) < (HEAP32[($7 + 56 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
__assert_fail(66597 | 0, 73634 | 0, 387 | 0, 81926 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($6 + 16 | 0) >> 2] = (HEAP32[($6 + 16 | 0) >> 2] | 0) + 1 | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = (TestAabbAgainstAabb2_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29(HEAP32[($6 + 36 | 0) >> 2] | 0 | 0, HEAP32[($6 + 32 | 0) >> 2] | 0 | 0, HEAP32[($6 + 28 | 0) >> 2] | 0 | 0, (HEAP32[($6 + 28 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) & 1 | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP8[($6 + 15 | 0) >> 0] = (HEAP32[((HEAP32[($6 + 28 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0 | 0) == (-1 | 0) & 1 | 0;
|
|
label$5 : {
|
|
if (!((HEAPU8[($6 + 15 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
if (!(HEAP32[($6 + 8 | 0) >> 2] | 0)) {
|
|
break label$5
|
|
}
|
|
$63 = HEAP32[($6 + 40 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$63 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($63, HEAP32[((HEAP32[($6 + 28 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0, HEAP32[((HEAP32[($6 + 28 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0);
|
|
}
|
|
label$6 : {
|
|
label$7 : {
|
|
label$8 : {
|
|
if (HEAP32[($6 + 8 | 0) >> 2] | 0) {
|
|
break label$8
|
|
}
|
|
if (!((HEAPU8[($6 + 15 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
}
|
|
HEAP32[($6 + 28 | 0) >> 2] = (HEAP32[($6 + 28 | 0) >> 2] | 0) + 64 | 0;
|
|
HEAP32[($6 + 20 | 0) >> 2] = (HEAP32[($6 + 20 | 0) >> 2] | 0) + 1 | 0;
|
|
break label$6;
|
|
}
|
|
HEAP32[($6 + 24 | 0) >> 2] = HEAP32[((HEAP32[($6 + 28 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = (HEAP32[($6 + 28 | 0) >> 2] | 0) + ((HEAP32[($6 + 24 | 0) >> 2] | 0) << 6 | 0) | 0;
|
|
HEAP32[($6 + 20 | 0) >> 2] = (HEAP32[($6 + 20 | 0) >> 2] | 0) + (HEAP32[($6 + 24 | 0) >> 2] | 0) | 0;
|
|
}
|
|
continue label$3;
|
|
};
|
|
}
|
|
label$9 : {
|
|
if (!((HEAP32[(0 + 114084 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
HEAP32[(0 + 114084 | 0) >> 2] = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $6 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function testQuantizedAabbAgainstQuantizedAabb_28unsigned_20short_20const__2c_20unsigned_20short_20const__2c_20unsigned_20short_20const__2c_20unsigned_20short_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $92 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$92 = btSelect_28unsigned_20int_2c_20int_2c_20int_29((((((((HEAPU16[(HEAP32[($6 + 12 | 0) >> 2] | 0) >> 1] | 0) & 65535 | 0 | 0) <= ((HEAPU16[(HEAP32[$6 >> 2] | 0) >> 1] | 0) & 65535 | 0 | 0) & 1 | 0) & (((HEAPU16[(HEAP32[($6 + 8 | 0) >> 2] | 0) >> 1] | 0) & 65535 | 0 | 0) >= ((HEAPU16[(HEAP32[($6 + 4 | 0) >> 2] | 0) >> 1] | 0) & 65535 | 0 | 0) & 1 | 0) | 0) & (((HEAPU16[((HEAP32[($6 + 12 | 0) >> 2] | 0) + 4 | 0) >> 1] | 0) & 65535 | 0 | 0) <= ((HEAPU16[((HEAP32[$6 >> 2] | 0) + 4 | 0) >> 1] | 0) & 65535 | 0 | 0) & 1 | 0) | 0) & (((HEAPU16[((HEAP32[($6 + 8 | 0) >> 2] | 0) + 4 | 0) >> 1] | 0) & 65535 | 0 | 0) >= ((HEAPU16[((HEAP32[($6 + 4 | 0) >> 2] | 0) + 4 | 0) >> 1] | 0) & 65535 | 0 | 0) & 1 | 0) | 0) & (((HEAPU16[((HEAP32[($6 + 12 | 0) >> 2] | 0) + 2 | 0) >> 1] | 0) & 65535 | 0 | 0) <= ((HEAPU16[((HEAP32[$6 >> 2] | 0) + 2 | 0) >> 1] | 0) & 65535 | 0 | 0) & 1 | 0) | 0) & (((HEAPU16[((HEAP32[($6 + 8 | 0) >> 2] | 0) + 2 | 0) >> 1] | 0) & 65535 | 0 | 0) >= ((HEAPU16[((HEAP32[($6 + 4 | 0) >> 2] | 0) + 2 | 0) >> 1] | 0) & 65535 | 0 | 0) & 1 | 0) | 0 | 0, 1 | 0, 0 | 0) | 0;
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return $92 | 0;
|
|
}
|
|
|
|
function btQuantizedBvhNode__getPartId_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $14 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((btQuantizedBvhNode__isLeafNode_28_29_20const($4 | 0) | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(87706 | 0, 78832 | 0, 88 | 0, 82789 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$14 = (HEAP32[($4 + 12 | 0) >> 2] | 0) >> 21 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $14 | 0;
|
|
}
|
|
|
|
function btQuantizedBvhNode__getTriangleIndex_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $24 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((btQuantizedBvhNode__isLeafNode_28_29_20const($4 | 0) | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(87706 | 0, 78832 | 0, 80 | 0, 66551 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($3 + 8 | 0) >> 2] = 0;
|
|
HEAP32[($3 + 4 | 0) >> 2] = (((HEAP32[($3 + 8 | 0) >> 2] | 0) & 0 | 0) ^ -1 | 0) << 21 | 0;
|
|
$24 = (HEAP32[($4 + 12 | 0) >> 2] | 0) & ((HEAP32[($3 + 4 | 0) >> 2] | 0) ^ -1 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $24 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 176 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btBvhSubtreeInfo___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 177 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 5 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btSelect_28unsigned_20int_2c_20int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 16 | 0) >> 2] = (HEAP32[($5 + 28 | 0) >> 2] | 0 | (0 - (HEAP32[($5 + 28 | 0) >> 2] | 0) | 0) | 0) >> 31 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 16 | 0) >> 2] | 0) ^ -1 | 0;
|
|
return (HEAP32[($5 + 24 | 0) >> 2] | 0) & (HEAP32[($5 + 16 | 0) >> 2] | 0) | 0 | ((HEAP32[($5 + 20 | 0) >> 2] | 0) & (HEAP32[($5 + 12 | 0) >> 2] | 0) | 0) | 0 | 0;
|
|
}
|
|
|
|
function btQuantizedBvh__walkStacklessTreeAgainstRay_28btNodeOverlapCallback__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20int_2c_20int_29_20const($0, $1, $2, $3, $4, $5, $6, $7) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
var $10 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $11 = 0, $28 = 0, $29 = 0, $36 = 0, $37 = 0, $94 = Math_fround(0), $118 = Math_fround(0), $142 = Math_fround(0), $159 = 0.0, $179 = 0, $182 = 0, $183 = 0, $185 = 0, $216 = 0, $218 = 0, $229 = 0, $231 = 0, $276 = 0, $293 = 0, $398 = 0, $402 = 0, $417 = 0, $421 = 0, $181 = 0, $743 = 0, $753 = 0, $769 = 0, $779 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$10 = __stack_pointer - 208 | 0;
|
|
__stack_pointer = $10;
|
|
HEAP32[($10 + 204 | 0) >> 2] = $0;
|
|
HEAP32[($10 + 200 | 0) >> 2] = $1;
|
|
HEAP32[($10 + 196 | 0) >> 2] = $2;
|
|
HEAP32[($10 + 192 | 0) >> 2] = $3;
|
|
HEAP32[($10 + 188 | 0) >> 2] = $4;
|
|
HEAP32[($10 + 184 | 0) >> 2] = $5;
|
|
HEAP32[($10 + 180 | 0) >> 2] = $6;
|
|
HEAP32[($10 + 176 | 0) >> 2] = $7;
|
|
$11 = HEAP32[($10 + 204 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($11 + 60 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
__assert_fail(76587 | 0, 73634 | 0, 471 | 0, 66183 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $10, wasm2js_i32$1 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29_20const($11 + 84 | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 172 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($10 + 164 | 0) >> 2] = 0;
|
|
HEAP32[($10 + 160 | 0) >> 2] = 0;
|
|
HEAP32[($10 + 152 | 0) >> 2] = 0;
|
|
HEAP32[($10 + 148 | 0) >> 2] = 0;
|
|
HEAPF32[($10 + 144 | 0) >> 2] = Math_fround(1.0);
|
|
$28 = HEAP32[($10 + 196 | 0) >> 2] | 0;
|
|
$29 = 8;
|
|
i64toi32_i32$2 = $28 + $29 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$398 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($10 + 128 | 0) + $29 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $398;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $28;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$402 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $10;
|
|
HEAP32[($10 + 128 | 0) >> 2] = $402;
|
|
HEAP32[($10 + 132 | 0) >> 2] = i64toi32_i32$0;
|
|
$36 = HEAP32[($10 + 196 | 0) >> 2] | 0;
|
|
$37 = 8;
|
|
i64toi32_i32$2 = $36 + $37 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$417 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($10 + 112 | 0) + $37 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $417;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $36;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$421 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $10;
|
|
HEAP32[($10 + 112 | 0) >> 2] = $421;
|
|
HEAP32[($10 + 116 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__setMin_28btVector3_20const__29($10 + 128 | 0 | 0, HEAP32[($10 + 192 | 0) >> 2] | 0 | 0);
|
|
btVector3__setMax_28btVector3_20const__29($10 + 112 | 0 | 0, HEAP32[($10 + 192 | 0) >> 2] | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($10 + 128 | 0 | 0, HEAP32[($10 + 188 | 0) >> 2] | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($10 + 112 | 0 | 0, HEAP32[($10 + 184 | 0) >> 2] | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($10 + 96 | 0 | 0, HEAP32[($10 + 192 | 0) >> 2] | 0 | 0, HEAP32[($10 + 196 | 0) >> 2] | 0 | 0);
|
|
btVector3__normalize_28_29($10 + 96 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($10 + 80 | 0 | 0, HEAP32[($10 + 192 | 0) >> 2] | 0 | 0, HEAP32[($10 + 196 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $10, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($10 + 96 | 0 | 0, $10 + 80 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 144 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28_29($10 + 64 | 0 | 0) | 0;
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__operator_20float__28_29($10 + 96 | 0 | 0) | 0) >> 2]) == Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$94 = Math_fround(999999984306749440.0);
|
|
break label$2;
|
|
}
|
|
$94 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[(btVector3__operator_20float__28_29($10 + 96 | 0 | 0) | 0) >> 2]));
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($10 + 64 | 0 | 0) | 0, wasm2js_f32$0 = $94), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($10 + 96 | 0 | 0) | 0) + 4 | 0) >> 2]) == Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
$118 = Math_fround(999999984306749440.0);
|
|
break label$4;
|
|
}
|
|
$118 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[((btVector3__operator_20float__28_29($10 + 96 | 0 | 0) | 0) + 4 | 0) >> 2]));
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($10 + 64 | 0 | 0) | 0, wasm2js_f32$0 = $118), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($10 + 96 | 0 | 0) | 0) + 8 | 0) >> 2]) == Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
$142 = Math_fround(999999984306749440.0);
|
|
break label$6;
|
|
}
|
|
$142 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[((btVector3__operator_20float__28_29($10 + 96 | 0 | 0) | 0) + 8 | 0) >> 2]));
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($10 + 64 | 0 | 0) | 0, wasm2js_f32$0 = $142), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
$159 = 0.0;
|
|
(wasm2js_i32$0 = $10, wasm2js_i32$1 = +Math_fround(HEAPF32[(btVector3__operator_20float__28_29($10 + 64 | 0 | 0) | 0) >> 2]) < $159), HEAP32[(wasm2js_i32$0 + 52 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $10, wasm2js_i32$1 = +Math_fround(HEAPF32[((btVector3__operator_20float__28_29($10 + 64 | 0 | 0) | 0) + 4 | 0) >> 2]) < $159), HEAP32[(wasm2js_i32$0 + 56 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $10, wasm2js_i32$1 = +Math_fround(HEAPF32[((btVector3__operator_20float__28_29($10 + 64 | 0 | 0) | 0) + 8 | 0) >> 2]) < +(0 | 0) & 1 | 0), HEAP32[(wasm2js_i32$0 + 60 | 0) >> 2] = wasm2js_i32$1;
|
|
$179 = $10 + 16 | 0;
|
|
$181 = $179 + 32 | 0;
|
|
$182 = $179;
|
|
label$8 : while (1) {
|
|
$183 = $182;
|
|
btVector3__btVector3_28_29($183 | 0) | 0;
|
|
$185 = $183 + 16 | 0;
|
|
$182 = $185;
|
|
if (!(($185 | 0) == ($181 | 0) & 1 | 0)) {
|
|
continue label$8
|
|
}
|
|
break label$8;
|
|
};
|
|
label$9 : {
|
|
label$10 : while (1) {
|
|
if (!((HEAP32[($10 + 164 | 0) >> 2] | 0 | 0) < (HEAP32[($11 + 56 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
HEAPF32[($10 + 12 | 0) >> 2] = Math_fround(1.0);
|
|
label$11 : {
|
|
if ((HEAP32[($10 + 160 | 0) >> 2] | 0 | 0) < (HEAP32[($11 + 56 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$11
|
|
}
|
|
__assert_fail(66597 | 0, 73634 | 0, 510 | 0, 66183 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($10 + 160 | 0) >> 2] = (HEAP32[($10 + 160 | 0) >> 2] | 0) + 1 | 0;
|
|
$216 = $10 + 16 | 0;
|
|
i64toi32_i32$2 = HEAP32[($10 + 172 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$743 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $216;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $743;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$218 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $218 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$753 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $216 + $218 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $753;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$229 = ($10 + 16 | 0) + 16 | 0;
|
|
i64toi32_i32$2 = (HEAP32[($10 + 172 | 0) >> 2] | 0) + 16 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$769 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $229;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $769;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$231 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $231 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$779 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $229 + $231 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $779;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__operator___28btVector3_20const__29($10 + 16 | 0 | 0, HEAP32[($10 + 184 | 0) >> 2] | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29(($10 + 16 | 0) + 16 | 0 | 0, HEAP32[($10 + 188 | 0) >> 2] | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $10, wasm2js_i32$1 = (TestAabbAgainstAabb2_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($10 + 128 | 0 | 0, $10 + 112 | 0 | 0, HEAP32[($10 + 172 | 0) >> 2] | 0 | 0, (HEAP32[($10 + 172 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) & 1 | 0), HEAP32[(wasm2js_i32$0 + 152 | 0) >> 2] = wasm2js_i32$1;
|
|
label$12 : {
|
|
label$13 : {
|
|
if (!(HEAP32[($10 + 152 | 0) >> 2] | 0)) {
|
|
break label$13
|
|
}
|
|
$276 = btRayAabb2_28btVector3_20const__2c_20btVector3_20const__2c_20unsigned_20int_20const__2c_20btVector3_20const__2c_20float__2c_20float_2c_20float_29(HEAP32[($10 + 196 | 0) >> 2] | 0 | 0, $10 + 64 | 0 | 0, $10 + 52 | 0 | 0, $10 + 16 | 0 | 0, $10 + 12 | 0 | 0, Math_fround(Math_fround(0 | 0)), Math_fround(Math_fround(HEAPF32[($10 + 144 | 0) >> 2]))) | 0;
|
|
break label$12;
|
|
}
|
|
$276 = 0;
|
|
}
|
|
HEAP32[($10 + 148 | 0) >> 2] = $276 & 1 | 0;
|
|
HEAP8[($10 + 159 | 0) >> 0] = (HEAP32[((HEAP32[($10 + 172 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0 | 0) == (-1 | 0) & 1 | 0;
|
|
label$14 : {
|
|
if (!((HEAPU8[($10 + 159 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
if (!(HEAP32[($10 + 148 | 0) >> 2] | 0)) {
|
|
break label$14
|
|
}
|
|
$293 = HEAP32[($10 + 200 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$293 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($293, HEAP32[((HEAP32[($10 + 172 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0, HEAP32[((HEAP32[($10 + 172 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0);
|
|
}
|
|
label$15 : {
|
|
label$16 : {
|
|
label$17 : {
|
|
if (HEAP32[($10 + 148 | 0) >> 2] | 0) {
|
|
break label$17
|
|
}
|
|
if (!((HEAPU8[($10 + 159 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
}
|
|
HEAP32[($10 + 172 | 0) >> 2] = (HEAP32[($10 + 172 | 0) >> 2] | 0) + 64 | 0;
|
|
HEAP32[($10 + 164 | 0) >> 2] = (HEAP32[($10 + 164 | 0) >> 2] | 0) + 1 | 0;
|
|
break label$15;
|
|
}
|
|
HEAP32[($10 + 168 | 0) >> 2] = HEAP32[((HEAP32[($10 + 172 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0;
|
|
HEAP32[($10 + 172 | 0) >> 2] = (HEAP32[($10 + 172 | 0) >> 2] | 0) + ((HEAP32[($10 + 168 | 0) >> 2] | 0) << 6 | 0) | 0;
|
|
HEAP32[($10 + 164 | 0) >> 2] = (HEAP32[($10 + 164 | 0) >> 2] | 0) + (HEAP32[($10 + 168 | 0) >> 2] | 0) | 0;
|
|
}
|
|
continue label$10;
|
|
};
|
|
}
|
|
label$18 : {
|
|
if (!((HEAP32[(0 + 114084 | 0) >> 2] | 0 | 0) < (HEAP32[($10 + 160 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$18
|
|
}
|
|
HEAP32[(0 + 114084 | 0) >> 2] = HEAP32[($10 + 160 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $10 + 208 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvh__walkStacklessQuantizedTreeAgainstRay_28btNodeOverlapCallback__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20int_2c_20int_29_20const($0, $1, $2, $3, $4, $5, $6, $7) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
var $10 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $11 = 0, $62 = Math_fround(0), $86 = Math_fround(0), $110 = Math_fround(0), $127 = 0.0, $145 = 0, $146 = 0, $153 = 0, $154 = 0, $232 = 0, $235 = 0, $236 = 0, $238 = 0, $250 = 0, $252 = 0, $268 = 0, $270 = 0, $310 = 0, $634 = 0, $638 = 0, $653 = 0, $657 = 0, $234 = 0, $834 = 0, $847 = 0, $870 = 0, $883 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$2 = 0, wasm2js_i32$3 = 0;
|
|
$10 = __stack_pointer - 240 | 0;
|
|
__stack_pointer = $10;
|
|
HEAP32[($10 + 236 | 0) >> 2] = $0;
|
|
HEAP32[($10 + 232 | 0) >> 2] = $1;
|
|
HEAP32[($10 + 228 | 0) >> 2] = $2;
|
|
HEAP32[($10 + 224 | 0) >> 2] = $3;
|
|
HEAP32[($10 + 220 | 0) >> 2] = $4;
|
|
HEAP32[($10 + 216 | 0) >> 2] = $5;
|
|
HEAP32[($10 + 212 | 0) >> 2] = $6;
|
|
HEAP32[($10 + 208 | 0) >> 2] = $7;
|
|
$11 = HEAP32[($10 + 236 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAPU8[($11 + 60 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(76588 | 0, 73634 | 0, 563 | 0, 66211 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($10 + 204 | 0) >> 2] = HEAP32[($10 + 212 | 0) >> 2] | 0;
|
|
HEAP32[($10 + 200 | 0) >> 2] = 0;
|
|
HEAP32[($10 + 196 | 0) >> 2] = (HEAP32[($10 + 208 | 0) >> 2] | 0) - (HEAP32[($10 + 212 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $10, wasm2js_i32$1 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($11 + 124 | 0 | 0, HEAP32[($10 + 212 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 192 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($10 + 180 | 0) >> 2] = 0;
|
|
HEAP32[($10 + 176 | 0) >> 2] = 0;
|
|
HEAPF32[($10 + 172 | 0) >> 2] = Math_fround(1.0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($10 + 156 | 0 | 0, HEAP32[($10 + 224 | 0) >> 2] | 0 | 0, HEAP32[($10 + 228 | 0) >> 2] | 0 | 0);
|
|
btVector3__normalize_28_29($10 + 156 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($10 + 140 | 0 | 0, HEAP32[($10 + 224 | 0) >> 2] | 0 | 0, HEAP32[($10 + 228 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $10, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($10 + 156 | 0 | 0, $10 + 140 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 172 | 0) >> 2] = wasm2js_f32$0;
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__operator_20float__28_29($10 + 156 | 0 | 0) | 0) >> 2]) == Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$62 = Math_fround(999999984306749440.0);
|
|
break label$2;
|
|
}
|
|
$62 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[(btVector3__operator_20float__28_29($10 + 156 | 0 | 0) | 0) >> 2]));
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($10 + 156 | 0 | 0) | 0, wasm2js_f32$0 = $62), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($10 + 156 | 0 | 0) | 0) + 4 | 0) >> 2]) == Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
$86 = Math_fround(999999984306749440.0);
|
|
break label$4;
|
|
}
|
|
$86 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[((btVector3__operator_20float__28_29($10 + 156 | 0 | 0) | 0) + 4 | 0) >> 2]));
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($10 + 156 | 0 | 0) | 0, wasm2js_f32$0 = $86), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($10 + 156 | 0 | 0) | 0) + 8 | 0) >> 2]) == Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
$110 = Math_fround(999999984306749440.0);
|
|
break label$6;
|
|
}
|
|
$110 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[((btVector3__operator_20float__28_29($10 + 156 | 0 | 0) | 0) + 8 | 0) >> 2]));
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($10 + 156 | 0 | 0) | 0, wasm2js_f32$0 = $110), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
$127 = 0.0;
|
|
(wasm2js_i32$0 = $10, wasm2js_i32$1 = +Math_fround(HEAPF32[(btVector3__operator_20float__28_29($10 + 156 | 0 | 0) | 0) >> 2]) < $127), HEAP32[(wasm2js_i32$0 + 128 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $10, wasm2js_i32$1 = +Math_fround(HEAPF32[((btVector3__operator_20float__28_29($10 + 156 | 0 | 0) | 0) + 4 | 0) >> 2]) < $127), HEAP32[(wasm2js_i32$0 + 132 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $10, wasm2js_i32$1 = +Math_fround(HEAPF32[((btVector3__operator_20float__28_29($10 + 156 | 0 | 0) | 0) + 8 | 0) >> 2]) < +(0 | 0) & 1 | 0), HEAP32[(wasm2js_i32$0 + 136 | 0) >> 2] = wasm2js_i32$1;
|
|
$145 = HEAP32[($10 + 228 | 0) >> 2] | 0;
|
|
$146 = 8;
|
|
i64toi32_i32$2 = $145 + $146 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$634 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($10 + 112 | 0) + $146 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $634;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $145;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$638 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $10;
|
|
HEAP32[($10 + 112 | 0) >> 2] = $638;
|
|
HEAP32[($10 + 116 | 0) >> 2] = i64toi32_i32$0;
|
|
$153 = HEAP32[($10 + 228 | 0) >> 2] | 0;
|
|
$154 = 8;
|
|
i64toi32_i32$2 = $153 + $154 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$653 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($10 + 96 | 0) + $154 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $653;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $153;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$657 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $10;
|
|
HEAP32[($10 + 96 | 0) >> 2] = $657;
|
|
HEAP32[($10 + 100 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__setMin_28btVector3_20const__29($10 + 112 | 0 | 0, HEAP32[($10 + 224 | 0) >> 2] | 0 | 0);
|
|
btVector3__setMax_28btVector3_20const__29($10 + 96 | 0 | 0, HEAP32[($10 + 224 | 0) >> 2] | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($10 + 112 | 0 | 0, HEAP32[($10 + 220 | 0) >> 2] | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($10 + 96 | 0 | 0, HEAP32[($10 + 216 | 0) >> 2] | 0 | 0) | 0;
|
|
btQuantizedBvh__quantizeWithClamp_28unsigned_20short__2c_20btVector3_20const__2c_20int_29_20const($11 | 0, $10 + 90 | 0 | 0, $10 + 112 | 0 | 0, 0 | 0);
|
|
btQuantizedBvh__quantizeWithClamp_28unsigned_20short__2c_20btVector3_20const__2c_20int_29_20const($11 | 0, $10 + 84 | 0 | 0, $10 + 96 | 0 | 0, 1 | 0);
|
|
label$8 : {
|
|
label$9 : while (1) {
|
|
if (!((HEAP32[($10 + 204 | 0) >> 2] | 0 | 0) < (HEAP32[($10 + 208 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
label$10 : {
|
|
if ((HEAP32[($10 + 200 | 0) >> 2] | 0 | 0) < (HEAP32[($10 + 196 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$10
|
|
}
|
|
__assert_fail(81024 | 0, 73634 | 0, 626 | 0, 66211 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($10 + 200 | 0) >> 2] = (HEAP32[($10 + 200 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAPF32[($10 + 80 | 0) >> 2] = Math_fround(1.0);
|
|
HEAP32[($10 + 176 | 0) >> 2] = 0;
|
|
(wasm2js_i32$0 = $10, wasm2js_i32$1 = testQuantizedAabbAgainstQuantizedAabb_28unsigned_20short_20const__2c_20unsigned_20short_20const__2c_20unsigned_20short_20const__2c_20unsigned_20short_20const__29($10 + 90 | 0 | 0, $10 + 84 | 0 | 0, HEAP32[($10 + 192 | 0) >> 2] | 0 | 0, (HEAP32[($10 + 192 | 0) >> 2] | 0) + 6 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 180 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $10, wasm2js_i32$1 = (btQuantizedBvhNode__isLeafNode_28_29_20const(HEAP32[($10 + 192 | 0) >> 2] | 0 | 0) | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 187 | 0) >> 0] = wasm2js_i32$1;
|
|
label$11 : {
|
|
if (!(HEAP32[($10 + 180 | 0) >> 2] | 0)) {
|
|
break label$11
|
|
}
|
|
$232 = $10 + 48 | 0;
|
|
$234 = $232 + 32 | 0;
|
|
$235 = $232;
|
|
label$12 : while (1) {
|
|
$236 = $235;
|
|
btVector3__btVector3_28_29($236 | 0) | 0;
|
|
$238 = $236 + 16 | 0;
|
|
$235 = $238;
|
|
if (!(($238 | 0) == ($234 | 0) & 1 | 0)) {
|
|
continue label$12
|
|
}
|
|
break label$12;
|
|
};
|
|
btQuantizedBvh__unQuantize_28unsigned_20short_20const__29_20const($10 + 32 | 0 | 0, $11 | 0, HEAP32[($10 + 192 | 0) >> 2] | 0 | 0);
|
|
$250 = $10 + 48 | 0;
|
|
i64toi32_i32$2 = $10;
|
|
i64toi32_i32$0 = HEAP32[($10 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($10 + 36 | 0) >> 2] | 0;
|
|
$834 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $250;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $834;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$252 = 8;
|
|
i64toi32_i32$2 = ($10 + 32 | 0) + $252 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$847 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $250 + $252 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $847;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btQuantizedBvh__unQuantize_28unsigned_20short_20const__29_20const($10 + 16 | 0 | 0, $11 | 0, (HEAP32[($10 + 192 | 0) >> 2] | 0) + 6 | 0 | 0);
|
|
$268 = ($10 + 48 | 0) + 16 | 0;
|
|
i64toi32_i32$2 = $10;
|
|
i64toi32_i32$0 = HEAP32[($10 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($10 + 20 | 0) >> 2] | 0;
|
|
$870 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $268;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $870;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$270 = 8;
|
|
i64toi32_i32$2 = ($10 + 16 | 0) + $270 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$883 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $268 + $270 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $883;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__operator___28btVector3_20const__29($10 + 48 | 0 | 0, HEAP32[($10 + 216 | 0) >> 2] | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29(($10 + 48 | 0) + 16 | 0 | 0, HEAP32[($10 + 220 | 0) >> 2] | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($10 | 0) | 0;
|
|
(wasm2js_i32$0 = $10, wasm2js_i32$1 = (btRayAabb2_28btVector3_20const__2c_20btVector3_20const__2c_20unsigned_20int_20const__2c_20btVector3_20const__2c_20float__2c_20float_2c_20float_29(HEAP32[($10 + 228 | 0) >> 2] | 0 | 0, $10 + 156 | 0 | 0, $10 + 128 | 0 | 0, $10 + 48 | 0 | 0, $10 + 80 | 0 | 0, Math_fround(Math_fround(0 | 0)), Math_fround(Math_fround(HEAPF32[($10 + 172 | 0) >> 2]))) | 0) & 1 | 0), HEAP32[(wasm2js_i32$0 + 176 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
label$13 : {
|
|
if (!((HEAPU8[($10 + 187 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
if (!(HEAP32[($10 + 176 | 0) >> 2] | 0)) {
|
|
break label$13
|
|
}
|
|
$310 = HEAP32[($10 + 232 | 0) >> 2] | 0;
|
|
(((wasm2js_i32$1 = $310, wasm2js_i32$2 = btQuantizedBvhNode__getPartId_28_29_20const(HEAP32[($10 + 192 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$3 = btQuantizedBvhNode__getTriangleIndex_28_29_20const(HEAP32[($10 + 192 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$310 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, wasm2js_i32$3 | 0);
|
|
}
|
|
label$14 : {
|
|
label$15 : {
|
|
label$16 : {
|
|
if (HEAP32[($10 + 176 | 0) >> 2] | 0) {
|
|
break label$16
|
|
}
|
|
if (!((HEAPU8[($10 + 187 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
}
|
|
HEAP32[($10 + 192 | 0) >> 2] = (HEAP32[($10 + 192 | 0) >> 2] | 0) + 16 | 0;
|
|
HEAP32[($10 + 204 | 0) >> 2] = (HEAP32[($10 + 204 | 0) >> 2] | 0) + 1 | 0;
|
|
break label$14;
|
|
}
|
|
(wasm2js_i32$0 = $10, wasm2js_i32$3 = btQuantizedBvhNode__getEscapeIndex_28_29_20const(HEAP32[($10 + 192 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 188 | 0) >> 2] = wasm2js_i32$3;
|
|
HEAP32[($10 + 192 | 0) >> 2] = (HEAP32[($10 + 192 | 0) >> 2] | 0) + ((HEAP32[($10 + 188 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
HEAP32[($10 + 204 | 0) >> 2] = (HEAP32[($10 + 204 | 0) >> 2] | 0) + (HEAP32[($10 + 188 | 0) >> 2] | 0) | 0;
|
|
}
|
|
continue label$9;
|
|
};
|
|
}
|
|
label$17 : {
|
|
if (!((HEAP32[(0 + 114084 | 0) >> 2] | 0 | 0) < (HEAP32[($10 + 200 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
HEAP32[(0 + 114084 | 0) >> 2] = HEAP32[($10 + 200 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $10 + 240 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvh__reportRayOverlappingNodex_28btNodeOverlapCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $8 = 0, $9 = 0, $10 = 0;
|
|
$6 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 76 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 72 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 68 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 64 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 76 | 0) >> 2] | 0;
|
|
$8 = HEAP32[($6 + 72 | 0) >> 2] | 0;
|
|
$9 = HEAP32[($6 + 68 | 0) >> 2] | 0;
|
|
$10 = HEAP32[($6 + 64 | 0) >> 2] | 0;
|
|
HEAPF32[($6 + 44 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 40 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 36 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 48 | 0 | 0, $6 + 44 | 0 | 0, $6 + 40 | 0 | 0, $6 + 36 | 0 | 0) | 0;
|
|
HEAPF32[($6 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 20 | 0 | 0, $6 + 16 | 0 | 0, $6 + 12 | 0 | 0, $6 + 8 | 0 | 0) | 0;
|
|
btQuantizedBvh__reportBoxCastOverlappingNodex_28btNodeOverlapCallback__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29_20const($7 | 0, $8 | 0, $9 | 0, $10 | 0, $6 + 48 | 0 | 0, $6 + 20 | 0 | 0);
|
|
__stack_pointer = $6 + 80 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvh__reportBoxCastOverlappingNodex_28btNodeOverlapCallback__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29_20const($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, $9 = 0;
|
|
$8 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 12 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 8 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 28 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($9 + 60 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btQuantizedBvh__walkStacklessQuantizedTreeAgainstRay_28btNodeOverlapCallback__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20int_2c_20int_29_20const($9 | 0, HEAP32[($8 + 24 | 0) >> 2] | 0 | 0, HEAP32[($8 + 20 | 0) >> 2] | 0 | 0, HEAP32[($8 + 16 | 0) >> 2] | 0 | 0, HEAP32[($8 + 12 | 0) >> 2] | 0 | 0, HEAP32[($8 + 8 | 0) >> 2] | 0 | 0, 0 | 0, HEAP32[($9 + 56 | 0) >> 2] | 0 | 0);
|
|
break label$1;
|
|
}
|
|
btQuantizedBvh__walkStacklessTreeAgainstRay_28btNodeOverlapCallback__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20int_2c_20int_29_20const($9 | 0, HEAP32[($8 + 24 | 0) >> 2] | 0 | 0, HEAP32[($8 + 20 | 0) >> 2] | 0 | 0, HEAP32[($8 + 16 | 0) >> 2] | 0 | 0, HEAP32[($8 + 12 | 0) >> 2] | 0 | 0, HEAP32[($8 + 8 | 0) >> 2] | 0 | 0, 0 | 0, HEAP32[($9 + 56 | 0) >> 2] | 0 | 0);
|
|
}
|
|
__stack_pointer = $8 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvh__serialize_28void__2c_20unsigned_20int_2c_20bool_29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $8 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $307 = 0, $464 = 0, $706 = 0, $63 = 0, $65 = 0, $73 = 0, $75 = 0, $83 = 0, $85 = 0, $399 = 0, $401 = 0, $417 = 0, $419 = 0, $34 = 0, $52 = 0, $55 = 0, $847 = 0, $857 = 0, $869 = 0, $879 = 0, $891 = 0, $901 = 0, $133 = 0, $146 = 0, $159 = 0, $172 = 0, $185 = 0, $198 = 0, $209 = 0, $230 = 0, $240 = 0, $250 = 0, $260 = 0, $270 = 0, $280 = 0, $290 = 0, $352 = 0, $363 = 0, $374 = 0, $394 = 0, $1585 = 0, $1595 = 0, $410 = 0, $1623 = 0, $1633 = 0, $427 = 0, $437 = 0, $447 = 0, $493 = 0, $506 = 0, $519 = 0, $532 = 0, $545 = 0, $558 = 0, $569 = 0, $580 = 0, $601 = 0, $611 = 0, $621 = 0, $631 = 0, $641 = 0, $651 = 0, $661 = 0, $671 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 60 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 56 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 52 | 0) >> 2] = $2;
|
|
HEAP8[($6 + 51 | 0) >> 0] = $3;
|
|
$8 = HEAP32[($6 + 60 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($8 + 168 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btBvhSubtreeInfo___size_28_29_20const($8 + 148 | 0 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(87521 | 0, 73634 | 0, 867 | 0, 80835 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = btAlignedObjectArray_btBvhSubtreeInfo___size_28_29_20const($8 + 148 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 168 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($6 + 44 | 0) >> 2] = HEAP32[($6 + 56 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[787 | 0](btQuantizedBvh__operator_20new_28unsigned_20long_2c_20void__29(172 | 0, HEAP32[($6 + 44 | 0) >> 2] | 0 | 0) | 0) | 0;
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((HEAPU8[($6 + 51 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$34 = btSwapEndian_28int_29(HEAP32[($8 + 56 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[((HEAP32[($6 + 44 | 0) >> 2] | 0) + 56 | 0) >> 2] = $34;
|
|
btSwapVector3Endian_28btVector3_20const__2c_20btVector3__29($8 + 4 | 0 | 0, (HEAP32[($6 + 44 | 0) >> 2] | 0) + 4 | 0 | 0);
|
|
btSwapVector3Endian_28btVector3_20const__2c_20btVector3__29($8 + 20 | 0 | 0, (HEAP32[($6 + 44 | 0) >> 2] | 0) + 20 | 0 | 0);
|
|
btSwapVector3Endian_28btVector3_20const__2c_20btVector3__29($8 + 36 | 0 | 0, (HEAP32[($6 + 44 | 0) >> 2] | 0) + 36 | 0 | 0);
|
|
$52 = btSwapEndian_28int_29(HEAP32[($8 + 144 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[((HEAP32[($6 + 44 | 0) >> 2] | 0) + 144 | 0) >> 2] = $52;
|
|
$55 = btSwapEndian_28int_29(HEAP32[($8 + 168 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[((HEAP32[($6 + 44 | 0) >> 2] | 0) + 168 | 0) >> 2] = $55;
|
|
break label$2;
|
|
}
|
|
HEAP32[((HEAP32[($6 + 44 | 0) >> 2] | 0) + 56 | 0) >> 2] = HEAP32[($8 + 56 | 0) >> 2] | 0;
|
|
$63 = (HEAP32[($6 + 44 | 0) >> 2] | 0) + 4 | 0;
|
|
i64toi32_i32$2 = $8 + 4 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$847 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $63;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $847;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$65 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $65 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$857 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $63 + $65 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $857;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$73 = (HEAP32[($6 + 44 | 0) >> 2] | 0) + 20 | 0;
|
|
i64toi32_i32$2 = $8 + 20 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$869 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $73;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $869;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$75 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $75 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$879 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $73 + $75 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $879;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$83 = (HEAP32[($6 + 44 | 0) >> 2] | 0) + 36 | 0;
|
|
i64toi32_i32$2 = $8 + 36 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$891 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $83;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $891;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$85 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $85 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$901 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $83 + $85 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $901;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[((HEAP32[($6 + 44 | 0) >> 2] | 0) + 144 | 0) >> 2] = HEAP32[($8 + 144 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 44 | 0) >> 2] | 0) + 168 | 0) >> 2] = HEAP32[($8 + 168 | 0) >> 2] | 0;
|
|
}
|
|
HEAP8[((HEAP32[($6 + 44 | 0) >> 2] | 0) + 60 | 0) >> 0] = (HEAPU8[($8 + 60 | 0) >> 0] | 0) & 1 | 0;
|
|
HEAP32[($6 + 40 | 0) >> 2] = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 40 | 0) >> 2] = (HEAP32[($6 + 40 | 0) >> 2] | 0) + 172 | 0;
|
|
HEAP32[($6 + 36 | 0) >> 2] = 0;
|
|
HEAP32[($6 + 40 | 0) >> 2] = (HEAP32[($6 + 40 | 0) >> 2] | 0) + (HEAP32[($6 + 36 | 0) >> 2] | 0) | 0;
|
|
HEAP32[($6 + 32 | 0) >> 2] = HEAP32[($8 + 56 | 0) >> 2] | 0;
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!((HEAPU8[($8 + 60 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btAlignedObjectArray_btQuantizedBvhNode___initializeFromBuffer_28void__2c_20int_2c_20int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 124 | 0 | 0, HEAP32[($6 + 40 | 0) >> 2] | 0 | 0, HEAP32[($6 + 32 | 0) >> 2] | 0 | 0, HEAP32[($6 + 32 | 0) >> 2] | 0 | 0);
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!((HEAPU8[($6 + 51 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAP32[($6 + 28 | 0) >> 2] = 0;
|
|
label$8 : {
|
|
label$9 : while (1) {
|
|
if (!((HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 32 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
$133 = btSwapEndian_28unsigned_20short_29((HEAPU16[(btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($8 + 124 | 0 | 0, HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0) >> 1] | 0) & 65535 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 124 | 0 | 0, HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $133), HEAP16[wasm2js_i32$0 >> 1] = wasm2js_i32$1;
|
|
$146 = btSwapEndian_28unsigned_20short_29((HEAPU16[((btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($8 + 124 | 0 | 0, HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0) + 2 | 0) >> 1] | 0) & 65535 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 124 | 0 | 0, HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $146), HEAP16[(wasm2js_i32$0 + 2 | 0) >> 1] = wasm2js_i32$1;
|
|
$159 = btSwapEndian_28unsigned_20short_29((HEAPU16[((btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($8 + 124 | 0 | 0, HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 1] | 0) & 65535 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 124 | 0 | 0, HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $159), HEAP16[(wasm2js_i32$0 + 4 | 0) >> 1] = wasm2js_i32$1;
|
|
$172 = btSwapEndian_28unsigned_20short_29((HEAPU16[((btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($8 + 124 | 0 | 0, HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0) + 6 | 0) >> 1] | 0) & 65535 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 124 | 0 | 0, HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $172), HEAP16[(wasm2js_i32$0 + 6 | 0) >> 1] = wasm2js_i32$1;
|
|
$185 = btSwapEndian_28unsigned_20short_29((HEAPU16[((btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($8 + 124 | 0 | 0, HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 1] | 0) & 65535 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 124 | 0 | 0, HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $185), HEAP16[(wasm2js_i32$0 + 8 | 0) >> 1] = wasm2js_i32$1;
|
|
$198 = btSwapEndian_28unsigned_20short_29((HEAPU16[((btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($8 + 124 | 0 | 0, HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0) + 10 | 0) >> 1] | 0) & 65535 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 124 | 0 | 0, HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $198), HEAP16[(wasm2js_i32$0 + 10 | 0) >> 1] = wasm2js_i32$1;
|
|
$209 = btSwapEndian_28int_29(HEAP32[((btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($8 + 124 | 0 | 0, HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0) + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 124 | 0 | 0, HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $209), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($6 + 28 | 0) >> 2] = (HEAP32[($6 + 28 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$9;
|
|
};
|
|
}
|
|
break label$6;
|
|
}
|
|
HEAP32[($6 + 24 | 0) >> 2] = 0;
|
|
label$10 : {
|
|
label$11 : while (1) {
|
|
if (!((HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 32 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
$230 = HEAPU16[(btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($8 + 124 | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 124 | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $230), HEAP16[wasm2js_i32$0 >> 1] = wasm2js_i32$1;
|
|
$240 = HEAPU16[((btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($8 + 124 | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0) + 2 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 124 | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $240), HEAP16[(wasm2js_i32$0 + 2 | 0) >> 1] = wasm2js_i32$1;
|
|
$250 = HEAPU16[((btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($8 + 124 | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 124 | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $250), HEAP16[(wasm2js_i32$0 + 4 | 0) >> 1] = wasm2js_i32$1;
|
|
$260 = HEAPU16[((btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($8 + 124 | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0) + 6 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 124 | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $260), HEAP16[(wasm2js_i32$0 + 6 | 0) >> 1] = wasm2js_i32$1;
|
|
$270 = HEAPU16[((btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($8 + 124 | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 124 | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $270), HEAP16[(wasm2js_i32$0 + 8 | 0) >> 1] = wasm2js_i32$1;
|
|
$280 = HEAPU16[((btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($8 + 124 | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0) + 10 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 124 | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $280), HEAP16[(wasm2js_i32$0 + 10 | 0) >> 1] = wasm2js_i32$1;
|
|
$290 = HEAP32[((btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($8 + 124 | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0) + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 124 | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $290), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($6 + 24 | 0) >> 2] = (HEAP32[($6 + 24 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$11;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($6 + 40 | 0) >> 2] = (HEAP32[($6 + 40 | 0) >> 2] | 0) + ((HEAP32[($6 + 32 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
$307 = 0;
|
|
btAlignedObjectArray_btQuantizedBvhNode___initializeFromBuffer_28void__2c_20int_2c_20int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 124 | 0 | 0, $307 | 0, $307 | 0, $307 | 0);
|
|
break label$4;
|
|
}
|
|
btAlignedObjectArray_btOptimizedBvhNode___initializeFromBuffer_28void__2c_20int_2c_20int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 84 | 0 | 0, HEAP32[($6 + 40 | 0) >> 2] | 0 | 0, HEAP32[($6 + 32 | 0) >> 2] | 0 | 0, HEAP32[($6 + 32 | 0) >> 2] | 0 | 0);
|
|
label$12 : {
|
|
label$13 : {
|
|
if (!((HEAPU8[($6 + 51 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
HEAP32[($6 + 20 | 0) >> 2] = 0;
|
|
label$14 : {
|
|
label$15 : while (1) {
|
|
if (!((HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 32 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
btSwapVector3Endian_28btVector3_20const__2c_20btVector3__29(btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29_20const($8 + 84 | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0 | 0, btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 84 | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btSwapVector3Endian_28btVector3_20const__2c_20btVector3__29((btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29_20const($8 + 84 | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0) + 16 | 0 | 0, (btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 84 | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0) + 16 | 0 | 0);
|
|
$352 = btSwapEndian_28int_29(HEAP32[((btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29_20const($8 + 84 | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0) + 32 | 0) >> 2] | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 84 | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $352), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
$363 = btSwapEndian_28int_29(HEAP32[((btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29_20const($8 + 84 | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0) + 36 | 0) >> 2] | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 84 | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $363), HEAP32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_i32$1;
|
|
$374 = btSwapEndian_28int_29(HEAP32[((btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29_20const($8 + 84 | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0) + 40 | 0) >> 2] | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 84 | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $374), HEAP32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = (HEAP32[($6 + 20 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$15;
|
|
};
|
|
}
|
|
break label$12;
|
|
}
|
|
HEAP32[($6 + 16 | 0) >> 2] = 0;
|
|
label$16 : {
|
|
label$17 : while (1) {
|
|
if (!((HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 32 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
$394 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29_20const($8 + 84 | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) | 0;
|
|
$399 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 84 | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) | 0;
|
|
i64toi32_i32$2 = $394;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1585 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $399;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1585;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$401 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $401 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1595 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $399 + $401 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1595;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$410 = (btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29_20const($8 + 84 | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) | 0) + 16 | 0;
|
|
$417 = (btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 84 | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) | 0) + 16 | 0;
|
|
i64toi32_i32$2 = $410;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1623 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $417;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1623;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$419 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $419 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1633 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $417 + $419 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1633;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$427 = HEAP32[((btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29_20const($8 + 84 | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) | 0) + 32 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 84 | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $427), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
$437 = HEAP32[((btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29_20const($8 + 84 | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) | 0) + 36 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 84 | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $437), HEAP32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_i32$1;
|
|
$447 = HEAP32[((btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29_20const($8 + 84 | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) | 0) + 40 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 84 | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $447), HEAP32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($6 + 16 | 0) >> 2] = (HEAP32[($6 + 16 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$17;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($6 + 40 | 0) >> 2] = (HEAP32[($6 + 40 | 0) >> 2] | 0) + ((HEAP32[($6 + 32 | 0) >> 2] | 0) << 6 | 0) | 0;
|
|
$464 = 0;
|
|
btAlignedObjectArray_btOptimizedBvhNode___initializeFromBuffer_28void__2c_20int_2c_20int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 84 | 0 | 0, $464 | 0, $464 | 0, $464 | 0);
|
|
}
|
|
HEAP32[($6 + 36 | 0) >> 2] = 0;
|
|
HEAP32[($6 + 40 | 0) >> 2] = (HEAP32[($6 + 40 | 0) >> 2] | 0) + (HEAP32[($6 + 36 | 0) >> 2] | 0) | 0;
|
|
btAlignedObjectArray_btBvhSubtreeInfo___initializeFromBuffer_28void__2c_20int_2c_20int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 148 | 0 | 0, HEAP32[($6 + 40 | 0) >> 2] | 0 | 0, HEAP32[($8 + 168 | 0) >> 2] | 0 | 0, HEAP32[($8 + 168 | 0) >> 2] | 0 | 0);
|
|
label$18 : {
|
|
label$19 : {
|
|
if (!((HEAPU8[($6 + 51 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
HEAP32[($6 + 12 | 0) >> 2] = 0;
|
|
label$20 : {
|
|
label$21 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($8 + 168 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$20
|
|
}
|
|
$493 = btSwapEndian_28unsigned_20short_29((HEAPU16[(btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($8 + 148 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0) >> 1] | 0) & 65535 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 148 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $493), HEAP16[wasm2js_i32$0 >> 1] = wasm2js_i32$1;
|
|
$506 = btSwapEndian_28unsigned_20short_29((HEAPU16[((btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($8 + 148 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0) + 2 | 0) >> 1] | 0) & 65535 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 148 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $506), HEAP16[(wasm2js_i32$0 + 2 | 0) >> 1] = wasm2js_i32$1;
|
|
$519 = btSwapEndian_28unsigned_20short_29((HEAPU16[((btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($8 + 148 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 1] | 0) & 65535 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 148 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $519), HEAP16[(wasm2js_i32$0 + 4 | 0) >> 1] = wasm2js_i32$1;
|
|
$532 = btSwapEndian_28unsigned_20short_29((HEAPU16[((btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($8 + 148 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0) + 6 | 0) >> 1] | 0) & 65535 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 148 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $532), HEAP16[(wasm2js_i32$0 + 6 | 0) >> 1] = wasm2js_i32$1;
|
|
$545 = btSwapEndian_28unsigned_20short_29((HEAPU16[((btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($8 + 148 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 1] | 0) & 65535 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 148 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $545), HEAP16[(wasm2js_i32$0 + 8 | 0) >> 1] = wasm2js_i32$1;
|
|
$558 = btSwapEndian_28unsigned_20short_29((HEAPU16[((btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($8 + 148 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0) + 10 | 0) >> 1] | 0) & 65535 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 148 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $558), HEAP16[(wasm2js_i32$0 + 10 | 0) >> 1] = wasm2js_i32$1;
|
|
$569 = btSwapEndian_28int_29(HEAP32[((btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($8 + 148 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0) + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 148 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $569), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$580 = btSwapEndian_28int_29(HEAP32[((btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($8 + 148 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0) + 16 | 0) >> 2] | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 148 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $580), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$21;
|
|
};
|
|
}
|
|
break label$18;
|
|
}
|
|
HEAP32[($6 + 8 | 0) >> 2] = 0;
|
|
label$22 : {
|
|
label$23 : while (1) {
|
|
if (!((HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($8 + 168 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$22
|
|
}
|
|
$601 = HEAPU16[(btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($8 + 148 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 148 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $601), HEAP16[wasm2js_i32$0 >> 1] = wasm2js_i32$1;
|
|
$611 = HEAPU16[((btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($8 + 148 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0) + 2 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 148 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $611), HEAP16[(wasm2js_i32$0 + 2 | 0) >> 1] = wasm2js_i32$1;
|
|
$621 = HEAPU16[((btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($8 + 148 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 148 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $621), HEAP16[(wasm2js_i32$0 + 4 | 0) >> 1] = wasm2js_i32$1;
|
|
$631 = HEAPU16[((btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($8 + 148 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0) + 6 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 148 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $631), HEAP16[(wasm2js_i32$0 + 6 | 0) >> 1] = wasm2js_i32$1;
|
|
$641 = HEAPU16[((btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($8 + 148 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 148 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $641), HEAP16[(wasm2js_i32$0 + 8 | 0) >> 1] = wasm2js_i32$1;
|
|
$651 = HEAPU16[((btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($8 + 148 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0) + 10 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 148 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $651), HEAP16[(wasm2js_i32$0 + 10 | 0) >> 1] = wasm2js_i32$1;
|
|
$661 = HEAP32[((btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($8 + 148 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0) + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 148 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $661), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$671 = HEAP32[((btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($8 + 148 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0) + 16 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 148 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $671), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 148 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 148 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = 0), HEAP32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 148 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($6 + 8 | 0) >> 2] = (HEAP32[($6 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$23;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($6 + 40 | 0) >> 2] = (HEAP32[($6 + 40 | 0) >> 2] | 0) + ((HEAP32[($8 + 168 | 0) >> 2] | 0) << 5 | 0) | 0;
|
|
$706 = 0;
|
|
btAlignedObjectArray_btBvhSubtreeInfo___initializeFromBuffer_28void__2c_20int_2c_20int_29((HEAP32[($6 + 44 | 0) >> 2] | 0) + 148 | 0 | 0, $706 | 0, $706 | 0, $706 | 0);
|
|
HEAP32[(HEAP32[($6 + 56 | 0) >> 2] | 0) >> 2] = 0;
|
|
__stack_pointer = $6 + 64 | 0;
|
|
return 1 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btQuantizedBvh__operator_20new_28unsigned_20long_2c_20void__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return HEAP32[($4 + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btSwapEndian_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = btSwapEndian_28unsigned_20int_29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btSwapVector3Endian_28btVector3_20const__2c_20btVector3__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) < (4 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btSwapScalarEndian_28float_20const__2c_20float__29((btVector3__operator_20float_20const__28_29_20const(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[($4 + 4 | 0) >> 2] | 0) << 2 | 0) | 0 | 0, (btVector3__operator_20float__28_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[($4 + 4 | 0) >> 2] | 0) << 2 | 0) | 0 | 0);
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btQuantizedBvhNode___initializeFromBuffer_28void__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btQuantizedBvhNode___clear_28_29($7 | 0);
|
|
HEAP8[($7 + 16 | 0) >> 0] = 0;
|
|
HEAP32[($7 + 12 | 0) >> 2] = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 8 | 0) >> 2] = HEAP32[$6 >> 2] | 0;
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSwapEndian_28unsigned_20short_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP16[($3 + 14 | 0) >> 1] = $0;
|
|
return ((((HEAPU16[($3 + 14 | 0) >> 1] | 0) & 65535 | 0) & 65280 | 0) >> 8 | 0 | ((((HEAPU16[($3 + 14 | 0) >> 1] | 0) & 65535 | 0) & 255 | 0) << 8 | 0) | 0) & 65535 | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btOptimizedBvhNode___initializeFromBuffer_28void__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btOptimizedBvhNode___clear_28_29($7 | 0);
|
|
HEAP8[($7 + 16 | 0) >> 0] = 0;
|
|
HEAP32[($7 + 12 | 0) >> 2] = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 8 | 0) >> 2] = HEAP32[$6 >> 2] | 0;
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBvhSubtreeInfo___initializeFromBuffer_28void__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btBvhSubtreeInfo___clear_28_29($7 | 0);
|
|
HEAP8[($7 + 16 | 0) >> 0] = 0;
|
|
HEAP32[($7 + 12 | 0) >> 2] = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 8 | 0) >> 2] = HEAP32[$6 >> 2] | 0;
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btBvhSubtreeInfo___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 5 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btSwapEndian_28unsigned_20int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return ((HEAP32[($3 + 12 | 0) >> 2] | 0) & -16777216 | 0) >>> 24 | 0 | (((HEAP32[($3 + 12 | 0) >> 2] | 0) & 16711680 | 0) >>> 8 | 0) | 0 | (((HEAP32[($3 + 12 | 0) >> 2] | 0) & 65280 | 0) << 8 | 0) | 0 | (((HEAP32[($3 + 12 | 0) >> 2] | 0) & 255 | 0) << 24 | 0) | 0 | 0;
|
|
}
|
|
|
|
function btSwapScalarEndian_28float_20const__2c_20float__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP8[(HEAP32[($4 + 4 | 0) >> 2] | 0) >> 0] = HEAPU8[((HEAP32[$4 >> 2] | 0) + 3 | 0) >> 0] | 0;
|
|
HEAP8[((HEAP32[($4 + 4 | 0) >> 2] | 0) + 1 | 0) >> 0] = HEAPU8[((HEAP32[$4 >> 2] | 0) + 2 | 0) >> 0] | 0;
|
|
HEAP8[((HEAP32[($4 + 4 | 0) >> 2] | 0) + 2 | 0) >> 0] = HEAPU8[((HEAP32[$4 >> 2] | 0) + 1 | 0) >> 0] | 0;
|
|
HEAP8[((HEAP32[($4 + 4 | 0) >> 2] | 0) + 3 | 0) >> 0] = HEAPU8[(HEAP32[$4 >> 2] | 0) >> 0] | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvh__deSerializeFloat_28btQuantizedBvhFloatData__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, $36 = 0, $111 = 0, $33 = 0, $81 = 0, $87 = 0, $93 = 0, $108 = 0, $127 = 0, $133 = 0, $139 = 0, $145 = 0, $151 = 0, $157 = 0, $163 = 0, $180 = 0, $199 = 0, $205 = 0, $211 = 0, $217 = 0, $223 = 0, $229 = 0, $235 = 0, $241 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 176 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 172 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 168 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 172 | 0) >> 2] | 0;
|
|
btVector3__deSerializeFloat_28btVector3FloatData_20const__29($5 + 20 | 0 | 0, (HEAP32[($4 + 168 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
btVector3__deSerializeFloat_28btVector3FloatData_20const__29($5 + 4 | 0 | 0, HEAP32[($4 + 168 | 0) >> 2] | 0 | 0);
|
|
btVector3__deSerializeFloat_28btVector3FloatData_20const__29($5 + 36 | 0 | 0, (HEAP32[($4 + 168 | 0) >> 2] | 0) + 32 | 0 | 0);
|
|
HEAP32[($5 + 56 | 0) >> 2] = HEAP32[((HEAP32[($4 + 168 | 0) >> 2] | 0) + 48 | 0) >> 2] | 0;
|
|
HEAP8[($5 + 60 | 0) >> 0] = (HEAP32[((HEAP32[($4 + 168 | 0) >> 2] | 0) + 52 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0;
|
|
HEAP32[($4 + 164 | 0) >> 2] = HEAP32[((HEAP32[($4 + 168 | 0) >> 2] | 0) + 56 | 0) >> 2] | 0;
|
|
$33 = HEAP32[($4 + 164 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = 0;
|
|
$36 = 0;
|
|
i64toi32_i32$1 = $4 + 152 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $36;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $4 + 144 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $36;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $4 + 136 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $36;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $4 + 128 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $36;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $4 + 120 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $36;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $4 + 112 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $36;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $4 + 104 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $36;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 96 | 0) >> 2] = $36;
|
|
HEAP32[($4 + 100 | 0) >> 2] = i64toi32_i32$0;
|
|
btOptimizedBvhNode__btOptimizedBvhNode_28_29($4 + 96 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btOptimizedBvhNode___resize_28int_2c_20btOptimizedBvhNode_20const__29($5 + 84 | 0 | 0, $33 | 0, $4 + 96 | 0 | 0);
|
|
label$1 : {
|
|
if (!(HEAP32[($4 + 164 | 0) >> 2] | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($4 + 92 | 0) >> 2] = HEAP32[((HEAP32[($4 + 168 | 0) >> 2] | 0) + 64 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 88 | 0) >> 2] = 0;
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($4 + 88 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 164 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btVector3__deSerializeFloat_28btVector3FloatData_20const__29((btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29($5 + 84 | 0 | 0, HEAP32[($4 + 88 | 0) >> 2] | 0 | 0) | 0) + 16 | 0 | 0, (HEAP32[($4 + 92 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
btVector3__deSerializeFloat_28btVector3FloatData_20const__29(btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29($5 + 84 | 0 | 0, HEAP32[($4 + 88 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($4 + 92 | 0) >> 2] | 0 | 0);
|
|
$81 = HEAP32[((HEAP32[($4 + 92 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29($5 + 84 | 0 | 0, HEAP32[($4 + 88 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $81), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
$87 = HEAP32[((HEAP32[($4 + 92 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29($5 + 84 | 0 | 0, HEAP32[($4 + 88 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $87), HEAP32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_i32$1;
|
|
$93 = HEAP32[((HEAP32[($4 + 92 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29($5 + 84 | 0 | 0, HEAP32[($4 + 88 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $93), HEAP32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 88 | 0) >> 2] = (HEAP32[($4 + 88 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($4 + 92 | 0) >> 2] = (HEAP32[($4 + 92 | 0) >> 2] | 0) + 48 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($4 + 84 | 0) >> 2] = HEAP32[((HEAP32[($4 + 168 | 0) >> 2] | 0) + 60 | 0) >> 2] | 0;
|
|
$108 = HEAP32[($4 + 84 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = 0;
|
|
$111 = 0;
|
|
i64toi32_i32$1 = $4 + 72 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $111;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 64 | 0) >> 2] = $111;
|
|
HEAP32[($4 + 68 | 0) >> 2] = i64toi32_i32$0;
|
|
btAlignedObjectArray_btQuantizedBvhNode___resize_28int_2c_20btQuantizedBvhNode_20const__29($5 + 124 | 0 | 0, $108 | 0, $4 + 64 | 0 | 0);
|
|
label$4 : {
|
|
if (!(HEAP32[($4 + 84 | 0) >> 2] | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP32[($4 + 60 | 0) >> 2] = HEAP32[((HEAP32[($4 + 168 | 0) >> 2] | 0) + 68 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 56 | 0) >> 2] = 0;
|
|
label$5 : {
|
|
label$6 : while (1) {
|
|
if (!((HEAP32[($4 + 56 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 84 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
$127 = HEAP32[((HEAP32[($4 + 60 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($5 + 124 | 0 | 0, HEAP32[($4 + 56 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $127), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$133 = HEAPU16[((HEAP32[($4 + 60 | 0) >> 2] | 0) + 6 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($5 + 124 | 0 | 0, HEAP32[($4 + 56 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $133), HEAP16[(wasm2js_i32$0 + 6 | 0) >> 1] = wasm2js_i32$1;
|
|
$139 = HEAPU16[((HEAP32[($4 + 60 | 0) >> 2] | 0) + 8 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($5 + 124 | 0 | 0, HEAP32[($4 + 56 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $139), HEAP16[(wasm2js_i32$0 + 8 | 0) >> 1] = wasm2js_i32$1;
|
|
$145 = HEAPU16[((HEAP32[($4 + 60 | 0) >> 2] | 0) + 10 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($5 + 124 | 0 | 0, HEAP32[($4 + 56 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $145), HEAP16[(wasm2js_i32$0 + 10 | 0) >> 1] = wasm2js_i32$1;
|
|
$151 = HEAPU16[(HEAP32[($4 + 60 | 0) >> 2] | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($5 + 124 | 0 | 0, HEAP32[($4 + 56 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $151), HEAP16[wasm2js_i32$0 >> 1] = wasm2js_i32$1;
|
|
$157 = HEAPU16[((HEAP32[($4 + 60 | 0) >> 2] | 0) + 2 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($5 + 124 | 0 | 0, HEAP32[($4 + 56 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $157), HEAP16[(wasm2js_i32$0 + 2 | 0) >> 1] = wasm2js_i32$1;
|
|
$163 = HEAPU16[((HEAP32[($4 + 60 | 0) >> 2] | 0) + 4 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($5 + 124 | 0 | 0, HEAP32[($4 + 56 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $163), HEAP16[(wasm2js_i32$0 + 4 | 0) >> 1] = wasm2js_i32$1;
|
|
HEAP32[($4 + 56 | 0) >> 2] = (HEAP32[($4 + 56 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($4 + 60 | 0) >> 2] = (HEAP32[($4 + 60 | 0) >> 2] | 0) + 16 | 0;
|
|
continue label$6;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($5 + 144 | 0) >> 2] = HEAP32[((HEAP32[($4 + 168 | 0) >> 2] | 0) + 76 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 52 | 0) >> 2] = HEAP32[((HEAP32[($4 + 168 | 0) >> 2] | 0) + 80 | 0) >> 2] | 0;
|
|
$180 = HEAP32[($4 + 52 | 0) >> 2] | 0;
|
|
btBvhSubtreeInfo__btBvhSubtreeInfo_28_29($4 + 20 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btBvhSubtreeInfo___resize_28int_2c_20btBvhSubtreeInfo_20const__29($5 + 148 | 0 | 0, $180 | 0, $4 + 20 | 0 | 0);
|
|
label$7 : {
|
|
if (!(HEAP32[($4 + 52 | 0) >> 2] | 0)) {
|
|
break label$7
|
|
}
|
|
HEAP32[($4 + 16 | 0) >> 2] = HEAP32[((HEAP32[($4 + 168 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
label$8 : {
|
|
label$9 : while (1) {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 52 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
$199 = HEAPU16[((HEAP32[($4 + 16 | 0) >> 2] | 0) + 14 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29($5 + 148 | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $199), HEAP16[(wasm2js_i32$0 + 6 | 0) >> 1] = wasm2js_i32$1;
|
|
$205 = HEAPU16[((HEAP32[($4 + 16 | 0) >> 2] | 0) + 16 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29($5 + 148 | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $205), HEAP16[(wasm2js_i32$0 + 8 | 0) >> 1] = wasm2js_i32$1;
|
|
$211 = HEAPU16[((HEAP32[($4 + 16 | 0) >> 2] | 0) + 18 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29($5 + 148 | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $211), HEAP16[(wasm2js_i32$0 + 10 | 0) >> 1] = wasm2js_i32$1;
|
|
$217 = HEAPU16[((HEAP32[($4 + 16 | 0) >> 2] | 0) + 8 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29($5 + 148 | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $217), HEAP16[wasm2js_i32$0 >> 1] = wasm2js_i32$1;
|
|
$223 = HEAPU16[((HEAP32[($4 + 16 | 0) >> 2] | 0) + 10 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29($5 + 148 | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $223), HEAP16[(wasm2js_i32$0 + 2 | 0) >> 1] = wasm2js_i32$1;
|
|
$229 = HEAPU16[((HEAP32[($4 + 16 | 0) >> 2] | 0) + 12 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29($5 + 148 | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $229), HEAP16[(wasm2js_i32$0 + 4 | 0) >> 1] = wasm2js_i32$1;
|
|
$235 = HEAP32[(HEAP32[($4 + 16 | 0) >> 2] | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29($5 + 148 | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $235), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$241 = HEAP32[((HEAP32[($4 + 16 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29($5 + 148 | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $241), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = (HEAP32[($4 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = (HEAP32[($4 + 16 | 0) >> 2] | 0) + 20 | 0;
|
|
continue label$9;
|
|
};
|
|
}
|
|
}
|
|
__stack_pointer = $4 + 176 | 0;
|
|
return;
|
|
}
|
|
|
|
function btVector3__deSerializeFloat_28btVector3FloatData_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) < (4 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[($5 + ((HEAP32[($4 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + ((HEAP32[($4 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btOptimizedBvhNode__btOptimizedBvhNode_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($4 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 16 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btOptimizedBvhNode___resize_28int_2c_20btOptimizedBvhNode_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $48 = 0, $49 = 0, $6 = 0, $51 = 0, $55 = 0, $59 = 0, $63 = 0, $67 = 0, $71 = 0, $75 = 0, $195 = 0, $205 = 0, $215 = 0, $225 = 0, $235 = 0, $245 = 0, $255 = 0, $265 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btOptimizedBvhNode___size_28_29_20const($6 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) > (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btAlignedObjectArray_btOptimizedBvhNode___reserve_28int_29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$48 = btOptimizedBvhNode__operator_20new_28unsigned_20long_2c_20void__29(64 | 0, (HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 6 | 0) | 0 | 0) | 0;
|
|
$49 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $49;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$195 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $48;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $195;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$51 = 56;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $51 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$205 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $48 + $51 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $205;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$55 = 48;
|
|
i64toi32_i32$2 = $49 + $55 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$215 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $48 + $55 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $215;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$59 = 40;
|
|
i64toi32_i32$2 = $49 + $59 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$225 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $48 + $59 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $225;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$63 = 32;
|
|
i64toi32_i32$2 = $49 + $63 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$235 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $48 + $63 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $235;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$67 = 24;
|
|
i64toi32_i32$2 = $49 + $67 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$245 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $48 + $67 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $245;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$71 = 16;
|
|
i64toi32_i32$2 = $49 + $71 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$255 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $48 + $71 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $255;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$75 = 8;
|
|
i64toi32_i32$2 = $49 + $75 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$265 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $48 + $75 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $265;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBvhSubtreeInfo___resize_28int_2c_20btBvhSubtreeInfo_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $6 = 0, $48 = 0, $49 = 0, $51 = 0, $55 = 0, $59 = 0, $179 = 0, $189 = 0, $199 = 0, $209 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btBvhSubtreeInfo___size_28_29_20const($6 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) > (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btAlignedObjectArray_btBvhSubtreeInfo___reserve_28int_29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$48 = btBvhSubtreeInfo__operator_20new_28unsigned_20long_2c_20void__29(32 | 0, (HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 5 | 0) | 0 | 0) | 0;
|
|
$49 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $49;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$179 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $48;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $179;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$51 = 24;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $51 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$189 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $48 + $51 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $189;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$55 = 16;
|
|
i64toi32_i32$2 = $49 + $55 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$199 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $48 + $55 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $199;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$59 = 8;
|
|
i64toi32_i32$2 = $49 + $59 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$209 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $48 + $59 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $209;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btOptimizedBvhNode___reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btOptimizedBvhNode___capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btOptimizedBvhNode___allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btOptimizedBvhNode___copy_28int_2c_20int_2c_20btOptimizedBvhNode__29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btOptimizedBvhNode___size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btOptimizedBvhNode___destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btOptimizedBvhNode___size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btOptimizedBvhNode___deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btOptimizedBvhNode__operator_20new_28unsigned_20long_2c_20void__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return HEAP32[($4 + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btQuantizedBvh__deSerializeDouble_28btQuantizedBvhDoubleData__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, $36 = 0, $111 = 0, $33 = 0, $81 = 0, $87 = 0, $93 = 0, $108 = 0, $127 = 0, $133 = 0, $139 = 0, $145 = 0, $151 = 0, $157 = 0, $163 = 0, $180 = 0, $199 = 0, $205 = 0, $211 = 0, $217 = 0, $223 = 0, $229 = 0, $235 = 0, $241 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 176 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 172 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 168 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 172 | 0) >> 2] | 0;
|
|
btVector3__deSerializeDouble_28btVector3DoubleData_20const__29($5 + 20 | 0 | 0, (HEAP32[($4 + 168 | 0) >> 2] | 0) + 32 | 0 | 0);
|
|
btVector3__deSerializeDouble_28btVector3DoubleData_20const__29($5 + 4 | 0 | 0, HEAP32[($4 + 168 | 0) >> 2] | 0 | 0);
|
|
btVector3__deSerializeDouble_28btVector3DoubleData_20const__29($5 + 36 | 0 | 0, (HEAP32[($4 + 168 | 0) >> 2] | 0) + 64 | 0 | 0);
|
|
HEAP32[($5 + 56 | 0) >> 2] = HEAP32[((HEAP32[($4 + 168 | 0) >> 2] | 0) + 96 | 0) >> 2] | 0;
|
|
HEAP8[($5 + 60 | 0) >> 0] = (HEAP32[((HEAP32[($4 + 168 | 0) >> 2] | 0) + 100 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0;
|
|
HEAP32[($4 + 164 | 0) >> 2] = HEAP32[((HEAP32[($4 + 168 | 0) >> 2] | 0) + 104 | 0) >> 2] | 0;
|
|
$33 = HEAP32[($4 + 164 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = 0;
|
|
$36 = 0;
|
|
i64toi32_i32$1 = $4 + 152 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $36;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $4 + 144 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $36;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $4 + 136 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $36;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $4 + 128 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $36;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $4 + 120 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $36;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $4 + 112 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $36;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $4 + 104 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $36;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 96 | 0) >> 2] = $36;
|
|
HEAP32[($4 + 100 | 0) >> 2] = i64toi32_i32$0;
|
|
btOptimizedBvhNode__btOptimizedBvhNode_28_29($4 + 96 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btOptimizedBvhNode___resize_28int_2c_20btOptimizedBvhNode_20const__29($5 + 84 | 0 | 0, $33 | 0, $4 + 96 | 0 | 0);
|
|
label$1 : {
|
|
if (!(HEAP32[($4 + 164 | 0) >> 2] | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($4 + 92 | 0) >> 2] = HEAP32[((HEAP32[($4 + 168 | 0) >> 2] | 0) + 112 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 88 | 0) >> 2] = 0;
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($4 + 88 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 164 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btVector3__deSerializeDouble_28btVector3DoubleData_20const__29((btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29($5 + 84 | 0 | 0, HEAP32[($4 + 88 | 0) >> 2] | 0 | 0) | 0) + 16 | 0 | 0, (HEAP32[($4 + 92 | 0) >> 2] | 0) + 32 | 0 | 0);
|
|
btVector3__deSerializeDouble_28btVector3DoubleData_20const__29(btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29($5 + 84 | 0 | 0, HEAP32[($4 + 88 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($4 + 92 | 0) >> 2] | 0 | 0);
|
|
$81 = HEAP32[((HEAP32[($4 + 92 | 0) >> 2] | 0) + 64 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29($5 + 84 | 0 | 0, HEAP32[($4 + 88 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $81), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
$87 = HEAP32[((HEAP32[($4 + 92 | 0) >> 2] | 0) + 68 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29($5 + 84 | 0 | 0, HEAP32[($4 + 88 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $87), HEAP32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_i32$1;
|
|
$93 = HEAP32[((HEAP32[($4 + 92 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29($5 + 84 | 0 | 0, HEAP32[($4 + 88 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $93), HEAP32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 88 | 0) >> 2] = (HEAP32[($4 + 88 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($4 + 92 | 0) >> 2] = (HEAP32[($4 + 92 | 0) >> 2] | 0) + 80 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($4 + 84 | 0) >> 2] = HEAP32[((HEAP32[($4 + 168 | 0) >> 2] | 0) + 108 | 0) >> 2] | 0;
|
|
$108 = HEAP32[($4 + 84 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = 0;
|
|
$111 = 0;
|
|
i64toi32_i32$1 = $4 + 72 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $111;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 64 | 0) >> 2] = $111;
|
|
HEAP32[($4 + 68 | 0) >> 2] = i64toi32_i32$0;
|
|
btAlignedObjectArray_btQuantizedBvhNode___resize_28int_2c_20btQuantizedBvhNode_20const__29($5 + 124 | 0 | 0, $108 | 0, $4 + 64 | 0 | 0);
|
|
label$4 : {
|
|
if (!(HEAP32[($4 + 84 | 0) >> 2] | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP32[($4 + 60 | 0) >> 2] = HEAP32[((HEAP32[($4 + 168 | 0) >> 2] | 0) + 116 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 56 | 0) >> 2] = 0;
|
|
label$5 : {
|
|
label$6 : while (1) {
|
|
if (!((HEAP32[($4 + 56 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 84 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
$127 = HEAP32[((HEAP32[($4 + 60 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($5 + 124 | 0 | 0, HEAP32[($4 + 56 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $127), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$133 = HEAPU16[((HEAP32[($4 + 60 | 0) >> 2] | 0) + 6 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($5 + 124 | 0 | 0, HEAP32[($4 + 56 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $133), HEAP16[(wasm2js_i32$0 + 6 | 0) >> 1] = wasm2js_i32$1;
|
|
$139 = HEAPU16[((HEAP32[($4 + 60 | 0) >> 2] | 0) + 8 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($5 + 124 | 0 | 0, HEAP32[($4 + 56 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $139), HEAP16[(wasm2js_i32$0 + 8 | 0) >> 1] = wasm2js_i32$1;
|
|
$145 = HEAPU16[((HEAP32[($4 + 60 | 0) >> 2] | 0) + 10 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($5 + 124 | 0 | 0, HEAP32[($4 + 56 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $145), HEAP16[(wasm2js_i32$0 + 10 | 0) >> 1] = wasm2js_i32$1;
|
|
$151 = HEAPU16[(HEAP32[($4 + 60 | 0) >> 2] | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($5 + 124 | 0 | 0, HEAP32[($4 + 56 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $151), HEAP16[wasm2js_i32$0 >> 1] = wasm2js_i32$1;
|
|
$157 = HEAPU16[((HEAP32[($4 + 60 | 0) >> 2] | 0) + 2 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($5 + 124 | 0 | 0, HEAP32[($4 + 56 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $157), HEAP16[(wasm2js_i32$0 + 2 | 0) >> 1] = wasm2js_i32$1;
|
|
$163 = HEAPU16[((HEAP32[($4 + 60 | 0) >> 2] | 0) + 4 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($5 + 124 | 0 | 0, HEAP32[($4 + 56 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $163), HEAP16[(wasm2js_i32$0 + 4 | 0) >> 1] = wasm2js_i32$1;
|
|
HEAP32[($4 + 56 | 0) >> 2] = (HEAP32[($4 + 56 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($4 + 60 | 0) >> 2] = (HEAP32[($4 + 60 | 0) >> 2] | 0) + 16 | 0;
|
|
continue label$6;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($5 + 144 | 0) >> 2] = HEAP32[((HEAP32[($4 + 168 | 0) >> 2] | 0) + 120 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 52 | 0) >> 2] = HEAP32[((HEAP32[($4 + 168 | 0) >> 2] | 0) + 124 | 0) >> 2] | 0;
|
|
$180 = HEAP32[($4 + 52 | 0) >> 2] | 0;
|
|
btBvhSubtreeInfo__btBvhSubtreeInfo_28_29($4 + 20 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btBvhSubtreeInfo___resize_28int_2c_20btBvhSubtreeInfo_20const__29($5 + 148 | 0 | 0, $180 | 0, $4 + 20 | 0 | 0);
|
|
label$7 : {
|
|
if (!(HEAP32[($4 + 52 | 0) >> 2] | 0)) {
|
|
break label$7
|
|
}
|
|
HEAP32[($4 + 16 | 0) >> 2] = HEAP32[((HEAP32[($4 + 168 | 0) >> 2] | 0) + 128 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
label$8 : {
|
|
label$9 : while (1) {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 52 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
$199 = HEAPU16[((HEAP32[($4 + 16 | 0) >> 2] | 0) + 14 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29($5 + 148 | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $199), HEAP16[(wasm2js_i32$0 + 6 | 0) >> 1] = wasm2js_i32$1;
|
|
$205 = HEAPU16[((HEAP32[($4 + 16 | 0) >> 2] | 0) + 16 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29($5 + 148 | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $205), HEAP16[(wasm2js_i32$0 + 8 | 0) >> 1] = wasm2js_i32$1;
|
|
$211 = HEAPU16[((HEAP32[($4 + 16 | 0) >> 2] | 0) + 18 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29($5 + 148 | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $211), HEAP16[(wasm2js_i32$0 + 10 | 0) >> 1] = wasm2js_i32$1;
|
|
$217 = HEAPU16[((HEAP32[($4 + 16 | 0) >> 2] | 0) + 8 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29($5 + 148 | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $217), HEAP16[wasm2js_i32$0 >> 1] = wasm2js_i32$1;
|
|
$223 = HEAPU16[((HEAP32[($4 + 16 | 0) >> 2] | 0) + 10 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29($5 + 148 | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $223), HEAP16[(wasm2js_i32$0 + 2 | 0) >> 1] = wasm2js_i32$1;
|
|
$229 = HEAPU16[((HEAP32[($4 + 16 | 0) >> 2] | 0) + 12 | 0) >> 1] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29($5 + 148 | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $229), HEAP16[(wasm2js_i32$0 + 4 | 0) >> 1] = wasm2js_i32$1;
|
|
$235 = HEAP32[(HEAP32[($4 + 16 | 0) >> 2] | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29($5 + 148 | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $235), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$241 = HEAP32[((HEAP32[($4 + 16 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29($5 + 148 | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $241), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = (HEAP32[($4 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = (HEAP32[($4 + 16 | 0) >> 2] | 0) + 20 | 0;
|
|
continue label$9;
|
|
};
|
|
}
|
|
}
|
|
__stack_pointer = $4 + 176 | 0;
|
|
return;
|
|
}
|
|
|
|
function btVector3__deSerializeDouble_28btVector3DoubleData_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) < (4 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[($5 + ((HEAP32[($4 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(+HEAPF64[((HEAP32[($4 + 8 | 0) >> 2] | 0) + ((HEAP32[($4 + 4 | 0) >> 2] | 0) << 3 | 0) | 0) >> 3]);
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btQuantizedBvh__serialize_28void__2c_20btSerializer__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $34 = 0, $42 = 0, $58 = 0, $116 = 0, $133 = 0, $141 = 0, $157 = 0, $221 = 0, $240 = 0, $248 = 0, $264 = 0, $334 = 0, $29 = 0, $92 = 0, $98 = 0, $104 = 0, $128 = 0, $177 = 0, $183 = 0, $189 = 0, $195 = 0, $201 = 0, $207 = 0, $213 = 0, $235 = 0, $284 = 0, $290 = 0, $296 = 0, $302 = 0, $308 = 0, $314 = 0, $320 = 0, $326 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0, wasm2js_i32$5 = 0;
|
|
$5 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 76 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 72 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 68 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 76 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 64 | 0) >> 2] = HEAP32[($5 + 72 | 0) >> 2] | 0;
|
|
btVector3__serialize_28btVector3FloatData__29_20const($6 + 20 | 0 | 0, (HEAP32[($5 + 64 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const($6 + 4 | 0 | 0, HEAP32[($5 + 64 | 0) >> 2] | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const($6 + 36 | 0 | 0, (HEAP32[($5 + 64 | 0) >> 2] | 0) + 32 | 0 | 0);
|
|
HEAP32[((HEAP32[($5 + 64 | 0) >> 2] | 0) + 48 | 0) >> 2] = HEAP32[($6 + 56 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 64 | 0) >> 2] | 0) + 52 | 0) >> 2] = (HEAPU8[($6 + 60 | 0) >> 0] | 0) & 1 | 0;
|
|
$29 = btAlignedObjectArray_btOptimizedBvhNode___size_28_29_20const($6 + 84 | 0 | 0) | 0;
|
|
HEAP32[((HEAP32[($5 + 64 | 0) >> 2] | 0) + 56 | 0) >> 2] = $29;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(btAlignedObjectArray_btOptimizedBvhNode___size_28_29_20const($6 + 84 | 0 | 0) | 0)) {
|
|
break label$2
|
|
}
|
|
$34 = HEAP32[($5 + 68 | 0) >> 2] | 0;
|
|
$42 = (((wasm2js_i32$1 = $34, wasm2js_i32$2 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29_20const($6 + 84 | 0 | 0, 0 | 0) | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$34 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0) | 0);
|
|
break label$1;
|
|
}
|
|
$42 = 0;
|
|
}
|
|
HEAP32[((HEAP32[($5 + 64 | 0) >> 2] | 0) + 64 | 0) >> 2] = $42;
|
|
label$3 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 64 | 0) >> 2] | 0) + 64 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 60 | 0) >> 2] = 48;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$2 = btAlignedObjectArray_btOptimizedBvhNode___size_28_29_20const($6 + 84 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 56 | 0) >> 2] = wasm2js_i32$2;
|
|
$58 = HEAP32[($5 + 68 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$2 = FUNCTION_TABLE[HEAP32[((HEAP32[$58 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($58, HEAP32[($5 + 60 | 0) >> 2] | 0, HEAP32[($5 + 56 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 52 | 0) >> 2] = wasm2js_i32$2;
|
|
HEAP32[($5 + 48 | 0) >> 2] = HEAP32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 44 | 0) >> 2] = 0;
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((HEAP32[($5 + 44 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 56 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
btVector3__serialize_28btVector3FloatData__29_20const((btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29_20const($6 + 84 | 0 | 0, HEAP32[($5 + 44 | 0) >> 2] | 0 | 0) | 0) + 16 | 0 | 0, (HEAP32[($5 + 48 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const(btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29_20const($6 + 84 | 0 | 0, HEAP32[($5 + 44 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($5 + 48 | 0) >> 2] | 0 | 0);
|
|
$92 = HEAP32[((btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29_20const($6 + 84 | 0 | 0, HEAP32[($5 + 44 | 0) >> 2] | 0 | 0) | 0) + 32 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 48 | 0) >> 2] | 0) + 32 | 0) >> 2] = $92;
|
|
$98 = HEAP32[((btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29_20const($6 + 84 | 0 | 0, HEAP32[($5 + 44 | 0) >> 2] | 0 | 0) | 0) + 36 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 48 | 0) >> 2] | 0) + 36 | 0) >> 2] = $98;
|
|
$104 = HEAP32[((btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29_20const($6 + 84 | 0 | 0, HEAP32[($5 + 44 | 0) >> 2] | 0 | 0) | 0) + 40 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 48 | 0) >> 2] | 0) + 40 | 0) >> 2] = $104;
|
|
HEAP32[((HEAP32[($5 + 48 | 0) >> 2] | 0) + 44 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 44 | 0) >> 2] = (HEAP32[($5 + 44 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($5 + 48 | 0) >> 2] = (HEAP32[($5 + 48 | 0) >> 2] | 0) + 48 | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
$116 = HEAP32[($5 + 68 | 0) >> 2] | 0;
|
|
(((((wasm2js_i32$2 = $116, wasm2js_i32$1 = HEAP32[($5 + 52 | 0) >> 2] | 0), wasm2js_i32$3 = 83676), wasm2js_i32$4 = 1497453121), wasm2js_i32$5 = btAlignedObjectArray_btOptimizedBvhNode___operator_5b_5d_28int_29_20const($6 + 84 | 0 | 0, 0 | 0) | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$116 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$2 | 0, wasm2js_i32$1 | 0, wasm2js_i32$3 | 0, wasm2js_i32$4 | 0, wasm2js_i32$5 | 0);
|
|
}
|
|
$128 = btAlignedObjectArray_btQuantizedBvhNode___size_28_29_20const($6 + 124 | 0 | 0) | 0;
|
|
HEAP32[((HEAP32[($5 + 64 | 0) >> 2] | 0) + 60 | 0) >> 2] = $128;
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!(btAlignedObjectArray_btQuantizedBvhNode___size_28_29_20const($6 + 124 | 0 | 0) | 0)) {
|
|
break label$7
|
|
}
|
|
$133 = HEAP32[($5 + 68 | 0) >> 2] | 0;
|
|
$141 = (((wasm2js_i32$5 = $133, wasm2js_i32$4 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($6 + 124 | 0 | 0, 0 | 0) | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$133 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$5 | 0, wasm2js_i32$4 | 0) | 0);
|
|
break label$6;
|
|
}
|
|
$141 = 0;
|
|
}
|
|
HEAP32[((HEAP32[($5 + 64 | 0) >> 2] | 0) + 68 | 0) >> 2] = $141;
|
|
label$8 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 64 | 0) >> 2] | 0) + 68 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
HEAP32[($5 + 40 | 0) >> 2] = 16;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$4 = btAlignedObjectArray_btQuantizedBvhNode___size_28_29_20const($6 + 124 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_i32$4;
|
|
$157 = HEAP32[($5 + 68 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$4 = FUNCTION_TABLE[HEAP32[((HEAP32[$157 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($157, HEAP32[($5 + 40 | 0) >> 2] | 0, HEAP32[($5 + 36 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$4;
|
|
HEAP32[($5 + 28 | 0) >> 2] = HEAP32[((HEAP32[($5 + 32 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = 0;
|
|
label$9 : {
|
|
label$10 : while (1) {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 36 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
$177 = HEAP32[((btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($6 + 124 | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) + 12 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 28 | 0) >> 2] | 0) + 12 | 0) >> 2] = $177;
|
|
$183 = HEAPU16[((btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($6 + 124 | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) + 6 | 0) >> 1] | 0;
|
|
HEAP16[((HEAP32[($5 + 28 | 0) >> 2] | 0) + 6 | 0) >> 1] = $183;
|
|
$189 = HEAPU16[((btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($6 + 124 | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 1] | 0;
|
|
HEAP16[((HEAP32[($5 + 28 | 0) >> 2] | 0) + 8 | 0) >> 1] = $189;
|
|
$195 = HEAPU16[((btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($6 + 124 | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) + 10 | 0) >> 1] | 0;
|
|
HEAP16[((HEAP32[($5 + 28 | 0) >> 2] | 0) + 10 | 0) >> 1] = $195;
|
|
$201 = HEAPU16[(btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($6 + 124 | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 1] | 0;
|
|
HEAP16[(HEAP32[($5 + 28 | 0) >> 2] | 0) >> 1] = $201;
|
|
$207 = HEAPU16[((btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($6 + 124 | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) + 2 | 0) >> 1] | 0;
|
|
HEAP16[((HEAP32[($5 + 28 | 0) >> 2] | 0) + 2 | 0) >> 1] = $207;
|
|
$213 = HEAPU16[((btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($6 + 124 | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 1] | 0;
|
|
HEAP16[((HEAP32[($5 + 28 | 0) >> 2] | 0) + 4 | 0) >> 1] = $213;
|
|
HEAP32[($5 + 24 | 0) >> 2] = (HEAP32[($5 + 24 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($5 + 28 | 0) >> 2] = (HEAP32[($5 + 28 | 0) >> 2] | 0) + 16 | 0;
|
|
continue label$10;
|
|
};
|
|
}
|
|
$221 = HEAP32[($5 + 68 | 0) >> 2] | 0;
|
|
(((((wasm2js_i32$4 = $221, wasm2js_i32$5 = HEAP32[($5 + 32 | 0) >> 2] | 0), wasm2js_i32$3 = 83653), wasm2js_i32$1 = 1497453121), wasm2js_i32$2 = btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29_20const($6 + 124 | 0 | 0, 0 | 0) | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$221 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$4 | 0, wasm2js_i32$5 | 0, wasm2js_i32$3 | 0, wasm2js_i32$1 | 0, wasm2js_i32$2 | 0);
|
|
}
|
|
HEAP32[((HEAP32[($5 + 64 | 0) >> 2] | 0) + 76 | 0) >> 2] = HEAP32[($6 + 144 | 0) >> 2] | 0;
|
|
$235 = btAlignedObjectArray_btBvhSubtreeInfo___size_28_29_20const($6 + 148 | 0 | 0) | 0;
|
|
HEAP32[((HEAP32[($5 + 64 | 0) >> 2] | 0) + 80 | 0) >> 2] = $235;
|
|
label$11 : {
|
|
label$12 : {
|
|
if (!(btAlignedObjectArray_btBvhSubtreeInfo___size_28_29_20const($6 + 148 | 0 | 0) | 0)) {
|
|
break label$12
|
|
}
|
|
$240 = HEAP32[($5 + 68 | 0) >> 2] | 0;
|
|
$248 = (((wasm2js_i32$2 = $240, wasm2js_i32$1 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($6 + 148 | 0 | 0, 0 | 0) | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$240 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$2 | 0, wasm2js_i32$1 | 0) | 0);
|
|
break label$11;
|
|
}
|
|
$248 = 0;
|
|
}
|
|
HEAP32[((HEAP32[($5 + 64 | 0) >> 2] | 0) + 72 | 0) >> 2] = $248;
|
|
label$13 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 64 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
HEAP32[($5 + 20 | 0) >> 2] = 20;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btBvhSubtreeInfo___size_28_29_20const($6 + 148 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
$264 = HEAP32[($5 + 68 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$264 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($264, HEAP32[($5 + 20 | 0) >> 2] | 0, HEAP32[($5 + 16 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = 0;
|
|
label$14 : {
|
|
label$15 : while (1) {
|
|
if (!((HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
$284 = HEAPU16[((btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($6 + 148 | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) + 6 | 0) >> 1] | 0;
|
|
HEAP16[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 14 | 0) >> 1] = $284;
|
|
$290 = HEAPU16[((btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($6 + 148 | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 1] | 0;
|
|
HEAP16[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 16 | 0) >> 1] = $290;
|
|
$296 = HEAPU16[((btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($6 + 148 | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) + 10 | 0) >> 1] | 0;
|
|
HEAP16[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 18 | 0) >> 1] = $296;
|
|
$302 = HEAPU16[(btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($6 + 148 | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) >> 1] | 0;
|
|
HEAP16[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 8 | 0) >> 1] = $302;
|
|
$308 = HEAPU16[((btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($6 + 148 | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) + 2 | 0) >> 1] | 0;
|
|
HEAP16[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 10 | 0) >> 1] = $308;
|
|
$314 = HEAPU16[((btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($6 + 148 | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 1] | 0;
|
|
HEAP16[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 12 | 0) >> 1] = $314;
|
|
$320 = HEAP32[((btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($6 + 148 | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) + 12 | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($5 + 8 | 0) >> 2] | 0) >> 2] = $320;
|
|
$326 = HEAP32[((btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($6 + 148 | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) + 16 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] = $326;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 20 | 0;
|
|
continue label$15;
|
|
};
|
|
}
|
|
$334 = HEAP32[($5 + 68 | 0) >> 2] | 0;
|
|
(((((wasm2js_i32$1 = $334, wasm2js_i32$2 = HEAP32[($5 + 12 | 0) >> 2] | 0), wasm2js_i32$3 = 83413), wasm2js_i32$5 = 1497453121), wasm2js_i32$4 = btAlignedObjectArray_btBvhSubtreeInfo___operator_5b_5d_28int_29_20const($6 + 148 | 0 | 0, 0 | 0) | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$334 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, wasm2js_i32$3 | 0, wasm2js_i32$5 | 0, wasm2js_i32$4 | 0);
|
|
}
|
|
__stack_pointer = $5 + 80 | 0;
|
|
return 83345 | 0;
|
|
}
|
|
|
|
function btQuantizedBvh__calculateSerializeBufferSizeNew_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 84 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBvhSubtreeInfo___destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBvhSubtreeInfo___deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btBvhSubtreeInfo_2c_2016u___deallocate_28btBvhSubtreeInfo__29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btBvhSubtreeInfo_2c_2016u___deallocate_28btBvhSubtreeInfo__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btQuantizedBvhNode___capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btQuantizedBvhNode___allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btQuantizedBvhNode_2c_2016u___allocate_28int_2c_20btQuantizedBvhNode_20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btQuantizedBvhNode___copy_28int_2c_20int_2c_20btQuantizedBvhNode__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $22 = 0, $29 = 0, $7 = 0, $97 = 0, $107 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$22 = btQuantizedBvhNode__operator_20new_28unsigned_20long_2c_20void__29(16 | 0, (HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0;
|
|
i64toi32_i32$2 = (HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$97 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $97;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$29 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $29 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$107 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $29 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $107;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btQuantizedBvhNode_2c_2016u___allocate_28int_2c_20btQuantizedBvhNode_20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 4 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_btQuantizedBvhNode_2c_2016u___deallocate_28btQuantizedBvhNode__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBvhSubtreeInfo___allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btBvhSubtreeInfo_2c_2016u___allocate_28int_2c_20btBvhSubtreeInfo_20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btBvhSubtreeInfo___copy_28int_2c_20int_2c_20btBvhSubtreeInfo__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $22 = 0, $27 = 0, $29 = 0, $33 = 0, $37 = 0, $7 = 0, $105 = 0, $115 = 0, $125 = 0, $135 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$22 = btBvhSubtreeInfo__operator_20new_28unsigned_20long_2c_20void__29(32 | 0, (HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 5 | 0) | 0 | 0) | 0;
|
|
$27 = (HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 5 | 0) | 0;
|
|
i64toi32_i32$2 = $27;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$105 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $105;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$29 = 24;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $29 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$115 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $29 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $115;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$33 = 16;
|
|
i64toi32_i32$2 = $27 + $33 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$125 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22 + $33 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $125;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$37 = 8;
|
|
i64toi32_i32$2 = $27 + $37 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$135 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $37 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $135;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btBvhSubtreeInfo_2c_2016u___allocate_28int_2c_20btBvhSubtreeInfo_20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 5 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_btOptimizedBvhNode_2c_2016u___deallocate_28btOptimizedBvhNode__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btOptimizedBvhNode___capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btOptimizedBvhNode___allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btOptimizedBvhNode_2c_2016u___allocate_28int_2c_20btOptimizedBvhNode_20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btOptimizedBvhNode___copy_28int_2c_20int_2c_20btOptimizedBvhNode__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $6 = 0, $22 = 0, $27 = 0, $29 = 0, $33 = 0, $37 = 0, $41 = 0, $45 = 0, $49 = 0, $53 = 0, $7 = 0, $121 = 0, $131 = 0, $141 = 0, $151 = 0, $161 = 0, $171 = 0, $181 = 0, $191 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$22 = btOptimizedBvhNode__operator_20new_28unsigned_20long_2c_20void__29(64 | 0, (HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 6 | 0) | 0 | 0) | 0;
|
|
$27 = (HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 6 | 0) | 0;
|
|
i64toi32_i32$2 = $27;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$121 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $121;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$29 = 56;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $29 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$131 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $29 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $131;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$33 = 48;
|
|
i64toi32_i32$2 = $27 + $33 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$141 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22 + $33 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $141;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$37 = 40;
|
|
i64toi32_i32$2 = $27 + $37 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$151 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $37 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $151;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$41 = 32;
|
|
i64toi32_i32$2 = $27 + $41 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$161 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22 + $41 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $161;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$45 = 24;
|
|
i64toi32_i32$2 = $27 + $45 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$171 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $45 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $171;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$49 = 16;
|
|
i64toi32_i32$2 = $27 + $49 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$181 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22 + $49 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $181;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$53 = 8;
|
|
i64toi32_i32$2 = $27 + $53 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$191 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $53 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $191;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btOptimizedBvhNode_2c_2016u___allocate_28int_2c_20btOptimizedBvhNode_20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 6 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btQuantizedBvh_cpp() {
|
|
__cxx_global_var_init_29();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_30() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114088 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__btBvhTriangleMeshShape_28btStridingMeshInterface__2c_20bool_2c_20bool_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $9 = 0, $24 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $1;
|
|
HEAP8[($6 + 3 | 0) >> 0] = $2;
|
|
HEAP8[($6 + 2 | 0) >> 0] = $3;
|
|
$9 = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $9;
|
|
btTriangleMeshShape__btTriangleMeshShape_28btStridingMeshInterface__29($9 | 0, HEAP32[($6 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$9 >> 2] = 97016 + 8 | 0;
|
|
HEAP32[($9 + 60 | 0) >> 2] = 0;
|
|
HEAP32[($9 + 64 | 0) >> 2] = 0;
|
|
HEAP8[($9 + 68 | 0) >> 0] = (HEAPU8[($6 + 3 | 0) >> 0] | 0) & 1 | 0;
|
|
HEAP8[($9 + 69 | 0) >> 0] = 0;
|
|
HEAP32[($9 + 4 | 0) >> 2] = 21;
|
|
label$1 : {
|
|
if (!((HEAPU8[($6 + 2 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btBvhTriangleMeshShape__buildOptimizedBvh_28_29($9 | 0);
|
|
}
|
|
$24 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return $24 | 0;
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__buildOptimizedBvh_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0, $8 = 0, $17 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($4 + 69 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$8 = HEAP32[($4 + 60 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$8 >> 2] | 0) >> 2] | 0 | 0]($8) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 60 | 0) >> 2] | 0 | 0);
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(172 | 0, 16 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
$17 = btOptimizedBvh__operator_20new_28unsigned_20long_2c_20void__29(172 | 0, HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
btOptimizedBvh__btOptimizedBvh_28_29($17 | 0) | 0;
|
|
HEAP32[($4 + 60 | 0) >> 2] = $17;
|
|
btOptimizedBvh__build_28btStridingMeshInterface__2c_20bool_2c_20btVector3_20const__2c_20btVector3_20const__29(HEAP32[($4 + 60 | 0) >> 2] | 0 | 0, HEAP32[($4 + 56 | 0) >> 2] | 0 | 0, (HEAPU8[($4 + 68 | 0) >> 0] | 0) & 1 | 0 | 0, $4 + 24 | 0 | 0, $4 + 40 | 0 | 0);
|
|
HEAP8[($4 + 69 | 0) >> 0] = 1;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btOptimizedBvh__operator_20new_28unsigned_20long_2c_20void__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return HEAP32[($4 + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btBvhTriangleMeshShape___btBvhTriangleMeshShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $11 = 0, $15 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
HEAP32[$4 >> 2] = 97016 + 8 | 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($4 + 69 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$11 = HEAP32[($4 + 60 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$11 >> 2] | 0) >> 2] | 0 | 0]($11) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 60 | 0) >> 2] | 0 | 0);
|
|
}
|
|
btTriangleMeshShape___btTriangleMeshShape_28_29($4 | 0) | 0;
|
|
$15 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $15 | 0;
|
|
}
|
|
|
|
function btBvhTriangleMeshShape___btBvhTriangleMeshShape_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[794 | 0]($4) | 0;
|
|
btBvhTriangleMeshShape__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__performRaycast_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
btBvhTriangleMeshShape__performRaycast_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29__MyNodeOverlapCallback__MyNodeOverlapCallback_28btTriangleCallback__2c_20btStridingMeshInterface__29($6 + 4 | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[($7 + 56 | 0) >> 2] | 0 | 0) | 0;
|
|
btQuantizedBvh__reportRayOverlappingNodex_28btNodeOverlapCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const(HEAP32[($7 + 60 | 0) >> 2] | 0 | 0, $6 + 4 | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0);
|
|
btBvhTriangleMeshShape__performRaycast_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29__MyNodeOverlapCallback___MyNodeOverlapCallback_28_29($6 + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__performRaycast_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29__MyNodeOverlapCallback__MyNodeOverlapCallback_28btTriangleCallback__2c_20btStridingMeshInterface__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btNodeOverlapCallback__btNodeOverlapCallback_28_29($6 | 0) | 0;
|
|
HEAP32[$6 >> 2] = 97148 + 8 | 0;
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__performRaycast_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29__MyNodeOverlapCallback___MyNodeOverlapCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btNodeOverlapCallback___btNodeOverlapCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btNodeOverlapCallback__btNodeOverlapCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 97316 + 8 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btNodeOverlapCallback___btNodeOverlapCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__performConvexcast_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, $9 = 0;
|
|
$8 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 32 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 24 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 44 | 0) >> 2] | 0;
|
|
btBvhTriangleMeshShape__performConvexcast_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29__MyNodeOverlapCallback__MyNodeOverlapCallback_28btTriangleCallback__2c_20btStridingMeshInterface__29($8 + 12 | 0 | 0, HEAP32[($8 + 40 | 0) >> 2] | 0 | 0, HEAP32[($9 + 56 | 0) >> 2] | 0 | 0) | 0;
|
|
btQuantizedBvh__reportBoxCastOverlappingNodex_28btNodeOverlapCallback__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29_20const(HEAP32[($9 + 60 | 0) >> 2] | 0 | 0, $8 + 12 | 0 | 0, HEAP32[($8 + 36 | 0) >> 2] | 0 | 0, HEAP32[($8 + 32 | 0) >> 2] | 0 | 0, HEAP32[($8 + 28 | 0) >> 2] | 0 | 0, HEAP32[($8 + 24 | 0) >> 2] | 0 | 0);
|
|
btBvhTriangleMeshShape__performConvexcast_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29__MyNodeOverlapCallback___MyNodeOverlapCallback_28_29($8 + 12 | 0 | 0) | 0;
|
|
__stack_pointer = $8 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__performConvexcast_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29__MyNodeOverlapCallback__MyNodeOverlapCallback_28btTriangleCallback__2c_20btStridingMeshInterface__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btNodeOverlapCallback__btNodeOverlapCallback_28_29($6 | 0) | 0;
|
|
HEAP32[$6 >> 2] = 97336 + 8 | 0;
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__performConvexcast_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29__MyNodeOverlapCallback___MyNodeOverlapCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btNodeOverlapCallback___btNodeOverlapCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 76 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 72 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 68 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 64 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 76 | 0) >> 2] | 0;
|
|
btBvhTriangleMeshShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const__MyNodeOverlapCallback__MyNodeOverlapCallback_28btTriangleCallback__2c_20btStridingMeshInterface__29($6 | 0, HEAP32[($6 + 72 | 0) >> 2] | 0 | 0, HEAP32[($7 + 56 | 0) >> 2] | 0 | 0) | 0;
|
|
btQuantizedBvh__reportAabbOverlappingNodex_28btNodeOverlapCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const(HEAP32[($7 + 60 | 0) >> 2] | 0 | 0, $6 | 0, HEAP32[($6 + 68 | 0) >> 2] | 0 | 0, HEAP32[($6 + 64 | 0) >> 2] | 0 | 0);
|
|
btBvhTriangleMeshShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const__MyNodeOverlapCallback___MyNodeOverlapCallback_28_29($6 | 0) | 0;
|
|
__stack_pointer = $6 + 80 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const__MyNodeOverlapCallback__MyNodeOverlapCallback_28btTriangleCallback__2c_20btStridingMeshInterface__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $13 = 0, $16 = 0, $17 = 0, $19 = 0, $15 = 0, $26 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $1;
|
|
HEAP32[$5 >> 2] = $2;
|
|
$6 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $6;
|
|
btNodeOverlapCallback__btNodeOverlapCallback_28_29($6 | 0) | 0;
|
|
HEAP32[$6 >> 2] = 97484 + 8 | 0;
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[$5 >> 2] | 0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
$13 = $6 + 12 | 0;
|
|
$15 = $13 + 48 | 0;
|
|
$16 = $13;
|
|
label$1 : while (1) {
|
|
$17 = $16;
|
|
btVector3__btVector3_28_29($17 | 0) | 0;
|
|
$19 = $17 + 16 | 0;
|
|
$16 = $19;
|
|
if (!(($19 | 0) == ($15 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
HEAP32[($6 + 60 | 0) >> 2] = 0;
|
|
$26 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $26 | 0;
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const__MyNodeOverlapCallback___MyNodeOverlapCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btNodeOverlapCallback___btNodeOverlapCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__setLocalScaling_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 8 | 0 | 0, FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($5) | 0 | 0, HEAP32[($4 + 24 | 0) >> 2] | 0 | 0);
|
|
label$1 : {
|
|
if (!(Math_fround(btVector3__length2_28_29_20const($4 + 8 | 0 | 0)) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btTriangleMeshShape__setLocalScaling_28btVector3_20const__29($5 | 0, HEAP32[($4 + 24 | 0) >> 2] | 0 | 0);
|
|
btBvhTriangleMeshShape__buildOptimizedBvh_28_29($5 | 0);
|
|
}
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__setOptimizedBvh_28btOptimizedBvh__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($6 + 60 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
__assert_fail(77754 | 0, 74895 | 0, 358 | 0, 77793 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($6 + 69 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
__assert_fail(77761 | 0, 74895 | 0, 359 | 0, 77793 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($6 + 60 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
HEAP8[($6 + 69 | 0) >> 0] = 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 4 | 0 | 0, FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($6) | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0);
|
|
label$3 : {
|
|
if (!(Math_fround(btVector3__length2_28_29_20const($5 + 4 | 0 | 0)) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
btTriangleMeshShape__setLocalScaling_28btVector3_20const__29($6 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0);
|
|
}
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__serialize_28void__2c_20btSerializer__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $10 = 0, $26 = 0, $32 = 0, $48 = 0, $56 = 0, $60 = 0, $66 = 0, $73 = 0, $91 = 0, $97 = 0, $111 = 0, $117 = 0, $121 = 0, $127 = 0, $134 = 0, $52 = 0, $115 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 36 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 44 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 32 | 0) >> 2] = HEAP32[($5 + 40 | 0) >> 2] | 0;
|
|
btCollisionShape__serialize_28void__2c_20btSerializer__29_20const($6 | 0, HEAP32[($5 + 32 | 0) >> 2] | 0 | 0, HEAP32[($5 + 36 | 0) >> 2] | 0 | 0) | 0;
|
|
$10 = HEAP32[($6 + 56 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$10 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($10, (HEAP32[($5 + 32 | 0) >> 2] | 0) + 12 | 0, HEAP32[($5 + 36 | 0) >> 2] | 0) | 0;
|
|
HEAPF32[((HEAP32[($5 + 32 | 0) >> 2] | 0) + 52 | 0) >> 2] = Math_fround(HEAPF32[($6 + 20 | 0) >> 2]);
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($6 + 60 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$26 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
if ((FUNCTION_TABLE[HEAP32[((HEAP32[$26 >> 2] | 0) + 52 | 0) >> 2] | 0 | 0]($26) | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
$32 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$32 >> 2] | 0) + 24 | 0) >> 2] | 0 | 0]($32, HEAP32[($6 + 60 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP32[((HEAP32[($5 + 32 | 0) >> 2] | 0) + 40 | 0) >> 2] = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 32 | 0) >> 2] | 0) + 44 | 0) >> 2] = 0;
|
|
break label$3;
|
|
}
|
|
$48 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
$52 = FUNCTION_TABLE[HEAP32[((HEAP32[$48 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($48, HEAP32[($6 + 60 | 0) >> 2] | 0) | 0;
|
|
HEAP32[((HEAP32[($5 + 32 | 0) >> 2] | 0) + 40 | 0) >> 2] = $52;
|
|
HEAP32[((HEAP32[($5 + 32 | 0) >> 2] | 0) + 44 | 0) >> 2] = 0;
|
|
$56 = HEAP32[($6 + 60 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$56 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($56) | 0), HEAP32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_i32$1;
|
|
$60 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$60 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($60, HEAP32[($5 + 24 | 0) >> 2] | 0, 1) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
$66 = HEAP32[($6 + 60 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$66 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($66, HEAP32[((HEAP32[($5 + 20 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0, HEAP32[($5 + 36 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
$73 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$73 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($73, HEAP32[($5 + 20 | 0) >> 2] | 0, HEAP32[($5 + 16 | 0) >> 2] | 0, 1213612625, HEAP32[($6 + 60 | 0) >> 2] | 0);
|
|
}
|
|
break label$1;
|
|
}
|
|
HEAP32[((HEAP32[($5 + 32 | 0) >> 2] | 0) + 40 | 0) >> 2] = 0;
|
|
HEAP32[((HEAP32[($5 + 32 | 0) >> 2] | 0) + 44 | 0) >> 2] = 0;
|
|
}
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!((HEAP32[($6 + 64 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$91 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
if ((FUNCTION_TABLE[HEAP32[((HEAP32[$91 >> 2] | 0) + 52 | 0) >> 2] | 0 | 0]($91) | 0) & 2 | 0) {
|
|
break label$6
|
|
}
|
|
$97 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$97 >> 2] | 0) + 24 | 0) >> 2] | 0 | 0]($97, HEAP32[($6 + 64 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
label$7 : {
|
|
label$8 : {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
HEAP32[((HEAP32[($5 + 32 | 0) >> 2] | 0) + 48 | 0) >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
break label$7;
|
|
}
|
|
$111 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
$115 = FUNCTION_TABLE[HEAP32[((HEAP32[$111 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($111, HEAP32[($6 + 64 | 0) >> 2] | 0) | 0;
|
|
HEAP32[((HEAP32[($5 + 32 | 0) >> 2] | 0) + 48 | 0) >> 2] = $115;
|
|
$117 = HEAP32[($6 + 64 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$117 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($117) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
$121 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$121 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($121, HEAP32[($5 + 8 | 0) >> 2] | 0, 1) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
$127 = HEAP32[($6 + 64 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$127 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($127, HEAP32[((HEAP32[($5 + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0, HEAP32[($5 + 36 | 0) >> 2] | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$134 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$134 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($134, HEAP32[($5 + 4 | 0) >> 2] | 0, HEAP32[$5 >> 2] | 0, 1346456916, HEAP32[($6 + 64 | 0) >> 2] | 0);
|
|
}
|
|
break label$5;
|
|
}
|
|
HEAP32[((HEAP32[($5 + 32 | 0) >> 2] | 0) + 48 | 0) >> 2] = 0;
|
|
}
|
|
HEAP32[((HEAP32[($5 + 32 | 0) >> 2] | 0) + 56 | 0) >> 2] = 0;
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return 83501 | 0;
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__serializeSingleBvh_28btSerializer__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $13 = 0, $17 = 0, $23 = 0, $30 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($5 + 60 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$13 = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$13 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($13) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
$17 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$17 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($17, HEAP32[($4 + 20 | 0) >> 2] | 0, 1) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
$23 = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$23 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($23, HEAP32[((HEAP32[($4 + 16 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0, HEAP32[($4 + 24 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$30 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$30 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($30, HEAP32[($4 + 16 | 0) >> 2] | 0, HEAP32[($4 + 12 | 0) >> 2] | 0, 1213612625, HEAP32[($5 + 60 | 0) >> 2] | 0);
|
|
}
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__serializeSingleTriangleInfoMap_28btSerializer__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $13 = 0, $17 = 0, $23 = 0, $30 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($5 + 64 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$13 = HEAP32[($5 + 64 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$13 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($13) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
$17 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$17 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($17, HEAP32[($4 + 20 | 0) >> 2] | 0, 1) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
$23 = HEAP32[($5 + 64 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$23 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($23, HEAP32[((HEAP32[($4 + 16 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0, HEAP32[($4 + 24 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$30 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$30 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($30, HEAP32[($4 + 16 | 0) >> 2] | 0, HEAP32[($4 + 12 | 0) >> 2] | 0, 1346456916, HEAP32[($5 + 64 | 0) >> 2] | 0);
|
|
}
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__getName_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 84387 | 0;
|
|
}
|
|
|
|
function btConcaveShape__setMargin_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 20 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function btConcaveShape__getMargin_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 20 | 0) >> 2]));
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__calculateSerializeBufferSize_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 60 | 0;
|
|
}
|
|
|
|
function btTriangleMeshShape__localGetSupportingVertexWithoutMargin_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $2;
|
|
__assert_fail(86177 | 0, 79320 | 0, 44 | 0, 76889 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__performRaycast_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29__MyNodeOverlapCallback___MyNodeOverlapCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btBvhTriangleMeshShape__performRaycast_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29__MyNodeOverlapCallback___MyNodeOverlapCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__performRaycast_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29__MyNodeOverlapCallback__processNode_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $6 = 0, $9 = 0, $12 = 0, $13 = 0, $15 = 0, $21 = 0, $97 = 0, $147 = 0, $149 = 0, $197 = 0, $199 = 0, $208 = 0, $216 = 0, $11 = 0, $513 = 0, $526 = 0, $625 = 0, $638 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 176 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 172 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 168 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 164 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 172 | 0) >> 2] | 0;
|
|
$9 = $5 + 112 | 0;
|
|
$11 = $9 + 48 | 0;
|
|
$12 = $9;
|
|
label$1 : while (1) {
|
|
$13 = $12;
|
|
btVector3__btVector3_28_29($13 | 0) | 0;
|
|
$15 = $13 + 16 | 0;
|
|
$12 = $15;
|
|
if (!(($15 | 0) == ($11 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
$21 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$21 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($21, $5 + 108 | 0, $5 + 104 | 0, $5 + 100 | 0, $5 + 96 | 0, $5 + 92 | 0, $5 + 88 | 0, $5 + 84 | 0, $5 + 80 | 0, HEAP32[($5 + 168 | 0) >> 2] | 0);
|
|
HEAP32[($5 + 76 | 0) >> 2] = (HEAP32[($5 + 92 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 164 | 0) >> 2] | 0, HEAP32[($5 + 88 | 0) >> 2] | 0) | 0;
|
|
label$2 : {
|
|
if ((HEAP32[($5 + 80 | 0) >> 2] | 0 | 0) == (2 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
if ((HEAP32[($5 + 80 | 0) >> 2] | 0 | 0) == (3 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(83922 | 0, 74895 | 0, 130 | 0, 82004 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btStridingMeshInterface__getScaling_28_29_20const(HEAP32[($6 + 4 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 72 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($5 + 68 | 0) >> 2] = 2;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 68 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!((HEAP32[($5 + 80 | 0) >> 2] | 0 | 0) == (3 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$97 = (HEAPU16[((HEAP32[($5 + 76 | 0) >> 2] | 0) + ((HEAP32[($5 + 68 | 0) >> 2] | 0) << 1 | 0) | 0) >> 1] | 0) & 65535 | 0;
|
|
break label$5;
|
|
}
|
|
$97 = HEAP32[((HEAP32[($5 + 76 | 0) >> 2] | 0) + ((HEAP32[($5 + 68 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($5 + 64 | 0) >> 2] = $97;
|
|
label$7 : {
|
|
label$8 : {
|
|
if (HEAP32[($5 + 100 | 0) >> 2] | 0) {
|
|
break label$8
|
|
}
|
|
HEAP32[($5 + 60 | 0) >> 2] = (HEAP32[($5 + 108 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 64 | 0) >> 2] | 0, HEAP32[($5 + 96 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(HEAP32[($5 + 60 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const(HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 60 | 0) >> 2] | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getY_28_29_20const(HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 60 | 0) >> 2] | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getZ_28_29_20const(HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 44 | 0 | 0, $5 + 40 | 0 | 0, $5 + 36 | 0 | 0, $5 + 32 | 0 | 0) | 0;
|
|
$147 = ($5 + 112 | 0) + ((HEAP32[($5 + 68 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 44 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 48 | 0) >> 2] | 0;
|
|
$513 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $147;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $513;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$149 = 8;
|
|
i64toi32_i32$2 = ($5 + 44 | 0) + $149 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$526 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $147 + $149 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $526;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$7;
|
|
}
|
|
HEAP32[($5 + 28 | 0) >> 2] = (HEAP32[($5 + 108 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 64 | 0) >> 2] | 0, HEAP32[($5 + 96 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[(HEAP32[($5 + 28 | 0) >> 2] | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const(HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[((HEAP32[($5 + 28 | 0) >> 2] | 0) + 8 | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getY_28_29_20const(HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[((HEAP32[($5 + 28 | 0) >> 2] | 0) + 16 | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getZ_28_29_20const(HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 12 | 0 | 0, $5 + 8 | 0 | 0, $5 + 4 | 0 | 0, $5 | 0) | 0;
|
|
$197 = ($5 + 112 | 0) + ((HEAP32[($5 + 68 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
$625 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $197;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $625;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$199 = 8;
|
|
i64toi32_i32$2 = ($5 + 12 | 0) + $199 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$638 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $197 + $199 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $638;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
HEAP32[($5 + 68 | 0) >> 2] = (HEAP32[($5 + 68 | 0) >> 2] | 0) + -1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
$208 = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$208 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($208, $5 + 112 | 0, HEAP32[($5 + 168 | 0) >> 2] | 0, HEAP32[($5 + 164 | 0) >> 2] | 0);
|
|
$216 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$216 >> 2] | 0) + 24 | 0) >> 2] | 0 | 0]($216, HEAP32[($5 + 168 | 0) >> 2] | 0);
|
|
__stack_pointer = $5 + 176 | 0;
|
|
return;
|
|
}
|
|
|
|
function btStridingMeshInterface__getScaling_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0 | 0;
|
|
}
|
|
|
|
function btNodeOverlapCallback___btNodeOverlapCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__performConvexcast_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29__MyNodeOverlapCallback___MyNodeOverlapCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btBvhTriangleMeshShape__performConvexcast_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29__MyNodeOverlapCallback___MyNodeOverlapCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__performConvexcast_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29__MyNodeOverlapCallback__processNode_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $6 = 0, $9 = 0, $12 = 0, $13 = 0, $15 = 0, $21 = 0, $97 = 0, $147 = 0, $149 = 0, $197 = 0, $199 = 0, $208 = 0, $216 = 0, $11 = 0, $513 = 0, $526 = 0, $625 = 0, $638 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 176 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 172 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 168 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 164 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 172 | 0) >> 2] | 0;
|
|
$9 = $5 + 112 | 0;
|
|
$11 = $9 + 48 | 0;
|
|
$12 = $9;
|
|
label$1 : while (1) {
|
|
$13 = $12;
|
|
btVector3__btVector3_28_29($13 | 0) | 0;
|
|
$15 = $13 + 16 | 0;
|
|
$12 = $15;
|
|
if (!(($15 | 0) == ($11 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
$21 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$21 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($21, $5 + 108 | 0, $5 + 104 | 0, $5 + 100 | 0, $5 + 96 | 0, $5 + 92 | 0, $5 + 88 | 0, $5 + 84 | 0, $5 + 80 | 0, HEAP32[($5 + 168 | 0) >> 2] | 0);
|
|
HEAP32[($5 + 76 | 0) >> 2] = (HEAP32[($5 + 92 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 164 | 0) >> 2] | 0, HEAP32[($5 + 88 | 0) >> 2] | 0) | 0;
|
|
label$2 : {
|
|
if ((HEAP32[($5 + 80 | 0) >> 2] | 0 | 0) == (2 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
if ((HEAP32[($5 + 80 | 0) >> 2] | 0 | 0) == (3 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(83922 | 0, 74895 | 0, 199 | 0, 82004 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btStridingMeshInterface__getScaling_28_29_20const(HEAP32[($6 + 4 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 72 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($5 + 68 | 0) >> 2] = 2;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 68 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!((HEAP32[($5 + 80 | 0) >> 2] | 0 | 0) == (3 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$97 = (HEAPU16[((HEAP32[($5 + 76 | 0) >> 2] | 0) + ((HEAP32[($5 + 68 | 0) >> 2] | 0) << 1 | 0) | 0) >> 1] | 0) & 65535 | 0;
|
|
break label$5;
|
|
}
|
|
$97 = HEAP32[((HEAP32[($5 + 76 | 0) >> 2] | 0) + ((HEAP32[($5 + 68 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($5 + 64 | 0) >> 2] = $97;
|
|
label$7 : {
|
|
label$8 : {
|
|
if (HEAP32[($5 + 100 | 0) >> 2] | 0) {
|
|
break label$8
|
|
}
|
|
HEAP32[($5 + 60 | 0) >> 2] = (HEAP32[($5 + 108 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 64 | 0) >> 2] | 0, HEAP32[($5 + 96 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(HEAP32[($5 + 60 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const(HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 60 | 0) >> 2] | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getY_28_29_20const(HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 60 | 0) >> 2] | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getZ_28_29_20const(HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 44 | 0 | 0, $5 + 40 | 0 | 0, $5 + 36 | 0 | 0, $5 + 32 | 0 | 0) | 0;
|
|
$147 = ($5 + 112 | 0) + ((HEAP32[($5 + 68 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 44 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 48 | 0) >> 2] | 0;
|
|
$513 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $147;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $513;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$149 = 8;
|
|
i64toi32_i32$2 = ($5 + 44 | 0) + $149 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$526 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $147 + $149 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $526;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$7;
|
|
}
|
|
HEAP32[($5 + 28 | 0) >> 2] = (HEAP32[($5 + 108 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 64 | 0) >> 2] | 0, HEAP32[($5 + 96 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[(HEAP32[($5 + 28 | 0) >> 2] | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const(HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[((HEAP32[($5 + 28 | 0) >> 2] | 0) + 8 | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getY_28_29_20const(HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[((HEAP32[($5 + 28 | 0) >> 2] | 0) + 16 | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getZ_28_29_20const(HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 12 | 0 | 0, $5 + 8 | 0 | 0, $5 + 4 | 0 | 0, $5 | 0) | 0;
|
|
$197 = ($5 + 112 | 0) + ((HEAP32[($5 + 68 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
$625 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $197;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $625;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$199 = 8;
|
|
i64toi32_i32$2 = ($5 + 12 | 0) + $199 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$638 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $197 + $199 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $638;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
HEAP32[($5 + 68 | 0) >> 2] = (HEAP32[($5 + 68 | 0) >> 2] | 0) + -1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
$208 = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$208 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($208, $5 + 112 | 0, HEAP32[($5 + 168 | 0) >> 2] | 0, HEAP32[($5 + 164 | 0) >> 2] | 0);
|
|
$216 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$216 >> 2] | 0) + 24 | 0) >> 2] | 0 | 0]($216, HEAP32[($5 + 168 | 0) >> 2] | 0);
|
|
__stack_pointer = $5 + 176 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const__MyNodeOverlapCallback___MyNodeOverlapCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btBvhTriangleMeshShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const__MyNodeOverlapCallback___MyNodeOverlapCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBvhTriangleMeshShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const__MyNodeOverlapCallback__processNode_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, i64toi32_i32$2 = 0, $10 = 0, $93 = 0, $107 = 0, $157 = 0, $159 = 0, $208 = 0, $210 = 0, $219 = 0, $226 = 0, $542 = 0, $555 = 0, $656 = 0, $669 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 128 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 124 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 120 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 116 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 124 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 60 | 0) >> 2] = (HEAP32[($6 + 60 | 0) >> 2] | 0) + 1 | 0;
|
|
$10 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$10 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($10, $5 + 112 | 0, $5 + 108 | 0, $5 + 104 | 0, $5 + 100 | 0, $5 + 96 | 0, $5 + 92 | 0, $5 + 88 | 0, $5 + 84 | 0, HEAP32[($5 + 120 | 0) >> 2] | 0);
|
|
HEAP32[($5 + 80 | 0) >> 2] = (HEAP32[($5 + 96 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 116 | 0) >> 2] | 0, HEAP32[($5 + 92 | 0) >> 2] | 0) | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($5 + 84 | 0) >> 2] | 0 | 0) == (2 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
if ((HEAP32[($5 + 84 | 0) >> 2] | 0 | 0) == (3 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
if ((HEAP32[($5 + 84 | 0) >> 2] | 0 | 0) == (5 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(84086 | 0, 74895 | 0, 282 | 0, 82004 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btStridingMeshInterface__getScaling_28_29_20const(HEAP32[($6 + 4 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 76 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($5 + 72 | 0) >> 2] = 2;
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 84 | 0) >> 2] | 0 | 0) == (3 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
$93 = (HEAPU16[((HEAP32[($5 + 80 | 0) >> 2] | 0) + ((HEAP32[($5 + 72 | 0) >> 2] | 0) << 1 | 0) | 0) >> 1] | 0) & 65535 | 0;
|
|
break label$4;
|
|
}
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!((HEAP32[($5 + 84 | 0) >> 2] | 0 | 0) == (2 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
$107 = HEAP32[((HEAP32[($5 + 80 | 0) >> 2] | 0) + ((HEAP32[($5 + 72 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
break label$6;
|
|
}
|
|
$107 = (HEAPU8[((HEAP32[($5 + 80 | 0) >> 2] | 0) + (HEAP32[($5 + 72 | 0) >> 2] | 0) | 0) >> 0] | 0) & 255 | 0;
|
|
}
|
|
$93 = $107;
|
|
}
|
|
HEAP32[($5 + 68 | 0) >> 2] = $93;
|
|
label$8 : {
|
|
label$9 : {
|
|
if (HEAP32[($5 + 104 | 0) >> 2] | 0) {
|
|
break label$9
|
|
}
|
|
HEAP32[($5 + 64 | 0) >> 2] = (HEAP32[($5 + 112 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 68 | 0) >> 2] | 0, HEAP32[($5 + 100 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(HEAP32[($5 + 64 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const(HEAP32[($5 + 76 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 64 | 0) >> 2] | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getY_28_29_20const(HEAP32[($5 + 76 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 64 | 0) >> 2] | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getZ_28_29_20const(HEAP32[($5 + 76 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 48 | 0 | 0, $5 + 44 | 0 | 0, $5 + 40 | 0 | 0, $5 + 36 | 0 | 0) | 0;
|
|
$157 = ($6 + 12 | 0) + ((HEAP32[($5 + 72 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 52 | 0) >> 2] | 0;
|
|
$542 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $157;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $542;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$159 = 8;
|
|
i64toi32_i32$2 = ($5 + 48 | 0) + $159 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$555 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $157 + $159 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $555;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$8;
|
|
}
|
|
HEAP32[($5 + 32 | 0) >> 2] = (HEAP32[($5 + 112 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 68 | 0) >> 2] | 0, HEAP32[($5 + 100 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[(HEAP32[($5 + 32 | 0) >> 2] | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const(HEAP32[($5 + 76 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[((HEAP32[($5 + 32 | 0) >> 2] | 0) + 8 | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getY_28_29_20const(HEAP32[($5 + 76 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[((HEAP32[($5 + 32 | 0) >> 2] | 0) + 16 | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getZ_28_29_20const(HEAP32[($5 + 76 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 16 | 0 | 0, $5 + 12 | 0 | 0, $5 + 8 | 0 | 0, $5 + 4 | 0 | 0) | 0;
|
|
$208 = ($6 + 12 | 0) + ((HEAP32[($5 + 72 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
$656 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $208;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $656;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$210 = 8;
|
|
i64toi32_i32$2 = ($5 + 16 | 0) + $210 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$669 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $208 + $210 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $669;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
HEAP32[($5 + 72 | 0) >> 2] = (HEAP32[($5 + 72 | 0) >> 2] | 0) + -1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
$219 = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$219 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($219, $6 + 12 | 0, HEAP32[($5 + 120 | 0) >> 2] | 0, HEAP32[($5 + 116 | 0) >> 2] | 0);
|
|
$226 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$226 >> 2] | 0) + 24 | 0) >> 2] | 0 | 0]($226, HEAP32[($5 + 120 | 0) >> 2] | 0);
|
|
__stack_pointer = $5 + 128 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btBvhTriangleMeshShape_cpp() {
|
|
__cxx_global_var_init_30();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_31() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114092 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btCapsuleShape__btCapsuleShape_28float_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $6 = 0, $20 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btConvexInternalShape__btConvexInternalShape_28_29($6 | 0) | 0;
|
|
HEAP32[$6 >> 2] = 97628 + 8 | 0;
|
|
HEAPF32[($6 + 52 | 0) >> 2] = Math_fround(HEAPF32[($5 + 8 | 0) >> 2]);
|
|
HEAP32[($6 + 4 | 0) >> 2] = 10;
|
|
HEAP32[($6 + 60 | 0) >> 2] = 1;
|
|
HEAPF32[$5 >> 2] = Math_fround(Math_fround(.5) * Math_fround(HEAPF32[($5 + 4 | 0) >> 2]));
|
|
$20 = $5 + 8 | 0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 36 | 0 | 0, $20 | 0, $5 | 0, $20 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btCapsuleShape__localGetSupportingVertexWithoutMargin_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $6 = 0, $23 = 0, $24 = 0, $97 = 0, $120 = 0, $154 = 0, $177 = 0, $241 = 0, $245 = 0, $88 = Math_fround(0), $386 = 0, $390 = 0, $423 = 0, $436 = 0, $145 = Math_fround(0), $505 = 0, $509 = 0, $542 = 0, $555 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 144 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 140 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 136 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 140 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 132 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 128 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 124 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $5 + 132 | 0 | 0, $5 + 128 | 0 | 0, $5 + 124 | 0 | 0) | 0;
|
|
HEAPF32[($5 + 120 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
$23 = HEAP32[($5 + 136 | 0) >> 2] | 0;
|
|
$24 = 8;
|
|
i64toi32_i32$2 = $23 + $24 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$241 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 104 | 0) + $24 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $241;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $23;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$245 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 104 | 0) >> 2] = $245;
|
|
HEAP32[($5 + 108 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($5 + 104 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 100 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 100 | 0) >> 2]) < Math_fround(9.999999747378752e-05) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($5 + 96 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($5 + 92 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 88 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 104 | 0 | 0, $5 + 96 | 0 | 0, $5 + 92 | 0 | 0, $5 + 88 | 0 | 0);
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(1.0) / Math_fround(btSqrt_28float_29(Math_fround(Math_fround(HEAPF32[($5 + 100 | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 84 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__operator___28float_20const__29_1($5 + 104 | 0 | 0, $5 + 84 | 0 | 0) | 0;
|
|
}
|
|
btVector3__btVector3_28_29($5 + 64 | 0 | 0) | 0;
|
|
HEAPF32[($5 + 40 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 36 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 32 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 44 | 0 | 0, $5 + 40 | 0 | 0, $5 + 36 | 0 | 0, $5 + 32 | 0 | 0) | 0;
|
|
$88 = Math_fround(btCapsuleShape__getHalfHeight_28_29_20const($6 | 0));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($5 + 44 | 0 | 0) | 0) + ((btCapsuleShape__getUpAxis_28_29_20const($6 | 0) | 0) << 2 | 0) | 0, wasm2js_f32$0 = $88), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$97 = 8;
|
|
i64toi32_i32$2 = ($5 + 44 | 0) + $97 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$386 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 64 | 0) + $97 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $386;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[($5 + 44 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 48 | 0) >> 2] | 0;
|
|
$390 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 64 | 0) >> 2] = $390;
|
|
HEAP32[($5 + 68 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($5 + 104 | 0 | 0, $5 + 64 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 60 | 0) >> 2] = wasm2js_f32$0;
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 60 | 0) >> 2]) > Math_fround(HEAPF32[($5 + 120 | 0) >> 2]) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAPF32[($5 + 120 | 0) >> 2] = Math_fround(HEAPF32[($5 + 60 | 0) >> 2]);
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 64 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 68 | 0) >> 2] | 0;
|
|
$423 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $423;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$120 = 8;
|
|
i64toi32_i32$2 = ($5 + 64 | 0) + $120 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$436 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0 + $120 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $436;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 4 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 16 | 0 | 0, $5 + 12 | 0 | 0, $5 + 8 | 0 | 0, $5 + 4 | 0 | 0) | 0;
|
|
$145 = Math_fround(-Math_fround(btCapsuleShape__getHalfHeight_28_29_20const($6 | 0)));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($5 + 16 | 0 | 0) | 0) + ((btCapsuleShape__getUpAxis_28_29_20const($6 | 0) | 0) << 2 | 0) | 0, wasm2js_f32$0 = $145), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$154 = 8;
|
|
i64toi32_i32$2 = ($5 + 16 | 0) + $154 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$505 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 64 | 0) + $154 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $505;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
$509 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 64 | 0) >> 2] = $509;
|
|
HEAP32[($5 + 68 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($5 + 104 | 0 | 0, $5 + 64 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 60 | 0) >> 2] = wasm2js_f32$0;
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 60 | 0) >> 2]) > Math_fround(HEAPF32[($5 + 120 | 0) >> 2]) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAPF32[($5 + 120 | 0) >> 2] = Math_fround(HEAPF32[($5 + 60 | 0) >> 2]);
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 64 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 68 | 0) >> 2] | 0;
|
|
$542 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $542;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$177 = 8;
|
|
i64toi32_i32$2 = ($5 + 64 | 0) + $177 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$555 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0 + $177 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $555;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
__stack_pointer = $5 + 144 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCapsuleShape__batchedUnitVectorGetSupportingVertexWithoutMargin_28btVector3_20const__2c_20btVector3__2c_20int_29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $7 = 0, $52 = 0, $76 = 0, $78 = 0, $112 = 0, $136 = 0, $138 = 0, $43 = Math_fround(0), $266 = 0, $270 = 0, $311 = 0, $324 = 0, $103 = Math_fround(0), $393 = 0, $397 = 0, $438 = 0, $451 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 108 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 104 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 100 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 96 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 108 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 92 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 92 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 96 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[($6 + 88 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
HEAP32[($6 + 84 | 0) >> 2] = (HEAP32[($6 + 104 | 0) >> 2] | 0) + ((HEAP32[($6 + 92 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 64 | 0 | 0) | 0;
|
|
HEAPF32[($6 + 40 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 36 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 32 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 44 | 0 | 0, $6 + 40 | 0 | 0, $6 + 36 | 0 | 0, $6 + 32 | 0 | 0) | 0;
|
|
$43 = Math_fround(btCapsuleShape__getHalfHeight_28_29_20const($7 | 0));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($6 + 44 | 0 | 0) | 0) + ((btCapsuleShape__getUpAxis_28_29_20const($7 | 0) | 0) << 2 | 0) | 0, wasm2js_f32$0 = $43), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$52 = 8;
|
|
i64toi32_i32$2 = ($6 + 44 | 0) + $52 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$266 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 64 | 0) + $52 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $266;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 48 | 0) >> 2] | 0;
|
|
$270 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 64 | 0) >> 2] = $270;
|
|
HEAP32[($6 + 68 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($6 + 84 | 0) >> 2] | 0 | 0, $6 + 64 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 60 | 0) >> 2] = wasm2js_f32$0;
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 60 | 0) >> 2]) > Math_fround(HEAPF32[($6 + 88 | 0) >> 2]) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAPF32[($6 + 88 | 0) >> 2] = Math_fround(HEAPF32[($6 + 60 | 0) >> 2]);
|
|
$76 = (HEAP32[($6 + 100 | 0) >> 2] | 0) + ((HEAP32[($6 + 92 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 64 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 68 | 0) >> 2] | 0;
|
|
$311 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $76;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $311;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$78 = 8;
|
|
i64toi32_i32$2 = ($6 + 64 | 0) + $78 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$324 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $76 + $78 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $324;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
HEAPF32[($6 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 4 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 16 | 0 | 0, $6 + 12 | 0 | 0, $6 + 8 | 0 | 0, $6 + 4 | 0 | 0) | 0;
|
|
$103 = Math_fround(-Math_fround(btCapsuleShape__getHalfHeight_28_29_20const($7 | 0)));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($6 + 16 | 0 | 0) | 0) + ((btCapsuleShape__getUpAxis_28_29_20const($7 | 0) | 0) << 2 | 0) | 0, wasm2js_f32$0 = $103), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$112 = 8;
|
|
i64toi32_i32$2 = ($6 + 16 | 0) + $112 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$393 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 64 | 0) + $112 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $393;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 20 | 0) >> 2] | 0;
|
|
$397 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 64 | 0) >> 2] = $397;
|
|
HEAP32[($6 + 68 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($6 + 84 | 0) >> 2] | 0 | 0, $6 + 64 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 60 | 0) >> 2] = wasm2js_f32$0;
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 60 | 0) >> 2]) > Math_fround(HEAPF32[($6 + 88 | 0) >> 2]) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAPF32[($6 + 88 | 0) >> 2] = Math_fround(HEAPF32[($6 + 60 | 0) >> 2]);
|
|
$136 = (HEAP32[($6 + 100 | 0) >> 2] | 0) + ((HEAP32[($6 + 92 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 64 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 68 | 0) >> 2] | 0;
|
|
$438 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $136;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $438;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$138 = 8;
|
|
i64toi32_i32$2 = ($6 + 64 | 0) + $138 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$451 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $136 + $138 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $451;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
HEAP32[($6 + 92 | 0) >> 2] = (HEAP32[($6 + 92 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 112 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCapsuleShape__calculateLocalInertia_28float_2c_20btVector3__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $19 = 0, $28 = 0, $20 = Math_fround(0), $68 = Math_fround(0), $75 = Math_fround(0), $82 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 128 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 124 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 120 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 116 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 124 | 0) >> 2] | 0;
|
|
btTransform__btTransform_28_29($5 + 52 | 0 | 0) | 0;
|
|
btTransform__setIdentity_28_29($5 + 52 | 0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btCapsuleShape__getRadius_28_29_20const($6 | 0))), HEAPF32[(wasm2js_i32$0 + 48 | 0) >> 2] = wasm2js_f32$0;
|
|
$19 = $5 + 48 | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 32 | 0 | 0, $19 | 0, $19 | 0, $19 | 0) | 0;
|
|
$20 = Math_fround(btCapsuleShape__getHalfHeight_28_29_20const($6 | 0));
|
|
$28 = (btVector3__operator_20float__28_29($5 + 32 | 0 | 0) | 0) + ((btCapsuleShape__getUpAxis_28_29_20const($6 | 0) | 0) << 2 | 0) | 0;
|
|
HEAPF32[$28 >> 2] = Math_fround(Math_fround(HEAPF32[$28 >> 2]) + $20);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(2.0) * Math_fround(HEAPF32[(btVector3__operator_20float__28_29($5 + 32 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(2.0) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($5 + 32 | 0 | 0) | 0) + 4 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(2.0) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($5 + 32 | 0 | 0) | 0) + 8 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 28 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 28 | 0) >> 2]));
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 24 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 24 | 0) >> 2]));
|
|
HEAPF32[($5 + 8 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 20 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 20 | 0) >> 2]));
|
|
HEAPF32[($5 + 4 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 120 | 0) >> 2]) * Math_fround(.0833333283662796));
|
|
$68 = Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2]) * Math_fround(Math_fround(HEAPF32[($5 + 12 | 0) >> 2]) + Math_fround(HEAPF32[($5 + 8 | 0) >> 2])));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($5 + 116 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $68), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$75 = Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2]) * Math_fround(Math_fround(HEAPF32[($5 + 16 | 0) >> 2]) + Math_fround(HEAPF32[($5 + 8 | 0) >> 2])));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($5 + 116 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $75), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$82 = Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2]) * Math_fround(Math_fround(HEAPF32[($5 + 16 | 0) >> 2]) + Math_fround(HEAPF32[($5 + 12 | 0) >> 2])));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($5 + 116 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $82), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
__stack_pointer = $5 + 128 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCapsuleShape___btCapsuleShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConvexInternalShape___btConvexInternalShape_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCapsuleShape___btCapsuleShape_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCapsuleShape___btCapsuleShape_28_29($4 | 0) | 0;
|
|
btCapsuleShape__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCapsuleShape__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCapsuleShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $7 = 0, $40 = 0, $41 = 0, $78 = 0, $80 = 0, $93 = 0, $95 = 0, $25 = Math_fround(0), $198 = 0, $202 = 0, $257 = 0, $270 = 0, $288 = 0, $298 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 160 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 156 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 152 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 148 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 144 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 156 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btCapsuleShape__getRadius_28_29_20const($7 | 0))), HEAPF32[(wasm2js_i32$0 + 124 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btCapsuleShape__getRadius_28_29_20const($7 | 0))), HEAPF32[(wasm2js_i32$0 + 120 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btCapsuleShape__getRadius_28_29_20const($7 | 0))), HEAPF32[(wasm2js_i32$0 + 116 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 128 | 0 | 0, $6 + 124 | 0 | 0, $6 + 120 | 0 | 0, $6 + 116 | 0 | 0) | 0;
|
|
$25 = Math_fround(Math_fround(btCapsuleShape__getRadius_28_29_20const($7 | 0)) + Math_fround(btCapsuleShape__getHalfHeight_28_29_20const($7 | 0)));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($6 + 128 | 0 | 0) | 0) + ((HEAP32[($7 + 60 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $25), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
btMatrix3x3__absolute_28_29_20const($6 + 68 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($6 + 152 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$40 = btTransform__getOrigin_28_29_20const(HEAP32[($6 + 152 | 0) >> 2] | 0 | 0) | 0;
|
|
$41 = 8;
|
|
i64toi32_i32$2 = $40 + $41 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$198 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 48 | 0) + $41 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $198;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $40;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$202 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 48 | 0) >> 2] = $202;
|
|
HEAP32[($6 + 52 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__dot3_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29_20const($6 + 32 | 0 | 0, $6 + 128 | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($6 + 68 | 0 | 0, 0 | 0) | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($6 + 68 | 0 | 0, 1 | 0) | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($6 + 68 | 0 | 0, 2 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 16 | 0 | 0, $6 + 48 | 0 | 0, $6 + 32 | 0 | 0);
|
|
$78 = HEAP32[($6 + 148 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 20 | 0) >> 2] | 0;
|
|
$257 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $78;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $257;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$80 = 8;
|
|
i64toi32_i32$2 = ($6 + 16 | 0) + $80 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$270 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $78 + $80 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $270;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 | 0, $6 + 48 | 0 | 0, $6 + 32 | 0 | 0);
|
|
$93 = HEAP32[($6 + 144 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[$6 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
$288 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $93;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $288;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$95 = 8;
|
|
i64toi32_i32$2 = $6 + $95 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$298 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $93 + $95 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $298;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $6 + 160 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCapsuleShape__setLocalScaling_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $22 = 0, $24 = 0, $92 = 0, $105 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 40 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 44 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_3($4 + 24 | 0 | 0, $5 + 36 | 0 | 0, $5 + 20 | 0 | 0);
|
|
btConvexInternalShape__setLocalScaling_28btVector3_20const__29($5 | 0, HEAP32[($4 + 40 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($4 + 8 | 0 | 0, $4 + 24 | 0 | 0, HEAP32[($4 + 40 | 0) >> 2] | 0 | 0);
|
|
$22 = $5 + 36 | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$92 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $92;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$24 = 8;
|
|
i64toi32_i32$2 = ($4 + 8 | 0) + $24 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$105 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $24 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $105;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = ((HEAP32[($5 + 60 | 0) >> 2] | 0) + 2 | 0 | 0) % (3 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($5 + 36 | 0 | 0) | 0) + ((HEAP32[($4 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 52 | 0) >> 2] = wasm2js_f32$0;
|
|
__stack_pointer = $4 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCapsuleShape__getName_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 81655 | 0;
|
|
}
|
|
|
|
function btCapsuleShape__getAnisotropicRollingFrictionDirection_28_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 4 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[$4 >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $4 + 8 | 0 | 0, $4 + 4 | 0 | 0, $4 | 0) | 0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($0 | 0) | 0) + ((btCapsuleShape__getUpAxis_28_29_20const($5 | 0) | 0) << 2 | 0) | 0, wasm2js_f32$0 = Math_fround(1.0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCapsuleShape__setMargin_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
return;
|
|
}
|
|
|
|
function btCapsuleShape__calculateSerializeBufferSize_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 60 | 0;
|
|
}
|
|
|
|
function btCapsuleShape__serialize_28void__2c_20btSerializer__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
btConvexInternalShape__serialize_28void__2c_20btSerializer__29_20const($6 | 0, HEAP32[$5 >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[((HEAP32[$5 >> 2] | 0) + 52 | 0) >> 2] = HEAP32[($6 + 60 | 0) >> 2] | 0;
|
|
HEAP8[((HEAP32[$5 >> 2] | 0) + 56 | 0) >> 0] = 0;
|
|
HEAP8[((HEAP32[$5 >> 2] | 0) + 57 | 0) >> 0] = 0;
|
|
HEAP8[((HEAP32[$5 >> 2] | 0) + 58 | 0) >> 0] = 0;
|
|
HEAP8[((HEAP32[$5 >> 2] | 0) + 59 | 0) >> 0] = 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return 83594 | 0;
|
|
}
|
|
|
|
function btConvexInternalShape__getNumPreferredPenetrationDirections_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 0 | 0;
|
|
}
|
|
|
|
function btConvexInternalShape__getPreferredPenetrationDirection_28int_2c_20btVector3__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
__assert_fail(86177 | 0, 79195 | 0, 132 | 0, 76388 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btCapsuleShape_cpp() {
|
|
__cxx_global_var_init_31();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_32() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114096 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionShape__getBoundingSphere_28btVector3__2c_20float__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $6 = 0, $63 = 0, $65 = 0, $44 = Math_fround(0), $192 = 0, $205 = 0;
|
|
$5 = __stack_pointer - 160 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 156 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 152 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 148 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 156 | 0) >> 2] | 0;
|
|
btTransform__btTransform_28_29($5 + 84 | 0 | 0) | 0;
|
|
btTransform__setIdentity_28_29($5 + 84 | 0 | 0);
|
|
btVector3__btVector3_28_29($5 + 68 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 52 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($6, $5 + 84 | 0, $5 + 68 | 0, $5 + 52 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 36 | 0 | 0, $5 + 52 | 0 | 0, $5 + 68 | 0 | 0);
|
|
$44 = Math_fround(Math_fround(btVector3__length_28_29_20const($5 + 36 | 0 | 0)) * Math_fround(.5));
|
|
HEAPF32[(HEAP32[($5 + 148 | 0) >> 2] | 0) >> 2] = $44;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($5 + 4 | 0 | 0, $5 + 68 | 0 | 0, $5 + 52 | 0 | 0);
|
|
HEAPF32[$5 >> 2] = Math_fround(.5);
|
|
operator__28btVector3_20const__2c_20float_20const__29($5 + 20 | 0 | 0, $5 + 4 | 0 | 0, $5 | 0);
|
|
$63 = HEAP32[($5 + 152 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
$192 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $63;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $192;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$65 = 8;
|
|
i64toi32_i32$2 = ($5 + 20 | 0) + $65 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$205 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $63 + $65 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $205;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $5 + 160 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionShape__getContactBreakingThreshold_28float_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $5 = 0, $10 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$10 = Math_fround(Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($5)) * Math_fround(HEAPF32[($4 + 8 | 0) >> 2]));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return Math_fround($10);
|
|
}
|
|
|
|
function btCollisionShape__getAngularMotionDisc_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $19 = Math_fround(0), $22 = Math_fround(0);
|
|
$3 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 28 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 28 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($3 + 12 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($4, $3 + 12 | 0, $3 + 8 | 0);
|
|
$19 = Math_fround(btVector3__length_28_29_20const($3 + 12 | 0 | 0));
|
|
HEAPF32[($3 + 8 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($3 + 8 | 0) >> 2]) + $19);
|
|
$22 = Math_fround(HEAPF32[($3 + 8 | 0) >> 2]);
|
|
__stack_pointer = $3 + 32 | 0;
|
|
return Math_fround($22);
|
|
}
|
|
|
|
function btCollisionShape__calculateTemporalAabb_28btTransform_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20btVector3__2c_20btVector3__29_20const($0, $1, $2, $3, $4, $5, $6) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = Math_fround($4);
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
var $9 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $10 = 0, $126 = 0, $139 = 0, $141 = 0, $159 = 0, $161 = 0, $55 = Math_fround(0), $62 = Math_fround(0), $79 = Math_fround(0), $86 = Math_fround(0), $103 = Math_fround(0), $110 = Math_fround(0), $478 = 0, $491 = 0, $518 = 0, $531 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$9 = __stack_pointer - 128 | 0;
|
|
__stack_pointer = $9;
|
|
HEAP32[($9 + 124 | 0) >> 2] = $0;
|
|
HEAP32[($9 + 120 | 0) >> 2] = $1;
|
|
HEAP32[($9 + 116 | 0) >> 2] = $2;
|
|
HEAP32[($9 + 112 | 0) >> 2] = $3;
|
|
HEAPF32[($9 + 108 | 0) >> 2] = $4;
|
|
HEAP32[($9 + 104 | 0) >> 2] = $5;
|
|
HEAP32[($9 + 100 | 0) >> 2] = $6;
|
|
$10 = HEAP32[($9 + 124 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$10 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($10, HEAP32[($9 + 120 | 0) >> 2] | 0, HEAP32[($9 + 104 | 0) >> 2] | 0, HEAP32[($9 + 100 | 0) >> 2] | 0);
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(HEAPF32[(btVector3__getX_28_29_20const(HEAP32[($9 + 100 | 0) >> 2] | 0 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 96 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(HEAPF32[(btVector3__getY_28_29_20const(HEAP32[($9 + 100 | 0) >> 2] | 0 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 92 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(HEAPF32[(btVector3__getZ_28_29_20const(HEAP32[($9 + 100 | 0) >> 2] | 0 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 88 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(HEAPF32[(btVector3__getX_28_29_20const(HEAP32[($9 + 104 | 0) >> 2] | 0 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 84 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(HEAPF32[(btVector3__getY_28_29_20const(HEAP32[($9 + 104 | 0) >> 2] | 0 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 80 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(HEAPF32[(btVector3__getZ_28_29_20const(HEAP32[($9 + 104 | 0) >> 2] | 0 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 76 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($9 + 60 | 0 | 0, HEAP32[($9 + 116 | 0) >> 2] | 0 | 0, $9 + 108 | 0 | 0);
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__x_28_29_20const($9 + 60 | 0 | 0) | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$55 = Math_fround(HEAPF32[(btVector3__x_28_29_20const($9 + 60 | 0 | 0) | 0) >> 2]);
|
|
HEAPF32[($9 + 96 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($9 + 96 | 0) >> 2]) + $55);
|
|
break label$1;
|
|
}
|
|
$62 = Math_fround(HEAPF32[(btVector3__x_28_29_20const($9 + 60 | 0 | 0) | 0) >> 2]);
|
|
HEAPF32[($9 + 84 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($9 + 84 | 0) >> 2]) + $62);
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__y_28_29_20const($9 + 60 | 0 | 0) | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$79 = Math_fround(HEAPF32[(btVector3__y_28_29_20const($9 + 60 | 0 | 0) | 0) >> 2]);
|
|
HEAPF32[($9 + 92 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($9 + 92 | 0) >> 2]) + $79);
|
|
break label$3;
|
|
}
|
|
$86 = Math_fround(HEAPF32[(btVector3__y_28_29_20const($9 + 60 | 0 | 0) | 0) >> 2]);
|
|
HEAPF32[($9 + 80 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($9 + 80 | 0) >> 2]) + $86);
|
|
}
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__z_28_29_20const($9 + 60 | 0 | 0) | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$103 = Math_fround(HEAPF32[(btVector3__z_28_29_20const($9 + 60 | 0 | 0) | 0) >> 2]);
|
|
HEAPF32[($9 + 88 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($9 + 88 | 0) >> 2]) + $103);
|
|
break label$5;
|
|
}
|
|
$110 = Math_fround(HEAPF32[(btVector3__z_28_29_20const($9 + 60 | 0 | 0) | 0) >> 2]);
|
|
HEAPF32[($9 + 76 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($9 + 76 | 0) >> 2]) + $110);
|
|
}
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(btVector3__length_28_29_20const(HEAP32[($9 + 112 | 0) >> 2] | 0 | 0)) * Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$10 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($10))) * Math_fround(HEAPF32[($9 + 108 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 56 | 0) >> 2] = wasm2js_f32$0;
|
|
$126 = $9 + 56 | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($9 + 40 | 0 | 0, $126 | 0, $126 | 0, $126 | 0) | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($9 + 24 | 0 | 0, $9 + 84 | 0 | 0, $9 + 80 | 0 | 0, $9 + 76 | 0 | 0) | 0;
|
|
$139 = HEAP32[($9 + 104 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$0 = HEAP32[($9 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 28 | 0) >> 2] | 0;
|
|
$478 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $139;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $478;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$141 = 8;
|
|
i64toi32_i32$2 = ($9 + 24 | 0) + $141 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$491 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $139 + $141 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $491;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($9 + 8 | 0 | 0, $9 + 96 | 0 | 0, $9 + 92 | 0 | 0, $9 + 88 | 0 | 0) | 0;
|
|
$159 = HEAP32[($9 + 100 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$0 = HEAP32[($9 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 12 | 0) >> 2] | 0;
|
|
$518 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $159;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $518;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$161 = 8;
|
|
i64toi32_i32$2 = ($9 + 8 | 0) + $161 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$531 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $159 + $161 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $531;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__operator___28btVector3_20const__29(HEAP32[($9 + 104 | 0) >> 2] | 0 | 0, $9 + 40 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1(HEAP32[($9 + 100 | 0) >> 2] | 0 | 0, $9 + 40 | 0 | 0) | 0;
|
|
__stack_pointer = $9 + 128 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionShape__serialize_28void__2c_20btSerializer__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $8 = 0, $12 = 0, $26 = 0, $16 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 16 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
$8 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 40 | 0) >> 2] | 0 | 0]($8, $6) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$12 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
$16 = FUNCTION_TABLE[HEAP32[((HEAP32[$12 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($12, HEAP32[($5 + 12 | 0) >> 2] | 0) | 0;
|
|
HEAP32[(HEAP32[($5 + 16 | 0) >> 2] | 0) >> 2] = $16;
|
|
label$1 : {
|
|
if (!((HEAP32[(HEAP32[($5 + 16 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$26 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$26 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($26, HEAP32[($5 + 12 | 0) >> 2] | 0);
|
|
}
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 8 | 0) >> 2] = 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return 83454 | 0;
|
|
}
|
|
|
|
function btCollisionShape__serializeSingleShape_28btSerializer__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $9 = 0, $21 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 52 | 0) >> 2] | 0 | 0]($5) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
$9 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$9 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($9, HEAP32[($4 + 20 | 0) >> 2] | 0, 1) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($5, HEAP32[((HEAP32[($4 + 16 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0, HEAP32[($4 + 24 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$21 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$21 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($21, HEAP32[($4 + 16 | 0) >> 2] | 0, HEAP32[($4 + 12 | 0) >> 2] | 0, 1346455635, $5);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionShape___btCollisionShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btCollisionShape___btCollisionShape_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btCollisionShape__calculateSerializeBufferSize_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 12 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btCollisionShape_cpp() {
|
|
__cxx_global_var_init_32();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_33() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114100 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundShape__btCompoundShape_28bool_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $7 = 0, $66 = 0, $81 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 56 | 0) >> 2] = $0;
|
|
HEAP8[($5 + 55 | 0) >> 0] = $1;
|
|
HEAP32[($5 + 48 | 0) >> 2] = $2;
|
|
$7 = HEAP32[($5 + 56 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 60 | 0) >> 2] = $7;
|
|
btCollisionShape__btCollisionShape_28_29($7 | 0) | 0;
|
|
HEAP32[$7 >> 2] = 97860 + 8 | 0;
|
|
btAlignedObjectArray_btCompoundShapeChild___btAlignedObjectArray_28_29($7 + 20 | 0 | 0) | 0;
|
|
HEAPF32[($5 + 44 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAPF32[($5 + 40 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAPF32[($5 + 36 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 40 | 0 | 0, $5 + 44 | 0 | 0, $5 + 40 | 0 | 0, $5 + 36 | 0 | 0) | 0;
|
|
HEAPF32[($5 + 32 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
HEAPF32[($5 + 28 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
HEAPF32[($5 + 24 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 56 | 0 | 0, $5 + 32 | 0 | 0, $5 + 28 | 0 | 0, $5 + 24 | 0 | 0) | 0;
|
|
HEAP32[($7 + 72 | 0) >> 2] = 0;
|
|
HEAP32[($7 + 76 | 0) >> 2] = 1;
|
|
HEAPF32[($7 + 80 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 20 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(1.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 84 | 0 | 0, $5 + 20 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0) | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = 31;
|
|
label$1 : {
|
|
if (!((HEAPU8[($5 + 55 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(40 | 0, 16 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
$66 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
btDbvt__btDbvt_28_29($66 | 0) | 0;
|
|
HEAP32[($7 + 72 | 0) >> 2] = $66;
|
|
label$2 : {
|
|
if ((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) == (HEAP32[($7 + 72 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(81981 | 0, 75140 | 0, 35 | 0, 81668 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
}
|
|
btAlignedObjectArray_btCompoundShapeChild___reserve_28int_29($7 + 20 | 0 | 0, HEAP32[($5 + 48 | 0) >> 2] | 0 | 0);
|
|
$81 = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 64 | 0;
|
|
return $81 | 0;
|
|
}
|
|
|
|
function btCollisionShape__btCollisionShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 97760 + 8 | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 35;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCompoundShapeChild___btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btCompoundShapeChild_2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btCompoundShapeChild___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCompoundShapeChild___reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btCompoundShapeChild___capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btCompoundShapeChild___allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btCompoundShapeChild___copy_28int_2c_20int_2c_20btCompoundShapeChild__29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btCompoundShapeChild___size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btCompoundShapeChild___destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btCompoundShapeChild___size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btCompoundShapeChild___deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btCompoundShapeChild_2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCompoundShapeChild___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCompoundShapeChild___capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCompoundShapeChild___allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btCompoundShapeChild_2c_2016u___allocate_28int_2c_20btCompoundShapeChild_20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCompoundShapeChild___copy_28int_2c_20int_2c_20btCompoundShapeChild__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btCompoundShapeChild__btCompoundShapeChild_28btCompoundShapeChild_20const__29(btCompoundShapeChild__operator_20new_28unsigned_20long_2c_20void__29(80 | 0, (HEAP32[($6 + 16 | 0) >> 2] | 0) + Math_imul(HEAP32[($6 + 12 | 0) >> 2] | 0, 80) | 0 | 0) | 0 | 0, (HEAP32[($7 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($6 + 12 | 0) >> 2] | 0, 80) | 0 | 0) | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCompoundShapeChild___destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCompoundShapeChild___deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btCompoundShapeChild_2c_2016u___deallocate_28btCompoundShapeChild__29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundShape___btCompoundShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0, $19 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
HEAP32[$4 >> 2] = 97860 + 8 | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 72 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btDbvt___btDbvt_28_29(HEAP32[($4 + 72 | 0) >> 2] | 0 | 0) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 72 | 0) >> 2] | 0 | 0);
|
|
}
|
|
btAlignedObjectArray_btCompoundShapeChild____btAlignedObjectArray_28_29($4 + 20 | 0 | 0) | 0;
|
|
btCollisionShape___btCollisionShape_28_29($4 | 0) | 0;
|
|
$19 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $19 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCompoundShapeChild____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btCompoundShapeChild___clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCompoundShapeChild___clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btCompoundShapeChild___destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btCompoundShapeChild___size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btCompoundShapeChild___deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btCompoundShapeChild___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundShape___btCompoundShape_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[839 | 0]($4) | 0;
|
|
btCompoundShape__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundShape__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundShape__addChildShape_28btTransform_20const__2c_20btCollisionShape__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $21 = 0, $31 = 0, $77 = Math_fround(0), $113 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 176 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 172 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 168 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 164 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 172 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 76 | 0) >> 2] = (HEAP32[($6 + 76 | 0) >> 2] | 0) + 1 | 0;
|
|
btCompoundShapeChild__btCompoundShapeChild_28_29($5 + 84 | 0 | 0) | 0;
|
|
HEAP32[($5 + 160 | 0) >> 2] = 0;
|
|
btTransform__operator__28btTransform_20const__29($5 + 84 | 0 | 0, HEAP32[($5 + 168 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($5 + 148 | 0) >> 2] = HEAP32[($5 + 164 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btCollisionShape__getShapeType_28_29_20const(HEAP32[($5 + 164 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 152 | 0) >> 2] = wasm2js_i32$1;
|
|
$21 = HEAP32[($5 + 164 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$21 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($21))), HEAPF32[(wasm2js_i32$0 + 156 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28_29($5 + 68 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 52 | 0 | 0) | 0;
|
|
$31 = HEAP32[($5 + 164 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$31 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($31, HEAP32[($5 + 168 | 0) >> 2] | 0, $5 + 68 | 0, $5 + 52 | 0);
|
|
HEAP32[($5 + 48 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($5 + 48 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 40 | 0 | 0) | 0) + ((HEAP32[($5 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) > Math_fround(HEAPF32[((btVector3__operator_20float__28_29($5 + 68 | 0 | 0) | 0) + ((HEAP32[($5 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$77 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($5 + 68 | 0 | 0) | 0) + ((HEAP32[($5 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($6 + 40 | 0 | 0) | 0) + ((HEAP32[($5 + 48 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $77), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
}
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 56 | 0 | 0) | 0) + ((HEAP32[($5 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) < Math_fround(HEAPF32[((btVector3__operator_20float__28_29($5 + 52 | 0 | 0) | 0) + ((HEAP32[($5 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$113 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($5 + 52 | 0 | 0) | 0) + ((HEAP32[($5 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($6 + 56 | 0 | 0) | 0) + ((HEAP32[($5 + 48 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $113), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
}
|
|
HEAP32[($5 + 48 | 0) >> 2] = (HEAP32[($5 + 48 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[($6 + 72 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btDbvtAabbMm__FromMM_28btVector3_20const__2c_20btVector3_20const__29($5 + 16 | 0 | 0, $5 + 68 | 0 | 0, $5 + 52 | 0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btCompoundShapeChild___size_28_29_20const($6 + 20 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btDbvt__insert_28btDbvtAabbMm_20const__2c_20void__29(HEAP32[($6 + 72 | 0) >> 2] | 0 | 0, $5 + 16 | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 160 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
btAlignedObjectArray_btCompoundShapeChild___push_back_28btCompoundShapeChild_20const__29($6 + 20 | 0 | 0, $5 + 84 | 0 | 0);
|
|
__stack_pointer = $5 + 176 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundShapeChild__btCompoundShapeChild_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btTransform__btTransform_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCompoundShapeChild___push_back_28btCompoundShapeChild_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btCompoundShapeChild___size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btCompoundShapeChild___capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btCompoundShapeChild___reserve_28int_29($5 | 0, btAlignedObjectArray_btCompoundShapeChild___allocSize_28int_29($5 | 0, btAlignedObjectArray_btCompoundShapeChild___size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
btCompoundShapeChild__btCompoundShapeChild_28btCompoundShapeChild_20const__29(btCompoundShapeChild__operator_20new_28unsigned_20long_2c_20void__29(80 | 0, (HEAP32[($5 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 4 | 0) >> 2] | 0, 80) | 0 | 0) | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCompoundShapeChild___allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btCompoundShapeChild__operator_20new_28unsigned_20long_2c_20void__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return HEAP32[($4 + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btCompoundShapeChild__btCompoundShapeChild_28btCompoundShapeChild_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $5 = 0, $8 = 0, $13 = 0, $46 = 0, $56 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btTransform__btTransform_28btTransform_20const__29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
$8 = $5 + 64 | 0;
|
|
i64toi32_i32$2 = (HEAP32[($4 + 8 | 0) >> 2] | 0) + 64 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$46 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $8;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $46;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$13 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $13 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$56 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8 + $13 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $56;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btCompoundShape__updateChildTransform_28int_2c_20btTransform_20const__2c_20bool_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $8 = 0, $31 = 0, $9 = 0;
|
|
$6 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 76 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 72 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 68 | 0) >> 2] = $2;
|
|
HEAP8[($6 + 67 | 0) >> 0] = $3;
|
|
$8 = HEAP32[($6 + 76 | 0) >> 2] | 0;
|
|
$9 = HEAP32[($6 + 68 | 0) >> 2] | 0;
|
|
btTransform__operator__28btTransform_20const__29(btAlignedObjectArray_btCompoundShapeChild___operator_5b_5d_28int_29($8 + 20 | 0 | 0, HEAP32[($6 + 72 | 0) >> 2] | 0 | 0) | 0 | 0, $9 | 0) | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($8 + 72 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btVector3__btVector3_28_29($6 + 48 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 32 | 0 | 0) | 0;
|
|
$31 = HEAP32[((btAlignedObjectArray_btCompoundShapeChild___operator_5b_5d_28int_29($8 + 20 | 0 | 0, HEAP32[($6 + 72 | 0) >> 2] | 0 | 0) | 0) + 64 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$31 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($31, HEAP32[($6 + 68 | 0) >> 2] | 0, $6 + 48 | 0, $6 + 32 | 0);
|
|
btDbvtAabbMm__FromMM_28btVector3_20const__2c_20btVector3_20const__29($6 | 0, $6 + 48 | 0 | 0, $6 + 32 | 0 | 0);
|
|
btDbvt__update_28btDbvtNode__2c_20btDbvtAabbMm__29(HEAP32[($8 + 72 | 0) >> 2] | 0 | 0, HEAP32[((btAlignedObjectArray_btCompoundShapeChild___operator_5b_5d_28int_29($8 + 20 | 0 | 0, HEAP32[($6 + 72 | 0) >> 2] | 0 | 0) | 0) + 76 | 0) >> 2] | 0 | 0, $6 | 0);
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($6 + 67 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 68 | 0) >> 2] | 0 | 0]($8);
|
|
}
|
|
__stack_pointer = $6 + 80 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundShape__removeChildShapeByIndex_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $57 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 76 | 0) >> 2] = (HEAP32[($5 + 76 | 0) >> 2] | 0) + 1 | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btCompoundShapeChild___size_28_29_20const($5 + 20 | 0 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
}
|
|
__assert_fail(87603 | 0, 75140 | 0, 112 | 0, 66339 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$3 : {
|
|
if (!((HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
btDbvt__remove_28btDbvtNode__29(HEAP32[($5 + 72 | 0) >> 2] | 0 | 0, HEAP32[((btAlignedObjectArray_btCompoundShapeChild___operator_5b_5d_28int_29($5 + 20 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) + 76 | 0) >> 2] | 0 | 0);
|
|
}
|
|
btAlignedObjectArray_btCompoundShapeChild___swap_28int_2c_20int_29($5 + 20 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, (btAlignedObjectArray_btCompoundShapeChild___size_28_29_20const($5 + 20 | 0 | 0) | 0) - 1 | 0 | 0);
|
|
label$4 : {
|
|
if (!((HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$57 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = HEAP32[((btAlignedObjectArray_btCompoundShapeChild___operator_5b_5d_28int_29($5 + 20 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) + 76 | 0) >> 2] | 0, wasm2js_i32$1 = $57), HEAP32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
btAlignedObjectArray_btCompoundShapeChild___pop_back_28_29($5 + 20 | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCompoundShapeChild___swap_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 96 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 92 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 88 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 84 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 92 | 0) >> 2] | 0;
|
|
btCompoundShapeChild__btCompoundShapeChild_28btCompoundShapeChild_20const__29($5 + 4 | 0 | 0, (HEAP32[($6 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 88 | 0) >> 2] | 0, 80) | 0 | 0) | 0;
|
|
btCompoundShapeChild__operator__28btCompoundShapeChild_20const__29((HEAP32[($6 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 88 | 0) >> 2] | 0, 80) | 0 | 0, (HEAP32[($6 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 84 | 0) >> 2] | 0, 80) | 0 | 0) | 0;
|
|
btCompoundShapeChild__operator__28btCompoundShapeChild_20const__29((HEAP32[($6 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 84 | 0) >> 2] | 0, 80) | 0 | 0, $5 + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 96 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCompoundShapeChild___pop_back_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) > (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85800 | 0, 78192 | 0, 201 | 0, 77711 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + -1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundShapeChild__operator__28btCompoundShapeChild_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $5 = 0, $8 = 0, $13 = 0, $46 = 0, $56 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btTransform__operator__28btTransform_20const__29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
$8 = $5 + 64 | 0;
|
|
i64toi32_i32$2 = (HEAP32[($4 + 8 | 0) >> 2] | 0) + 64 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$46 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $8;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $46;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$13 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $13 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$56 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8 + $13 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $56;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btCompoundShape__removeChildShape_28btCollisionShape__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 76 | 0) >> 2] = (HEAP32[($5 + 76 | 0) >> 2] | 0) + 1 | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = (btAlignedObjectArray_btCompoundShapeChild___size_28_29_20const($5 + 20 | 0 | 0) | 0) - 1 | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$3 : {
|
|
if (!((HEAP32[((btAlignedObjectArray_btCompoundShapeChild___operator_5b_5d_28int_29($5 + 20 | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0) + 64 | 0) >> 2] | 0 | 0) == (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
btCompoundShape__removeChildShapeByIndex_28int_29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + -1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 68 | 0) >> 2] | 0 | 0]($5);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundShape__recalculateLocalAabb_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, i64toi32_i32$2 = 0, $21 = 0, $23 = 0, $45 = 0, $47 = 0, $73 = 0, $216 = 0, $229 = 0, $263 = 0, $276 = 0, $122 = Math_fround(0), $158 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$3 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 108 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 108 | 0) >> 2] | 0;
|
|
HEAPF32[($3 + 88 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAPF32[($3 + 84 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAPF32[($3 + 80 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 92 | 0 | 0, $3 + 88 | 0 | 0, $3 + 84 | 0 | 0, $3 + 80 | 0 | 0) | 0;
|
|
$21 = $4 + 40 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 92 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 96 | 0) >> 2] | 0;
|
|
$216 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $21;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $216;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$23 = 8;
|
|
i64toi32_i32$2 = ($3 + 92 | 0) + $23 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$229 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $21 + $23 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $229;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($3 + 60 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
HEAPF32[($3 + 56 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
HEAPF32[($3 + 52 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 64 | 0 | 0, $3 + 60 | 0 | 0, $3 + 56 | 0 | 0, $3 + 52 | 0 | 0) | 0;
|
|
$45 = $4 + 56 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 64 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 68 | 0) >> 2] | 0;
|
|
$263 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $45;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $263;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$47 = 8;
|
|
i64toi32_i32$2 = ($3 + 64 | 0) + $47 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$276 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $45 + $47 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $276;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($3 + 48 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($3 + 48 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btCompoundShapeChild___size_28_29_20const($4 + 20 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btVector3__btVector3_28_29($3 + 32 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($3 + 16 | 0 | 0) | 0;
|
|
$73 = HEAP32[((btAlignedObjectArray_btCompoundShapeChild___operator_5b_5d_28int_29($4 + 20 | 0 | 0, HEAP32[($3 + 48 | 0) >> 2] | 0 | 0) | 0) + 64 | 0) >> 2] | 0;
|
|
((((wasm2js_i32$1 = $73, wasm2js_i32$2 = btAlignedObjectArray_btCompoundShapeChild___operator_5b_5d_28int_29($4 + 20 | 0 | 0, HEAP32[($3 + 48 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$3 = $3 + 32 | 0), wasm2js_i32$4 = $3 + 16 | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$73 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, wasm2js_i32$3 | 0, wasm2js_i32$4 | 0);
|
|
HEAP32[($3 + 12 | 0) >> 2] = 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
label$5 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($4 + 40 | 0 | 0) | 0) + ((HEAP32[($3 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) > Math_fround(HEAPF32[((btVector3__operator_20float__28_29($3 + 32 | 0 | 0) | 0) + ((HEAP32[($3 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
$122 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($3 + 32 | 0 | 0) | 0) + ((HEAP32[($3 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($4 + 40 | 0 | 0) | 0) + ((HEAP32[($3 + 12 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $122), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
}
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($4 + 56 | 0 | 0) | 0) + ((HEAP32[($3 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) < Math_fround(HEAPF32[((btVector3__operator_20float__28_29($3 + 16 | 0 | 0) | 0) + ((HEAP32[($3 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$158 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($3 + 16 | 0 | 0) | 0) + ((HEAP32[($3 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($4 + 56 | 0 | 0) | 0) + ((HEAP32[($3 + 12 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $158), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
}
|
|
HEAP32[($3 + 12 | 0) >> 2] = (HEAP32[($3 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
HEAP32[($3 + 48 | 0) >> 2] = (HEAP32[($3 + 48 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $3 + 112 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $7 = 0, i64toi32_i32$2 = 0, $150 = 0, $152 = 0, $167 = 0, $169 = 0, $458 = 0, $471 = 0, $492 = 0, $505 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 256 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 252 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 248 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 244 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 240 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 252 | 0) >> 2] | 0;
|
|
HEAPF32[($6 + 220 | 0) >> 2] = Math_fround(.5);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 204 | 0 | 0, $7 + 56 | 0 | 0, $7 + 40 | 0 | 0);
|
|
operator__28float_20const__2c_20btVector3_20const__29($6 + 224 | 0 | 0, $6 + 220 | 0 | 0, $6 + 204 | 0 | 0);
|
|
HEAPF32[($6 + 184 | 0) >> 2] = Math_fround(.5);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 168 | 0 | 0, $7 + 56 | 0 | 0, $7 + 40 | 0 | 0);
|
|
operator__28float_20const__2c_20btVector3_20const__29($6 + 188 | 0 | 0, $6 + 184 | 0 | 0, $6 + 168 | 0 | 0);
|
|
label$1 : {
|
|
if (btAlignedObjectArray_btCompoundShapeChild___size_28_29_20const($7 + 20 | 0 | 0) | 0) {
|
|
break label$1
|
|
}
|
|
HEAPF32[($6 + 164 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 160 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 156 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 224 | 0 | 0, $6 + 164 | 0 | 0, $6 + 160 | 0 | 0, $6 + 156 | 0 | 0);
|
|
HEAPF32[($6 + 152 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 148 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 144 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 188 | 0 | 0, $6 + 152 | 0 | 0, $6 + 148 | 0 | 0, $6 + 144 | 0 | 0);
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($7))), HEAPF32[(wasm2js_i32$0 + 124 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($7))), HEAPF32[(wasm2js_i32$0 + 120 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($7))), HEAPF32[(wasm2js_i32$0 + 116 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 128 | 0 | 0, $6 + 124 | 0 | 0, $6 + 120 | 0 | 0, $6 + 116 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($6 + 224 | 0 | 0, $6 + 128 | 0 | 0) | 0;
|
|
btMatrix3x3__absolute_28_29_20const($6 + 68 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($6 + 248 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($6 + 52 | 0 | 0, HEAP32[($6 + 248 | 0) >> 2] | 0 | 0, $6 + 188 | 0 | 0);
|
|
btVector3__dot3_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29_20const($6 + 36 | 0 | 0, $6 + 224 | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($6 + 68 | 0 | 0, 0 | 0) | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($6 + 68 | 0 | 0, 1 | 0) | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($6 + 68 | 0 | 0, 2 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 20 | 0 | 0, $6 + 52 | 0 | 0, $6 + 36 | 0 | 0);
|
|
$150 = HEAP32[($6 + 244 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
$458 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $150;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $458;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$152 = 8;
|
|
i64toi32_i32$2 = ($6 + 20 | 0) + $152 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$471 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $150 + $152 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $471;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 4 | 0 | 0, $6 + 52 | 0 | 0, $6 + 36 | 0 | 0);
|
|
$167 = HEAP32[($6 + 240 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
$492 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $167;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $492;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$169 = 8;
|
|
i64toi32_i32$2 = ($6 + 4 | 0) + $169 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$505 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $167 + $169 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $505;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $6 + 256 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundShape__calculateLocalInertia_28float_2c_20btVector3__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $80 = Math_fround(0), $93 = Math_fround(0), $106 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 160 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 156 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 152 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 148 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 156 | 0) >> 2] | 0;
|
|
btTransform__btTransform_28_29($5 + 84 | 0 | 0) | 0;
|
|
btTransform__setIdentity_28_29($5 + 84 | 0 | 0);
|
|
btVector3__btVector3_28_29($5 + 68 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 52 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($6, $5 + 84 | 0, $5 + 68 | 0, $5 + 52 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 20 | 0 | 0, $5 + 52 | 0 | 0, $5 + 68 | 0 | 0);
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(.5);
|
|
operator__28btVector3_20const__2c_20float_20const__29($5 + 36 | 0 | 0, $5 + 20 | 0 | 0, $5 + 16 | 0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(2.0) * Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 + 36 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(2.0) * Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 + 36 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(2.0) * Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 + 36 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$80 = Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 152 | 0) >> 2]) / Math_fround(12.0)) * Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 8 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 8 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 4 | 0) >> 2]))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($5 + 148 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $80), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$93 = Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 152 | 0) >> 2]) / Math_fround(12.0)) * Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 12 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 12 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 4 | 0) >> 2]))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($5 + 148 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $93), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$106 = Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 152 | 0) >> 2]) / Math_fround(12.0)) * Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 12 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 12 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($5 + 8 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 8 | 0) >> 2]))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($5 + 148 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $106), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
__stack_pointer = $5 + 160 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuaternion__getIdentity_28_29() {
|
|
var $2 = 0;
|
|
$2 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $2;
|
|
label$1 : {
|
|
if (!((((HEAPU8[(0 + 114120 | 0) >> 0] | 0) & 1 | 0) & 255 | 0 | 0) == (0 & 255 | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[($2 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($2 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($2 + 4 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[$2 >> 2] = Math_fround(1.0);
|
|
btQuaternion__btQuaternion_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29(114104 | 0, $2 + 12 | 0 | 0, $2 + 8 | 0 | 0, $2 + 4 | 0 | 0, $2 | 0) | 0;
|
|
HEAP8[(0 + 114120 | 0) >> 0] = 1;
|
|
}
|
|
__stack_pointer = $2 + 16 | 0;
|
|
return 114104 | 0;
|
|
}
|
|
|
|
function btCompoundShape__setLocalScaling_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $5 = 0, $25 = 0, $28 = 0, $29 = 0, $51 = 0, $64 = 0, $100 = 0, $102 = 0, $181 = 0, $185 = 0, $228 = 0, $232 = 0, $315 = 0, $325 = 0;
|
|
$4 = __stack_pointer - 160 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 156 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 152 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 156 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 148 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 148 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btCompoundShapeChild___size_28_29_20const($5 + 20 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btTransform__btTransform_28btTransform_20const__29($4 + 84 | 0 | 0, btCompoundShape__getChildTransform_28int_29($5 | 0, HEAP32[($4 + 148 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
$25 = HEAP32[((btAlignedObjectArray_btCompoundShapeChild___operator_5b_5d_28int_29($5 + 20 | 0 | 0, HEAP32[($4 + 148 | 0) >> 2] | 0 | 0) | 0) + 64 | 0) >> 2] | 0;
|
|
$28 = FUNCTION_TABLE[HEAP32[((HEAP32[$25 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($25) | 0;
|
|
$29 = 8;
|
|
i64toi32_i32$2 = $28 + $29 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$181 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 64 | 0) + $29 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $181;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $28;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$185 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 64 | 0) >> 2] = $185;
|
|
HEAP32[($4 + 68 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($4 + 32 | 0 | 0, $4 + 64 | 0 | 0, HEAP32[($4 + 152 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_3($4 + 48 | 0 | 0, $4 + 32 | 0 | 0, $5 + 84 | 0 | 0);
|
|
$51 = 8;
|
|
i64toi32_i32$2 = ($4 + 48 | 0) + $51 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$228 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 64 | 0) + $51 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $228;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$1 = HEAP32[($4 + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($4 + 52 | 0) >> 2] | 0;
|
|
$232 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 64 | 0) >> 2] = $232;
|
|
HEAP32[($4 + 68 | 0) >> 2] = i64toi32_i32$0;
|
|
$64 = HEAP32[((btAlignedObjectArray_btCompoundShapeChild___operator_5b_5d_28int_29($5 + 20 | 0 | 0, HEAP32[($4 + 148 | 0) >> 2] | 0 | 0) | 0) + 64 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$64 >> 2] | 0) + 24 | 0) >> 2] | 0 | 0]($64, $4 + 64 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($4 | 0, btTransform__getOrigin_28_29($4 + 84 | 0 | 0) | 0 | 0, HEAP32[($4 + 152 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_3($4 + 16 | 0 | 0, $4 | 0, $5 + 84 | 0 | 0);
|
|
btTransform__setOrigin_28btVector3_20const__29($4 + 84 | 0 | 0, $4 + 16 | 0 | 0);
|
|
btCompoundShape__updateChildTransform_28int_2c_20btTransform_20const__2c_20bool_29($5 | 0, HEAP32[($4 + 148 | 0) >> 2] | 0 | 0, $4 + 84 | 0 | 0, 0 & 1 | 0 | 0);
|
|
HEAP32[($4 + 148 | 0) >> 2] = (HEAP32[($4 + 148 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
$100 = $5 + 84 | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 152 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$315 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $100;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $315;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$102 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $102 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$325 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $100 + $102 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $325;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 68 | 0) >> 2] | 0 | 0]($5);
|
|
__stack_pointer = $4 + 160 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCompoundShape__getChildTransform_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$9 = btAlignedObjectArray_btCompoundShapeChild___operator_5b_5d_28int_29((HEAP32[($4 + 12 | 0) >> 2] | 0) + 20 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btCompoundShape__serialize_28void__2c_20btSerializer__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $20 = 0, $29 = 0, $50 = 0, $60 = 0, $75 = 0, $80 = 0, $92 = 0, $99 = 0, $127 = 0, $14 = 0, $33 = 0, $48 = Math_fround(0), $58 = 0, $114 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0, wasm2js_i32$5 = 0;
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 36 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 44 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 32 | 0) >> 2] = HEAP32[($5 + 40 | 0) >> 2] | 0;
|
|
btCollisionShape__serialize_28void__2c_20btSerializer__29_20const($6 | 0, HEAP32[($5 + 32 | 0) >> 2] | 0 | 0, HEAP32[($5 + 36 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[((HEAP32[($5 + 32 | 0) >> 2] | 0) + 20 | 0) >> 2] = Math_fround(HEAPF32[($6 + 80 | 0) >> 2]);
|
|
$14 = btAlignedObjectArray_btCompoundShapeChild___size_28_29_20const($6 + 20 | 0 | 0) | 0;
|
|
HEAP32[((HEAP32[($5 + 32 | 0) >> 2] | 0) + 16 | 0) >> 2] = $14;
|
|
HEAP32[((HEAP32[($5 + 32 | 0) >> 2] | 0) + 12 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
if (!(HEAP32[((HEAP32[($5 + 32 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0)) {
|
|
break label$1
|
|
}
|
|
$20 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$20 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($20, 76, HEAP32[((HEAP32[($5 + 32 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($5 + 24 | 0) >> 2] = HEAP32[((HEAP32[($5 + 28 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
$29 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
$33 = FUNCTION_TABLE[HEAP32[((HEAP32[$29 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($29, HEAP32[($5 + 24 | 0) >> 2] | 0) | 0;
|
|
HEAP32[((HEAP32[($5 + 32 | 0) >> 2] | 0) + 12 | 0) >> 2] = $33;
|
|
HEAP32[($5 + 20 | 0) >> 2] = 0;
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) < (HEAP32[((HEAP32[($5 + 32 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$48 = Math_fround(HEAPF32[((btAlignedObjectArray_btCompoundShapeChild___operator_5b_5d_28int_29_20const($6 + 20 | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0) + 72 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 72 | 0) >> 2] = $48;
|
|
$50 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
$58 = (((wasm2js_i32$1 = $50, wasm2js_i32$2 = HEAP32[((btAlignedObjectArray_btCompoundShapeChild___operator_5b_5d_28int_29_20const($6 + 20 | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0) + 64 | 0) >> 2] | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$50 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0) | 0);
|
|
HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 64 | 0) >> 2] = $58;
|
|
$60 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
label$4 : {
|
|
if (((((wasm2js_i32$2 = $60, wasm2js_i32$1 = HEAP32[((btAlignedObjectArray_btCompoundShapeChild___operator_5b_5d_28int_29_20const($6 + 20 | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0) + 64 | 0) >> 2] | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$60 >> 2] | 0) + 24 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$2 | 0, wasm2js_i32$1 | 0) | 0) | 0) != (0 | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
$75 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
$80 = HEAP32[((btAlignedObjectArray_btCompoundShapeChild___operator_5b_5d_28int_29_20const($6 + 20 | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0) + 64 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = ((((wasm2js_i32$3 = $75, wasm2js_i32$4 = FUNCTION_TABLE[HEAP32[((HEAP32[$80 >> 2] | 0) + 52 | 0) >> 2] | 0 | 0]($80) | 0), wasm2js_i32$5 = 1), wasm2js_i32$2 = HEAP32[((HEAP32[$75 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$2](wasm2js_i32$3 | 0, wasm2js_i32$4 | 0, wasm2js_i32$5 | 0) | 0)), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
$92 = HEAP32[((btAlignedObjectArray_btCompoundShapeChild___operator_5b_5d_28int_29_20const($6 + 20 | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0) + 64 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$92 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($92, HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0, HEAP32[($5 + 36 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$99 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
(((((wasm2js_i32$1 = $99, wasm2js_i32$2 = HEAP32[($5 + 16 | 0) >> 2] | 0), wasm2js_i32$5 = HEAP32[($5 + 12 | 0) >> 2] | 0), wasm2js_i32$4 = 1346455635), wasm2js_i32$3 = HEAP32[((btAlignedObjectArray_btCompoundShapeChild___operator_5b_5d_28int_29_20const($6 + 20 | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0) + 64 | 0) >> 2] | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$99 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, wasm2js_i32$5 | 0, wasm2js_i32$4 | 0, wasm2js_i32$3 | 0);
|
|
}
|
|
$114 = HEAP32[((btAlignedObjectArray_btCompoundShapeChild___operator_5b_5d_28int_29_20const($6 + 20 | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0) + 68 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 68 | 0) >> 2] = $114;
|
|
btTransform__serializeFloat_28btTransformFloatData__29_20const(btAlignedObjectArray_btCompoundShapeChild___operator_5b_5d_28int_29_20const($6 + 20 | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($5 + 20 | 0) >> 2] = (HEAP32[($5 + 20 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = (HEAP32[($5 + 24 | 0) >> 2] | 0) + 76 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
$127 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$127 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($127, HEAP32[($5 + 28 | 0) >> 2] | 0, 83727, 1497453121, HEAP32[((HEAP32[($5 + 28 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0);
|
|
}
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return 83613 | 0;
|
|
}
|
|
|
|
function btTransform__serializeFloat_28btTransformFloatData__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btMatrix3x3__serializeFloat_28btMatrix3x3FloatData__29_20const($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
btVector3__serializeFloat_28btVector3FloatData__29_20const($5 + 48 | 0 | 0, (HEAP32[($4 + 8 | 0) >> 2] | 0) + 48 | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btMatrix3x3__serializeFloat_28btMatrix3x3FloatData__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btVector3__serializeFloat_28btVector3FloatData__29_20const($5 + ((HEAP32[($4 + 4 | 0) >> 2] | 0) << 4 | 0) | 0 | 0, (HEAP32[($4 + 8 | 0) >> 2] | 0) + ((HEAP32[($4 + 4 | 0) >> 2] | 0) << 4 | 0) | 0 | 0);
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btCompoundShapeChild_2c_2016u___deallocate_28btCompoundShapeChild__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btCompoundShapeChild_2c_2016u___allocate_28int_2c_20btCompoundShapeChild_20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(Math_imul(HEAP32[($5 + 8 | 0) >> 2] | 0, 80) | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btCompoundShape_cpp() {
|
|
__cxx_global_var_init_33();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_34() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114124 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btConeShape__btConeShape_28float_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
var $6 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
btConvexInternalShape__btConvexInternalShape_28_29($6 | 0) | 0;
|
|
HEAP32[$6 >> 2] = 97972 + 8 | 0;
|
|
HEAPF32[($6 + 64 | 0) >> 2] = Math_fround(HEAPF32[($5 + 24 | 0) >> 2]);
|
|
HEAPF32[($6 + 68 | 0) >> 2] = Math_fround(HEAPF32[($5 + 20 | 0) >> 2]);
|
|
HEAP32[($6 + 4 | 0) >> 2] = 11;
|
|
btConeShape__setConeUpIndex_28int_29($6 | 0, 1 | 0);
|
|
btVector3__btVector3_28_29($5 + 4 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[($6 + 64 | 0) >> 2]) / Math_fround(btSqrt_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[($6 + 64 | 0) >> 2]) * Math_fround(HEAPF32[($6 + 64 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($6 + 68 | 0) >> 2]) * Math_fround(HEAPF32[($6 + 68 | 0) >> 2])))))))), HEAPF32[(wasm2js_i32$0 + 60 | 0) >> 2] = wasm2js_f32$0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btConeShape__setConeUpIndex_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, $6 = 0, $21 = Math_fround(0), $29 = Math_fround(0), $37 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$6 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
switch ($6 | 0) {
|
|
case 0:
|
|
HEAP32[($5 + 72 | 0) >> 2] = 1;
|
|
HEAP32[($5 + 76 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 80 | 0) >> 2] = 2;
|
|
break label$1;
|
|
case 1:
|
|
HEAP32[($5 + 72 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 76 | 0) >> 2] = 1;
|
|
HEAP32[($5 + 80 | 0) >> 2] = 2;
|
|
break label$1;
|
|
case 2:
|
|
HEAP32[($5 + 72 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 76 | 0) >> 2] = 2;
|
|
HEAP32[($5 + 80 | 0) >> 2] = 1;
|
|
break label$1;
|
|
default:
|
|
break label$2;
|
|
};
|
|
}
|
|
__assert_fail(86177 | 0, 75023 | 0, 63 | 0, 66495 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$21 = Math_fround(HEAPF32[($5 + 64 | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($5 + 36 | 0 | 0) | 0) + ((HEAP32[($5 + 72 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $21), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$29 = Math_fround(HEAPF32[($5 + 68 | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($5 + 36 | 0 | 0) | 0) + ((HEAP32[($5 + 76 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $29), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$37 = Math_fround(HEAPF32[($5 + 64 | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($5 + 36 | 0 | 0) | 0) + ((HEAP32[($5 + 80 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $37), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConeShape__coneLocalSupport_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $31 = Math_fround(0), $92 = Math_fround(0), $99 = Math_fround(0), $113 = Math_fround(0), $127 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 20 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($6 + 68 | 0) >> 2]) * Math_fround(.5));
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[($6 + 76 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) > Math_fround(Math_fround(btVector3__length_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0)) * Math_fround(HEAPF32[($6 + 60 | 0) >> 2])) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btVector3__btVector3_28_29($0 | 0) | 0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($0 | 0) | 0) + ((HEAP32[($6 + 72 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$31 = Math_fround(HEAPF32[($5 + 20 | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($0 | 0) | 0) + ((HEAP32[($6 + 76 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $31), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($0 | 0) | 0) + ((HEAP32[($6 + 80 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btSqrt_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[($6 + 72 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[($6 + 72 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[($6 + 80 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[($6 + 80 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]))))))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 16 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($6 + 64 | 0) >> 2]) / Math_fround(HEAPF32[($5 + 16 | 0) >> 2]));
|
|
btVector3__btVector3_28_29($0 | 0) | 0;
|
|
$92 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[($6 + 72 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($5 + 12 | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($0 | 0) | 0) + ((HEAP32[($6 + 72 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $92), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$99 = Math_fround(-Math_fround(HEAPF32[($5 + 20 | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($0 | 0) | 0) + ((HEAP32[($6 + 76 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $99), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$113 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[($6 + 80 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($5 + 12 | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($0 | 0) | 0) + ((HEAP32[($6 + 80 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $113), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
break label$1;
|
|
}
|
|
btVector3__btVector3_28_29($0 | 0) | 0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($0 | 0) | 0) + ((HEAP32[($6 + 72 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$127 = Math_fround(-Math_fround(HEAPF32[($5 + 20 | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($0 | 0) | 0) + ((HEAP32[($6 + 76 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $127), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($0 | 0) | 0) + ((HEAP32[($6 + 80 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
}
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConeShape__localGetSupportingVertexWithoutMargin_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $2;
|
|
btConeShape__coneLocalSupport_28btVector3_20const__29_20const($0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConeShape__batchedUnitVectorGetSupportingVertexWithoutMargin_28btVector3_20const__2c_20btVector3__2c_20int_29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $29 = 0, $31 = 0, $7 = 0, $107 = 0, $120 = 0;
|
|
$6 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 32 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 32 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($6 + 24 | 0) >> 2] = (HEAP32[($6 + 40 | 0) >> 2] | 0) + ((HEAP32[($6 + 28 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
btConeShape__coneLocalSupport_28btVector3_20const__29_20const($6 + 8 | 0 | 0, $7 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0);
|
|
$29 = (HEAP32[($6 + 36 | 0) >> 2] | 0) + ((HEAP32[($6 + 28 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
$107 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $29;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $107;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$31 = 8;
|
|
i64toi32_i32$2 = ($6 + 8 | 0) + $31 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$120 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $29 + $31 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $120;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = (HEAP32[($6 + 28 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConeShape__localGetSupportingVertex_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, $6 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $16 = 0, $17 = 0, $114 = 0, $118 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 60 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 56 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
btConeShape__coneLocalSupport_28btVector3_20const__29_20const($0 | 0, $6 | 0, HEAP32[($5 + 56 | 0) >> 2] | 0 | 0);
|
|
label$1 : {
|
|
if (!(Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($6)) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$16 = HEAP32[($5 + 56 | 0) >> 2] | 0;
|
|
$17 = 8;
|
|
i64toi32_i32$2 = $16 + $17 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$114 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 40 | 0) + $17 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $114;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $16;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$118 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $118;
|
|
HEAP32[($5 + 44 | 0) >> 2] = i64toi32_i32$0;
|
|
label$2 : {
|
|
if (!(Math_fround(btVector3__length2_28_29_20const($5 + 40 | 0 | 0)) < Math_fround(1.4210854715202004e-14) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($5 + 36 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[($5 + 32 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[($5 + 28 | 0) >> 2] = Math_fround(-1.0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 40 | 0 | 0, $5 + 36 | 0 | 0, $5 + 32 | 0 | 0, $5 + 28 | 0 | 0);
|
|
}
|
|
btVector3__normalize_28_29($5 + 40 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($6))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28float_20const__2c_20btVector3_20const__29($5 + 12 | 0 | 0, $5 + 8 | 0 | 0, $5 + 40 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($0 | 0, $5 + 12 | 0 | 0) | 0;
|
|
}
|
|
__stack_pointer = $5 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConeShape__setLocalScaling_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $15 = Math_fround(0), $18 = 0, $42 = Math_fround(0), $49 = Math_fround(0), $52 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = HEAP32[($5 + 76 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = HEAP32[($5 + 72 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = HEAP32[($5 + 80 | 0) >> 2] | 0;
|
|
$15 = Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[($4 + 20 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
$18 = btVector3__operator_20float__28_29($5 + 20 | 0 | 0) | 0;
|
|
HEAPF32[($5 + 68 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 68 | 0) >> 2]) * Math_fround($15 / Math_fround(HEAPF32[($18 + ((HEAP32[($4 + 20 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])));
|
|
$42 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[($4 + 16 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) / Math_fround(HEAPF32[((btVector3__operator_20float__28_29($5 + 20 | 0 | 0) | 0) + ((HEAP32[($4 + 16 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]));
|
|
$49 = Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[($4 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
$52 = btVector3__operator_20float__28_29($5 + 20 | 0 | 0) | 0;
|
|
HEAPF32[($5 + 64 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 64 | 0) >> 2]) * Math_fround(Math_fround($42 + Math_fround($49 / Math_fround(HEAPF32[($52 + ((HEAP32[($4 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]))) / Math_fround(2.0)));
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[($5 + 64 | 0) >> 2]) / Math_fround(btSqrt_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 64 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 64 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($5 + 68 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 68 | 0) >> 2])))))))), HEAPF32[(wasm2js_i32$0 + 60 | 0) >> 2] = wasm2js_f32$0;
|
|
btConvexInternalShape__setLocalScaling_28btVector3_20const__29($5 | 0, HEAP32[($4 + 24 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConeShape___btConeShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConvexInternalShape___btConvexInternalShape_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConeShape___btConeShape_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConeShape___btConeShape_28_29($4 | 0) | 0;
|
|
btConeShape__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConeShape__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexInternalShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 80 | 0) >> 2] | 0 | 0]($7, HEAP32[($6 + 8 | 0) >> 2] | 0, HEAP32[($6 + 4 | 0) >> 2] | 0, HEAP32[$6 >> 2] | 0);
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConeShape__calculateLocalInertia_28float_2c_20btVector3__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, i64toi32_i32$2 = 0, $121 = 0, $123 = 0, $385 = 0, $398 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 224 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 220 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 216 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 212 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 220 | 0) >> 2] | 0;
|
|
btTransform__btTransform_28_29($5 + 148 | 0 | 0) | 0;
|
|
btTransform__setIdentity_28_29($5 + 148 | 0 | 0);
|
|
btVector3__btVector3_28_29($5 + 132 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 116 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($6, $5 + 148 | 0, $5 + 132 | 0, $5 + 116 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 84 | 0 | 0, $5 + 116 | 0 | 0, $5 + 132 | 0 | 0);
|
|
HEAPF32[($5 + 80 | 0) >> 2] = Math_fround(.5);
|
|
operator__28btVector3_20const__2c_20float_20const__29($5 + 100 | 0 | 0, $5 + 84 | 0 | 0, $5 + 80 | 0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($6))), HEAPF32[(wasm2js_i32$0 + 76 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(2.0) * Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 + 100 | 0 | 0) | 0) >> 2]) + Math_fround(HEAPF32[($5 + 76 | 0) >> 2])))), HEAPF32[(wasm2js_i32$0 + 72 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(2.0) * Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 + 100 | 0 | 0) | 0) >> 2]) + Math_fround(HEAPF32[($5 + 76 | 0) >> 2])))), HEAPF32[(wasm2js_i32$0 + 68 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(2.0) * Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 + 100 | 0 | 0) | 0) >> 2]) + Math_fround(HEAPF32[($5 + 76 | 0) >> 2])))), HEAPF32[(wasm2js_i32$0 + 64 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($5 + 60 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 72 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 72 | 0) >> 2]));
|
|
HEAPF32[($5 + 56 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 68 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 68 | 0) >> 2]));
|
|
HEAPF32[($5 + 52 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 64 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 64 | 0) >> 2]));
|
|
HEAPF32[($5 + 48 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 216 | 0) >> 2]) * Math_fround(.0833333283662796));
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 56 | 0) >> 2]) + Math_fround(HEAPF32[($5 + 52 | 0) >> 2]));
|
|
HEAPF32[($5 + 8 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 60 | 0) >> 2]) + Math_fround(HEAPF32[($5 + 52 | 0) >> 2]));
|
|
HEAPF32[($5 + 4 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 60 | 0) >> 2]) + Math_fround(HEAPF32[($5 + 56 | 0) >> 2]));
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 16 | 0 | 0, $5 + 12 | 0 | 0, $5 + 8 | 0 | 0, $5 + 4 | 0 | 0) | 0;
|
|
operator__28float_20const__2c_20btVector3_20const__29($5 + 32 | 0 | 0, $5 + 48 | 0 | 0, $5 + 16 | 0 | 0);
|
|
$121 = HEAP32[($5 + 212 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
$385 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $121;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $385;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$123 = 8;
|
|
i64toi32_i32$2 = ($5 + 32 | 0) + $123 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$398 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $121 + $123 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $398;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $5 + 224 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConeShape__getName_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 81789 | 0;
|
|
}
|
|
|
|
function btConeShape__getAnisotropicRollingFrictionDirection_28_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $1;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 4 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[$4 >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $4 + 8 | 0 | 0, $4 + 4 | 0 | 0, $4 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConeShape__calculateSerializeBufferSize_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 60 | 0;
|
|
}
|
|
|
|
function btConeShape__serialize_28void__2c_20btSerializer__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
btConvexInternalShape__serialize_28void__2c_20btSerializer__29_20const($6 | 0, HEAP32[$5 >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[((HEAP32[$5 >> 2] | 0) + 52 | 0) >> 2] = HEAP32[($6 + 76 | 0) >> 2] | 0;
|
|
HEAP8[((HEAP32[$5 >> 2] | 0) + 56 | 0) >> 0] = 0;
|
|
HEAP8[((HEAP32[$5 >> 2] | 0) + 57 | 0) >> 0] = 0;
|
|
HEAP8[((HEAP32[$5 >> 2] | 0) + 58 | 0) >> 0] = 0;
|
|
HEAP8[((HEAP32[$5 >> 2] | 0) + 59 | 0) >> 0] = 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return 83555 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btConeShape_cpp() {
|
|
__cxx_global_var_init_34();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_35() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114128 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexInternalShape__btConvexInternalShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConvexShape__btConvexShape_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 98100 + 8 | 0;
|
|
HEAPF32[($3 + 8 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($3 + 4 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[$3 >> 2] = Math_fround(1.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 20 | 0 | 0, $3 + 8 | 0 | 0, $3 + 4 | 0 | 0, $3 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 36 | 0 | 0) | 0;
|
|
HEAPF32[($4 + 52 | 0) >> 2] = Math_fround(.03999999910593033);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexInternalShape__setLocalScaling_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $11 = 0, $13 = 0, $5 = 0, $46 = 0, $59 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
btVector3__absolute_28_29_20const($4 + 8 | 0 | 0, HEAP32[($4 + 24 | 0) >> 2] | 0 | 0);
|
|
$11 = $5 + 20 | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$46 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $11;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $46;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$13 = 8;
|
|
i64toi32_i32$2 = ($4 + 8 | 0) + $13 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$59 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11 + $13 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $59;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btVector3__absolute_28_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[$5 >> 2]))))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[($5 + 8 | 0) >> 2]))))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $4 + 8 | 0 | 0, $4 + 4 | 0 | 0, $4 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexInternalShape__getAabbSlow_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $118 = 0, $79 = Math_fround(0), $95 = 0, $390 = 0, $394 = 0, $137 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 160 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 156 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 152 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 148 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 144 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 156 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($7))), HEAPF32[(wasm2js_i32$0 + 140 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP32[($6 + 136 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 136 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[($6 + 116 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 112 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 108 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 120 | 0 | 0, $6 + 116 | 0 | 0, $6 + 112 | 0 | 0, $6 + 108 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($6 + 120 | 0 | 0) | 0) + ((HEAP32[($6 + 136 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = Math_fround(1.0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20btMatrix3x3_20const__29($6 + 76 | 0 | 0, $6 + 120 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($6 + 152 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($6 + 92 | 0, $7, $6 + 76 | 0);
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($6 + 56 | 0 | 0, HEAP32[($6 + 152 | 0) >> 2] | 0 | 0, $6 + 92 | 0 | 0);
|
|
$79 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 56 | 0 | 0) | 0) + ((HEAP32[($6 + 136 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) + Math_fround(HEAPF32[($6 + 140 | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29(HEAP32[($6 + 144 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[($6 + 136 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $79), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($6 + 120 | 0 | 0) | 0) + ((HEAP32[($6 + 136 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = Math_fround(-1.0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$95 = HEAP32[($6 + 152 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btMatrix3x3_20const__29($6 + 8 | 0 | 0, $6 + 120 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($6 + 152 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($6 + 24 | 0, $7, $6 + 8 | 0);
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($6 + 40 | 0 | 0, $95 | 0, $6 + 24 | 0 | 0);
|
|
$118 = 8;
|
|
i64toi32_i32$2 = ($6 + 40 | 0) + $118 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$390 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 56 | 0) + $118 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $390;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 40 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
$394 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 56 | 0) >> 2] = $394;
|
|
HEAP32[($6 + 60 | 0) >> 2] = i64toi32_i32$0;
|
|
$137 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 56 | 0 | 0) | 0) + ((HEAP32[($6 + 136 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) - Math_fround(HEAPF32[($6 + 140 | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29(HEAP32[($6 + 148 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[($6 + 136 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $137), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP32[($6 + 136 | 0) >> 2] = (HEAP32[($6 + 136 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 160 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexInternalShape__localGetSupportingVertex_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $18 = 0, $19 = 0, $121 = 0, $125 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 60 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 56 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 68 | 0) >> 2] | 0 | 0]($0, $6, HEAP32[($5 + 56 | 0) >> 2] | 0);
|
|
label$1 : {
|
|
if (!(Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($6)) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$18 = HEAP32[($5 + 56 | 0) >> 2] | 0;
|
|
$19 = 8;
|
|
i64toi32_i32$2 = $18 + $19 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$121 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 40 | 0) + $19 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $121;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $18;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$125 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $125;
|
|
HEAP32[($5 + 44 | 0) >> 2] = i64toi32_i32$0;
|
|
label$2 : {
|
|
if (!(Math_fround(btVector3__length2_28_29_20const($5 + 40 | 0 | 0)) < Math_fround(1.4210854715202004e-14) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($5 + 36 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[($5 + 32 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[($5 + 28 | 0) >> 2] = Math_fround(-1.0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 40 | 0 | 0, $5 + 36 | 0 | 0, $5 + 32 | 0 | 0, $5 + 28 | 0 | 0);
|
|
}
|
|
btVector3__normalize_28_29($5 + 40 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($6))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28float_20const__2c_20btVector3_20const__29($5 + 12 | 0 | 0, $5 + 8 | 0 | 0, $5 + 40 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($0 | 0, $5 + 12 | 0 | 0) | 0;
|
|
}
|
|
__stack_pointer = $5 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexInternalShape___btConvexInternalShape_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btConvexInternalShape_cpp() {
|
|
__cxx_global_var_init_35();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_36() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114132 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexShape__btConvexShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionShape__btCollisionShape_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 98236 + 8 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexShape___btConvexShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionShape___btCollisionShape_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexShape___btConvexShape_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btConvexShape__project_28btTransform_20const__2c_20btVector3_20const__2c_20float__2c_20float__2c_20btVector3__2c_20btVector3__29_20const($0, $1, $2, $3, $4, $5, $6) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
var $9 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $10 = 0, $65 = 0, $67 = 0, $73 = 0, $75 = 0, $95 = 0, $97 = 0, $103 = 0, $105 = 0, $17 = 0, $32 = 0, $57 = Math_fround(0), $63 = Math_fround(0), $246 = 0, $259 = 0, $265 = 0, $278 = 0, $320 = 0, $333 = 0, $339 = 0, $352 = 0;
|
|
$9 = __stack_pointer - 128 | 0;
|
|
__stack_pointer = $9;
|
|
HEAP32[($9 + 124 | 0) >> 2] = $0;
|
|
HEAP32[($9 + 120 | 0) >> 2] = $1;
|
|
HEAP32[($9 + 116 | 0) >> 2] = $2;
|
|
HEAP32[($9 + 112 | 0) >> 2] = $3;
|
|
HEAP32[($9 + 108 | 0) >> 2] = $4;
|
|
HEAP32[($9 + 104 | 0) >> 2] = $5;
|
|
HEAP32[($9 + 100 | 0) >> 2] = $6;
|
|
$10 = HEAP32[($9 + 124 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btMatrix3x3_20const__29($9 + 84 | 0 | 0, HEAP32[($9 + 116 | 0) >> 2] | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($9 + 120 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$17 = HEAP32[($9 + 120 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$10 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($9 + 52 | 0, $10, $9 + 84 | 0);
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($9 + 68 | 0 | 0, $17 | 0, $9 + 52 | 0 | 0);
|
|
$32 = HEAP32[($9 + 120 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__29($9 + 4 | 0 | 0, $9 + 84 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$10 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($9 + 20 | 0, $10, $9 + 4 | 0);
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($9 + 36 | 0 | 0, $32 | 0, $9 + 20 | 0 | 0);
|
|
$57 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($9 + 68 | 0 | 0, HEAP32[($9 + 116 | 0) >> 2] | 0 | 0));
|
|
HEAPF32[(HEAP32[($9 + 112 | 0) >> 2] | 0) >> 2] = $57;
|
|
$63 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($9 + 36 | 0 | 0, HEAP32[($9 + 116 | 0) >> 2] | 0 | 0));
|
|
HEAPF32[(HEAP32[($9 + 108 | 0) >> 2] | 0) >> 2] = $63;
|
|
$65 = HEAP32[($9 + 100 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$0 = HEAP32[($9 + 36 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 40 | 0) >> 2] | 0;
|
|
$246 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $65;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $246;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$67 = 8;
|
|
i64toi32_i32$2 = ($9 + 36 | 0) + $67 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$259 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $65 + $67 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $259;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$73 = HEAP32[($9 + 104 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$0 = HEAP32[($9 + 68 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 72 | 0) >> 2] | 0;
|
|
$265 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $73;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $265;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$75 = 8;
|
|
i64toi32_i32$2 = ($9 + 68 | 0) + $75 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$278 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $73 + $75 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $278;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($9 + 112 | 0) >> 2] | 0) >> 2]) > Math_fround(HEAPF32[(HEAP32[($9 + 108 | 0) >> 2] | 0) >> 2]) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[$9 >> 2] = Math_fround(HEAPF32[(HEAP32[($9 + 112 | 0) >> 2] | 0) >> 2]);
|
|
HEAPF32[(HEAP32[($9 + 112 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[($9 + 108 | 0) >> 2] | 0) >> 2]);
|
|
HEAPF32[(HEAP32[($9 + 108 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[$9 >> 2]);
|
|
$95 = HEAP32[($9 + 100 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$0 = HEAP32[($9 + 68 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 72 | 0) >> 2] | 0;
|
|
$320 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $95;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $320;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$97 = 8;
|
|
i64toi32_i32$2 = ($9 + 68 | 0) + $97 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$333 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $95 + $97 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $333;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$103 = HEAP32[($9 + 104 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$0 = HEAP32[($9 + 36 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 40 | 0) >> 2] | 0;
|
|
$339 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $103;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $339;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$105 = 8;
|
|
i64toi32_i32$2 = ($9 + 36 | 0) + $105 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$352 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $103 + $105 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $352;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
__stack_pointer = $9 + 128 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexShape__localGetSupportVertexWithoutMarginNonVirtual_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $6 = 0, $230 = 0, $7 = 0, $100 = 0, $101 = 0, $121 = 0, $122 = 0, $141 = 0, $142 = 0, $257 = Math_fround(0), $304 = 0, $322 = Math_fround(0), $387 = 0, $462 = 0, $484 = 0, $521 = 0, $543 = 0, $817 = 0, $821 = 0, $863 = 0, $867 = 0, $235 = Math_fround(0), $278 = Math_fround(0), $299 = Math_fround(0), $1410 = 0, $1414 = 0, $453 = Math_fround(0), $1555 = 0, $1559 = 0, $1604 = 0, $1608 = 0, $512 = Math_fround(0), $1677 = 0, $1681 = 0, $1726 = 0, $1730 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 400 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 396 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 392 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 396 | 0) >> 2] | 0;
|
|
$7 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
switch ($7 | 0) {
|
|
case 8:
|
|
HEAPF32[($5 + 388 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 384 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 380 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $5 + 388 | 0 | 0, $5 + 384 | 0 | 0, $5 + 380 | 0 | 0) | 0;
|
|
break label$1;
|
|
case 0:
|
|
HEAP32[($5 + 376 | 0) >> 2] = $6;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btConvexInternalShape__getImplicitShapeDimensions_28_29_20const(HEAP32[($5 + 376 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 372 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btFsel_28float_2c_20float_2c_20float_29(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 392 | 0) >> 2] | 0 | 0) | 0) >> 2])), Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 372 | 0) >> 2] | 0 | 0) | 0) >> 2])), Math_fround(Math_fround(-Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 372 | 0) >> 2] | 0 | 0) | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 368 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btFsel_28float_2c_20float_2c_20float_29(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 392 | 0) >> 2] | 0 | 0) | 0) >> 2])), Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 372 | 0) >> 2] | 0 | 0) | 0) >> 2])), Math_fround(Math_fround(-Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 372 | 0) >> 2] | 0 | 0) | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 364 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btFsel_28float_2c_20float_2c_20float_29(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 392 | 0) >> 2] | 0 | 0) | 0) >> 2])), Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 372 | 0) >> 2] | 0 | 0) | 0) >> 2])), Math_fround(Math_fround(-Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 372 | 0) >> 2] | 0 | 0) | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 360 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $5 + 368 | 0 | 0, $5 + 364 | 0 | 0, $5 + 360 | 0 | 0) | 0;
|
|
break label$1;
|
|
case 1:
|
|
HEAP32[($5 + 356 | 0) >> 2] = $6;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 340 | 0 | 0, btVector3__getX_28_29_20const(HEAP32[($5 + 392 | 0) >> 2] | 0 | 0) | 0 | 0, btVector3__getY_28_29_20const(HEAP32[($5 + 392 | 0) >> 2] | 0 | 0) | 0 | 0, btVector3__getZ_28_29_20const(HEAP32[($5 + 392 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
HEAP32[($5 + 336 | 0) >> 2] = (HEAP32[($5 + 356 | 0) >> 2] | 0) + 64 | 0;
|
|
btVector3__dot3_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29_20const($5 + 320 | 0 | 0, $5 + 340 | 0 | 0, HEAP32[($5 + 336 | 0) >> 2] | 0 | 0, (HEAP32[($5 + 336 | 0) >> 2] | 0) + 16 | 0 | 0, (HEAP32[($5 + 336 | 0) >> 2] | 0) + 32 | 0 | 0);
|
|
$100 = (HEAP32[($5 + 336 | 0) >> 2] | 0) + ((btVector3__maxAxis_28_29_20const($5 + 320 | 0 | 0) | 0) << 4 | 0) | 0;
|
|
$101 = 8;
|
|
i64toi32_i32$2 = $100 + $101 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$817 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 304 | 0) + $101 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $817;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $100;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$821 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 304 | 0) >> 2] = $821;
|
|
HEAP32[($5 + 308 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, btVector3__getX_28_29_20const($5 + 304 | 0 | 0) | 0 | 0, btVector3__getY_28_29_20const($5 + 304 | 0 | 0) | 0 | 0, btVector3__getZ_28_29_20const($5 + 304 | 0 | 0) | 0 | 0) | 0;
|
|
break label$1;
|
|
case 13:
|
|
HEAP32[($5 + 300 | 0) >> 2] = $6;
|
|
$121 = btConvexInternalShape__getImplicitShapeDimensions_28_29_20const(HEAP32[($5 + 300 | 0) >> 2] | 0 | 0) | 0;
|
|
$122 = 8;
|
|
i64toi32_i32$2 = $121 + $122 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$863 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 280 | 0) + $122 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $863;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $121;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$867 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 280 | 0) >> 2] = $867;
|
|
HEAP32[($5 + 284 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 264 | 0 | 0, btVector3__getX_28_29_20const(HEAP32[($5 + 392 | 0) >> 2] | 0 | 0) | 0 | 0, btVector3__getY_28_29_20const(HEAP32[($5 + 392 | 0) >> 2] | 0 | 0) | 0 | 0, btVector3__getZ_28_29_20const(HEAP32[($5 + 392 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btCylinderShape__getUpAxis_28_29_20const(HEAP32[($5 + 300 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 260 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($5 + 256 | 0) >> 2] = 1;
|
|
HEAP32[($5 + 252 | 0) >> 2] = 0;
|
|
$141 = 2;
|
|
HEAP32[($5 + 248 | 0) >> 2] = $141;
|
|
$142 = HEAP32[($5 + 260 | 0) >> 2] | 0;
|
|
label$10 : {
|
|
label$11 : {
|
|
switch ($142 | 0) {
|
|
case 0:
|
|
HEAP32[($5 + 256 | 0) >> 2] = 1;
|
|
HEAP32[($5 + 252 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 248 | 0) >> 2] = 2;
|
|
break label$10;
|
|
case 1:
|
|
HEAP32[($5 + 256 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 252 | 0) >> 2] = 1;
|
|
HEAP32[($5 + 248 | 0) >> 2] = 2;
|
|
break label$10;
|
|
case 2:
|
|
HEAP32[($5 + 256 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 252 | 0) >> 2] = 2;
|
|
HEAP32[($5 + 248 | 0) >> 2] = 1;
|
|
break label$10;
|
|
default:
|
|
break label$11;
|
|
};
|
|
}
|
|
__assert_fail(86177 | 0, 74260 | 0, 200 | 0, 77337 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($5 + 280 | 0 | 0) | 0) + ((HEAP32[($5 + 256 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 244 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($5 + 280 | 0 | 0) | 0) + ((HEAP32[($5 + 260 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 240 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28_29($5 + 224 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btSqrt_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($5 + 264 | 0 | 0) | 0) + ((HEAP32[($5 + 256 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($5 + 264 | 0 | 0) | 0) + ((HEAP32[($5 + 256 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($5 + 264 | 0 | 0) | 0) + ((HEAP32[($5 + 248 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($5 + 264 | 0 | 0) | 0) + ((HEAP32[($5 + 248 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]))))))), HEAPF32[(wasm2js_i32$0 + 216 | 0) >> 2] = wasm2js_f32$0;
|
|
label$15 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 216 | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
HEAPF32[($5 + 220 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 244 | 0) >> 2]) / Math_fround(HEAPF32[($5 + 216 | 0) >> 2]));
|
|
$230 = 2;
|
|
$235 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($5 + 264 | 0 | 0) | 0) + ((HEAP32[($5 + 256 | 0) >> 2] | 0) << $230 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($5 + 220 | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($5 + 224 | 0 | 0) | 0) + ((HEAP32[($5 + 256 | 0) >> 2] | 0) << $230 | 0) | 0, wasm2js_f32$0 = $235), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
label$16 : {
|
|
label$17 : {
|
|
if (!(+Math_fround(HEAPF32[((btVector3__operator_20float__28_29($5 + 264 | 0 | 0) | 0) + ((HEAP32[($5 + 252 | 0) >> 2] | 0) << $230 | 0) | 0) >> 2]) < +(0 | 0) & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
$257 = Math_fround(-Math_fround(HEAPF32[($5 + 240 | 0) >> 2]));
|
|
break label$16;
|
|
}
|
|
$257 = Math_fround(HEAPF32[($5 + 240 | 0) >> 2]);
|
|
}
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($5 + 224 | 0 | 0) | 0) + ((HEAP32[($5 + 252 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $257), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$278 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($5 + 264 | 0 | 0) | 0) + ((HEAP32[($5 + 248 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($5 + 220 | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($5 + 224 | 0 | 0) | 0) + ((HEAP32[($5 + 248 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $278), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, btVector3__getX_28_29_20const($5 + 224 | 0 | 0) | 0 | 0, btVector3__getY_28_29_20const($5 + 224 | 0 | 0) | 0 | 0, btVector3__getZ_28_29_20const($5 + 224 | 0 | 0) | 0 | 0) | 0;
|
|
break label$1;
|
|
}
|
|
$299 = Math_fround(HEAPF32[($5 + 244 | 0) >> 2]);
|
|
$304 = 2;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($5 + 224 | 0 | 0) | 0) + ((HEAP32[($5 + 256 | 0) >> 2] | 0) << $304 | 0) | 0, wasm2js_f32$0 = $299), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
label$18 : {
|
|
label$19 : {
|
|
if (!(+Math_fround(HEAPF32[((btVector3__operator_20float__28_29($5 + 264 | 0 | 0) | 0) + ((HEAP32[($5 + 252 | 0) >> 2] | 0) << $304 | 0) | 0) >> 2]) < +(0 | 0) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
$322 = Math_fround(-Math_fround(HEAPF32[($5 + 240 | 0) >> 2]));
|
|
break label$18;
|
|
}
|
|
$322 = Math_fround(HEAPF32[($5 + 240 | 0) >> 2]);
|
|
}
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($5 + 224 | 0 | 0) | 0) + ((HEAP32[($5 + 252 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $322), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($5 + 224 | 0 | 0) | 0) + ((HEAP32[($5 + 248 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, btVector3__getX_28_29_20const($5 + 224 | 0 | 0) | 0 | 0, btVector3__getY_28_29_20const($5 + 224 | 0 | 0) | 0 | 0, btVector3__getZ_28_29_20const($5 + 224 | 0 | 0) | 0 | 0) | 0;
|
|
break label$1;
|
|
case 10:
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 200 | 0 | 0, btVector3__getX_28_29_20const(HEAP32[($5 + 392 | 0) >> 2] | 0 | 0) | 0 | 0, btVector3__getY_28_29_20const(HEAP32[($5 + 392 | 0) >> 2] | 0 | 0) | 0 | 0, btVector3__getZ_28_29_20const(HEAP32[($5 + 392 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
HEAP32[($5 + 196 | 0) >> 2] = $6;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btCapsuleShape__getHalfHeight_28_29_20const(HEAP32[($5 + 196 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 192 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btCapsuleShape__getUpAxis_28_29_20const(HEAP32[($5 + 196 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 188 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAPF32[($5 + 164 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 160 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 156 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 168 | 0 | 0, $5 + 164 | 0 | 0, $5 + 160 | 0 | 0, $5 + 156 | 0 | 0) | 0;
|
|
HEAPF32[($5 + 152 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
$387 = 8;
|
|
i64toi32_i32$2 = ($5 + 200 | 0) + $387 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1410 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 136 | 0) + $387 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1410;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[($5 + 200 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 204 | 0) >> 2] | 0;
|
|
$1414 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 136 | 0) >> 2] = $1414;
|
|
HEAP32[($5 + 140 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($5 + 136 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 132 | 0) >> 2] = wasm2js_f32$0;
|
|
label$20 : {
|
|
label$21 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 132 | 0) >> 2]) < Math_fround(1.4210854715202004e-14) & 1 | 0)) {
|
|
break label$21
|
|
}
|
|
HEAPF32[($5 + 128 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($5 + 124 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 120 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 136 | 0 | 0, $5 + 128 | 0 | 0, $5 + 124 | 0 | 0, $5 + 120 | 0 | 0);
|
|
break label$20;
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(1.0) / Math_fround(btSqrt_28float_29(Math_fround(Math_fround(HEAPF32[($5 + 132 | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 116 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__operator___28float_20const__29_1($5 + 136 | 0 | 0, $5 + 116 | 0 | 0) | 0;
|
|
}
|
|
btVector3__btVector3_28_29($5 + 96 | 0 | 0) | 0;
|
|
HEAPF32[($5 + 72 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 68 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 64 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 76 | 0 | 0, $5 + 72 | 0 | 0, $5 + 68 | 0 | 0, $5 + 64 | 0 | 0) | 0;
|
|
$453 = Math_fround(HEAPF32[($5 + 192 | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($5 + 76 | 0 | 0) | 0) + ((HEAP32[($5 + 188 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $453), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$462 = 8;
|
|
i64toi32_i32$2 = ($5 + 76 | 0) + $462 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1555 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 96 | 0) + $462 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1555;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[($5 + 76 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 80 | 0) >> 2] | 0;
|
|
$1559 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 96 | 0) >> 2] = $1559;
|
|
HEAP32[($5 + 100 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($5 + 136 | 0 | 0, $5 + 96 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 92 | 0) >> 2] = wasm2js_f32$0;
|
|
label$22 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 92 | 0) >> 2]) > Math_fround(HEAPF32[($5 + 152 | 0) >> 2]) & 1 | 0)) {
|
|
break label$22
|
|
}
|
|
HEAPF32[($5 + 152 | 0) >> 2] = Math_fround(HEAPF32[($5 + 92 | 0) >> 2]);
|
|
$484 = 8;
|
|
i64toi32_i32$2 = ($5 + 96 | 0) + $484 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1604 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 168 | 0) + $484 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1604;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[($5 + 96 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 100 | 0) >> 2] | 0;
|
|
$1608 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 168 | 0) >> 2] = $1608;
|
|
HEAP32[($5 + 172 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
HEAPF32[($5 + 44 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 40 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 36 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 48 | 0 | 0, $5 + 44 | 0 | 0, $5 + 40 | 0 | 0, $5 + 36 | 0 | 0) | 0;
|
|
$512 = Math_fround(-Math_fround(HEAPF32[($5 + 192 | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($5 + 48 | 0 | 0) | 0) + ((HEAP32[($5 + 188 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $512), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$521 = 8;
|
|
i64toi32_i32$2 = ($5 + 48 | 0) + $521 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1677 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 96 | 0) + $521 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1677;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[($5 + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 52 | 0) >> 2] | 0;
|
|
$1681 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 96 | 0) >> 2] = $1681;
|
|
HEAP32[($5 + 100 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($5 + 136 | 0 | 0, $5 + 96 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 92 | 0) >> 2] = wasm2js_f32$0;
|
|
label$23 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 92 | 0) >> 2]) > Math_fround(HEAPF32[($5 + 152 | 0) >> 2]) & 1 | 0)) {
|
|
break label$23
|
|
}
|
|
HEAPF32[($5 + 152 | 0) >> 2] = Math_fround(HEAPF32[($5 + 92 | 0) >> 2]);
|
|
$543 = 8;
|
|
i64toi32_i32$2 = ($5 + 96 | 0) + $543 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1726 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 168 | 0) + $543 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1726;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[($5 + 96 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 100 | 0) >> 2] | 0;
|
|
$1730 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 168 | 0) >> 2] = $1730;
|
|
HEAP32[($5 + 172 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, btVector3__getX_28_29_20const($5 + 168 | 0 | 0) | 0 | 0, btVector3__getY_28_29_20const($5 + 168 | 0 | 0) | 0 | 0, btVector3__getZ_28_29_20const($5 + 168 | 0 | 0) | 0 | 0) | 0;
|
|
break label$1;
|
|
case 5:
|
|
HEAP32[($5 + 32 | 0) >> 2] = $6;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btConvexPointCloudShape__getUnscaledPoints_28_29(HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btConvexPointCloudShape__getNumPoints_28_29_20const(HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_i32$1;
|
|
convexHullSupport_28btVector3_20const__2c_20btVector3_20const__2c_20int_2c_20btVector3_20const__29($0 | 0, HEAP32[($5 + 392 | 0) >> 2] | 0 | 0, HEAP32[($5 + 28 | 0) >> 2] | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0, btConvexInternalShape__getLocalScalingNV_28_29_20const(HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
break label$1;
|
|
case 4:
|
|
HEAP32[($5 + 20 | 0) >> 2] = $6;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btConvexHullShape__getUnscaledPoints_28_29(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btConvexHullShape__getNumPoints_28_29_20const(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
convexHullSupport_28btVector3_20const__2c_20btVector3_20const__2c_20int_2c_20btVector3_20const__29($0 | 0, HEAP32[($5 + 392 | 0) >> 2] | 0 | 0, HEAP32[($5 + 16 | 0) >> 2] | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0, btConvexInternalShape__getLocalScalingNV_28_29_20const(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
break label$1;
|
|
default:
|
|
break label$2;
|
|
};
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 68 | 0) >> 2] | 0 | 0]($0, $6, HEAP32[($5 + 392 | 0) >> 2] | 0);
|
|
}
|
|
__stack_pointer = $5 + 400 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexPointCloudShape__getUnscaledPoints_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 100 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btConvexPointCloudShape__getNumPoints_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 104 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btConvexInternalShape__getLocalScalingNV_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 20 | 0 | 0;
|
|
}
|
|
|
|
function convexHullSupport_28btVector3_20const__2c_20btVector3_20const__2c_20int_2c_20btVector3_20const__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$7 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 44 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 40 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 36 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 32 | 0) >> 2] = $4;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($7 + 16 | 0 | 0, HEAP32[($7 + 44 | 0) >> 2] | 0 | 0, HEAP32[($7 + 32 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btVector3__maxDot_28btVector3_20const__2c_20long_2c_20float__29_20const($7 + 16 | 0 | 0, HEAP32[($7 + 40 | 0) >> 2] | 0 | 0, HEAP32[($7 + 36 | 0) >> 2] | 0 | 0, $7 + 12 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if ((HEAP32[($7 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(86080 | 0, 74260 | 0, 123 | 0, 67460 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($0 | 0, (HEAP32[($7 + 40 | 0) >> 2] | 0) + ((HEAP32[($7 + 8 | 0) >> 2] | 0) << 4 | 0) | 0 | 0, HEAP32[($7 + 32 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $7 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullShape__getUnscaledPoints_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $8 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$8 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29((HEAP32[($3 + 12 | 0) >> 2] | 0) + 100 | 0 | 0, 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btConvexHullShape__getNumPoints_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $7 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$7 = btAlignedObjectArray_btVector3___size_28_29_20const((HEAP32[($3 + 12 | 0) >> 2] | 0) + 100 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btVector3__maxDot_28btVector3_20const__2c_20long_2c_20float__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $37 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAPF32[($6 + 12 | 0) >> 2] = Math_fround(-3402823466385288598117041.0e14);
|
|
HEAP32[($6 + 8 | 0) >> 2] = 0;
|
|
HEAP32[($6 + 4 | 0) >> 2] = -1;
|
|
HEAP32[($6 + 8 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const((HEAP32[($6 + 24 | 0) >> 2] | 0) + ((HEAP32[($6 + 8 | 0) >> 2] | 0) << 4 | 0) | 0 | 0, $7 | 0))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[$6 >> 2]) > Math_fround(HEAPF32[($6 + 12 | 0) >> 2]) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAPF32[($6 + 12 | 0) >> 2] = Math_fround(HEAPF32[$6 >> 2]);
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($6 + 8 | 0) >> 2] = (HEAP32[($6 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
HEAPF32[(HEAP32[($6 + 16 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[($6 + 12 | 0) >> 2]);
|
|
$37 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return $37 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btVector3___operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btVector3___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btConvexShape__localGetSupportVertexNonVirtual_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $6 = 0, $7 = 0, $8 = 0, $90 = 0, $94 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 76 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 72 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 76 | 0) >> 2] | 0;
|
|
$7 = HEAP32[($5 + 72 | 0) >> 2] | 0;
|
|
$8 = 8;
|
|
i64toi32_i32$2 = $7 + $8 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$90 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 56 | 0) + $8 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $90;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$94 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 56 | 0) >> 2] = $94;
|
|
HEAP32[($5 + 60 | 0) >> 2] = i64toi32_i32$0;
|
|
label$1 : {
|
|
if (!(Math_fround(btVector3__length2_28_29_20const($5 + 56 | 0 | 0)) < Math_fround(1.4210854715202004e-14) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[($5 + 52 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[($5 + 48 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[($5 + 44 | 0) >> 2] = Math_fround(-1.0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 56 | 0 | 0, $5 + 52 | 0 | 0, $5 + 48 | 0 | 0, $5 + 44 | 0 | 0);
|
|
}
|
|
btVector3__normalize_28_29($5 + 56 | 0 | 0) | 0;
|
|
btConvexShape__localGetSupportVertexWithoutMarginNonVirtual_28btVector3_20const__29_20const($5 + 28 | 0 | 0, $6 | 0, $5 + 56 | 0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btConvexShape__getMarginNonVirtual_28_29_20const($6 | 0))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28float_20const__2c_20btVector3_20const__29($5 + 12 | 0 | 0, $5 + 8 | 0 | 0, $5 + 56 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($0 | 0, $5 + 28 | 0 | 0, $5 + 12 | 0 | 0);
|
|
__stack_pointer = $5 + 80 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexShape__getMarginNonVirtual_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $5 = 0, $24 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$3 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 40 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 40 | 0) >> 2] | 0;
|
|
$5 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
switch ($5 | 0) {
|
|
case 8:
|
|
HEAP32[($3 + 36 | 0) >> 2] = $4;
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(btSphereShape__getRadius_28_29_20const(HEAP32[($3 + 36 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
break label$1;
|
|
case 0:
|
|
HEAP32[($3 + 32 | 0) >> 2] = $4;
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(btConvexInternalShape__getMarginNV_28_29_20const(HEAP32[($3 + 32 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
break label$1;
|
|
case 1:
|
|
HEAP32[($3 + 28 | 0) >> 2] = $4;
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(btConvexInternalShape__getMarginNV_28_29_20const(HEAP32[($3 + 28 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
break label$1;
|
|
case 13:
|
|
HEAP32[($3 + 24 | 0) >> 2] = $4;
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(btConvexInternalShape__getMarginNV_28_29_20const(HEAP32[($3 + 24 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
break label$1;
|
|
case 11:
|
|
HEAP32[($3 + 20 | 0) >> 2] = $4;
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(btConvexInternalShape__getMarginNV_28_29_20const(HEAP32[($3 + 20 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
break label$1;
|
|
case 10:
|
|
HEAP32[($3 + 16 | 0) >> 2] = $4;
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(btConvexInternalShape__getMarginNV_28_29_20const(HEAP32[($3 + 16 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
break label$1;
|
|
case 4:
|
|
case 5:
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(btConvexInternalShape__getMarginNV_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
break label$1;
|
|
default:
|
|
break label$2;
|
|
};
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($4))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
$24 = Math_fround(HEAPF32[($3 + 44 | 0) >> 2]);
|
|
__stack_pointer = $3 + 48 | 0;
|
|
return Math_fround($24);
|
|
}
|
|
|
|
function btConvexInternalShape__getMarginNV_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 52 | 0) >> 2]));
|
|
}
|
|
|
|
function btPolyhedralConvexAabbCachingShape__getNonvirtualAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__2c_20float_29_20const($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = Math_fround($4);
|
|
var $7 = 0, $8 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAPF32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAPU8[($8 + 96 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(82770 | 0, 79068 | 0, 106 | 0, 83077 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
btTransformAabb_28btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20btTransform_20const__2c_20btVector3__2c_20btVector3__29($8 + 64 | 0 | 0, $8 + 80 | 0 | 0, Math_fround(Math_fround(HEAPF32[($7 + 12 | 0) >> 2])), HEAP32[($7 + 24 | 0) >> 2] | 0 | 0, HEAP32[($7 + 20 | 0) >> 2] | 0 | 0, HEAP32[($7 + 16 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btConvexShape_cpp() {
|
|
__cxx_global_var_init_36();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_37() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114136 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexTriangleMeshShape__btConvexTriangleMeshShape_28btStridingMeshInterface__2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $7 = 0, $16 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 3 | 0) >> 0] = $2;
|
|
$7 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $7;
|
|
btPolyhedralConvexAabbCachingShape__btPolyhedralConvexAabbCachingShape_28_29($7 | 0) | 0;
|
|
HEAP32[$7 >> 2] = 98364 + 8 | 0;
|
|
HEAP32[($7 + 100 | 0) >> 2] = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = 3;
|
|
label$1 : {
|
|
if (!((HEAPU8[($5 + 3 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btPolyhedralConvexAabbCachingShape__recalcLocalAabb_28_29($7 | 0);
|
|
}
|
|
$16 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $16 | 0;
|
|
}
|
|
|
|
function btConvexTriangleMeshShape__localGetSupportingVertexWithoutMargin_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $22 = 0, $23 = 0, $87 = 0, $110 = 0, $6 = 0, $173 = 0, $177 = 0, $327 = 0, $337 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 160 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 156 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 152 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 156 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 148 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 144 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 140 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $5 + 148 | 0 | 0, $5 + 144 | 0 | 0, $5 + 140 | 0 | 0) | 0;
|
|
$22 = HEAP32[($5 + 152 | 0) >> 2] | 0;
|
|
$23 = 8;
|
|
i64toi32_i32$2 = $22 + $23 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$173 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 120 | 0) + $23 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $173;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $22;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$177 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 120 | 0) >> 2] = $177;
|
|
HEAP32[($5 + 124 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($5 + 120 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 116 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 116 | 0) >> 2]) < Math_fround(9.999999747378752e-05) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($5 + 112 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($5 + 108 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 104 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 120 | 0 | 0, $5 + 112 | 0 | 0, $5 + 108 | 0 | 0, $5 + 104 | 0 | 0);
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(1.0) / Math_fround(btSqrt_28float_29(Math_fround(Math_fround(HEAPF32[($5 + 116 | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 100 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__operator___28float_20const__29_1($5 + 120 | 0 | 0, $5 + 100 | 0 | 0) | 0;
|
|
}
|
|
LocalSupportVertexCallback__LocalSupportVertexCallback_28btVector3_20const__29($5 + 60 | 0 | 0, $5 + 120 | 0 | 0) | 0;
|
|
HEAPF32[($5 + 40 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAPF32[($5 + 36 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAPF32[($5 + 32 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 44 | 0 | 0, $5 + 40 | 0 | 0, $5 + 36 | 0 | 0, $5 + 32 | 0 | 0) | 0;
|
|
$87 = HEAP32[($6 + 100 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__29($5 + 16 | 0 | 0, $5 + 44 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$87 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($87, $5 + 60 | 0, $5 + 16 | 0, $5 + 44 | 0);
|
|
LocalSupportVertexCallback__GetSupportVertexLocal_28_29($5 | 0, $5 + 60 | 0 | 0);
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[$5 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
$327 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $327;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$110 = 8;
|
|
i64toi32_i32$2 = $5 + $110 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$337 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0 + $110 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $337;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
LocalSupportVertexCallback___LocalSupportVertexCallback_28_29($5 + 60 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 160 | 0;
|
|
return;
|
|
}
|
|
|
|
function LocalSupportVertexCallback__LocalSupportVertexCallback_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $28 = 0, $31 = 0, $97 = 0, $107 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
btInternalTriangleIndexCallback__btInternalTriangleIndexCallback_28_29($5 | 0) | 0;
|
|
HEAP32[$5 >> 2] = 98536 + 8 | 0;
|
|
HEAPF32[($4 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 4 | 0 | 0, $4 + 20 | 0 | 0, $4 + 16 | 0 | 0, $4 + 12 | 0 | 0) | 0;
|
|
HEAPF32[($5 + 20 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
$28 = $5 + 24 | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$97 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $28;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $97;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$31 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $31 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$107 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $28 + $31 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $107;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function LocalSupportVertexCallback__GetSupportVertexLocal_28_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, $9 = 0, $27 = 0, $37 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $1;
|
|
i64toi32_i32$2 = (HEAP32[($4 + 12 | 0) >> 2] | 0) + 4 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$27 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $27;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$9 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $9 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$37 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0 + $9 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $37;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function LocalSupportVertexCallback___LocalSupportVertexCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btInternalTriangleIndexCallback___btInternalTriangleIndexCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexTriangleMeshShape__batchedUnitVectorGetSupportingVertexWithoutMargin_28btVector3_20const__2c_20btVector3__2c_20int_29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $58 = 0, $84 = 0, $86 = 0, $7 = 0, $267 = 0, $277 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 128 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 124 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 120 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 116 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 112 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 124 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 108 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 108 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 112 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29((HEAP32[($6 + 116 | 0) >> 2] | 0) + ((HEAP32[($6 + 108 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(-999999984306749440.0)), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP32[($6 + 108 | 0) >> 2] = (HEAP32[($6 + 108 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
HEAP32[($6 + 104 | 0) >> 2] = 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($6 + 104 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 112 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($6 + 100 | 0) >> 2] = (HEAP32[($6 + 120 | 0) >> 2] | 0) + ((HEAP32[($6 + 104 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
LocalSupportVertexCallback__LocalSupportVertexCallback_28btVector3_20const__29($6 + 60 | 0 | 0, HEAP32[($6 + 100 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($6 + 40 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAPF32[($6 + 36 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAPF32[($6 + 32 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 44 | 0 | 0, $6 + 40 | 0 | 0, $6 + 36 | 0 | 0, $6 + 32 | 0 | 0) | 0;
|
|
$58 = HEAP32[($7 + 100 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__29($6 + 16 | 0 | 0, $6 + 44 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$58 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($58, $6 + 60 | 0, $6 + 16 | 0, $6 + 44 | 0);
|
|
LocalSupportVertexCallback__GetSupportVertexLocal_28_29($6 | 0, $6 + 60 | 0 | 0);
|
|
$84 = (HEAP32[($6 + 116 | 0) >> 2] | 0) + ((HEAP32[($6 + 104 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[$6 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
$267 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $84;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $267;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$86 = 8;
|
|
i64toi32_i32$2 = $6 + $86 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$277 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $84 + $86 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $277;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
LocalSupportVertexCallback___LocalSupportVertexCallback_28_29($6 + 60 | 0 | 0) | 0;
|
|
HEAP32[($6 + 104 | 0) >> 2] = (HEAP32[($6 + 104 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 128 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexTriangleMeshShape__localGetSupportingVertex_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $18 = 0, $19 = 0, $121 = 0, $125 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 60 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 56 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 68 | 0) >> 2] | 0 | 0]($0, $6, HEAP32[($5 + 56 | 0) >> 2] | 0);
|
|
label$1 : {
|
|
if (!(Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($6)) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$18 = HEAP32[($5 + 56 | 0) >> 2] | 0;
|
|
$19 = 8;
|
|
i64toi32_i32$2 = $18 + $19 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$121 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 40 | 0) + $19 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $121;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $18;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$125 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $125;
|
|
HEAP32[($5 + 44 | 0) >> 2] = i64toi32_i32$0;
|
|
label$2 : {
|
|
if (!(Math_fround(btVector3__length2_28_29_20const($5 + 40 | 0 | 0)) < Math_fround(1.4210854715202004e-14) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($5 + 36 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[($5 + 32 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[($5 + 28 | 0) >> 2] = Math_fround(-1.0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 40 | 0 | 0, $5 + 36 | 0 | 0, $5 + 32 | 0 | 0, $5 + 28 | 0 | 0);
|
|
}
|
|
btVector3__normalize_28_29($5 + 40 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($6))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28float_20const__2c_20btVector3_20const__29($5 + 12 | 0 | 0, $5 + 8 | 0 | 0, $5 + 40 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($0 | 0, $5 + 12 | 0 | 0) | 0;
|
|
}
|
|
__stack_pointer = $5 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexTriangleMeshShape__getNumVertices_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 0 | 0;
|
|
}
|
|
|
|
function btConvexTriangleMeshShape__getNumEdges_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 0 | 0;
|
|
}
|
|
|
|
function btConvexTriangleMeshShape__getEdge_28int_2c_20btVector3__2c_20btVector3__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
__assert_fail(86177 | 0, 74639 | 0, 169 | 0, 81912 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btConvexTriangleMeshShape__getVertex_28int_2c_20btVector3__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
__assert_fail(86177 | 0, 74639 | 0, 174 | 0, 66266 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btConvexTriangleMeshShape__getNumPlanes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 0 | 0;
|
|
}
|
|
|
|
function btConvexTriangleMeshShape__getPlane_28btVector3__2c_20btVector3__2c_20int_29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
__assert_fail(86177 | 0, 74639 | 0, 184 | 0, 81810 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btConvexTriangleMeshShape__isInside_28btVector3_20const__2c_20float_29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
__assert_fail(86177 | 0, 74639 | 0, 190 | 0, 82062 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btConvexTriangleMeshShape__setLocalScaling_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btStridingMeshInterface__setScaling_28btVector3_20const__29(HEAP32[($5 + 100 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
btPolyhedralConvexAabbCachingShape__recalcLocalAabb_28_29($5 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btStridingMeshInterface__setScaling_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, $8 = 0, $10 = 0, $32 = 0, $42 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$8 = (HEAP32[($4 + 12 | 0) >> 2] | 0) + 4 | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$32 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $8;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $32;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$10 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $10 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$42 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8 + $10 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $42;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function btConvexTriangleMeshShape__getLocalScaling_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = btStridingMeshInterface__getScaling_28_29_20const(HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 100 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btConvexTriangleMeshShape___btConvexTriangleMeshShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btPolyhedralConvexAabbCachingShape___btPolyhedralConvexAabbCachingShape_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btPolyhedralConvexAabbCachingShape___btPolyhedralConvexAabbCachingShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btPolyhedralConvexShape___btPolyhedralConvexShape_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexTriangleMeshShape___btConvexTriangleMeshShape_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConvexTriangleMeshShape___btConvexTriangleMeshShape_28_29($4 | 0) | 0;
|
|
btConvexTriangleMeshShape__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexTriangleMeshShape__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexTriangleMeshShape__getName_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 77952 | 0;
|
|
}
|
|
|
|
function LocalSupportVertexCallback___LocalSupportVertexCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
LocalSupportVertexCallback___LocalSupportVertexCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function LocalSupportVertexCallback__internalProcessTriangleIndex_28btVector3__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $7 = 0, $36 = 0, $38 = 0, $126 = 0, $136 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($7 + 24 | 0 | 0, (HEAP32[($6 + 24 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 4 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 8 | 0) >> 2]) > Math_fround(HEAPF32[($7 + 20 | 0) >> 2]) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAPF32[($7 + 20 | 0) >> 2] = Math_fround(HEAPF32[($6 + 8 | 0) >> 2]);
|
|
$36 = $7 + 4 | 0;
|
|
i64toi32_i32$2 = (HEAP32[($6 + 24 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$126 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $36;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $126;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$38 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $38 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$136 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $36 + $38 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $136;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btConvexTriangleMeshShape_cpp() {
|
|
__cxx_global_var_init_37();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_38() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114140 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btCylinderShape__btCylinderShape_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $47 = 0, $49 = 0, $161 = 0, $174 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 76 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 72 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 76 | 0) >> 2] | 0;
|
|
btConvexInternalShape__btConvexInternalShape_28_29($5 | 0) | 0;
|
|
HEAP32[$5 >> 2] = 98600 + 8 | 0;
|
|
HEAP32[($5 + 60 | 0) >> 2] = 1;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 52 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 48 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 56 | 0 | 0, $4 + 52 | 0 | 0, $4 + 48 | 0 | 0, $4 + 44 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($4 + 12 | 0 | 0, HEAP32[($4 + 72 | 0) >> 2] | 0 | 0, $5 + 20 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 28 | 0 | 0, $4 + 12 | 0 | 0, $4 + 56 | 0 | 0);
|
|
$47 = $5 + 36 | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
$161 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $47;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $161;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$49 = 8;
|
|
i64toi32_i32$2 = ($4 + 28 | 0) + $49 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$174 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $47 + $49 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $174;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btConvexInternalShape__setSafeMargin_28btVector3_20const__2c_20float_29($5 | 0, HEAP32[($4 + 72 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(.10000000149011612)));
|
|
HEAP32[($5 + 4 | 0) >> 2] = 13;
|
|
__stack_pointer = $4 + 80 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btCylinderShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btTransformAabb_28btVector3_20const__2c_20float_2c_20btTransform_20const__2c_20btVector3__2c_20btVector3__29(btCylinderShape__getHalfExtentsWithoutMargin_28_29_20const($7 | 0) | 0 | 0, Math_fround(Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($7))), HEAP32[($6 + 8 | 0) >> 2] | 0 | 0, HEAP32[($6 + 4 | 0) >> 2] | 0 | 0, HEAP32[$6 >> 2] | 0 | 0);
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCylinderShape__calculateLocalInertia_28float_2c_20btVector3__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $30 = 0, $6 = 0, $18 = 0, $69 = 0, $74 = 0, $78 = 0, $83 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 60 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 56 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 52 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
btCylinderShape__getHalfExtentsWithMargin_28_29_20const($5 + 28 | 0 | 0, $6 | 0);
|
|
HEAPF32[($5 + 24 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 56 | 0) >> 2]) / Math_fround(12.0));
|
|
HEAPF32[($5 + 20 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 56 | 0) >> 2]) / Math_fround(4.0));
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 56 | 0) >> 2]) / Math_fround(2.0));
|
|
$18 = HEAP32[($6 + 60 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
switch ($18 | 0) {
|
|
case 0:
|
|
HEAP32[($5 + 12 | 0) >> 2] = 1;
|
|
HEAP32[($5 + 8 | 0) >> 2] = 0;
|
|
break label$1;
|
|
case 2:
|
|
HEAP32[($5 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = 2;
|
|
break label$1;
|
|
default:
|
|
break label$2;
|
|
};
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = 1;
|
|
}
|
|
$30 = 2;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($5 + 28 | 0 | 0) | 0) + ((HEAP32[($5 + 12 | 0) >> 2] | 0) << $30 | 0) | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($5 + 28 | 0 | 0) | 0) + ((HEAP32[($5 + 12 | 0) >> 2] | 0) << $30 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 48 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($5 + 28 | 0 | 0) | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << $30 | 0) | 0) >> 2]) * Math_fround(4.0)) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($5 + 28 | 0 | 0) | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << $30 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 24 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 44 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($5 + 20 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 48 | 0) >> 2])));
|
|
HEAPF32[$5 >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 16 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 48 | 0) >> 2]));
|
|
$69 = HEAP32[($6 + 60 | 0) >> 2] | 0;
|
|
label$5 : {
|
|
label$6 : {
|
|
switch ($69 | 0) {
|
|
case 0:
|
|
$74 = $5 + 4 | 0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29(HEAP32[($5 + 52 | 0) >> 2] | 0 | 0, $5 | 0, $74 | 0, $74 | 0);
|
|
break label$5;
|
|
case 2:
|
|
$78 = $5 + 4 | 0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29(HEAP32[($5 + 52 | 0) >> 2] | 0 | 0, $78 | 0, $78 | 0, $5 | 0);
|
|
break label$5;
|
|
default:
|
|
break label$6;
|
|
};
|
|
}
|
|
$83 = $5 + 4 | 0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29(HEAP32[($5 + 52 | 0) >> 2] | 0 | 0, $83 | 0, $5 | 0, $83 | 0);
|
|
}
|
|
__stack_pointer = $5 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCylinderShape__localGetSupportingVertexWithoutMargin_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $2;
|
|
CylinderLocalSupportY_28btVector3_20const__2c_20btVector3_20const__29($0 | 0, btCylinderShape__getHalfExtentsWithoutMargin_28_29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function CylinderLocalSupportY_28btVector3_20const__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $58 = Math_fround(0), $81 = Math_fround(0), $45 = Math_fround(0), $66 = Math_fround(0), $68 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 36 | 0) >> 2] = 1;
|
|
HEAP32[($5 + 32 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 28 | 0) >> 2] = 1;
|
|
HEAP32[($5 + 24 | 0) >> 2] = 2;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 44 | 0) >> 2] | 0 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 44 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28_29($0 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btSqrt_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2]))))))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 8 | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 20 | 0) >> 2]) / Math_fround(HEAPF32[($5 + 8 | 0) >> 2]));
|
|
$45 = Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[($5 + 12 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($0 | 0) | 0, wasm2js_f32$0 = $45), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(+Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2]) < +(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$58 = Math_fround(-Math_fround(HEAPF32[($5 + 16 | 0) >> 2]));
|
|
break label$3;
|
|
}
|
|
$58 = Math_fround(HEAPF32[($5 + 16 | 0) >> 2]);
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($0 | 0) | 0, wasm2js_f32$0 = $58), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$66 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 12 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($0 | 0) | 0, wasm2js_f32$0 = $66), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
break label$1;
|
|
}
|
|
$68 = Math_fround(HEAPF32[($5 + 20 | 0) >> 2]);
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($0 | 0) | 0, wasm2js_f32$0 = $68), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!(+Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2]) < +(0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$81 = Math_fround(-Math_fround(HEAPF32[($5 + 16 | 0) >> 2]));
|
|
break label$5;
|
|
}
|
|
$81 = Math_fround(HEAPF32[($5 + 16 | 0) >> 2]);
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($0 | 0) | 0, wasm2js_f32$0 = $81), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($0 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCylinderShape__batchedUnitVectorGetSupportingVertexWithoutMargin_28btVector3_20const__2c_20btVector3__2c_20int_29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $29 = 0, $31 = 0, $7 = 0, $105 = 0, $118 = 0;
|
|
$6 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 32 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 32 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
CylinderLocalSupportY_28btVector3_20const__2c_20btVector3_20const__29($6 + 12 | 0 | 0, btCylinderShape__getHalfExtentsWithoutMargin_28_29_20const($7 | 0) | 0 | 0, (HEAP32[($6 + 40 | 0) >> 2] | 0) + ((HEAP32[($6 + 28 | 0) >> 2] | 0) << 4 | 0) | 0 | 0);
|
|
$29 = (HEAP32[($6 + 36 | 0) >> 2] | 0) + ((HEAP32[($6 + 28 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
$105 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $29;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $105;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$31 = 8;
|
|
i64toi32_i32$2 = ($6 + 12 | 0) + $31 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$118 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $29 + $31 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $118;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = (HEAP32[($6 + 28 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCylinderShape___btCylinderShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConvexInternalShape___btConvexInternalShape_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCylinderShape___btCylinderShape_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCylinderShape___btCylinderShape_28_29($4 | 0) | 0;
|
|
btCylinderShape__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCylinderShape__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCylinderShape__setLocalScaling_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $62 = 0, $64 = 0, $198 = 0, $211 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 108 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 104 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 108 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 84 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 80 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 76 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 88 | 0 | 0, $4 + 84 | 0 | 0, $4 + 80 | 0 | 0, $4 + 76 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($4 + 60 | 0 | 0, $5 + 36 | 0 | 0, $4 + 88 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_3($4 + 44 | 0 | 0, $4 + 60 | 0 | 0, $5 + 20 | 0 | 0);
|
|
btConvexInternalShape__setLocalScaling_28btVector3_20const__29($5 | 0, HEAP32[($4 + 104 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($4 + 12 | 0 | 0, $4 + 44 | 0 | 0, $5 + 20 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 28 | 0 | 0, $4 + 12 | 0 | 0, $4 + 88 | 0 | 0);
|
|
$62 = $5 + 36 | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
$198 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $62;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $198;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$64 = 8;
|
|
i64toi32_i32$2 = ($4 + 28 | 0) + $64 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$211 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $62 + $64 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $211;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $4 + 112 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCylinderShape__getName_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 83912 | 0;
|
|
}
|
|
|
|
function btCylinderShape__getAnisotropicRollingFrictionDirection_28_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 4 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[$4 >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $4 + 8 | 0 | 0, $4 + 4 | 0 | 0, $4 | 0) | 0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($0 | 0) | 0) + ((btCylinderShape__getUpAxis_28_29_20const($5 | 0) | 0) << 2 | 0) | 0, wasm2js_f32$0 = Math_fround(1.0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCylinderShape__setMargin_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $65 = 0, $67 = 0, $216 = 0, $226 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 96 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 92 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 88 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 92 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 68 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 64 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 60 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 72 | 0 | 0, $4 + 68 | 0 | 0, $4 + 64 | 0 | 0, $4 + 60 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($4 + 44 | 0 | 0, $5 + 36 | 0 | 0, $4 + 72 | 0 | 0);
|
|
btConvexInternalShape__setMargin_28float_29($5 | 0, Math_fround(Math_fround(HEAPF32[($4 + 88 | 0) >> 2])));
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 28 | 0 | 0, $4 + 24 | 0 | 0, $4 + 20 | 0 | 0, $4 + 16 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 | 0, $4 + 44 | 0 | 0, $4 + 28 | 0 | 0);
|
|
$65 = $5 + 36 | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[$4 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
$216 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $65;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $216;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$67 = 8;
|
|
i64toi32_i32$2 = $4 + $67 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$226 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $65 + $67 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $226;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $4 + 96 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCylinderShape__calculateSerializeBufferSize_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 60 | 0;
|
|
}
|
|
|
|
function btCylinderShape__serialize_28void__2c_20btSerializer__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
btConvexInternalShape__serialize_28void__2c_20btSerializer__29_20const($6 | 0, HEAP32[$5 >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[((HEAP32[$5 >> 2] | 0) + 52 | 0) >> 2] = HEAP32[($6 + 60 | 0) >> 2] | 0;
|
|
HEAP8[((HEAP32[$5 >> 2] | 0) + 56 | 0) >> 0] = 0;
|
|
HEAP8[((HEAP32[$5 >> 2] | 0) + 57 | 0) >> 0] = 0;
|
|
HEAP8[((HEAP32[$5 >> 2] | 0) + 58 | 0) >> 0] = 0;
|
|
HEAP8[((HEAP32[$5 >> 2] | 0) + 59 | 0) >> 0] = 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return 83434 | 0;
|
|
}
|
|
|
|
function btCylinderShape__localGetSupportingVertex_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $6 = 0, $14 = 0, $28 = 0, $29 = 0, $109 = 0, $122 = 0, $154 = 0, $158 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 76 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 72 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 76 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 68 | 0) >> 2] | 0 | 0]($5 + 56 | 0, $6, HEAP32[($5 + 72 | 0) >> 2] | 0);
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 56 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
$109 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $109;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$14 = 8;
|
|
i64toi32_i32$2 = ($5 + 56 | 0) + $14 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$122 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0 + $14 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $122;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
label$1 : {
|
|
if (!(Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($6)) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$28 = HEAP32[($5 + 72 | 0) >> 2] | 0;
|
|
$29 = 8;
|
|
i64toi32_i32$2 = $28 + $29 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$154 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 40 | 0) + $29 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $154;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $28;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$158 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $158;
|
|
HEAP32[($5 + 44 | 0) >> 2] = i64toi32_i32$0;
|
|
label$2 : {
|
|
if (!(Math_fround(btVector3__length2_28_29_20const($5 + 40 | 0 | 0)) < Math_fround(1.4210854715202004e-14) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($5 + 36 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[($5 + 32 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[($5 + 28 | 0) >> 2] = Math_fround(-1.0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 40 | 0 | 0, $5 + 36 | 0 | 0, $5 + 32 | 0 | 0, $5 + 28 | 0 | 0);
|
|
}
|
|
btVector3__normalize_28_29($5 + 40 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($6))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28float_20const__2c_20btVector3_20const__29($5 + 12 | 0 | 0, $5 + 8 | 0 | 0, $5 + 40 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($0 | 0, $5 + 12 | 0 | 0) | 0;
|
|
}
|
|
__stack_pointer = $5 + 80 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCylinderShape__getRadius_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $12 = Math_fround(0);
|
|
$3 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 28 | 0) >> 2] = $0;
|
|
btCylinderShape__getHalfExtentsWithMargin_28_29_20const($3 + 12 | 0 | 0, HEAP32[($3 + 28 | 0) >> 2] | 0 | 0);
|
|
$12 = Math_fround(HEAPF32[(btVector3__getX_28_29_20const($3 + 12 | 0 | 0) | 0) >> 2]);
|
|
__stack_pointer = $3 + 32 | 0;
|
|
return Math_fround($12);
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btCylinderShape_cpp() {
|
|
__cxx_global_var_init_38();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_39() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114144 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btConcaveShape__btConcaveShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionShape__btCollisionShape_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 98736 + 8 | 0;
|
|
HEAPF32[($4 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConcaveShape___btConcaveShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionShape___btCollisionShape_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConcaveShape___btConcaveShape_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btConcaveShape_cpp() {
|
|
__cxx_global_var_init_39();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_40() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114148 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btEmptyShape__btEmptyShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConcaveShape__btConcaveShape_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 98844 + 8 | 0;
|
|
btVector3__btVector3_28_29($4 + 24 | 0 | 0) | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 27;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btEmptyShape___btEmptyShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConcaveShape___btConcaveShape_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btEmptyShape___btEmptyShape_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[893 | 0]($4) | 0;
|
|
btEmptyShape__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btEmptyShape__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btEmptyShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $7 = 0, $37 = 0, $39 = 0, $53 = 0, $55 = 0, $146 = 0, $159 = 0, $180 = 0, $193 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 76 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 72 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 68 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 64 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 76 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($7))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($7))), HEAPF32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($7))), HEAPF32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 48 | 0 | 0, $6 + 44 | 0 | 0, $6 + 40 | 0 | 0, $6 + 36 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 20 | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($6 + 72 | 0) >> 2] | 0 | 0) | 0 | 0, $6 + 48 | 0 | 0);
|
|
$37 = HEAP32[($6 + 68 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
$146 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $37;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $146;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$39 = 8;
|
|
i64toi32_i32$2 = ($6 + 20 | 0) + $39 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$159 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $37 + $39 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $159;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 4 | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($6 + 72 | 0) >> 2] | 0 | 0) | 0 | 0, $6 + 48 | 0 | 0);
|
|
$53 = HEAP32[($6 + 64 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
$180 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $53;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $180;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$55 = 8;
|
|
i64toi32_i32$2 = ($6 + 4 | 0) + $55 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$193 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $53 + $55 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $193;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $6 + 80 | 0;
|
|
return;
|
|
}
|
|
|
|
function btEmptyShape__calculateLocalInertia_28float_2c_20btVector3__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
__assert_fail(86177 | 0, 74142 | 0, 46 | 0, 83783 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btEmptyShape__setLocalScaling_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, $8 = 0, $10 = 0, $32 = 0, $42 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$8 = (HEAP32[($4 + 12 | 0) >> 2] | 0) + 24 | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$32 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $8;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $32;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$10 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $10 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$42 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8 + $10 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $42;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function btEmptyShape__getLocalScaling_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 24 | 0 | 0;
|
|
}
|
|
|
|
function btEmptyShape__getName_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 65654 | 0;
|
|
}
|
|
|
|
function btEmptyShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btEmptyShape_cpp() {
|
|
__cxx_global_var_init_40();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_41() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114152 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btHeightfieldTerrainShape__btHeightfieldTerrainShape_28int_2c_20int_2c_20void_20const__2c_20float_2c_20float_2c_20float_2c_20int_2c_20PHY_ScalarType_2c_20bool_29($0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = Math_fround($4);
|
|
$5 = Math_fround($5);
|
|
$6 = Math_fround($6);
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
$9 = $9 | 0;
|
|
var $12 = 0, $14 = 0;
|
|
$12 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $12;
|
|
HEAP32[($12 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($12 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($12 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($12 + 32 | 0) >> 2] = $3;
|
|
HEAPF32[($12 + 28 | 0) >> 2] = $4;
|
|
HEAPF32[($12 + 24 | 0) >> 2] = $5;
|
|
HEAPF32[($12 + 20 | 0) >> 2] = $6;
|
|
HEAP32[($12 + 16 | 0) >> 2] = $7;
|
|
HEAP32[($12 + 12 | 0) >> 2] = $8;
|
|
HEAP8[($12 + 11 | 0) >> 0] = $9;
|
|
$14 = HEAP32[($12 + 44 | 0) >> 2] | 0;
|
|
btConcaveShape__btConcaveShape_28_29($14 | 0) | 0;
|
|
HEAP32[$14 >> 2] = 98948 + 8 | 0;
|
|
btVector3__btVector3_28_29($14 + 24 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($14 + 40 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($14 + 56 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($14 + 116 | 0 | 0) | 0;
|
|
btHeightfieldTerrainShape__initialize_28int_2c_20int_2c_20void_20const__2c_20float_2c_20float_2c_20float_2c_20int_2c_20PHY_ScalarType_2c_20bool_29($14 | 0, HEAP32[($12 + 40 | 0) >> 2] | 0 | 0, HEAP32[($12 + 36 | 0) >> 2] | 0 | 0, HEAP32[($12 + 32 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($12 + 28 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($12 + 24 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($12 + 20 | 0) >> 2])), HEAP32[($12 + 16 | 0) >> 2] | 0 | 0, HEAP32[($12 + 12 | 0) >> 2] | 0 | 0, (HEAPU8[($12 + 11 | 0) >> 0] | 0) & 1 | 0 | 0);
|
|
__stack_pointer = $12 + 48 | 0;
|
|
return $14 | 0;
|
|
}
|
|
|
|
function btHeightfieldTerrainShape__initialize_28int_2c_20int_2c_20void_20const__2c_20float_2c_20float_2c_20float_2c_20int_2c_20PHY_ScalarType_2c_20bool_29($0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = Math_fround($4);
|
|
$5 = Math_fround($5);
|
|
$6 = Math_fround($6);
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
$9 = $9 | 0;
|
|
var $12 = 0, $14 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $116 = 0, i64toi32_i32$2 = 0, $100 = 0, $112 = 0, $123 = 0, $209 = 0, $211 = 0, $614 = 0, $627 = 0;
|
|
$12 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $12;
|
|
HEAP32[($12 + 108 | 0) >> 2] = $0;
|
|
HEAP32[($12 + 104 | 0) >> 2] = $1;
|
|
HEAP32[($12 + 100 | 0) >> 2] = $2;
|
|
HEAP32[($12 + 96 | 0) >> 2] = $3;
|
|
HEAPF32[($12 + 92 | 0) >> 2] = $4;
|
|
HEAPF32[($12 + 88 | 0) >> 2] = $5;
|
|
HEAPF32[($12 + 84 | 0) >> 2] = $6;
|
|
HEAP32[($12 + 80 | 0) >> 2] = $7;
|
|
HEAP32[($12 + 76 | 0) >> 2] = $8;
|
|
HEAP8[($12 + 75 | 0) >> 0] = $9;
|
|
$14 = HEAP32[($12 + 108 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($12 + 104 | 0) >> 2] | 0 | 0) > (1 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85653 | 0, 74508 | 0, 62 | 0, 80824 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($12 + 100 | 0) >> 2] | 0 | 0) > (1 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(85631 | 0, 74508 | 0, 63 | 0, 80824 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$3 : {
|
|
if ((HEAP32[($12 + 96 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
__assert_fail(83752 | 0, 74508 | 0, 64 | 0, 80824 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$4 : {
|
|
if (Math_fround(HEAPF32[($12 + 88 | 0) >> 2]) <= Math_fround(HEAPF32[($12 + 84 | 0) >> 2]) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
__assert_fail(68077 | 0, 74508 | 0, 66 | 0, 80824 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!((HEAP32[($12 + 80 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
if ((HEAP32[($12 + 80 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0) {
|
|
break label$5
|
|
}
|
|
}
|
|
__assert_fail(85367 | 0, 74508 | 0, 67 | 0, 80824 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$7 : {
|
|
if ((HEAP32[($12 + 76 | 0) >> 2] | 0 | 0) != (5 | 0) & 1 | 0) {
|
|
break label$7
|
|
}
|
|
if (HEAP32[($12 + 76 | 0) >> 2] | 0) {
|
|
break label$7
|
|
}
|
|
if ((HEAP32[($12 + 76 | 0) >> 2] | 0 | 0) != (3 | 0) & 1 | 0) {
|
|
break label$7
|
|
}
|
|
__assert_fail(83971 | 0, 74508 | 0, 68 | 0, 80824 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($14 + 4 | 0) >> 2] = 24;
|
|
HEAP32[($14 + 72 | 0) >> 2] = HEAP32[($12 + 104 | 0) >> 2] | 0;
|
|
HEAP32[($14 + 76 | 0) >> 2] = HEAP32[($12 + 100 | 0) >> 2] | 0;
|
|
HEAPF32[($14 + 80 | 0) >> 2] = Math_fround(HEAPF32[($12 + 88 | 0) >> 2]);
|
|
HEAPF32[($14 + 84 | 0) >> 2] = Math_fround(HEAPF32[($12 + 84 | 0) >> 2]);
|
|
$100 = -1;
|
|
HEAPF32[($14 + 88 | 0) >> 2] = Math_fround((HEAP32[($12 + 104 | 0) >> 2] | 0) + $100 | 0 | 0);
|
|
HEAPF32[($14 + 92 | 0) >> 2] = Math_fround((HEAP32[($12 + 100 | 0) >> 2] | 0) + $100 | 0 | 0);
|
|
HEAPF32[($14 + 96 | 0) >> 2] = Math_fround(HEAPF32[($12 + 92 | 0) >> 2]);
|
|
HEAP32[($14 + 100 | 0) >> 2] = HEAP32[($12 + 96 | 0) >> 2] | 0;
|
|
HEAP32[($14 + 104 | 0) >> 2] = HEAP32[($12 + 76 | 0) >> 2] | 0;
|
|
HEAP8[($14 + 108 | 0) >> 0] = (HEAPU8[($12 + 75 | 0) >> 0] | 0) & 1 | 0;
|
|
$112 = 0;
|
|
HEAP8[($14 + 109 | 0) >> 0] = $112;
|
|
HEAP8[($14 + 110 | 0) >> 0] = $112;
|
|
HEAP32[($14 + 112 | 0) >> 2] = HEAP32[($12 + 80 | 0) >> 2] | 0;
|
|
$116 = 1065353216;
|
|
HEAP32[($12 + 68 | 0) >> 2] = $116;
|
|
HEAP32[($12 + 64 | 0) >> 2] = $116;
|
|
HEAP32[($12 + 60 | 0) >> 2] = $116;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($14 + 116 | 0 | 0, $12 + 68 | 0 | 0, $12 + 64 | 0 | 0, $12 + 60 | 0 | 0);
|
|
$123 = HEAP32[($14 + 112 | 0) >> 2] | 0;
|
|
label$8 : {
|
|
label$9 : {
|
|
switch ($123 | 0) {
|
|
case 0:
|
|
HEAPF32[($12 + 56 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($12 + 52 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($14 + 24 | 0 | 0, $14 + 80 | 0 | 0, $12 + 56 | 0 | 0, $12 + 52 | 0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($14 + 40 | 0 | 0, $14 + 84 | 0 | 0, $14 + 88 | 0 | 0, $14 + 92 | 0 | 0);
|
|
break label$8;
|
|
case 1:
|
|
HEAPF32[($12 + 48 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($12 + 44 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($14 + 24 | 0 | 0, $12 + 48 | 0 | 0, $14 + 80 | 0 | 0, $12 + 44 | 0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($14 + 40 | 0 | 0, $14 + 88 | 0 | 0, $14 + 84 | 0 | 0, $14 + 92 | 0 | 0);
|
|
break label$8;
|
|
case 2:
|
|
HEAPF32[($12 + 40 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($12 + 36 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($14 + 24 | 0 | 0, $12 + 40 | 0 | 0, $12 + 36 | 0 | 0, $14 + 80 | 0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($14 + 40 | 0 | 0, $14 + 88 | 0 | 0, $14 + 92 | 0 | 0, $14 + 84 | 0 | 0);
|
|
break label$8;
|
|
default:
|
|
break label$9;
|
|
};
|
|
}
|
|
__assert_fail(86177 | 0, 74508 | 0, 111 | 0, 80824 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAPF32[($12 + 16 | 0) >> 2] = Math_fround(.5);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($12 | 0, $14 + 24 | 0 | 0, $14 + 40 | 0 | 0);
|
|
operator__28float_20const__2c_20btVector3_20const__29($12 + 20 | 0 | 0, $12 + 16 | 0 | 0, $12 | 0);
|
|
$209 = $14 + 56 | 0;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$0 = HEAP32[($12 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($12 + 24 | 0) >> 2] | 0;
|
|
$614 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $209;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $614;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$211 = 8;
|
|
i64toi32_i32$2 = ($12 + 20 | 0) + $211 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$627 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $209 + $211 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $627;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $12 + 112 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHeightfieldTerrainShape___btHeightfieldTerrainShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 98948 + 8 | 0;
|
|
btConcaveShape___btConcaveShape_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btHeightfieldTerrainShape___btHeightfieldTerrainShape_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[901 | 0]($4) | 0;
|
|
btHeightfieldTerrainShape__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHeightfieldTerrainShape__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHeightfieldTerrainShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $7 = 0, i64toi32_i32$2 = 0, $75 = 0, $76 = 0, $140 = 0, $142 = 0, $157 = 0, $159 = 0, $55 = Math_fround(0), $321 = 0, $325 = 0, $439 = 0, $452 = 0, $473 = 0, $486 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 240 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 236 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 232 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 228 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 224 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 236 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 176 | 0 | 0, $7 + 40 | 0 | 0, $7 + 24 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($6 + 192 | 0 | 0, $6 + 176 | 0 | 0, $7 + 116 | 0 | 0);
|
|
HEAPF32[($6 + 172 | 0) >> 2] = Math_fround(.5);
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 208 | 0 | 0, $6 + 192 | 0 | 0, $6 + 172 | 0 | 0);
|
|
HEAPF32[($6 + 152 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 148 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 144 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 156 | 0 | 0, $6 + 152 | 0 | 0, $6 + 148 | 0 | 0, $6 + 144 | 0 | 0) | 0;
|
|
$55 = Math_fround(Math_fround(Math_fround(HEAPF32[($7 + 80 | 0) >> 2]) + Math_fround(HEAPF32[($7 + 84 | 0) >> 2])) * Math_fround(.5));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($6 + 156 | 0 | 0) | 0) + ((HEAP32[($7 + 112 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $55), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
btVector3__operator___28btVector3_20const__29_2($6 + 156 | 0 | 0, $7 + 116 | 0 | 0) | 0;
|
|
btMatrix3x3__absolute_28_29_20const($6 + 96 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($6 + 232 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$75 = btTransform__getOrigin_28_29_20const(HEAP32[($6 + 232 | 0) >> 2] | 0 | 0) | 0;
|
|
$76 = 8;
|
|
i64toi32_i32$2 = $75 + $76 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$321 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 80 | 0) + $76 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $321;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $75;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$325 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 80 | 0) >> 2] = $325;
|
|
HEAP32[($6 + 84 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__dot3_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29_20const($6 + 64 | 0 | 0, $6 + 208 | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($6 + 96 | 0 | 0, 0 | 0) | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($6 + 96 | 0 | 0, 1 | 0) | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($6 + 96 | 0 | 0, 2 | 0) | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($7))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($7))), HEAPF32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($7))), HEAPF32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 48 | 0 | 0, $6 + 44 | 0 | 0, $6 + 40 | 0 | 0, $6 + 36 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($6 + 64 | 0 | 0, $6 + 48 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 20 | 0 | 0, $6 + 80 | 0 | 0, $6 + 64 | 0 | 0);
|
|
$140 = HEAP32[($6 + 228 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
$439 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $140;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $439;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$142 = 8;
|
|
i64toi32_i32$2 = ($6 + 20 | 0) + $142 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$452 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $140 + $142 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $452;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 4 | 0 | 0, $6 + 80 | 0 | 0, $6 + 64 | 0 | 0);
|
|
$157 = HEAP32[($6 + 224 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
$473 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $157;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $473;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$159 = 8;
|
|
i64toi32_i32$2 = ($6 + 4 | 0) + $159 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$486 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $157 + $159 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $486;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $6 + 240 | 0;
|
|
return;
|
|
}
|
|
|
|
function btVector3__operator___28btVector3_20const__29_2($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[$5 >> 2] = Math_fround(Math_fround(HEAPF32[$5 >> 2]) * Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2]));
|
|
HEAPF32[($5 + 4 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2]));
|
|
HEAPF32[($5 + 8 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 8 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2]));
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btHeightfieldTerrainShape__getRawHeightFieldValue_28int_2c_20int_29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $8 = 0, $45 = 0, $55 = Math_fround(0);
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 16 | 0) >> 2] = 0;
|
|
$8 = HEAP32[($6 + 104 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
switch ($8 | 0) {
|
|
case 0:
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($6 + 100 | 0) >> 2] | 0) + ((Math_imul(HEAP32[($5 + 20 | 0) >> 2] | 0, HEAP32[($6 + 72 | 0) >> 2] | 0) + (HEAP32[($5 + 24 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2]);
|
|
break label$1;
|
|
case 5:
|
|
HEAP8[($5 + 15 | 0) >> 0] = HEAPU8[((HEAP32[($6 + 100 | 0) >> 2] | 0) + (Math_imul(HEAP32[($5 + 20 | 0) >> 2] | 0, HEAP32[($6 + 72 | 0) >> 2] | 0) + (HEAP32[($5 + 24 | 0) >> 2] | 0) | 0) | 0) >> 0] | 0;
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(Math_fround((HEAPU8[($5 + 15 | 0) >> 0] | 0) & 255 | 0 | 0) * Math_fround(HEAPF32[($6 + 96 | 0) >> 2]));
|
|
break label$1;
|
|
case 3:
|
|
HEAP16[($5 + 12 | 0) >> 1] = HEAPU16[((HEAP32[($6 + 100 | 0) >> 2] | 0) + ((Math_imul(HEAP32[($5 + 20 | 0) >> 2] | 0, HEAP32[($6 + 72 | 0) >> 2] | 0) + (HEAP32[($5 + 24 | 0) >> 2] | 0) | 0) << 1 | 0) | 0) >> 1] | 0;
|
|
$45 = 16;
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(Math_fround(((HEAPU16[($5 + 12 | 0) >> 1] | 0) << $45 | 0) >> $45 | 0 | 0) * Math_fround(HEAPF32[($6 + 96 | 0) >> 2]));
|
|
break label$1;
|
|
default:
|
|
break label$2;
|
|
};
|
|
}
|
|
__assert_fail(88263 | 0, 74508 | 0, 176 | 0, 81125 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$55 = Math_fround(HEAPF32[($5 + 16 | 0) >> 2]);
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return Math_fround($55);
|
|
}
|
|
|
|
function btHeightfieldTerrainShape__getVertex_28int_2c_20int_2c_20btVector3__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $57 = 0, $59 = 0, $89 = 0, $119 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 60 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 56 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 52 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 48 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 60 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($6 + 56 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85835 | 0, 74508 | 0, 189 | 0, 66266 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($6 + 52 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(85809 | 0, 74508 | 0, 190 | 0, 66266 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$3 : {
|
|
if ((HEAP32[($6 + 56 | 0) >> 2] | 0 | 0) < (HEAP32[($7 + 72 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
__assert_fail(77901 | 0, 74508 | 0, 191 | 0, 66266 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$4 : {
|
|
if ((HEAP32[($6 + 52 | 0) >> 2] | 0 | 0) < (HEAP32[($7 + 76 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
__assert_fail(77879 | 0, 74508 | 0, 192 | 0, 66266 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 68 | 0) >> 2] | 0 | 0]($7, HEAP32[($6 + 56 | 0) >> 2] | 0, HEAP32[($6 + 52 | 0) >> 2] | 0))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
$57 = HEAP32[($7 + 112 | 0) >> 2] | 0;
|
|
label$5 : {
|
|
label$6 : {
|
|
switch ($57 | 0) {
|
|
case 0:
|
|
$59 = HEAP32[($6 + 48 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[($6 + 44 | 0) >> 2]) - Math_fround(HEAPF32[(btVector3__getX_28_29_20const($7 + 56 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($6 + 36 | 0) >> 2] = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($7 + 88 | 0) >> 2])) / Math_fround(2.0)) + Math_fround(HEAP32[($6 + 56 | 0) >> 2] | 0 | 0));
|
|
HEAPF32[($6 + 32 | 0) >> 2] = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($7 + 92 | 0) >> 2])) / Math_fround(2.0)) + Math_fround(HEAP32[($6 + 52 | 0) >> 2] | 0 | 0));
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($59 | 0, $6 + 40 | 0 | 0, $6 + 36 | 0 | 0, $6 + 32 | 0 | 0);
|
|
break label$5;
|
|
case 1:
|
|
$89 = HEAP32[($6 + 48 | 0) >> 2] | 0;
|
|
HEAPF32[($6 + 28 | 0) >> 2] = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($7 + 88 | 0) >> 2])) / Math_fround(2.0)) + Math_fround(HEAP32[($6 + 56 | 0) >> 2] | 0 | 0));
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[($6 + 44 | 0) >> 2]) - Math_fround(HEAPF32[(btVector3__getY_28_29_20const($7 + 56 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($6 + 20 | 0) >> 2] = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($7 + 92 | 0) >> 2])) / Math_fround(2.0)) + Math_fround(HEAP32[($6 + 52 | 0) >> 2] | 0 | 0));
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($89 | 0, $6 + 28 | 0 | 0, $6 + 24 | 0 | 0, $6 + 20 | 0 | 0);
|
|
break label$5;
|
|
case 2:
|
|
$119 = HEAP32[($6 + 48 | 0) >> 2] | 0;
|
|
HEAPF32[($6 + 16 | 0) >> 2] = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($7 + 88 | 0) >> 2])) / Math_fround(2.0)) + Math_fround(HEAP32[($6 + 56 | 0) >> 2] | 0 | 0));
|
|
HEAPF32[($6 + 12 | 0) >> 2] = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($7 + 92 | 0) >> 2])) / Math_fround(2.0)) + Math_fround(HEAP32[($6 + 52 | 0) >> 2] | 0 | 0));
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[($6 + 44 | 0) >> 2]) - Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($7 + 56 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($119 | 0, $6 + 16 | 0 | 0, $6 + 12 | 0 | 0, $6 + 8 | 0 | 0);
|
|
break label$5;
|
|
default:
|
|
break label$6;
|
|
};
|
|
}
|
|
__assert_fail(86177 | 0, 74508 | 0, 228 | 0, 66266 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
btVector3__operator___28btVector3_20const__29_2(HEAP32[($6 + 48 | 0) >> 2] | 0 | 0, $7 + 116 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHeightfieldTerrainShape__quantizeWithClamp_28int__2c_20btVector3_20const__2c_20int_29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $7 = 0, $8 = 0, $9 = 0, $63 = 0, $67 = 0, $23 = 0, $28 = 0, $33 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
$8 = HEAP32[($6 + 20 | 0) >> 2] | 0;
|
|
$9 = 8;
|
|
i64toi32_i32$2 = $8 + $9 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$63 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6 + $9 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $63;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$67 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[$6 >> 2] = $67;
|
|
HEAP32[($6 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__setMax_28btVector3_20const__29($6 | 0, $7 + 24 | 0 | 0);
|
|
btVector3__setMin_28btVector3_20const__29($6 | 0, $7 + 40 | 0 | 0);
|
|
$23 = getQuantized_28float_29(Math_fround(Math_fround(HEAPF32[(btVector3__getX_28_29_20const($6 | 0) | 0) >> 2]))) | 0;
|
|
HEAP32[(HEAP32[($6 + 24 | 0) >> 2] | 0) >> 2] = $23;
|
|
$28 = getQuantized_28float_29(Math_fround(Math_fround(HEAPF32[(btVector3__getY_28_29_20const($6 | 0) | 0) >> 2]))) | 0;
|
|
HEAP32[((HEAP32[($6 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2] = $28;
|
|
$33 = getQuantized_28float_29(Math_fround(Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($6 | 0) | 0) >> 2]))) | 0;
|
|
HEAP32[((HEAP32[($6 + 24 | 0) >> 2] | 0) + 8 | 0) >> 2] = $33;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function getQuantized_28float_29($0) {
|
|
$0 = Math_fround($0);
|
|
var $3 = 0, $14 = 0.0, $20 = 0, $26 = 0.0, $32 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAPF32[($3 + 8 | 0) >> 2] = $0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(+Math_fround(HEAPF32[($3 + 8 | 0) >> 2]) < +(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$14 = +Math_fround(HEAPF32[($3 + 8 | 0) >> 2]) - .5;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_abs($14) < 2147483648.0)) {
|
|
break label$4
|
|
}
|
|
$20 = ~~$14;
|
|
break label$3;
|
|
}
|
|
$20 = -2147483648;
|
|
}
|
|
HEAP32[($3 + 12 | 0) >> 2] = $20;
|
|
break label$1;
|
|
}
|
|
$26 = +Math_fround(HEAPF32[($3 + 8 | 0) >> 2]) + .5;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!(Math_abs($26) < 2147483648.0)) {
|
|
break label$6
|
|
}
|
|
$32 = ~~$26;
|
|
break label$5;
|
|
}
|
|
$32 = -2147483648;
|
|
}
|
|
HEAP32[($3 + 12 | 0) >> 2] = $32;
|
|
}
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btHeightfieldTerrainShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $120 = 0, $130 = 0, $137 = 0, $139 = 0, $143 = 0, $264 = 0, $265 = 0, $267 = 0, $309 = 0, $331 = 0, $354 = 0, $374 = 0, $8 = 0, $45 = 0, $263 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 208 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 204 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 200 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 196 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 192 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 204 | 0) >> 2] | 0;
|
|
$8 = HEAP32[($6 + 196 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const($7 + 116 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 156 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($7 + 116 | 0 | 0) | 0) + 4 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 152 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($7 + 116 | 0 | 0) | 0) + 8 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 148 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 160 | 0 | 0, $6 + 156 | 0 | 0, $6 + 152 | 0 | 0, $6 + 148 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($6 + 176 | 0 | 0, $8 | 0, $6 + 160 | 0 | 0);
|
|
$45 = HEAP32[($6 + 192 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const($7 + 116 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 112 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($7 + 116 | 0 | 0) | 0) + 4 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 108 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($7 + 116 | 0 | 0) | 0) + 8 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 104 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 116 | 0 | 0, $6 + 112 | 0 | 0, $6 + 108 | 0 | 0, $6 + 104 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($6 + 132 | 0 | 0, $45 | 0, $6 + 116 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($6 + 176 | 0 | 0, $7 + 56 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($6 + 132 | 0 | 0, $7 + 56 | 0 | 0) | 0;
|
|
btHeightfieldTerrainShape__quantizeWithClamp_28int__2c_20btVector3_20const__2c_20int_29_20const($7 | 0, $6 + 92 | 0 | 0, $6 + 176 | 0 | 0, 0 | 0);
|
|
btHeightfieldTerrainShape__quantizeWithClamp_28int__2c_20btVector3_20const__2c_20int_29_20const($7 | 0, $6 + 80 | 0 | 0, $6 + 132 | 0 | 0, 1 | 0);
|
|
HEAP32[($6 + 76 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 76 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$120 = ($6 + 92 | 0) + ((HEAP32[($6 + 76 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
HEAP32[$120 >> 2] = (HEAP32[$120 >> 2] | 0) + -1 | 0;
|
|
$130 = ($6 + 80 | 0) + ((HEAP32[($6 + 76 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
HEAP32[$130 >> 2] = (HEAP32[$130 >> 2] | 0) + 1 | 0;
|
|
HEAP32[($6 + 76 | 0) >> 2] = (HEAP32[($6 + 76 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
$137 = 0;
|
|
HEAP32[($6 + 72 | 0) >> 2] = $137;
|
|
$139 = -1;
|
|
HEAP32[($6 + 68 | 0) >> 2] = (HEAP32[($7 + 72 | 0) >> 2] | 0) + $139 | 0;
|
|
HEAP32[($6 + 64 | 0) >> 2] = $137;
|
|
HEAP32[($6 + 60 | 0) >> 2] = (HEAP32[($7 + 76 | 0) >> 2] | 0) + $139 | 0;
|
|
$143 = HEAP32[($7 + 112 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : {
|
|
switch ($143 | 0) {
|
|
case 0:
|
|
label$8 : {
|
|
if (!((HEAP32[($6 + 96 | 0) >> 2] | 0 | 0) > (HEAP32[($6 + 72 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
HEAP32[($6 + 72 | 0) >> 2] = HEAP32[($6 + 96 | 0) >> 2] | 0;
|
|
}
|
|
label$9 : {
|
|
if (!((HEAP32[($6 + 84 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 68 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
HEAP32[($6 + 68 | 0) >> 2] = HEAP32[($6 + 84 | 0) >> 2] | 0;
|
|
}
|
|
label$10 : {
|
|
if (!((HEAP32[($6 + 100 | 0) >> 2] | 0 | 0) > (HEAP32[($6 + 64 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
HEAP32[($6 + 64 | 0) >> 2] = HEAP32[($6 + 100 | 0) >> 2] | 0;
|
|
}
|
|
label$11 : {
|
|
if (!((HEAP32[($6 + 88 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 60 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
HEAP32[($6 + 60 | 0) >> 2] = HEAP32[($6 + 88 | 0) >> 2] | 0;
|
|
}
|
|
break label$3;
|
|
case 1:
|
|
label$12 : {
|
|
if (!((HEAP32[($6 + 92 | 0) >> 2] | 0 | 0) > (HEAP32[($6 + 72 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
HEAP32[($6 + 72 | 0) >> 2] = HEAP32[($6 + 92 | 0) >> 2] | 0;
|
|
}
|
|
label$13 : {
|
|
if (!((HEAP32[($6 + 80 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 68 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
HEAP32[($6 + 68 | 0) >> 2] = HEAP32[($6 + 80 | 0) >> 2] | 0;
|
|
}
|
|
label$14 : {
|
|
if (!((HEAP32[($6 + 100 | 0) >> 2] | 0 | 0) > (HEAP32[($6 + 64 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
HEAP32[($6 + 64 | 0) >> 2] = HEAP32[($6 + 100 | 0) >> 2] | 0;
|
|
}
|
|
label$15 : {
|
|
if (!((HEAP32[($6 + 88 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 60 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
HEAP32[($6 + 60 | 0) >> 2] = HEAP32[($6 + 88 | 0) >> 2] | 0;
|
|
}
|
|
break label$3;
|
|
case 2:
|
|
label$16 : {
|
|
if (!((HEAP32[($6 + 92 | 0) >> 2] | 0 | 0) > (HEAP32[($6 + 72 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
HEAP32[($6 + 72 | 0) >> 2] = HEAP32[($6 + 92 | 0) >> 2] | 0;
|
|
}
|
|
label$17 : {
|
|
if (!((HEAP32[($6 + 80 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 68 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
HEAP32[($6 + 68 | 0) >> 2] = HEAP32[($6 + 80 | 0) >> 2] | 0;
|
|
}
|
|
label$18 : {
|
|
if (!((HEAP32[($6 + 96 | 0) >> 2] | 0 | 0) > (HEAP32[($6 + 64 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$18
|
|
}
|
|
HEAP32[($6 + 64 | 0) >> 2] = HEAP32[($6 + 96 | 0) >> 2] | 0;
|
|
}
|
|
label$19 : {
|
|
if (!((HEAP32[($6 + 84 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 60 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
HEAP32[($6 + 60 | 0) >> 2] = HEAP32[($6 + 84 | 0) >> 2] | 0;
|
|
}
|
|
break label$3;
|
|
default:
|
|
break label$4;
|
|
};
|
|
}
|
|
__assert_fail(86177 | 0, 74508 | 0, 350 | 0, 70168 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($6 + 56 | 0) >> 2] = HEAP32[($6 + 64 | 0) >> 2] | 0;
|
|
label$20 : {
|
|
label$21 : while (1) {
|
|
if (!((HEAP32[($6 + 56 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 60 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$20
|
|
}
|
|
HEAP32[($6 + 52 | 0) >> 2] = HEAP32[($6 + 72 | 0) >> 2] | 0;
|
|
label$22 : {
|
|
label$23 : while (1) {
|
|
if (!((HEAP32[($6 + 52 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 68 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$22
|
|
}
|
|
$263 = $6 + 48 | 0;
|
|
$264 = $6;
|
|
label$24 : while (1) {
|
|
$265 = $264;
|
|
btVector3__btVector3_28_29($265 | 0) | 0;
|
|
$267 = $265 + 16 | 0;
|
|
$264 = $267;
|
|
if (!(($267 | 0) == ($263 | 0) & 1 | 0)) {
|
|
continue label$24
|
|
}
|
|
break label$24;
|
|
};
|
|
label$25 : {
|
|
label$26 : {
|
|
label$27 : {
|
|
if ((HEAPU8[($7 + 108 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$27
|
|
}
|
|
label$28 : {
|
|
if (!((HEAPU8[($7 + 109 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$28
|
|
}
|
|
if (!(((HEAP32[($6 + 56 | 0) >> 2] | 0) + (HEAP32[($6 + 52 | 0) >> 2] | 0) | 0) & 1 | 0)) {
|
|
break label$27
|
|
}
|
|
}
|
|
if (!((HEAPU8[($7 + 110 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$26
|
|
}
|
|
if ((HEAP32[($6 + 56 | 0) >> 2] | 0) & 1 | 0) {
|
|
break label$26
|
|
}
|
|
}
|
|
btHeightfieldTerrainShape__getVertex_28int_2c_20int_2c_20btVector3__29_20const($7 | 0, HEAP32[($6 + 52 | 0) >> 2] | 0 | 0, HEAP32[($6 + 56 | 0) >> 2] | 0 | 0, $6 | 0);
|
|
btHeightfieldTerrainShape__getVertex_28int_2c_20int_2c_20btVector3__29_20const($7 | 0, HEAP32[($6 + 52 | 0) >> 2] | 0 | 0, (HEAP32[($6 + 56 | 0) >> 2] | 0) + 1 | 0 | 0, $6 + 16 | 0 | 0);
|
|
btHeightfieldTerrainShape__getVertex_28int_2c_20int_2c_20btVector3__29_20const($7 | 0, (HEAP32[($6 + 52 | 0) >> 2] | 0) + 1 | 0 | 0, (HEAP32[($6 + 56 | 0) >> 2] | 0) + 1 | 0 | 0, $6 + 32 | 0 | 0);
|
|
$309 = HEAP32[($6 + 200 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$309 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($309, $6, HEAP32[($6 + 52 | 0) >> 2] | 0, HEAP32[($6 + 56 | 0) >> 2] | 0);
|
|
btHeightfieldTerrainShape__getVertex_28int_2c_20int_2c_20btVector3__29_20const($7 | 0, (HEAP32[($6 + 52 | 0) >> 2] | 0) + 1 | 0 | 0, (HEAP32[($6 + 56 | 0) >> 2] | 0) + 1 | 0 | 0, $6 + 16 | 0 | 0);
|
|
btHeightfieldTerrainShape__getVertex_28int_2c_20int_2c_20btVector3__29_20const($7 | 0, (HEAP32[($6 + 52 | 0) >> 2] | 0) + 1 | 0 | 0, HEAP32[($6 + 56 | 0) >> 2] | 0 | 0, $6 + 32 | 0 | 0);
|
|
$331 = HEAP32[($6 + 200 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$331 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($331, $6, HEAP32[($6 + 52 | 0) >> 2] | 0, HEAP32[($6 + 56 | 0) >> 2] | 0);
|
|
break label$25;
|
|
}
|
|
btHeightfieldTerrainShape__getVertex_28int_2c_20int_2c_20btVector3__29_20const($7 | 0, HEAP32[($6 + 52 | 0) >> 2] | 0 | 0, HEAP32[($6 + 56 | 0) >> 2] | 0 | 0, $6 | 0);
|
|
btHeightfieldTerrainShape__getVertex_28int_2c_20int_2c_20btVector3__29_20const($7 | 0, HEAP32[($6 + 52 | 0) >> 2] | 0 | 0, (HEAP32[($6 + 56 | 0) >> 2] | 0) + 1 | 0 | 0, $6 + 16 | 0 | 0);
|
|
btHeightfieldTerrainShape__getVertex_28int_2c_20int_2c_20btVector3__29_20const($7 | 0, (HEAP32[($6 + 52 | 0) >> 2] | 0) + 1 | 0 | 0, HEAP32[($6 + 56 | 0) >> 2] | 0 | 0, $6 + 32 | 0 | 0);
|
|
$354 = HEAP32[($6 + 200 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$354 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($354, $6, HEAP32[($6 + 52 | 0) >> 2] | 0, HEAP32[($6 + 56 | 0) >> 2] | 0);
|
|
btHeightfieldTerrainShape__getVertex_28int_2c_20int_2c_20btVector3__29_20const($7 | 0, (HEAP32[($6 + 52 | 0) >> 2] | 0) + 1 | 0 | 0, HEAP32[($6 + 56 | 0) >> 2] | 0 | 0, $6 | 0);
|
|
btHeightfieldTerrainShape__getVertex_28int_2c_20int_2c_20btVector3__29_20const($7 | 0, (HEAP32[($6 + 52 | 0) >> 2] | 0) + 1 | 0 | 0, (HEAP32[($6 + 56 | 0) >> 2] | 0) + 1 | 0 | 0, $6 + 32 | 0 | 0);
|
|
$374 = HEAP32[($6 + 200 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$374 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($374, $6, HEAP32[($6 + 52 | 0) >> 2] | 0, HEAP32[($6 + 56 | 0) >> 2] | 0);
|
|
}
|
|
HEAP32[($6 + 52 | 0) >> 2] = (HEAP32[($6 + 52 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$23;
|
|
};
|
|
}
|
|
HEAP32[($6 + 56 | 0) >> 2] = (HEAP32[($6 + 56 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$21;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 208 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHeightfieldTerrainShape__calculateLocalInertia_28float_2c_20btVector3__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($6 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0, $5 + 8 | 0 | 0);
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHeightfieldTerrainShape__setLocalScaling_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, $8 = 0, $10 = 0, $32 = 0, $42 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$8 = (HEAP32[($4 + 12 | 0) >> 2] | 0) + 116 | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$32 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $8;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $32;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$10 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $10 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$42 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8 + $10 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $42;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function btHeightfieldTerrainShape__getLocalScaling_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 116 | 0 | 0;
|
|
}
|
|
|
|
function btHeightfieldTerrainShape__getName_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 84431 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btHeightfieldTerrainShape_cpp() {
|
|
__cxx_global_var_init_41();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_42() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114156 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btOptimizedBvh__btOptimizedBvh_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btQuantizedBvh__btQuantizedBvh_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 99068 + 8 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btOptimizedBvh___btOptimizedBvh_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btQuantizedBvh___btQuantizedBvh_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btOptimizedBvh___btOptimizedBvh_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[910 | 0]($4) | 0;
|
|
btOptimizedBvh__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btOptimizedBvh__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btOptimizedBvh__build_28btStridingMeshInterface__2c_20bool_2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, i64toi32_i32$1 = 0, $9 = 0, i64toi32_i32$0 = 0, $109 = 0, $25 = 0, $45 = 0, $87 = 0, $164 = 0, $42 = 0, $106 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$7 = __stack_pointer - 224 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 220 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 216 | 0) >> 2] = $1;
|
|
HEAP8[($7 + 215 | 0) >> 0] = $2;
|
|
HEAP32[($7 + 208 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 204 | 0) >> 2] = $4;
|
|
$9 = HEAP32[($7 + 220 | 0) >> 2] | 0;
|
|
HEAP8[($9 + 60 | 0) >> 0] = (HEAPU8[($7 + 215 | 0) >> 0] | 0) & 1 | 0;
|
|
HEAP32[($7 + 200 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($9 + 60 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btQuantizedBvh__setQuantizationValues_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($9 | 0, HEAP32[($7 + 208 | 0) >> 2] | 0 | 0, HEAP32[($7 + 204 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(1.0)));
|
|
btOptimizedBvh__build_28btStridingMeshInterface__2c_20bool_2c_20btVector3_20const__2c_20btVector3_20const__29__QuantizedNodeTriangleCallback__QuantizedNodeTriangleCallback_28btAlignedObjectArray_btQuantizedBvhNode___2c_20btQuantizedBvh_20const__29($7 + 188 | 0 | 0, $9 + 104 | 0 | 0, $9 | 0) | 0;
|
|
$25 = HEAP32[($7 + 216 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$25 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($25, $7 + 188 | 0, $9 + 4 | 0, $9 + 20 | 0);
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btAlignedObjectArray_btQuantizedBvhNode___size_28_29_20const($9 + 104 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 200 | 0) >> 2] = wasm2js_i32$1;
|
|
$42 = (HEAP32[($7 + 200 | 0) >> 2] | 0) << 1 | 0;
|
|
i64toi32_i32$0 = 0;
|
|
$45 = 0;
|
|
i64toi32_i32$1 = $7 + 176 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $45;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $7;
|
|
HEAP32[($7 + 168 | 0) >> 2] = $45;
|
|
HEAP32[($7 + 172 | 0) >> 2] = i64toi32_i32$0;
|
|
btAlignedObjectArray_btQuantizedBvhNode___resize_28int_2c_20btQuantizedBvhNode_20const__29($9 + 124 | 0 | 0, $42 | 0, $7 + 168 | 0 | 0);
|
|
btOptimizedBvh__build_28btStridingMeshInterface__2c_20bool_2c_20btVector3_20const__2c_20btVector3_20const__29__QuantizedNodeTriangleCallback___QuantizedNodeTriangleCallback_28_29($7 + 188 | 0 | 0) | 0;
|
|
break label$1;
|
|
}
|
|
btOptimizedBvh__build_28btStridingMeshInterface__2c_20bool_2c_20btVector3_20const__2c_20btVector3_20const__29__NodeTriangleCallback__NodeTriangleCallback_28btAlignedObjectArray_btOptimizedBvhNode___29($7 + 160 | 0 | 0, $9 + 64 | 0 | 0) | 0;
|
|
HEAPF32[($7 + 140 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
HEAPF32[($7 + 136 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
HEAPF32[($7 + 132 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 144 | 0 | 0, $7 + 140 | 0 | 0, $7 + 136 | 0 | 0, $7 + 132 | 0 | 0) | 0;
|
|
HEAPF32[($7 + 112 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAPF32[($7 + 108 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAPF32[($7 + 104 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 116 | 0 | 0, $7 + 112 | 0 | 0, $7 + 108 | 0 | 0, $7 + 104 | 0 | 0) | 0;
|
|
$87 = HEAP32[($7 + 216 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$87 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($87, $7 + 160 | 0, $7 + 144 | 0, $7 + 116 | 0);
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btAlignedObjectArray_btOptimizedBvhNode___size_28_29_20const($9 + 64 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 200 | 0) >> 2] = wasm2js_i32$1;
|
|
$106 = (HEAP32[($7 + 200 | 0) >> 2] | 0) << 1 | 0;
|
|
i64toi32_i32$0 = 0;
|
|
$109 = 0;
|
|
i64toi32_i32$1 = $7 + 96 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $109;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $7 + 88 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $109;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $7 + 80 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $109;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $7 + 72 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $109;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $7 + 64 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $109;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $7 + 56 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $109;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $7 + 48 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $109;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $7;
|
|
HEAP32[($7 + 40 | 0) >> 2] = $109;
|
|
HEAP32[($7 + 44 | 0) >> 2] = i64toi32_i32$0;
|
|
btOptimizedBvhNode__btOptimizedBvhNode_28_29($7 + 40 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btOptimizedBvhNode___resize_28int_2c_20btOptimizedBvhNode_20const__29($9 + 84 | 0 | 0, $106 | 0, $7 + 40 | 0 | 0);
|
|
btOptimizedBvh__build_28btStridingMeshInterface__2c_20bool_2c_20btVector3_20const__2c_20btVector3_20const__29__NodeTriangleCallback___NodeTriangleCallback_28_29($7 + 160 | 0 | 0) | 0;
|
|
}
|
|
HEAP32[($9 + 56 | 0) >> 2] = 0;
|
|
btQuantizedBvh__buildTree_28int_2c_20int_29($9 | 0, 0 | 0, HEAP32[($7 + 200 | 0) >> 2] | 0 | 0);
|
|
label$3 : {
|
|
if (!((HEAPU8[($9 + 60 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
if (btAlignedObjectArray_btBvhSubtreeInfo___size_28_29_20const($9 + 148 | 0 | 0) | 0) {
|
|
break label$3
|
|
}
|
|
btBvhSubtreeInfo__btBvhSubtreeInfo_28_29($7 + 4 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btAlignedObjectArray_btBvhSubtreeInfo___expand_28btBvhSubtreeInfo_20const__29($9 + 148 | 0 | 0, $7 + 4 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_i32$1;
|
|
btBvhSubtreeInfo__setAabbFromQuantizeNode_28btQuantizedBvhNode_20const__29(HEAP32[($7 + 36 | 0) >> 2] | 0 | 0, btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($9 + 124 | 0 | 0, 0 | 0) | 0 | 0);
|
|
HEAP32[((HEAP32[($7 + 36 | 0) >> 2] | 0) + 12 | 0) >> 2] = 0;
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!((btQuantizedBvhNode__isLeafNode_28_29_20const(btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($9 + 124 | 0 | 0, 0 | 0) | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
$164 = 1;
|
|
break label$4;
|
|
}
|
|
$164 = btQuantizedBvhNode__getEscapeIndex_28_29_20const(btAlignedObjectArray_btQuantizedBvhNode___operator_5b_5d_28int_29($9 + 124 | 0 | 0, 0 | 0) | 0 | 0) | 0;
|
|
}
|
|
HEAP32[((HEAP32[($7 + 36 | 0) >> 2] | 0) + 16 | 0) >> 2] = $164;
|
|
}
|
|
(wasm2js_i32$0 = $9, wasm2js_i32$1 = btAlignedObjectArray_btBvhSubtreeInfo___size_28_29_20const($9 + 148 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 168 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btQuantizedBvhNode___clear_28_29($9 + 104 | 0 | 0);
|
|
btAlignedObjectArray_btOptimizedBvhNode___clear_28_29($9 + 64 | 0 | 0);
|
|
__stack_pointer = $7 + 224 | 0;
|
|
return;
|
|
}
|
|
|
|
function btOptimizedBvh__build_28btStridingMeshInterface__2c_20bool_2c_20btVector3_20const__2c_20btVector3_20const__29__QuantizedNodeTriangleCallback__QuantizedNodeTriangleCallback_28btAlignedObjectArray_btQuantizedBvhNode___2c_20btQuantizedBvh_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btInternalTriangleIndexCallback__btInternalTriangleIndexCallback_28_29($6 | 0) | 0;
|
|
HEAP32[$6 >> 2] = 99140 + 8 | 0;
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btOptimizedBvh__build_28btStridingMeshInterface__2c_20bool_2c_20btVector3_20const__2c_20btVector3_20const__29__QuantizedNodeTriangleCallback___QuantizedNodeTriangleCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btInternalTriangleIndexCallback___btInternalTriangleIndexCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btOptimizedBvh__build_28btStridingMeshInterface__2c_20bool_2c_20btVector3_20const__2c_20btVector3_20const__29__NodeTriangleCallback__NodeTriangleCallback_28btAlignedObjectArray_btOptimizedBvhNode___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btInternalTriangleIndexCallback__btInternalTriangleIndexCallback_28_29($5 | 0) | 0;
|
|
HEAP32[$5 >> 2] = 99272 + 8 | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btOptimizedBvh__build_28btStridingMeshInterface__2c_20bool_2c_20btVector3_20const__2c_20btVector3_20const__29__NodeTriangleCallback___NodeTriangleCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btInternalTriangleIndexCallback___btInternalTriangleIndexCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btOptimizedBvh__serializeInPlace_28void__2c_20unsigned_20int_2c_20bool_29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $16 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP8[($6 + 3 | 0) >> 0] = $3;
|
|
$16 = (btQuantizedBvh__serialize_28void__2c_20unsigned_20int_2c_20bool_29_20const(HEAP32[($6 + 12 | 0) >> 2] | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0, HEAP32[($6 + 4 | 0) >> 2] | 0 | 0, (HEAPU8[($6 + 3 | 0) >> 0] | 0) & 1 | 0 | 0) | 0) & 1 | 0;
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return $16 | 0;
|
|
}
|
|
|
|
function btOptimizedBvh__build_28btStridingMeshInterface__2c_20bool_2c_20btVector3_20const__2c_20btVector3_20const__29__QuantizedNodeTriangleCallback___QuantizedNodeTriangleCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btOptimizedBvh__build_28btStridingMeshInterface__2c_20bool_2c_20btVector3_20const__2c_20btVector3_20const__29__QuantizedNodeTriangleCallback___QuantizedNodeTriangleCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btOptimizedBvh__build_28btStridingMeshInterface__2c_20bool_2c_20btVector3_20const__2c_20btVector3_20const__29__QuantizedNodeTriangleCallback__internalProcessTriangleIndex_28btVector3__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 96 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 92 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 88 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 84 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 80 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 92 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($6 + 84 | 0) >> 2] | 0 | 0) < (1024 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(86395 | 0, 73758 | 0, 100 | 0, 66568 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($6 + 80 | 0) >> 2] | 0 | 0) < (2097152 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(86842 | 0, 73758 | 0, 101 | 0, 66568 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$3 : {
|
|
if ((HEAP32[($6 + 80 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
__assert_fail(85823 | 0, 73758 | 0, 103 | 0, 66568 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
btVector3__btVector3_28_29($6 + 48 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 32 | 0 | 0) | 0;
|
|
HEAPF32[($6 + 28 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAPF32[($6 + 24 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAPF32[($6 + 20 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 48 | 0 | 0, $6 + 28 | 0 | 0, $6 + 24 | 0 | 0, $6 + 20 | 0 | 0);
|
|
HEAPF32[($6 + 16 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
HEAPF32[($6 + 12 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
HEAPF32[($6 + 8 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 32 | 0 | 0, $6 + 16 | 0 | 0, $6 + 12 | 0 | 0, $6 + 8 | 0 | 0);
|
|
btVector3__setMin_28btVector3_20const__29($6 + 48 | 0 | 0, HEAP32[($6 + 88 | 0) >> 2] | 0 | 0);
|
|
btVector3__setMax_28btVector3_20const__29($6 + 32 | 0 | 0, HEAP32[($6 + 88 | 0) >> 2] | 0 | 0);
|
|
btVector3__setMin_28btVector3_20const__29($6 + 48 | 0 | 0, (HEAP32[($6 + 88 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
btVector3__setMax_28btVector3_20const__29($6 + 32 | 0 | 0, (HEAP32[($6 + 88 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
btVector3__setMin_28btVector3_20const__29($6 + 48 | 0 | 0, (HEAP32[($6 + 88 | 0) >> 2] | 0) + 32 | 0 | 0);
|
|
btVector3__setMax_28btVector3_20const__29($6 + 32 | 0 | 0, (HEAP32[($6 + 88 | 0) >> 2] | 0) + 32 | 0 | 0);
|
|
HEAPF32[($6 + 4 | 0) >> 2] = Math_fround(2.0000000949949026e-03);
|
|
HEAPF32[$6 >> 2] = Math_fround(1.0000000474974513e-03);
|
|
label$4 : {
|
|
if (!(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($6 + 32 | 0 | 0) | 0) >> 2]) - Math_fround(HEAPF32[(btVector3__x_28_29_20const($6 + 48 | 0 | 0) | 0) >> 2])) < Math_fround(2.0000000949949026e-03) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
btVector3__setX_28float_29($6 + 32 | 0 | 0, Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($6 + 32 | 0 | 0) | 0) >> 2]) + Math_fround(1.0000000474974513e-03))));
|
|
btVector3__setX_28float_29($6 + 48 | 0 | 0, Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($6 + 48 | 0 | 0) | 0) >> 2]) - Math_fround(1.0000000474974513e-03))));
|
|
}
|
|
label$5 : {
|
|
if (!(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($6 + 32 | 0 | 0) | 0) >> 2]) - Math_fround(HEAPF32[(btVector3__y_28_29_20const($6 + 48 | 0 | 0) | 0) >> 2])) < Math_fround(2.0000000949949026e-03) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btVector3__setY_28float_29($6 + 32 | 0 | 0, Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($6 + 32 | 0 | 0) | 0) >> 2]) + Math_fround(1.0000000474974513e-03))));
|
|
btVector3__setY_28float_29($6 + 48 | 0 | 0, Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($6 + 48 | 0 | 0) | 0) >> 2]) - Math_fround(1.0000000474974513e-03))));
|
|
}
|
|
label$6 : {
|
|
if (!(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($6 + 32 | 0 | 0) | 0) >> 2]) - Math_fround(HEAPF32[(btVector3__z_28_29_20const($6 + 48 | 0 | 0) | 0) >> 2])) < Math_fround(2.0000000949949026e-03) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
btVector3__setZ_28float_29($6 + 32 | 0 | 0, Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($6 + 32 | 0 | 0) | 0) >> 2]) + Math_fround(1.0000000474974513e-03))));
|
|
btVector3__setZ_28float_29($6 + 48 | 0 | 0, Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($6 + 48 | 0 | 0) | 0) >> 2]) - Math_fround(1.0000000474974513e-03))));
|
|
}
|
|
btQuantizedBvh__quantize_28unsigned_20short__2c_20btVector3_20const__2c_20int_29_20const(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0, $6 + 64 | 0 | 0, $6 + 48 | 0 | 0, 0 | 0);
|
|
btQuantizedBvh__quantize_28unsigned_20short__2c_20btVector3_20const__2c_20int_29_20const(HEAP32[($7 + 8 | 0) >> 2] | 0 | 0, ($6 + 64 | 0) + 6 | 0 | 0, $6 + 32 | 0 | 0, 1 | 0);
|
|
HEAP32[($6 + 76 | 0) >> 2] = (HEAP32[($6 + 84 | 0) >> 2] | 0) << 21 | 0 | (HEAP32[($6 + 80 | 0) >> 2] | 0) | 0;
|
|
btAlignedObjectArray_btQuantizedBvhNode___push_back_28btQuantizedBvhNode_20const__29(HEAP32[($7 + 4 | 0) >> 2] | 0 | 0, $6 + 64 | 0 | 0);
|
|
__stack_pointer = $6 + 96 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btQuantizedBvhNode___push_back_28btQuantizedBvhNode_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $22 = 0, $25 = 0, $88 = 0, $98 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btQuantizedBvhNode___size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btQuantizedBvhNode___capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btQuantizedBvhNode___reserve_28int_29($5 | 0, btAlignedObjectArray_btQuantizedBvhNode___allocSize_28int_29($5 | 0, btAlignedObjectArray_btQuantizedBvhNode___size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
$22 = btQuantizedBvhNode__operator_20new_28unsigned_20long_2c_20void__29(16 | 0, (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$88 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $88;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$25 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $25 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$98 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $25 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $98;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btQuantizedBvhNode___allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btOptimizedBvh__build_28btStridingMeshInterface__2c_20bool_2c_20btVector3_20const__2c_20btVector3_20const__29__NodeTriangleCallback___NodeTriangleCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btOptimizedBvh__build_28btStridingMeshInterface__2c_20bool_2c_20btVector3_20const__2c_20btVector3_20const__29__NodeTriangleCallback___NodeTriangleCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btOptimizedBvh__build_28btStridingMeshInterface__2c_20bool_2c_20btVector3_20const__2c_20btVector3_20const__29__NodeTriangleCallback__internalProcessTriangleIndex_28btVector3__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $81 = 0, $83 = 0, $93 = 0, $95 = 0, $7 = 0, $262 = 0, $275 = 0, $286 = 0, $299 = 0;
|
|
$6 = __stack_pointer - 144 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 140 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 136 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 132 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 128 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 140 | 0) >> 2] | 0;
|
|
btOptimizedBvhNode__btOptimizedBvhNode_28_29($6 + 64 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 48 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 32 | 0 | 0) | 0;
|
|
HEAPF32[($6 + 28 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAPF32[($6 + 24 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAPF32[($6 + 20 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 48 | 0 | 0, $6 + 28 | 0 | 0, $6 + 24 | 0 | 0, $6 + 20 | 0 | 0);
|
|
HEAPF32[($6 + 16 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
HEAPF32[($6 + 12 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
HEAPF32[($6 + 8 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 32 | 0 | 0, $6 + 16 | 0 | 0, $6 + 12 | 0 | 0, $6 + 8 | 0 | 0);
|
|
btVector3__setMin_28btVector3_20const__29($6 + 48 | 0 | 0, HEAP32[($6 + 136 | 0) >> 2] | 0 | 0);
|
|
btVector3__setMax_28btVector3_20const__29($6 + 32 | 0 | 0, HEAP32[($6 + 136 | 0) >> 2] | 0 | 0);
|
|
btVector3__setMin_28btVector3_20const__29($6 + 48 | 0 | 0, (HEAP32[($6 + 136 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
btVector3__setMax_28btVector3_20const__29($6 + 32 | 0 | 0, (HEAP32[($6 + 136 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
btVector3__setMin_28btVector3_20const__29($6 + 48 | 0 | 0, (HEAP32[($6 + 136 | 0) >> 2] | 0) + 32 | 0 | 0);
|
|
btVector3__setMax_28btVector3_20const__29($6 + 32 | 0 | 0, (HEAP32[($6 + 136 | 0) >> 2] | 0) + 32 | 0 | 0);
|
|
$81 = $6 + 64 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 52 | 0) >> 2] | 0;
|
|
$262 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $81;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $262;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$83 = 8;
|
|
i64toi32_i32$2 = ($6 + 48 | 0) + $83 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$275 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $81 + $83 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $275;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$93 = ($6 + 64 | 0) + 16 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 36 | 0) >> 2] | 0;
|
|
$286 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $93;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $286;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$95 = 8;
|
|
i64toi32_i32$2 = ($6 + 32 | 0) + $95 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$299 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $93 + $95 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $299;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($6 + 96 | 0) >> 2] = -1;
|
|
HEAP32[($6 + 100 | 0) >> 2] = HEAP32[($6 + 132 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 104 | 0) >> 2] = HEAP32[($6 + 128 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btOptimizedBvhNode___push_back_28btOptimizedBvhNode_20const__29(HEAP32[($7 + 4 | 0) >> 2] | 0 | 0, $6 + 64 | 0 | 0);
|
|
__stack_pointer = $6 + 144 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btOptimizedBvhNode___push_back_28btOptimizedBvhNode_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $5 = 0, $4 = 0, $22 = 0, $23 = 0, $25 = 0, $29 = 0, $33 = 0, $37 = 0, $41 = 0, $45 = 0, $49 = 0, $112 = 0, $122 = 0, $132 = 0, $142 = 0, $152 = 0, $162 = 0, $172 = 0, $182 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btOptimizedBvhNode___size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btOptimizedBvhNode___capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btOptimizedBvhNode___reserve_28int_29($5 | 0, btAlignedObjectArray_btOptimizedBvhNode___allocSize_28int_29($5 | 0, btAlignedObjectArray_btOptimizedBvhNode___size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
$22 = btOptimizedBvhNode__operator_20new_28unsigned_20long_2c_20void__29(64 | 0, (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 6 | 0) | 0 | 0) | 0;
|
|
$23 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $23;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$112 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $112;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$25 = 56;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $25 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$122 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $25 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $122;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$29 = 48;
|
|
i64toi32_i32$2 = $23 + $29 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$132 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22 + $29 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $132;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$33 = 40;
|
|
i64toi32_i32$2 = $23 + $33 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$142 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $33 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $142;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$37 = 32;
|
|
i64toi32_i32$2 = $23 + $37 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$152 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22 + $37 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $152;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$41 = 24;
|
|
i64toi32_i32$2 = $23 + $41 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$162 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $41 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $162;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$45 = 16;
|
|
i64toi32_i32$2 = $23 + $45 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$172 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22 + $45 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $172;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$49 = 8;
|
|
i64toi32_i32$2 = $23 + $49 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$182 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $49 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $182;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btOptimizedBvhNode___allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btOptimizedBvh_cpp() {
|
|
__cxx_global_var_init_42();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_43() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114160 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexPolyhedron__btConvexPolyhedron_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 99396 + 8 | 0;
|
|
btAlignedObjectArray_btVector3___btAlignedObjectArray_28_29($4 + 4 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btFace___btAlignedObjectArray_28_29($4 + 24 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3___btAlignedObjectArray_28_29($4 + 44 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 64 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 80 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 100 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 116 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexPolyhedron___btConvexPolyhedron_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 99396 + 8 | 0;
|
|
btAlignedObjectArray_btVector3____btAlignedObjectArray_28_29($4 + 44 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btFace____btAlignedObjectArray_28_29($4 + 24 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3____btAlignedObjectArray_28_29($4 + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexPolyhedron___btConvexPolyhedron_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[919 | 0]($4) | 0;
|
|
btConvexPolyhedron__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexPolyhedron__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexPolyhedron__testContainment_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, i64toi32_i32$2 = 0, $41 = 0, $84 = 0, $127 = 0, $173 = 0, $218 = 0, $266 = 0, $314 = 0, $365 = 0, $536 = 0, $540 = 0, $61 = 0, $66 = 0, $619 = 0, $623 = 0, $104 = 0, $702 = 0, $706 = 0, $147 = 0, $792 = 0, $796 = 0, $878 = 0, $882 = 0, $245 = 0, $971 = 0, $975 = 0, $1064 = 0, $1068 = 0, $1164 = 0, $1168 = 0, $442 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$3 = __stack_pointer - 368 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 360 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 360 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 356 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($3 + 356 | 0) >> 2] | 0 | 0) < (8 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btVector3__btVector3_28_29($3 + 336 | 0 | 0) | 0;
|
|
label$4 : {
|
|
label$5 : {
|
|
if (HEAP32[($3 + 356 | 0) >> 2] | 0) {
|
|
break label$5
|
|
}
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 304 | 0 | 0, btVector3__operator_20float_20const__28_29_20const($4 + 80 | 0 | 0) | 0 | 0, (btVector3__operator_20float_20const__28_29_20const($4 + 80 | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const($4 + 80 | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($3 + 320 | 0 | 0, $4 + 64 | 0 | 0, $3 + 304 | 0 | 0);
|
|
$41 = 8;
|
|
i64toi32_i32$2 = ($3 + 320 | 0) + $41 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$536 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($3 + 336 | 0) + $41 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $536;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$1 = HEAP32[($3 + 320 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($3 + 324 | 0) >> 2] | 0;
|
|
$540 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $3;
|
|
HEAP32[($3 + 336 | 0) >> 2] = $540;
|
|
HEAP32[($3 + 340 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$4;
|
|
}
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!((HEAP32[($3 + 356 | 0) >> 2] | 0 | 0) == (1 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
$61 = btVector3__operator_20float_20const__28_29_20const($4 + 80 | 0 | 0) | 0;
|
|
$66 = (btVector3__operator_20float_20const__28_29_20const($4 + 80 | 0 | 0) | 0) + 4 | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($4 + 80 | 0 | 0) | 0) + 8 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 268 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 272 | 0 | 0, $61 | 0, $66 | 0, $3 + 268 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($3 + 288 | 0 | 0, $4 + 64 | 0 | 0, $3 + 272 | 0 | 0);
|
|
$84 = 8;
|
|
i64toi32_i32$2 = ($3 + 288 | 0) + $84 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$619 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($3 + 336 | 0) + $84 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $619;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$1 = HEAP32[($3 + 288 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($3 + 292 | 0) >> 2] | 0;
|
|
$623 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $3;
|
|
HEAP32[($3 + 336 | 0) >> 2] = $623;
|
|
HEAP32[($3 + 340 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$6;
|
|
}
|
|
label$8 : {
|
|
label$9 : {
|
|
if (!((HEAP32[($3 + 356 | 0) >> 2] | 0 | 0) == (2 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
$104 = btVector3__operator_20float_20const__28_29_20const($4 + 80 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($4 + 80 | 0 | 0) | 0) + 4 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 232 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 236 | 0 | 0, $104 | 0, $3 + 232 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const($4 + 80 | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($3 + 252 | 0 | 0, $4 + 64 | 0 | 0, $3 + 236 | 0 | 0);
|
|
$127 = 8;
|
|
i64toi32_i32$2 = ($3 + 252 | 0) + $127 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$702 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($3 + 336 | 0) + $127 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $702;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$1 = HEAP32[($3 + 252 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($3 + 256 | 0) >> 2] | 0;
|
|
$706 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $3;
|
|
HEAP32[($3 + 336 | 0) >> 2] = $706;
|
|
HEAP32[($3 + 340 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$8;
|
|
}
|
|
label$10 : {
|
|
label$11 : {
|
|
if (!((HEAP32[($3 + 356 | 0) >> 2] | 0 | 0) == (3 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
$147 = btVector3__operator_20float_20const__28_29_20const($4 + 80 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($4 + 80 | 0 | 0) | 0) + 4 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 196 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($4 + 80 | 0 | 0) | 0) + 8 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 192 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 200 | 0 | 0, $147 | 0, $3 + 196 | 0 | 0, $3 + 192 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($3 + 216 | 0 | 0, $4 + 64 | 0 | 0, $3 + 200 | 0 | 0);
|
|
$173 = 8;
|
|
i64toi32_i32$2 = ($3 + 216 | 0) + $173 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$792 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($3 + 336 | 0) + $173 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $792;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$1 = HEAP32[($3 + 216 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($3 + 220 | 0) >> 2] | 0;
|
|
$796 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $3;
|
|
HEAP32[($3 + 336 | 0) >> 2] = $796;
|
|
HEAP32[($3 + 340 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$10;
|
|
}
|
|
label$12 : {
|
|
label$13 : {
|
|
if (!((HEAP32[($3 + 356 | 0) >> 2] | 0 | 0) == (4 | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(-Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const($4 + 80 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 156 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 160 | 0 | 0, $3 + 156 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const($4 + 80 | 0 | 0) | 0) + 4 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const($4 + 80 | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($3 + 176 | 0 | 0, $4 + 64 | 0 | 0, $3 + 160 | 0 | 0);
|
|
$218 = 8;
|
|
i64toi32_i32$2 = ($3 + 176 | 0) + $218 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$878 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($3 + 336 | 0) + $218 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $878;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$1 = HEAP32[($3 + 176 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($3 + 180 | 0) >> 2] | 0;
|
|
$882 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $3;
|
|
HEAP32[($3 + 336 | 0) >> 2] = $882;
|
|
HEAP32[($3 + 340 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$12;
|
|
}
|
|
label$14 : {
|
|
label$15 : {
|
|
if (!((HEAP32[($3 + 356 | 0) >> 2] | 0 | 0) == (5 | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(-Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const($4 + 80 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 120 | 0) >> 2] = wasm2js_f32$0;
|
|
$245 = (btVector3__operator_20float_20const__28_29_20const($4 + 80 | 0 | 0) | 0) + 4 | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($4 + 80 | 0 | 0) | 0) + 8 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 116 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 124 | 0 | 0, $3 + 120 | 0 | 0, $245 | 0, $3 + 116 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($3 + 140 | 0 | 0, $4 + 64 | 0 | 0, $3 + 124 | 0 | 0);
|
|
$266 = 8;
|
|
i64toi32_i32$2 = ($3 + 140 | 0) + $266 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$971 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($3 + 336 | 0) + $266 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $971;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$1 = HEAP32[($3 + 140 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($3 + 144 | 0) >> 2] | 0;
|
|
$975 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $3;
|
|
HEAP32[($3 + 336 | 0) >> 2] = $975;
|
|
HEAP32[($3 + 340 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$14;
|
|
}
|
|
label$16 : {
|
|
label$17 : {
|
|
if (!((HEAP32[($3 + 356 | 0) >> 2] | 0 | 0) == (6 | 0) & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(-Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const($4 + 80 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 80 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($4 + 80 | 0 | 0) | 0) + 4 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 76 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 84 | 0 | 0, $3 + 80 | 0 | 0, $3 + 76 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const($4 + 80 | 0 | 0) | 0) + 8 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($3 + 100 | 0 | 0, $4 + 64 | 0 | 0, $3 + 84 | 0 | 0);
|
|
$314 = 8;
|
|
i64toi32_i32$2 = ($3 + 100 | 0) + $314 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1064 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($3 + 336 | 0) + $314 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1064;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$1 = HEAP32[($3 + 100 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($3 + 104 | 0) >> 2] | 0;
|
|
$1068 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $3;
|
|
HEAP32[($3 + 336 | 0) >> 2] = $1068;
|
|
HEAP32[($3 + 340 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$16;
|
|
}
|
|
label$18 : {
|
|
if (!((HEAP32[($3 + 356 | 0) >> 2] | 0 | 0) == (7 | 0) & 1 | 0)) {
|
|
break label$18
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(-Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const($4 + 80 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($4 + 80 | 0 | 0) | 0) + 4 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const($4 + 80 | 0 | 0) | 0) + 8 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 44 | 0 | 0, $3 + 40 | 0 | 0, $3 + 36 | 0 | 0, $3 + 32 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($3 + 60 | 0 | 0, $4 + 64 | 0 | 0, $3 + 44 | 0 | 0);
|
|
$365 = 8;
|
|
i64toi32_i32$2 = ($3 + 60 | 0) + $365 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1164 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($3 + 336 | 0) + $365 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1164;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$1 = HEAP32[($3 + 60 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($3 + 64 | 0) >> 2] | 0;
|
|
$1168 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $3;
|
|
HEAP32[($3 + 336 | 0) >> 2] = $1168;
|
|
HEAP32[($3 + 340 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
HEAP32[($3 + 28 | 0) >> 2] = 0;
|
|
label$19 : {
|
|
label$20 : while (1) {
|
|
if (!((HEAP32[($3 + 28 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btFace___size_28_29_20const($4 + 24 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 12 | 0 | 0, (btAlignedObjectArray_btFace___operator_5b_5d_28int_29_20const($4 + 24 | 0 | 0, HEAP32[($3 + 28 | 0) >> 2] | 0 | 0) | 0) + 20 | 0 | 0, ((btAlignedObjectArray_btFace___operator_5b_5d_28int_29_20const($4 + 24 | 0 | 0, HEAP32[($3 + 28 | 0) >> 2] | 0 | 0) | 0) + 20 | 0) + 4 | 0 | 0, ((btAlignedObjectArray_btFace___operator_5b_5d_28int_29_20const($4 + 24 | 0 | 0, HEAP32[($3 + 28 | 0) >> 2] | 0 | 0) | 0) + 20 | 0) + 8 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(Math_fround(btVector3__dot_28btVector3_20const__29_20const($3 + 336 | 0 | 0, $3 + 12 | 0 | 0)) + Math_fround(HEAPF32[((btAlignedObjectArray_btFace___operator_5b_5d_28int_29_20const($4 + 24 | 0 | 0, HEAP32[($3 + 28 | 0) >> 2] | 0 | 0) | 0) + 32 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
label$21 : {
|
|
if (!(Math_fround(HEAPF32[($3 + 8 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$21
|
|
}
|
|
HEAP8[($3 + 367 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[($3 + 28 | 0) >> 2] = (HEAP32[($3 + 28 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$20;
|
|
};
|
|
}
|
|
HEAP32[($3 + 356 | 0) >> 2] = (HEAP32[($3 + 356 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
HEAP8[($3 + 367 | 0) >> 0] = 1 & 1 | 0;
|
|
}
|
|
$442 = (HEAPU8[($3 + 367 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $3 + 368 | 0;
|
|
return $442 | 0;
|
|
}
|
|
|
|
function btConvexPolyhedron__initialize_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $561 = Math_fround(0), $617 = Math_fround(0), $73 = 0, $76 = 0, $89 = 0, $96 = 0, $134 = 0, $173 = 0, $188 = 0, $608 = 0, $673 = 0, $683 = 0, $580 = Math_fround(0), $601 = Math_fround(0), $666 = Math_fround(0), $676 = Math_fround(0), $689 = Math_fround(0), $697 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$3 = __stack_pointer - 464 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 460 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 460 | 0) >> 2] | 0;
|
|
btHashMap_btInternalVertexPair_2c_20btInternalEdge___btHashMap_28_29($3 + 380 | 0 | 0) | 0;
|
|
HEAPF32[($3 + 376 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 372 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 368 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 364 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 64 | 0 | 0, $3 + 372 | 0 | 0, $3 + 368 | 0 | 0, $3 + 364 | 0 | 0);
|
|
HEAP32[($3 + 360 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($3 + 360 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btFace___size_28_29_20const($4 + 24 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btAlignedObjectArray_int___size_28_29_20const(btAlignedObjectArray_btFace___operator_5b_5d_28int_29($4 + 24 | 0 | 0, HEAP32[($3 + 360 | 0) >> 2] | 0 | 0) | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 356 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($3 + 352 | 0) >> 2] = HEAP32[($3 + 356 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 348 | 0) >> 2] = 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($3 + 348 | 0) >> 2] | 0 | 0) < (HEAP32[($3 + 352 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($3 + 344 | 0) >> 2] = ((HEAP32[($3 + 348 | 0) >> 2] | 0) + 1 | 0 | 0) % (HEAP32[($3 + 356 | 0) >> 2] | 0 | 0) | 0;
|
|
$73 = 16;
|
|
$76 = 16;
|
|
btInternalVertexPair__btInternalVertexPair_28short_2c_20short_29($3 + 340 | 0 | 0, ((HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29(btAlignedObjectArray_btFace___operator_5b_5d_28int_29($4 + 24 | 0 | 0, HEAP32[($3 + 360 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($3 + 348 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0) << $73 | 0) >> $73 | 0 | 0, ((HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29(btAlignedObjectArray_btFace___operator_5b_5d_28int_29($4 + 24 | 0 | 0, HEAP32[($3 + 360 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($3 + 344 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0) << $76 | 0) >> $76 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btHashMap_btInternalVertexPair_2c_20btInternalEdge___find_28btInternalVertexPair_20const__29($3 + 380 | 0 | 0, $3 + 340 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 336 | 0) >> 2] = wasm2js_i32$1;
|
|
$89 = 16;
|
|
$96 = 16;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($3 + 320 | 0 | 0, btAlignedObjectArray_btVector3___operator_5b_5d_28int_29($4 + 4 | 0 | 0, ((HEAPU16[($3 + 342 | 0) >> 1] | 0) << $89 | 0) >> $89 | 0 | 0) | 0 | 0, btAlignedObjectArray_btVector3___operator_5b_5d_28int_29($4 + 4 | 0 | 0, ((HEAPU16[($3 + 340 | 0) >> 1] | 0) << $96 | 0) >> $96 | 0 | 0) | 0 | 0);
|
|
btVector3__normalize_28_29($3 + 320 | 0 | 0) | 0;
|
|
HEAP8[($3 + 319 | 0) >> 0] = 0;
|
|
HEAP32[($3 + 312 | 0) >> 2] = 0;
|
|
label$5 : {
|
|
label$6 : while (1) {
|
|
if (!((HEAP32[($3 + 312 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btVector3___size_28_29_20const($4 + 44 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($3 + 296 | 0 | 0, btAlignedObjectArray_btVector3___operator_5b_5d_28int_29($4 + 44 | 0 | 0, HEAP32[($3 + 312 | 0) >> 2] | 0 | 0) | 0 | 0, $3 + 320 | 0 | 0);
|
|
$134 = 1;
|
|
label$7 : {
|
|
if ((IsAlmostZero_28btVector3_20const__29($3 + 296 | 0 | 0) | 0) & 1 | 0) {
|
|
break label$7
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($3 + 280 | 0 | 0, btAlignedObjectArray_btVector3___operator_5b_5d_28int_29($4 + 44 | 0 | 0, HEAP32[($3 + 312 | 0) >> 2] | 0 | 0) | 0 | 0, $3 + 320 | 0 | 0);
|
|
$134 = IsAlmostZero_28btVector3_20const__29($3 + 280 | 0 | 0) | 0;
|
|
}
|
|
label$8 : {
|
|
if (!($134 & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
HEAP8[($3 + 319 | 0) >> 0] = 1;
|
|
break label$5;
|
|
}
|
|
HEAP32[($3 + 312 | 0) >> 2] = (HEAP32[($3 + 312 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$6;
|
|
};
|
|
}
|
|
label$9 : {
|
|
if ((HEAPU8[($3 + 319 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$9
|
|
}
|
|
btAlignedObjectArray_btVector3___push_back_28btVector3_20const__29($4 + 44 | 0 | 0, $3 + 320 | 0 | 0);
|
|
}
|
|
label$10 : {
|
|
label$11 : {
|
|
if (!((HEAP32[($3 + 336 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
$173 = 16;
|
|
label$12 : {
|
|
if ((((HEAPU16[(HEAP32[($3 + 336 | 0) >> 2] | 0) >> 1] | 0) << $173 | 0) >> $173 | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$12
|
|
}
|
|
__assert_fail(85875 | 0, 73099 | 0, 142 | 0, 80824 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$188 = 16;
|
|
label$13 : {
|
|
if ((((HEAPU16[((HEAP32[($3 + 336 | 0) >> 2] | 0) + 2 | 0) >> 1] | 0) << $188 | 0) >> $188 | 0 | 0) < (0 | 0) & 1 | 0) {
|
|
break label$13
|
|
}
|
|
__assert_fail(86046 | 0, 73099 | 0, 143 | 0, 80824 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP16[((HEAP32[($3 + 336 | 0) >> 2] | 0) + 2 | 0) >> 1] = HEAP32[($3 + 360 | 0) >> 2] | 0;
|
|
break label$10;
|
|
}
|
|
btInternalEdge__btInternalEdge_28_29($3 + 276 | 0 | 0) | 0;
|
|
HEAP16[($3 + 276 | 0) >> 1] = HEAP32[($3 + 360 | 0) >> 2] | 0;
|
|
btHashMap_btInternalVertexPair_2c_20btInternalEdge___insert_28btInternalVertexPair_20const__2c_20btInternalEdge_20const__29($3 + 380 | 0 | 0, $3 + 340 | 0 | 0, $3 + 276 | 0 | 0);
|
|
}
|
|
HEAP32[($3 + 348 | 0) >> 2] = (HEAP32[($3 + 348 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
HEAP32[($3 + 360 | 0) >> 2] = (HEAP32[($3 + 360 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
HEAP32[($3 + 272 | 0) >> 2] = 0;
|
|
label$14 : {
|
|
label$15 : while (1) {
|
|
if (!((HEAP32[($3 + 272 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btFace___size_28_29_20const($4 + 24 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btAlignedObjectArray_int___size_28_29_20const(btAlignedObjectArray_btFace___operator_5b_5d_28int_29($4 + 24 | 0 | 0, HEAP32[($3 + 272 | 0) >> 2] | 0 | 0) | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 268 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($3 + 264 | 0) >> 2] = (HEAP32[($3 + 268 | 0) >> 2] | 0) - 2 | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29($4 + 4 | 0 | 0, HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29(btAlignedObjectArray_btFace___operator_5b_5d_28int_29($4 + 24 | 0 | 0, HEAP32[($3 + 272 | 0) >> 2] | 0 | 0) | 0 | 0, 0 | 0) | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 260 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($3 + 256 | 0) >> 2] = 1;
|
|
label$16 : {
|
|
label$17 : while (1) {
|
|
if (!((HEAP32[($3 + 256 | 0) >> 2] | 0 | 0) <= (HEAP32[($3 + 264 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
HEAP32[($3 + 252 | 0) >> 2] = ((HEAP32[($3 + 256 | 0) >> 2] | 0) + 1 | 0 | 0) % (HEAP32[($3 + 268 | 0) >> 2] | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29($4 + 4 | 0 | 0, HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29(btAlignedObjectArray_btFace___operator_5b_5d_28int_29($4 + 24 | 0 | 0, HEAP32[($3 + 272 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($3 + 256 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 248 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29($4 + 4 | 0 | 0, HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29(btAlignedObjectArray_btFace___operator_5b_5d_28int_29($4 + 24 | 0 | 0, HEAP32[($3 + 272 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($3 + 252 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 244 | 0) >> 2] = wasm2js_i32$1;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($3 + 208 | 0 | 0, HEAP32[($3 + 260 | 0) >> 2] | 0 | 0, HEAP32[($3 + 248 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($3 + 192 | 0 | 0, HEAP32[($3 + 260 | 0) >> 2] | 0 | 0, HEAP32[($3 + 244 | 0) >> 2] | 0 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($3 + 224 | 0 | 0, $3 + 208 | 0 | 0, $3 + 192 | 0 | 0);
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(Math_fround(btVector3__length_28_29_20const($3 + 224 | 0 | 0)) * Math_fround(.5))), HEAPF32[(wasm2js_i32$0 + 240 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($3 + 144 | 0 | 0, HEAP32[($3 + 260 | 0) >> 2] | 0 | 0, HEAP32[($3 + 248 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($3 + 160 | 0 | 0, $3 + 144 | 0 | 0, HEAP32[($3 + 244 | 0) >> 2] | 0 | 0);
|
|
HEAPF32[($3 + 140 | 0) >> 2] = Math_fround(3.0);
|
|
operator__28btVector3_20const__2c_20float_20const__29_1($3 + 176 | 0 | 0, $3 + 160 | 0 | 0, $3 + 140 | 0 | 0);
|
|
operator__28float_20const__2c_20btVector3_20const__29($3 + 124 | 0 | 0, $3 + 240 | 0 | 0, $3 + 176 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($4 + 64 | 0 | 0, $3 + 124 | 0 | 0) | 0;
|
|
HEAPF32[($3 + 376 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($3 + 376 | 0) >> 2]) + Math_fround(HEAPF32[($3 + 240 | 0) >> 2]));
|
|
HEAP32[($3 + 256 | 0) >> 2] = (HEAP32[($3 + 256 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$17;
|
|
};
|
|
}
|
|
HEAP32[($3 + 272 | 0) >> 2] = (HEAP32[($3 + 272 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$15;
|
|
};
|
|
}
|
|
btVector3__operator___28float_20const__29($4 + 64 | 0 | 0, $3 + 376 | 0 | 0) | 0;
|
|
HEAPF32[($4 + 96 | 0) >> 2] = Math_fround(3402823466385288598117041.0e14);
|
|
HEAP32[($3 + 120 | 0) >> 2] = 0;
|
|
label$18 : {
|
|
label$19 : while (1) {
|
|
if (!((HEAP32[($3 + 120 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btFace___size_28_29_20const($4 + 24 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$18
|
|
}
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 104 | 0 | 0, (btAlignedObjectArray_btFace___operator_5b_5d_28int_29($4 + 24 | 0 | 0, HEAP32[($3 + 120 | 0) >> 2] | 0 | 0) | 0) + 20 | 0 | 0, ((btAlignedObjectArray_btFace___operator_5b_5d_28int_29($4 + 24 | 0 | 0, HEAP32[($3 + 120 | 0) >> 2] | 0 | 0) | 0) + 20 | 0) + 4 | 0 | 0, ((btAlignedObjectArray_btFace___operator_5b_5d_28int_29($4 + 24 | 0 | 0, HEAP32[($3 + 120 | 0) >> 2] | 0 | 0) | 0) + 20 | 0) + 8 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(Math_fround(btVector3__dot_28btVector3_20const__29_20const($4 + 64 | 0 | 0, $3 + 104 | 0 | 0)) + Math_fround(HEAPF32[((btAlignedObjectArray_btFace___operator_5b_5d_28int_29($4 + 24 | 0 | 0, HEAP32[($3 + 120 | 0) >> 2] | 0 | 0) | 0) + 32 | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 100 | 0) >> 2] = wasm2js_f32$0;
|
|
label$20 : {
|
|
if (!(Math_fround(HEAPF32[($3 + 100 | 0) >> 2]) < Math_fround(HEAPF32[($4 + 96 | 0) >> 2]) & 1 | 0)) {
|
|
break label$20
|
|
}
|
|
HEAPF32[($4 + 96 | 0) >> 2] = Math_fround(HEAPF32[($3 + 100 | 0) >> 2]);
|
|
}
|
|
HEAP32[($3 + 120 | 0) >> 2] = (HEAP32[($3 + 120 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$19;
|
|
};
|
|
}
|
|
HEAPF32[($3 + 96 | 0) >> 2] = Math_fround(3402823466385288598117041.0e14);
|
|
HEAPF32[($3 + 92 | 0) >> 2] = Math_fround(3402823466385288598117041.0e14);
|
|
HEAPF32[($3 + 88 | 0) >> 2] = Math_fround(3402823466385288598117041.0e14);
|
|
HEAPF32[($3 + 84 | 0) >> 2] = Math_fround(-3402823466385288598117041.0e14);
|
|
HEAPF32[($3 + 80 | 0) >> 2] = Math_fround(-3402823466385288598117041.0e14);
|
|
HEAPF32[($3 + 76 | 0) >> 2] = Math_fround(-3402823466385288598117041.0e14);
|
|
HEAP32[($3 + 72 | 0) >> 2] = 0;
|
|
label$21 : {
|
|
label$22 : while (1) {
|
|
if (!((HEAP32[($3 + 72 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btVector3___size_28_29_20const($4 + 4 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$21
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29($4 + 4 | 0 | 0, HEAP32[($3 + 72 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 68 | 0) >> 2] = wasm2js_i32$1;
|
|
label$23 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($3 + 68 | 0) >> 2] | 0 | 0) | 0) >> 2]) < Math_fround(HEAPF32[($3 + 96 | 0) >> 2]) & 1 | 0)) {
|
|
break label$23
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($3 + 68 | 0) >> 2] | 0 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 96 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
label$24 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($3 + 68 | 0) >> 2] | 0 | 0) | 0) >> 2]) > Math_fround(HEAPF32[($3 + 84 | 0) >> 2]) & 1 | 0)) {
|
|
break label$24
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($3 + 68 | 0) >> 2] | 0 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 84 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
label$25 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($3 + 68 | 0) >> 2] | 0 | 0) | 0) >> 2]) < Math_fround(HEAPF32[($3 + 92 | 0) >> 2]) & 1 | 0)) {
|
|
break label$25
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($3 + 68 | 0) >> 2] | 0 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 92 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
label$26 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($3 + 68 | 0) >> 2] | 0 | 0) | 0) >> 2]) > Math_fround(HEAPF32[($3 + 80 | 0) >> 2]) & 1 | 0)) {
|
|
break label$26
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($3 + 68 | 0) >> 2] | 0 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 80 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
label$27 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($3 + 68 | 0) >> 2] | 0 | 0) | 0) >> 2]) < Math_fround(HEAPF32[($3 + 88 | 0) >> 2]) & 1 | 0)) {
|
|
break label$27
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($3 + 68 | 0) >> 2] | 0 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 88 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
label$28 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($3 + 68 | 0) >> 2] | 0 | 0) | 0) >> 2]) > Math_fround(HEAPF32[($3 + 76 | 0) >> 2]) & 1 | 0)) {
|
|
break label$28
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($3 + 68 | 0) >> 2] | 0 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 76 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
HEAP32[($3 + 72 | 0) >> 2] = (HEAP32[($3 + 72 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$22;
|
|
};
|
|
}
|
|
HEAPF32[($3 + 64 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($3 + 84 | 0) >> 2]) + Math_fround(HEAPF32[($3 + 96 | 0) >> 2]));
|
|
HEAPF32[($3 + 60 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($3 + 80 | 0) >> 2]) + Math_fround(HEAPF32[($3 + 92 | 0) >> 2]));
|
|
HEAPF32[($3 + 56 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($3 + 76 | 0) >> 2]) + Math_fround(HEAPF32[($3 + 88 | 0) >> 2]));
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 100 | 0 | 0, $3 + 64 | 0 | 0, $3 + 60 | 0 | 0, $3 + 56 | 0 | 0);
|
|
HEAPF32[($3 + 52 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($3 + 84 | 0) >> 2]) - Math_fround(HEAPF32[($3 + 96 | 0) >> 2]));
|
|
HEAPF32[($3 + 48 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($3 + 80 | 0) >> 2]) - Math_fround(HEAPF32[($3 + 92 | 0) >> 2]));
|
|
HEAPF32[($3 + 44 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($3 + 76 | 0) >> 2]) - Math_fround(HEAPF32[($3 + 88 | 0) >> 2]));
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 116 | 0 | 0, $3 + 52 | 0 | 0, $3 + 48 | 0 | 0, $3 + 44 | 0 | 0);
|
|
HEAPF32[($3 + 40 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($4 + 96 | 0) >> 2]) / Math_fround(Math_sqrt(Math_fround(3.0))));
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btVector3__maxAxis_28_29_20const($4 + 116 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($4 + 116 | 0 | 0) | 0) + ((HEAP32[($3 + 36 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) * Math_fround(.5)) + Math_fround(-Math_fround(HEAPF32[($3 + 40 | 0) >> 2]))) / Math_fround(1024.0))), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
$561 = Math_fround(HEAPF32[($3 + 40 | 0) >> 2]);
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($4 + 80 | 0 | 0) | 0, wasm2js_f32$0 = $561), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($4 + 80 | 0 | 0) | 0, wasm2js_f32$0 = $561), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($4 + 80 | 0 | 0) | 0, wasm2js_f32$0 = $561), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$580 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($4 + 116 | 0 | 0) | 0) + ((HEAP32[($3 + 36 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) * Math_fround(.5));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($4 + 80 | 0 | 0) | 0) + ((HEAP32[($3 + 36 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $580), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP8[($3 + 31 | 0) >> 0] = 0;
|
|
HEAP32[($3 + 24 | 0) >> 2] = 0;
|
|
label$29 : {
|
|
label$30 : while (1) {
|
|
if (!((HEAP32[($3 + 24 | 0) >> 2] | 0 | 0) < (1024 | 0) & 1 | 0)) {
|
|
break label$29
|
|
}
|
|
label$31 : {
|
|
if (!((btConvexPolyhedron__testContainment_28_29_20const($4 | 0) | 0) & 1 | 0)) {
|
|
break label$31
|
|
}
|
|
HEAP8[($3 + 31 | 0) >> 0] = 1;
|
|
break label$29;
|
|
}
|
|
$601 = Math_fround(HEAPF32[($3 + 32 | 0) >> 2]);
|
|
$608 = (btVector3__operator_20float__28_29($4 + 80 | 0 | 0) | 0) + ((HEAP32[($3 + 36 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
HEAPF32[$608 >> 2] = Math_fround(Math_fround(HEAPF32[$608 >> 2]) - $601);
|
|
HEAP32[($3 + 24 | 0) >> 2] = (HEAP32[($3 + 24 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$30;
|
|
};
|
|
}
|
|
label$32 : {
|
|
label$33 : {
|
|
if ((HEAPU8[($3 + 31 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$33
|
|
}
|
|
$617 = Math_fround(HEAPF32[($3 + 40 | 0) >> 2]);
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($4 + 80 | 0 | 0) | 0, wasm2js_f32$0 = $617), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($4 + 80 | 0 | 0) | 0, wasm2js_f32$0 = $617), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($4 + 80 | 0 | 0) | 0, wasm2js_f32$0 = $617), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
break label$32;
|
|
}
|
|
HEAPF32[($3 + 20 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($4 + 96 | 0) >> 2]) - Math_fround(HEAPF32[($3 + 40 | 0) >> 2])) / Math_fround(1024.0));
|
|
HEAP32[($3 + 16 | 0) >> 2] = (1 << (HEAP32[($3 + 36 | 0) >> 2] | 0) | 0) & 3 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = (1 << (HEAP32[($3 + 16 | 0) >> 2] | 0) | 0) & 3 | 0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = 0;
|
|
label$34 : {
|
|
label$35 : while (1) {
|
|
if (!((HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) < (1024 | 0) & 1 | 0)) {
|
|
break label$34
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($4 + 80 | 0 | 0) | 0) + ((HEAP32[($3 + 16 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($4 + 80 | 0 | 0) | 0) + ((HEAP32[($3 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$666 = Math_fround(HEAPF32[($3 + 20 | 0) >> 2]);
|
|
$673 = (btVector3__operator_20float__28_29($4 + 80 | 0 | 0) | 0) + ((HEAP32[($3 + 16 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
HEAPF32[$673 >> 2] = Math_fround(Math_fround(HEAPF32[$673 >> 2]) + $666);
|
|
$676 = Math_fround(HEAPF32[($3 + 20 | 0) >> 2]);
|
|
$683 = (btVector3__operator_20float__28_29($4 + 80 | 0 | 0) | 0) + ((HEAP32[($3 + 12 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
HEAPF32[$683 >> 2] = Math_fround(Math_fround(HEAPF32[$683 >> 2]) + $676);
|
|
label$36 : {
|
|
if ((btConvexPolyhedron__testContainment_28_29_20const($4 | 0) | 0) & 1 | 0) {
|
|
break label$36
|
|
}
|
|
$689 = Math_fround(HEAPF32[($3 + 4 | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($4 + 80 | 0 | 0) | 0) + ((HEAP32[($3 + 16 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $689), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$697 = Math_fround(HEAPF32[$3 >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($4 + 80 | 0 | 0) | 0) + ((HEAP32[($3 + 12 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $697), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
break label$34;
|
|
}
|
|
HEAP32[($3 + 8 | 0) >> 2] = (HEAP32[($3 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$35;
|
|
};
|
|
}
|
|
}
|
|
btHashMap_btInternalVertexPair_2c_20btInternalEdge____btHashMap_28_29($3 + 380 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 464 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHashMap_btInternalVertexPair_2c_20btInternalEdge___btHashMap_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_int___btAlignedObjectArray_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_int___btAlignedObjectArray_28_29($4 + 20 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btInternalEdge___btAlignedObjectArray_28_29($4 + 40 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btInternalVertexPair___btAlignedObjectArray_28_29($4 + 60 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btInternalVertexPair__btInternalVertexPair_28short_2c_20short_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $10 = 0, $14 = 0, $24 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $0;
|
|
HEAP16[($5 + 6 | 0) >> 1] = $1;
|
|
HEAP16[($5 + 4 | 0) >> 1] = $2;
|
|
$6 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $6;
|
|
HEAP16[$6 >> 1] = HEAPU16[($5 + 6 | 0) >> 1] | 0;
|
|
HEAP16[($6 + 2 | 0) >> 1] = HEAPU16[($5 + 4 | 0) >> 1] | 0;
|
|
$10 = 16;
|
|
$14 = 16;
|
|
label$1 : {
|
|
if (!((((HEAPU16[($6 + 2 | 0) >> 1] | 0) << $10 | 0) >> $10 | 0 | 0) > (((HEAPU16[$6 >> 1] | 0) << $14 | 0) >> $14 | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
void_20btSwap_short__28short__2c_20short__29($6 | 0, $6 + 2 | 0 | 0);
|
|
}
|
|
$24 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $24 | 0;
|
|
}
|
|
|
|
function btHashMap_btInternalVertexPair_2c_20btInternalEdge___find_28btInternalVertexPair_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $20 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btHashMap_btInternalVertexPair_2c_20btInternalEdge___findIndex_28btInternalVertexPair_20const__29_20const($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[$4 >> 2] | 0 | 0) == (-1 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btInternalEdge___operator_5b_5d_28int_29($5 + 40 | 0 | 0, HEAP32[$4 >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
$20 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $20 | 0;
|
|
}
|
|
|
|
function IsAlmostZero_28btVector3_20const__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $39 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : {
|
|
if (+Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2])))) > 1.0e-06 & 1 | 0) {
|
|
break label$3
|
|
}
|
|
if (+Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2])))) > 1.0e-06 & 1 | 0) {
|
|
break label$3
|
|
}
|
|
if (!(+Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2])))) > 1.0e-06 & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
}
|
|
HEAP8[($3 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP8[($3 + 15 | 0) >> 0] = 1 & 1 | 0;
|
|
}
|
|
$39 = (HEAPU8[($3 + 15 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $39 | 0;
|
|
}
|
|
|
|
function btInternalEdge__btInternalEdge_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP16[$4 >> 1] = 65535;
|
|
HEAP16[($4 + 2 | 0) >> 1] = 65535;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btHashMap_btInternalVertexPair_2c_20btInternalEdge___insert_28btInternalVertexPair_20const__2c_20btInternalEdge_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $7 = 0, $8 = 0, $9 = 0, $63 = 0, $68 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = (btInternalVertexPair__getHash_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) & ((btAlignedObjectArray_btInternalEdge___capacity_28_29_20const($6 + 40 | 0 | 0) | 0) - 1 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btHashMap_btInternalVertexPair_2c_20btInternalEdge___findIndex_28btInternalVertexPair_20const__29_20const($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) != (-1 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$7 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
$8 = btAlignedObjectArray_btInternalEdge___operator_5b_5d_28int_29($6 + 40 | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
$9 = HEAPU16[$7 >> 1] | 0 | ((HEAPU16[($7 + 2 | 0) >> 1] | 0) << 16 | 0) | 0;
|
|
HEAP16[$8 >> 1] = $9;
|
|
HEAP16[($8 + 2 | 0) >> 1] = $9 >>> 16 | 0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btInternalEdge___size_28_29_20const($6 + 40 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btInternalEdge___capacity_28_29_20const($6 + 40 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btInternalEdge___push_back_28btInternalEdge_20const__29($6 + 40 | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btInternalVertexPair___push_back_28btInternalVertexPair_20const__29($6 + 60 | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btInternalEdge___capacity_28_29_20const($6 + 40 | 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
label$3 : {
|
|
if (!((HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) < (HEAP32[$5 >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
btHashMap_btInternalVertexPair_2c_20btInternalEdge___growTables_28btInternalVertexPair_20const__29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = (btInternalVertexPair__getHash_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) & ((btAlignedObjectArray_btInternalEdge___capacity_28_29_20const($6 + 40 | 0 | 0) | 0) - 1 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
$63 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($6 | 0, HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($6 + 20 | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $63), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$68 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($6 | 0, HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $68), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
}
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHashMap_btInternalVertexPair_2c_20btInternalEdge____btHashMap_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btInternalVertexPair____btAlignedObjectArray_28_29($4 + 60 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btInternalEdge____btAlignedObjectArray_28_29($4 + 40 | 0 | 0) | 0;
|
|
btAlignedObjectArray_int____btAlignedObjectArray_28_29($4 + 20 | 0 | 0) | 0;
|
|
btAlignedObjectArray_int____btAlignedObjectArray_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalEdge___btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btInternalEdge_2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btInternalEdge___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalVertexPair___btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btInternalVertexPair_2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btInternalVertexPair___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function void_20btSwap_short__28short__2c_20short__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP16[($4 + 6 | 0) >> 1] = HEAPU16[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 1] | 0;
|
|
HEAP16[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 1] = HEAPU16[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 1] | 0;
|
|
HEAP16[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 1] = HEAPU16[($4 + 6 | 0) >> 1] | 0;
|
|
return;
|
|
}
|
|
|
|
function btHashMap_btInternalVertexPair_2c_20btInternalEdge___findIndex_28btInternalVertexPair_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $33 = 0, $55 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = (btInternalVertexPair__getHash_28_29_20const(HEAP32[($4 + 20 | 0) >> 2] | 0 | 0) | 0) & ((btAlignedObjectArray_btInternalEdge___capacity_28_29_20const($5 + 40 | 0 | 0) | 0) - 1 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($4 + 16 | 0) >> 2] | 0) >>> 0 >= (btAlignedObjectArray_int___size_28_29_20const($5 | 0) | 0) >>> 0 & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($4 + 28 | 0) >> 2] = -1;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29_20const($5 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
label$3 : while (1) {
|
|
$33 = 0;
|
|
label$4 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (-1 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$33 = ((btInternalVertexPair__equals_28btInternalVertexPair_20const__29_20const(HEAP32[($4 + 20 | 0) >> 2] | 0 | 0, btAlignedObjectArray_btInternalVertexPair___operator_5b_5d_28int_29_20const($5 + 60 | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) & 1 | 0 | 0) == (0 | 0);
|
|
}
|
|
label$5 : {
|
|
if (!($33 & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29_20const($5 + 20 | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
continue label$3;
|
|
}
|
|
break label$3;
|
|
};
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
}
|
|
$55 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return $55 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalEdge___operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btInternalEdge___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btInternalVertexPair__getHash_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $6 = 0, $10 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$6 = 16;
|
|
$10 = 16;
|
|
return (((HEAPU16[$4 >> 1] | 0) << $6 | 0) >> $6 | 0) + ((((HEAPU16[($4 + 2 | 0) >> 1] | 0) << $10 | 0) >> $10 | 0) << 16 | 0) | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalEdge___capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalEdge___size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalEdge___push_back_28btInternalEdge_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, $6 = 0, $7 = 0, $8 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btInternalEdge___size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btInternalEdge___capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btInternalEdge___reserve_28int_29($5 | 0, btAlignedObjectArray_btInternalEdge___allocSize_28int_29($5 | 0, btAlignedObjectArray_btInternalEdge___size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
$6 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
$7 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
$8 = HEAPU16[$6 >> 1] | 0 | ((HEAPU16[($6 + 2 | 0) >> 1] | 0) << 16 | 0) | 0;
|
|
HEAP16[$7 >> 1] = $8;
|
|
HEAP16[($7 + 2 | 0) >> 1] = $8 >>> 16 | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalVertexPair___push_back_28btInternalVertexPair_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, $6 = 0, $7 = 0, $8 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btInternalVertexPair___size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btInternalVertexPair___capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btInternalVertexPair___reserve_28int_29($5 | 0, btAlignedObjectArray_btInternalVertexPair___allocSize_28int_29($5 | 0, btAlignedObjectArray_btInternalVertexPair___size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
$6 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
$7 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
$8 = HEAPU16[$6 >> 1] | 0 | ((HEAPU16[($6 + 2 | 0) >> 1] | 0) << 16 | 0) | 0;
|
|
HEAP16[$7 >> 1] = $8;
|
|
HEAP16[($7 + 2 | 0) >> 1] = $8 >>> 16 | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHashMap_btInternalVertexPair_2c_20btInternalEdge___growTables_28btInternalVertexPair_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $17 = 0, $24 = 0, $80 = 0, $85 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btInternalEdge___capacity_28_29_20const($5 + 40 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_int___size_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_int___size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
$17 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_int___resize_28int_2c_20int_20const__29($5 | 0, $17 | 0, $4 + 12 | 0 | 0);
|
|
$24 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_int___resize_28int_2c_20int_20const__29($5 + 20 | 0 | 0, $24 | 0, $4 + 8 | 0 | 0);
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = -1), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($5 + 20 | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = -1), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = (btInternalVertexPair__getHash_28_29_20const(btAlignedObjectArray_btInternalVertexPair___operator_5b_5d_28int_29($5 + 60 | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) & ((btAlignedObjectArray_btInternalEdge___capacity_28_29_20const($5 + 40 | 0 | 0) | 0) - 1 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$80 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($5 | 0, HEAP32[$4 >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($5 + 20 | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $80), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$85 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($5 | 0, HEAP32[$4 >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $85), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalVertexPair____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btInternalVertexPair___clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalEdge____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btInternalEdge___clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexPolyhedron__project_28btTransform_20const__2c_20btVector3_20const__2c_20float__2c_20float__2c_20btVector3__2c_20btVector3__29_20const($0, $1, $2, $3, $4, $5, $6) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
var $9 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $10 = 0, $47 = 0, $49 = 0, $63 = 0, $65 = 0, $192 = 0, $205 = 0, $231 = 0, $244 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$9 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $9;
|
|
HEAP32[($9 + 60 | 0) >> 2] = $0;
|
|
HEAP32[($9 + 56 | 0) >> 2] = $1;
|
|
HEAP32[($9 + 52 | 0) >> 2] = $2;
|
|
HEAP32[($9 + 48 | 0) >> 2] = $3;
|
|
HEAP32[($9 + 44 | 0) >> 2] = $4;
|
|
HEAP32[($9 + 40 | 0) >> 2] = $5;
|
|
HEAP32[($9 + 36 | 0) >> 2] = $6;
|
|
$10 = HEAP32[($9 + 60 | 0) >> 2] | 0;
|
|
HEAPF32[(HEAP32[($9 + 48 | 0) >> 2] | 0) >> 2] = Math_fround(3402823466385288598117041.0e14);
|
|
HEAPF32[(HEAP32[($9 + 44 | 0) >> 2] | 0) >> 2] = Math_fround(-3402823466385288598117041.0e14);
|
|
(wasm2js_i32$0 = $9, wasm2js_i32$1 = btAlignedObjectArray_btVector3___size_28_29_20const($10 + 4 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($9 + 28 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($9 + 28 | 0) >> 2] | 0 | 0) < (HEAP32[($9 + 32 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btTransform__operator__28btVector3_20const__29_20const($9 + 12 | 0 | 0, HEAP32[($9 + 56 | 0) >> 2] | 0 | 0, btAlignedObjectArray_btVector3___operator_5b_5d_28int_29_20const($10 + 4 | 0 | 0, HEAP32[($9 + 28 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($9 + 12 | 0 | 0, HEAP32[($9 + 52 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($9 + 8 | 0) >> 2]) < Math_fround(HEAPF32[(HEAP32[($9 + 48 | 0) >> 2] | 0) >> 2]) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAPF32[(HEAP32[($9 + 48 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[($9 + 8 | 0) >> 2]);
|
|
$47 = HEAP32[($9 + 40 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$0 = HEAP32[($9 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 16 | 0) >> 2] | 0;
|
|
$192 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $47;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $192;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$49 = 8;
|
|
i64toi32_i32$2 = ($9 + 12 | 0) + $49 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$205 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $47 + $49 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $205;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[($9 + 8 | 0) >> 2]) > Math_fround(HEAPF32[(HEAP32[($9 + 44 | 0) >> 2] | 0) >> 2]) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAPF32[(HEAP32[($9 + 44 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[($9 + 8 | 0) >> 2]);
|
|
$63 = HEAP32[($9 + 36 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$0 = HEAP32[($9 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 16 | 0) >> 2] | 0;
|
|
$231 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $63;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $231;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$65 = 8;
|
|
i64toi32_i32$2 = ($9 + 12 | 0) + $65 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$244 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $63 + $65 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $244;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
HEAP32[($9 + 28 | 0) >> 2] = (HEAP32[($9 + 28 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
label$5 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($9 + 48 | 0) >> 2] | 0) >> 2]) > Math_fround(HEAPF32[(HEAP32[($9 + 44 | 0) >> 2] | 0) >> 2]) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
void_20btSwap_float__28float__2c_20float__29(HEAP32[($9 + 48 | 0) >> 2] | 0 | 0, HEAP32[($9 + 44 | 0) >> 2] | 0 | 0);
|
|
void_20btSwap_btVector3__28btVector3__2c_20btVector3__29(HEAP32[($9 + 40 | 0) >> 2] | 0 | 0, HEAP32[($9 + 36 | 0) >> 2] | 0 | 0);
|
|
}
|
|
__stack_pointer = $9 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20btSwap_float__28float__2c_20float__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($4 + 4 | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2]);
|
|
HEAPF32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2]);
|
|
HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[($4 + 4 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function void_20btSwap_btVector3__28btVector3__2c_20btVector3__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, $4 = 0, $5 = 0, $6 = 0, $14 = 0, $16 = 0, $20 = 0, $22 = 0, $50 = 0, $54 = 0, $62 = 0, $72 = 0, $78 = 0, $91 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
$6 = 8;
|
|
i64toi32_i32$2 = $5 + $6 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$50 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 8 | 0) + $6 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $50;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$54 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[(i64toi32_i32$1 + 8 | 0) >> 2] = $54;
|
|
HEAP32[(i64toi32_i32$1 + 12 | 0) >> 2] = i64toi32_i32$0;
|
|
$14 = HEAP32[(i64toi32_i32$1 + 28 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$1 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$62 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $14;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $62;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$16 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $16 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$72 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $14 + $16 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $72;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$20 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 12 | 0) >> 2] | 0;
|
|
$78 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $20;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $78;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$22 = 8;
|
|
i64toi32_i32$2 = (i64toi32_i32$2 + 8 | 0) + $22 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$91 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $20 + $22 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $91;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btInternalEdge_2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalEdge___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btInternalVertexPair_2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalVertexPair___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalVertexPair___clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btInternalVertexPair___destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btInternalVertexPair___size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btInternalVertexPair___deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btInternalVertexPair___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalEdge___clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btInternalEdge___destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btInternalEdge___size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btInternalEdge___deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btInternalEdge___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalVertexPair___size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalVertexPair___destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalVertexPair___deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btInternalVertexPair_2c_2016u___deallocate_28btInternalVertexPair__29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btInternalVertexPair_2c_2016u___deallocate_28btInternalVertexPair__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalEdge___destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalEdge___deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btInternalEdge_2c_2016u___deallocate_28btInternalEdge__29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btInternalEdge_2c_2016u___deallocate_28btInternalEdge__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalVertexPair___operator_5b_5d_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 176 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btInternalVertexPair___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 177 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btInternalVertexPair__equals_28btInternalVertexPair_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $7 = 0, $12 = 0, $21 = 0, $23 = 0, $28 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$7 = 16;
|
|
$12 = 16;
|
|
$21 = 0;
|
|
label$1 : {
|
|
if (!((((HEAPU16[$5 >> 1] | 0) << $7 | 0) >> $7 | 0 | 0) == (((HEAPU16[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 1] | 0) << $12 | 0) >> $12 | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$23 = 16;
|
|
$28 = 16;
|
|
$21 = (((HEAPU16[($5 + 2 | 0) >> 1] | 0) << $23 | 0) >> $23 | 0 | 0) == (((HEAPU16[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 2 | 0) >> 1] | 0) << $28 | 0) >> $28 | 0 | 0);
|
|
}
|
|
return $21 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalEdge___allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalEdge___reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btInternalEdge___capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btInternalEdge___allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btInternalEdge___copy_28int_2c_20int_2c_20btInternalEdge__29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btInternalEdge___size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btInternalEdge___destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btInternalEdge___size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btInternalEdge___deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalVertexPair___capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalVertexPair___allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalVertexPair___reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btInternalVertexPair___capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btInternalVertexPair___allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btInternalVertexPair___copy_28int_2c_20int_2c_20btInternalVertexPair__29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btInternalVertexPair___size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btInternalVertexPair___destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btInternalVertexPair___size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btInternalVertexPair___deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalVertexPair___operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btInternalVertexPair___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalEdge___allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btInternalEdge_2c_2016u___allocate_28int_2c_20btInternalEdge_20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalEdge___copy_28int_2c_20int_2c_20btInternalEdge__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $8 = 0, $9 = 0, $10 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$8 = (HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
$9 = (HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
$10 = HEAPU16[$8 >> 1] | 0 | ((HEAPU16[($8 + 2 | 0) >> 1] | 0) << 16 | 0) | 0;
|
|
HEAP16[$9 >> 1] = $10;
|
|
HEAP16[($9 + 2 | 0) >> 1] = $10 >>> 16 | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btInternalEdge_2c_2016u___allocate_28int_2c_20btInternalEdge_20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalVertexPair___allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btInternalVertexPair_2c_2016u___allocate_28int_2c_20btInternalVertexPair_20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btInternalVertexPair___copy_28int_2c_20int_2c_20btInternalVertexPair__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $8 = 0, $9 = 0, $10 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$8 = (HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
$9 = (HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
$10 = HEAPU16[$8 >> 1] | 0 | ((HEAPU16[($8 + 2 | 0) >> 1] | 0) << 16 | 0) | 0;
|
|
HEAP16[$9 >> 1] = $10;
|
|
HEAP16[($9 + 2 | 0) >> 1] = $10 >>> 16 | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btInternalVertexPair_2c_2016u___allocate_28int_2c_20btInternalVertexPair_20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btConvexPolyhedron_cpp() {
|
|
__cxx_global_var_init_43();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_44() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114164 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btGeometryUtil__isPointInsidePlanes_28btAlignedObjectArray_btVector3__20const__2c_20btVector3_20const__2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $45 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 16 | 0) >> 2] = $2;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btVector3___size_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($5 + 8 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0)) + Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) + 12 | 0) >> 2])) - Math_fround(HEAPF32[($5 + 16 | 0) >> 2]))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[$5 >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP8[($5 + 31 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
HEAP8[($5 + 31 | 0) >> 0] = 1 & 1 | 0;
|
|
}
|
|
$45 = (HEAPU8[($5 + 31 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return $45 | 0;
|
|
}
|
|
|
|
function btGeometryUtil__areVerticesBehindPlane_28btVector3_20const__2c_20btAlignedObjectArray_btVector3__20const__2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $45 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 16 | 0) >> 2] = $2;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btVector3___size_28_29_20const(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($5 + 8 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29_20const(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0)) + Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) + 12 | 0) >> 2])) - Math_fround(HEAPF32[($5 + 16 | 0) >> 2]))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[$5 >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP8[($5 + 31 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
HEAP8[($5 + 31 | 0) >> 0] = 1 & 1 | 0;
|
|
}
|
|
$45 = (HEAPU8[($5 + 31 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return $45 | 0;
|
|
}
|
|
|
|
function notExist_28btVector3_20const__2c_20btAlignedObjectArray_btVector3__20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $36 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btVector3___size_28_29_20const(HEAP32[($4 + 20 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29_20const(HEAP32[($4 + 20 | 0) >> 2] | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
label$4 : {
|
|
if (!(Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0)) > Math_fround(.9990000128746033) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP8[($4 + 31 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = (HEAP32[($4 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
HEAP8[($4 + 31 | 0) >> 0] = 1 & 1 | 0;
|
|
}
|
|
$36 = (HEAPU8[($4 + 31 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return $36 | 0;
|
|
}
|
|
|
|
function btGeometryUtil__getPlaneEquationsFromVertices_28btAlignedObjectArray_btVector3___2c_20btAlignedObjectArray_btVector3___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $58 = 0, $72 = 0, $104 = 0, $312 = 0, $316 = 0, $343 = 0, $347 = 0, $403 = 0, $407 = 0, $136 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 160 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 156 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 152 | 0) >> 2] = $1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btVector3___size_28_29_20const(HEAP32[($4 + 156 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 148 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 144 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 144 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 148 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29(HEAP32[($4 + 156 | 0) >> 2] | 0 | 0, HEAP32[($4 + 144 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 140 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 136 | 0) >> 2] = (HEAP32[($4 + 144 | 0) >> 2] | 0) + 1 | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($4 + 136 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 148 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29(HEAP32[($4 + 156 | 0) >> 2] | 0 | 0, HEAP32[($4 + 136 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 132 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 128 | 0) >> 2] = (HEAP32[($4 + 136 | 0) >> 2] | 0) + 1 | 0;
|
|
label$5 : {
|
|
label$6 : while (1) {
|
|
if (!((HEAP32[($4 + 128 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 148 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29(HEAP32[($4 + 156 | 0) >> 2] | 0 | 0, HEAP32[($4 + 128 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 124 | 0) >> 2] = wasm2js_i32$1;
|
|
btVector3__btVector3_28_29($4 + 104 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 88 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 72 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 56 | 0 | 0, HEAP32[($4 + 132 | 0) >> 2] | 0 | 0, HEAP32[($4 + 140 | 0) >> 2] | 0 | 0);
|
|
$58 = 8;
|
|
i64toi32_i32$2 = ($4 + 56 | 0) + $58 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$312 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 88 | 0) + $58 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $312;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$1 = HEAP32[($4 + 56 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($4 + 60 | 0) >> 2] | 0;
|
|
$316 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 88 | 0) >> 2] = $316;
|
|
HEAP32[($4 + 92 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 40 | 0 | 0, HEAP32[($4 + 124 | 0) >> 2] | 0 | 0, HEAP32[($4 + 140 | 0) >> 2] | 0 | 0);
|
|
$72 = 8;
|
|
i64toi32_i32$2 = ($4 + 40 | 0) + $72 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$343 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 72 | 0) + $72 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $343;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$1 = HEAP32[($4 + 40 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($4 + 44 | 0) >> 2] | 0;
|
|
$347 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 72 | 0) >> 2] = $347;
|
|
HEAP32[($4 + 76 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($4 + 36 | 0) >> 2] = Math_fround(1.0);
|
|
HEAP32[($4 + 32 | 0) >> 2] = 0;
|
|
label$7 : {
|
|
label$8 : while (1) {
|
|
if (!((HEAP32[($4 + 32 | 0) >> 2] | 0 | 0) < (2 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
btVector3__cross_28btVector3_20const__29_20const($4 | 0, $4 + 88 | 0 | 0, $4 + 72 | 0 | 0);
|
|
operator__28float_20const__2c_20btVector3_20const__29($4 + 16 | 0 | 0, $4 + 36 | 0 | 0, $4 | 0);
|
|
$104 = 8;
|
|
i64toi32_i32$2 = ($4 + 16 | 0) + $104 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$403 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 104 | 0) + $104 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $403;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$1 = HEAP32[($4 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($4 + 20 | 0) >> 2] | 0;
|
|
$407 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 104 | 0) >> 2] = $407;
|
|
HEAP32[($4 + 108 | 0) >> 2] = i64toi32_i32$0;
|
|
label$9 : {
|
|
if (!(Math_fround(btVector3__length2_28_29_20const($4 + 104 | 0 | 0)) > Math_fround(9.999999747378752e-05) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
btVector3__normalize_28_29($4 + 104 | 0 | 0) | 0;
|
|
label$10 : {
|
|
if (!((notExist_28btVector3_20const__2c_20btAlignedObjectArray_btVector3__20const__29($4 + 104 | 0 | 0, HEAP32[($4 + 152 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
$136 = Math_fround(-Math_fround(btVector3__dot_28btVector3_20const__29_20const($4 + 104 | 0 | 0, HEAP32[($4 + 140 | 0) >> 2] | 0 | 0)));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($4 + 104 | 0 | 0) | 0, wasm2js_f32$0 = $136), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
label$11 : {
|
|
if (!((btGeometryUtil__areVerticesBehindPlane_28btVector3_20const__2c_20btAlignedObjectArray_btVector3__20const__2c_20float_29($4 + 104 | 0 | 0, HEAP32[($4 + 156 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(.009999999776482582))) | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
btAlignedObjectArray_btVector3___push_back_28btVector3_20const__29(HEAP32[($4 + 152 | 0) >> 2] | 0 | 0, $4 + 104 | 0 | 0);
|
|
}
|
|
}
|
|
}
|
|
HEAPF32[($4 + 36 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAP32[($4 + 32 | 0) >> 2] = (HEAP32[($4 + 32 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$8;
|
|
};
|
|
}
|
|
HEAP32[($4 + 128 | 0) >> 2] = (HEAP32[($4 + 128 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$6;
|
|
};
|
|
}
|
|
HEAP32[($4 + 136 | 0) >> 2] = (HEAP32[($4 + 136 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
HEAP32[($4 + 144 | 0) >> 2] = (HEAP32[($4 + 144 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $4 + 160 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGeometryUtil__getVerticesFromPlaneEquations_28btAlignedObjectArray_btVector3__20const__2c_20btAlignedObjectArray_btVector3___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $52 = 0, $69 = 0, $86 = 0, $154 = 0, $324 = 0, $328 = 0, $361 = 0, $365 = 0, $398 = 0, $402 = 0, $529 = 0, $533 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 160 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 156 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 152 | 0) >> 2] = $1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btVector3___size_28_29_20const(HEAP32[($4 + 156 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 148 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 144 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 144 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 148 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29_20const(HEAP32[($4 + 156 | 0) >> 2] | 0 | 0, HEAP32[($4 + 144 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 140 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 136 | 0) >> 2] = (HEAP32[($4 + 144 | 0) >> 2] | 0) + 1 | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($4 + 136 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 148 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29_20const(HEAP32[($4 + 156 | 0) >> 2] | 0 | 0, HEAP32[($4 + 136 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 132 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 128 | 0) >> 2] = (HEAP32[($4 + 136 | 0) >> 2] | 0) + 1 | 0;
|
|
label$5 : {
|
|
label$6 : while (1) {
|
|
if (!((HEAP32[($4 + 128 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 148 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29_20const(HEAP32[($4 + 156 | 0) >> 2] | 0 | 0, HEAP32[($4 + 128 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 124 | 0) >> 2] = wasm2js_i32$1;
|
|
btVector3__btVector3_28_29($4 + 104 | 0 | 0) | 0;
|
|
btVector3__cross_28btVector3_20const__29_20const($4 + 88 | 0 | 0, HEAP32[($4 + 132 | 0) >> 2] | 0 | 0, HEAP32[($4 + 124 | 0) >> 2] | 0 | 0);
|
|
$52 = 8;
|
|
i64toi32_i32$2 = ($4 + 88 | 0) + $52 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$324 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 104 | 0) + $52 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $324;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$1 = HEAP32[($4 + 88 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($4 + 92 | 0) >> 2] | 0;
|
|
$328 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 104 | 0) >> 2] = $328;
|
|
HEAP32[($4 + 108 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__btVector3_28_29($4 + 72 | 0 | 0) | 0;
|
|
btVector3__cross_28btVector3_20const__29_20const($4 + 56 | 0 | 0, HEAP32[($4 + 124 | 0) >> 2] | 0 | 0, HEAP32[($4 + 140 | 0) >> 2] | 0 | 0);
|
|
$69 = 8;
|
|
i64toi32_i32$2 = ($4 + 56 | 0) + $69 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$361 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 72 | 0) + $69 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $361;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$1 = HEAP32[($4 + 56 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($4 + 60 | 0) >> 2] | 0;
|
|
$365 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 72 | 0) >> 2] = $365;
|
|
HEAP32[($4 + 76 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__btVector3_28_29($4 + 40 | 0 | 0) | 0;
|
|
btVector3__cross_28btVector3_20const__29_20const($4 + 24 | 0 | 0, HEAP32[($4 + 140 | 0) >> 2] | 0 | 0, HEAP32[($4 + 132 | 0) >> 2] | 0 | 0);
|
|
$86 = 8;
|
|
i64toi32_i32$2 = ($4 + 24 | 0) + $86 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$398 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 40 | 0) + $86 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $398;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$1 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
$402 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 40 | 0) >> 2] = $402;
|
|
HEAP32[($4 + 44 | 0) >> 2] = i64toi32_i32$0;
|
|
label$7 : {
|
|
if (!(Math_fround(btVector3__length2_28_29_20const($4 + 104 | 0 | 0)) > Math_fround(9.999999747378752e-05) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
if (!(Math_fround(btVector3__length2_28_29_20const($4 + 72 | 0 | 0)) > Math_fround(9.999999747378752e-05) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
if (!(Math_fround(btVector3__length2_28_29_20const($4 + 40 | 0 | 0)) > Math_fround(9.999999747378752e-05) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($4 + 140 | 0) >> 2] | 0 | 0, $4 + 104 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
label$8 : {
|
|
if (!(Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[($4 + 20 | 0) >> 2])))) > Math_fround(9.999999974752427e-07) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
HEAPF32[($4 + 20 | 0) >> 2] = Math_fround(Math_fround(-1.0) / Math_fround(HEAPF32[($4 + 20 | 0) >> 2]));
|
|
btVector3__operator___28float_20const__29_1($4 + 104 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($4 + 140 | 0) >> 2] | 0 | 0) | 0) + 12 | 0 | 0) | 0;
|
|
btVector3__operator___28float_20const__29_1($4 + 72 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($4 + 132 | 0) >> 2] | 0 | 0) | 0) + 12 | 0 | 0) | 0;
|
|
btVector3__operator___28float_20const__29_1($4 + 40 | 0 | 0, (btVector3__operator_20float_20const__28_29_20const(HEAP32[($4 + 124 | 0) >> 2] | 0 | 0) | 0) + 12 | 0 | 0) | 0;
|
|
$154 = 8;
|
|
i64toi32_i32$2 = ($4 + 104 | 0) + $154 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$529 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $4 + $154 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $529;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$1 = HEAP32[($4 + 104 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($4 + 108 | 0) >> 2] | 0;
|
|
$533 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[$4 >> 2] = $533;
|
|
HEAP32[($4 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__operator___28btVector3_20const__29_1($4 | 0, $4 + 72 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($4 | 0, $4 + 40 | 0 | 0) | 0;
|
|
btVector3__operator___28float_20const__29_1($4 | 0, $4 + 20 | 0 | 0) | 0;
|
|
label$9 : {
|
|
if (!((btGeometryUtil__isPointInsidePlanes_28btAlignedObjectArray_btVector3__20const__2c_20btVector3_20const__2c_20float_29(HEAP32[($4 + 156 | 0) >> 2] | 0 | 0, $4 | 0, Math_fround(Math_fround(.009999999776482582))) | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
btAlignedObjectArray_btVector3___push_back_28btVector3_20const__29(HEAP32[($4 + 152 | 0) >> 2] | 0 | 0, $4 | 0);
|
|
}
|
|
}
|
|
}
|
|
HEAP32[($4 + 128 | 0) >> 2] = (HEAP32[($4 + 128 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$6;
|
|
};
|
|
}
|
|
HEAP32[($4 + 136 | 0) >> 2] = (HEAP32[($4 + 136 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
HEAP32[($4 + 144 | 0) >> 2] = (HEAP32[($4 + 144 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $4 + 160 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btGeometryUtil_cpp() {
|
|
__cxx_global_var_init_44();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_45() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114168 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Int128__operator__28long_20long_29_20const($0, $1, $2, $2$hi) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$2$hi = $2$hi | 0;
|
|
var i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, i64toi32_i32$5 = 0, $5 = 0, i64toi32_i32$2 = 0, i64toi32_i32$3 = 0, i64toi32_i32$4 = 0, $6 = 0, $7$hi = 0, $8$hi = 0, $27$hi = 0, $28$hi = 0, $36 = 0, $37 = 0, $38 = 0, $20 = 0, $39 = 0, $40 = 0, $41 = 0, $39$hi = 0, $42$hi = 0, $43$hi = 0, $47$hi = 0, $48$hi = 0, $49$hi = 0, $59 = 0, $115 = 0, $119 = 0, $144$hi = 0, $145 = 0, $42 = 0, $159 = 0, $47 = 0, $165 = 0, $49 = 0, $169$hi = 0, $190 = 0, $203 = 0;
|
|
$5 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 60 | 0) >> 2] = $1;
|
|
i64toi32_i32$0 = $2$hi;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[(i64toi32_i32$1 + 48 | 0) >> 2] = $2;
|
|
HEAP32[(i64toi32_i32$1 + 52 | 0) >> 2] = i64toi32_i32$0;
|
|
$6 = HEAP32[(i64toi32_i32$1 + 60 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 12 | 0) >> 2] | 0;
|
|
$7$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$8$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $7$hi;
|
|
i64toi32_i32$1 = $8$hi;
|
|
i64toi32_i32$1 = $7$hi;
|
|
i64toi32_i32$1 = $8$hi;
|
|
i64toi32_i32$1 = $7$hi;
|
|
i64toi32_i32$2 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $8$hi;
|
|
i64toi32_i32$3 = 0;
|
|
if ((i64toi32_i32$1 | 0) < (i64toi32_i32$0 | 0)) {
|
|
$36 = 1
|
|
} else {
|
|
if ((i64toi32_i32$1 | 0) <= (i64toi32_i32$0 | 0)) {
|
|
if (i64toi32_i32$2 >>> 0 >= i64toi32_i32$3 >>> 0) {
|
|
$37 = 0
|
|
} else {
|
|
$37 = 1
|
|
}
|
|
$38 = $37;
|
|
} else {
|
|
$38 = 0
|
|
}
|
|
$36 = $38;
|
|
}
|
|
HEAP8[($5 + 47 | 0) >> 0] = $36 & 1 | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($5 + 47 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btConvexHullInternal__Int128__operator__28_29_20const($5 + 24 | 0 | 0, $6 | 0);
|
|
break label$1;
|
|
}
|
|
$20 = 8;
|
|
i64toi32_i32$3 = $6 + $20 | 0;
|
|
i64toi32_i32$2 = HEAP32[i64toi32_i32$3 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$3 + 4 | 0) >> 2] | 0;
|
|
$115 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = ($5 + 24 | 0) + $20 | 0;
|
|
HEAP32[i64toi32_i32$2 >> 2] = $115;
|
|
HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$3 = $6;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$3 >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$3 + 4 | 0) >> 2] | 0;
|
|
$119 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[(i64toi32_i32$1 + 24 | 0) >> 2] = $119;
|
|
HEAP32[(i64toi32_i32$1 + 28 | 0) >> 2] = i64toi32_i32$2;
|
|
}
|
|
i64toi32_i32$3 = $5;
|
|
i64toi32_i32$2 = HEAP32[($5 + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 52 | 0) >> 2] | 0;
|
|
$27$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$28$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $27$hi;
|
|
i64toi32_i32$1 = $28$hi;
|
|
i64toi32_i32$1 = $27$hi;
|
|
i64toi32_i32$1 = $28$hi;
|
|
i64toi32_i32$1 = $27$hi;
|
|
i64toi32_i32$3 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $28$hi;
|
|
i64toi32_i32$0 = 0;
|
|
if ((i64toi32_i32$1 | 0) < (i64toi32_i32$2 | 0)) {
|
|
$39 = 1
|
|
} else {
|
|
if ((i64toi32_i32$1 | 0) <= (i64toi32_i32$2 | 0)) {
|
|
if (i64toi32_i32$3 >>> 0 >= i64toi32_i32$0 >>> 0) {
|
|
$40 = 0
|
|
} else {
|
|
$40 = 1
|
|
}
|
|
$41 = $40;
|
|
} else {
|
|
$41 = 0
|
|
}
|
|
$39 = $41;
|
|
}
|
|
label$3 : {
|
|
if (!($39 & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP8[($5 + 47 | 0) >> 0] = ((HEAPU8[($5 + 47 | 0) >> 0] | 0) ^ -1 | 0) & 1 | 0;
|
|
i64toi32_i32$0 = $5;
|
|
i64toi32_i32$3 = HEAP32[($5 + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 52 | 0) >> 2] | 0;
|
|
$39$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$144$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $39$hi;
|
|
$145 = i64toi32_i32$3;
|
|
i64toi32_i32$1 = $144$hi;
|
|
i64toi32_i32$0 = 0;
|
|
i64toi32_i32$3 = $39$hi;
|
|
i64toi32_i32$2 = $145;
|
|
i64toi32_i32$4 = i64toi32_i32$0 - i64toi32_i32$2 | 0;
|
|
i64toi32_i32$5 = (i64toi32_i32$0 >>> 0 < i64toi32_i32$2 >>> 0) + i64toi32_i32$3 | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$1 - i64toi32_i32$5 | 0;
|
|
i64toi32_i32$0 = $5;
|
|
HEAP32[($5 + 48 | 0) >> 2] = i64toi32_i32$4;
|
|
HEAP32[($5 + 52 | 0) >> 2] = i64toi32_i32$5;
|
|
}
|
|
i64toi32_i32$1 = $5;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$1 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$1 + 28 | 0) >> 2] | 0;
|
|
$42 = i64toi32_i32$5;
|
|
$42$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$1 + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$1 + 52 | 0) >> 2] | 0;
|
|
$43$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $42$hi;
|
|
i64toi32_i32$5 = $43$hi;
|
|
$159 = i64toi32_i32$0;
|
|
i64toi32_i32$5 = $42$hi;
|
|
i64toi32_i32$0 = $43$hi;
|
|
btConvexHullInternal__Int128__mul_28unsigned_20long_20long_2c_20unsigned_20long_20long_29(i64toi32_i32$1 + 8 | 0 | 0, $42 | 0, i64toi32_i32$5 | 0, $159 | 0, i64toi32_i32$0 | 0);
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$1 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$1 + 36 | 0) >> 2] | 0;
|
|
$47 = i64toi32_i32$0;
|
|
$47$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$1 + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$1 + 52 | 0) >> 2] | 0;
|
|
$48$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $47$hi;
|
|
i64toi32_i32$0 = $48$hi;
|
|
$165 = i64toi32_i32$5;
|
|
i64toi32_i32$0 = $47$hi;
|
|
i64toi32_i32$5 = $48$hi;
|
|
i64toi32_i32$5 = __wasm_i64_mul($47 | 0, i64toi32_i32$0 | 0, $165 | 0, i64toi32_i32$5 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
$49 = i64toi32_i32$5;
|
|
$49$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$1 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$1 + 20 | 0) >> 2] | 0;
|
|
$169$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $49$hi;
|
|
i64toi32_i32$5 = $169$hi;
|
|
i64toi32_i32$1 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $49$hi;
|
|
i64toi32_i32$2 = $49;
|
|
i64toi32_i32$3 = i64toi32_i32$1 + i64toi32_i32$2 | 0;
|
|
i64toi32_i32$4 = i64toi32_i32$5 + i64toi32_i32$0 | 0;
|
|
if (i64toi32_i32$3 >>> 0 < i64toi32_i32$2 >>> 0) {
|
|
i64toi32_i32$4 = i64toi32_i32$4 + 1 | 0
|
|
}
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[(i64toi32_i32$1 + 16 | 0) >> 2] = i64toi32_i32$3;
|
|
HEAP32[(i64toi32_i32$1 + 20 | 0) >> 2] = i64toi32_i32$4;
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!((HEAPU8[(i64toi32_i32$1 + 47 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btConvexHullInternal__Int128__operator__28_29_20const($0 | 0, $5 + 8 | 0 | 0);
|
|
break label$4;
|
|
}
|
|
i64toi32_i32$5 = $5;
|
|
i64toi32_i32$4 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
$190 = i64toi32_i32$4;
|
|
i64toi32_i32$4 = $0;
|
|
HEAP32[i64toi32_i32$4 >> 2] = $190;
|
|
HEAP32[(i64toi32_i32$4 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$59 = 8;
|
|
i64toi32_i32$5 = ($5 + 8 | 0) + $59 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$5 >> 2] | 0;
|
|
i64toi32_i32$4 = HEAP32[(i64toi32_i32$5 + 4 | 0) >> 2] | 0;
|
|
$203 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0 + $59 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $203;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$4;
|
|
}
|
|
__stack_pointer = $5 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Int128__operator__28_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, i64toi32_i32$5 = 0, i64toi32_i32$3 = 0, i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, $4 = 0, $5 = 0, $12$hi = 0, $13$hi = 0, $6$hi = 0, $8$hi = 0, $9$hi = 0, $10$hi = 0, $11$hi = 0, $19$hi = 0, $20$hi = 0, $34$hi = 0, $35 = 0, $8 = 0, $11 = 0, $52 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$6$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$34$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6$hi;
|
|
$35 = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $34$hi;
|
|
i64toi32_i32$2 = 0;
|
|
i64toi32_i32$0 = $6$hi;
|
|
i64toi32_i32$3 = $35;
|
|
i64toi32_i32$4 = i64toi32_i32$2 - i64toi32_i32$3 | 0;
|
|
i64toi32_i32$5 = (i64toi32_i32$2 >>> 0 < i64toi32_i32$3 >>> 0) + i64toi32_i32$0 | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$1 - i64toi32_i32$5 | 0;
|
|
$8 = i64toi32_i32$4;
|
|
$8$hi = i64toi32_i32$5;
|
|
i64toi32_i32$1 = $5;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$1 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$1 + 12 | 0) >> 2] | 0;
|
|
$9$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = -1;
|
|
$10$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $9$hi;
|
|
i64toi32_i32$2 = $10$hi;
|
|
i64toi32_i32$2 = $9$hi;
|
|
i64toi32_i32$1 = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $10$hi;
|
|
i64toi32_i32$3 = -1;
|
|
i64toi32_i32$5 = i64toi32_i32$2 ^ i64toi32_i32$5 | 0;
|
|
$11 = i64toi32_i32$1 ^ i64toi32_i32$3 | 0;
|
|
$11$hi = i64toi32_i32$5;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$5 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$12$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$13$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $12$hi;
|
|
i64toi32_i32$1 = $13$hi;
|
|
i64toi32_i32$1 = $12$hi;
|
|
i64toi32_i32$1 = $13$hi;
|
|
i64toi32_i32$1 = $12$hi;
|
|
i64toi32_i32$2 = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $13$hi;
|
|
i64toi32_i32$3 = 0;
|
|
$52 = ((i64toi32_i32$2 | 0) == (i64toi32_i32$3 | 0) & (i64toi32_i32$1 | 0) == (i64toi32_i32$5 | 0) | 0) & 1 | 0;
|
|
i64toi32_i32$2 = 0;
|
|
$19$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $11$hi;
|
|
i64toi32_i32$2 = $19$hi;
|
|
i64toi32_i32$2 = $11$hi;
|
|
i64toi32_i32$3 = $11;
|
|
i64toi32_i32$1 = $19$hi;
|
|
i64toi32_i32$5 = $52;
|
|
i64toi32_i32$0 = i64toi32_i32$3 + i64toi32_i32$5 | 0;
|
|
i64toi32_i32$4 = i64toi32_i32$2 + i64toi32_i32$1 | 0;
|
|
if (i64toi32_i32$0 >>> 0 < i64toi32_i32$5 >>> 0) {
|
|
i64toi32_i32$4 = i64toi32_i32$4 + 1 | 0
|
|
}
|
|
$20$hi = i64toi32_i32$4;
|
|
i64toi32_i32$4 = $8$hi;
|
|
i64toi32_i32$4 = $20$hi;
|
|
i64toi32_i32$4 = $8$hi;
|
|
i64toi32_i32$3 = $20$hi;
|
|
btConvexHullInternal__Int128__Int128_28unsigned_20long_20long_2c_20unsigned_20long_20long_29($0 | 0, $8 | 0, i64toi32_i32$4 | 0, i64toi32_i32$0 | 0, i64toi32_i32$3 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Int128__mul_28unsigned_20long_20long_2c_20unsigned_20long_20long_29($0, $1, $1$hi, $2, $2$hi) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$1$hi = $1$hi | 0;
|
|
$2 = $2 | 0;
|
|
$2$hi = $2$hi | 0;
|
|
var i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, $5 = 0, $6$hi = 0, $7$hi = 0, $6 = 0, $31 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
i64toi32_i32$0 = $1$hi;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[(i64toi32_i32$1 + 8 | 0) >> 2] = $1;
|
|
HEAP32[(i64toi32_i32$1 + 12 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $2$hi;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $2;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btConvexHullInternal__Int128__Int128_28_29($0 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$1 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$1 + 12 | 0) >> 2] | 0;
|
|
$6 = i64toi32_i32$0;
|
|
$6$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = HEAP32[$5 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
$7$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6$hi;
|
|
i64toi32_i32$0 = $7$hi;
|
|
$31 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = $6$hi;
|
|
i64toi32_i32$1 = $7$hi;
|
|
btConvexHullInternal__DMul_unsigned_20long_20long_2c_20unsigned_20int___mul_28unsigned_20long_20long_2c_20unsigned_20long_20long_2c_20unsigned_20long_20long__2c_20unsigned_20long_20long__29($6 | 0, i64toi32_i32$0 | 0, $31 | 0, i64toi32_i32$1 | 0, $0 | 0, $0 + 8 | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Int128__Int128_28unsigned_20long_20long_2c_20unsigned_20long_20long_29($0, $1, $1$hi, $2, $2$hi) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$1$hi = $1$hi | 0;
|
|
$2 = $2 | 0;
|
|
$2$hi = $2$hi | 0;
|
|
var i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, $5 = 0, $6 = 0, $24 = 0, $28 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
i64toi32_i32$0 = $1$hi;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[(i64toi32_i32$1 + 16 | 0) >> 2] = $1;
|
|
HEAP32[(i64toi32_i32$1 + 20 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $2$hi;
|
|
HEAP32[(i64toi32_i32$1 + 8 | 0) >> 2] = $2;
|
|
HEAP32[(i64toi32_i32$1 + 12 | 0) >> 2] = i64toi32_i32$0;
|
|
$6 = HEAP32[(i64toi32_i32$1 + 28 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$1 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$1 + 20 | 0) >> 2] | 0;
|
|
$24 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $24;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$1 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
$28 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[(i64toi32_i32$1 + 8 | 0) >> 2] = $28;
|
|
HEAP32[(i64toi32_i32$1 + 12 | 0) >> 2] = i64toi32_i32$0;
|
|
return i64toi32_i32$1 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Int128__Int128_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__DMul_unsigned_20long_20long_2c_20unsigned_20int___mul_28unsigned_20long_20long_2c_20unsigned_20long_20long_2c_20unsigned_20long_20long__2c_20unsigned_20long_20long__29($0, $0$hi, $1, $1$hi, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$0$hi = $0$hi | 0;
|
|
$1 = $1 | 0;
|
|
$1$hi = $1$hi | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, i64toi32_i32$5 = 0, i64toi32_i32$4 = 0, i64toi32_i32$3 = 0, $6 = 0, $58$hi = 0, $59$hi = 0, $30$hi = 0, $34$hi = 0, $39$hi = 0, $45$hi = 0, $51$hi = 0, $55$hi = 0, $65$hi = 0, $66$hi = 0, $8 = 0, $99 = 0, $13 = 0, $112 = 0, $18 = 0, $125 = 0, $23 = 0, $138 = 0, $144 = 0, $151 = 0, $163 = 0, $167$hi = 0, $177 = 0, $181$hi = 0, $191 = 0, $195$hi = 0, $55 = 0, $206$hi = 0, $58 = 0, $218 = 0, $237 = 0, $243 = 0;
|
|
$6 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $6;
|
|
i64toi32_i32$0 = $0$hi;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[(i64toi32_i32$1 + 56 | 0) >> 2] = $0;
|
|
HEAP32[(i64toi32_i32$1 + 60 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $1$hi;
|
|
HEAP32[(i64toi32_i32$1 + 48 | 0) >> 2] = $1;
|
|
HEAP32[(i64toi32_i32$1 + 52 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[(i64toi32_i32$1 + 44 | 0) >> 2] = $2;
|
|
HEAP32[(i64toi32_i32$1 + 40 | 0) >> 2] = $3;
|
|
i64toi32_i32$2 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$1 + 56 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$1 + 60 | 0) >> 2] | 0;
|
|
$8 = btConvexHullInternal__DMul_unsigned_20long_20long_2c_20unsigned_20int___low_28unsigned_20long_20long_29(i64toi32_i32$0 | 0, i64toi32_i32$1 | 0) | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 52 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = btConvexHullInternal__DMul_unsigned_20long_20long_2c_20unsigned_20int___mul_28unsigned_20int_2c_20unsigned_20int_29($8 | 0, btConvexHullInternal__DMul_unsigned_20long_20long_2c_20unsigned_20int___low_28unsigned_20long_20long_29(i64toi32_i32$1 | 0, i64toi32_i32$0 | 0) | 0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
$99 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = i64toi32_i32$2;
|
|
HEAP32[(i64toi32_i32$0 + 32 | 0) >> 2] = $99;
|
|
HEAP32[(i64toi32_i32$0 + 36 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = i64toi32_i32$0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$0 + 56 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$0 + 60 | 0) >> 2] | 0;
|
|
$13 = btConvexHullInternal__DMul_unsigned_20long_20long_2c_20unsigned_20int___low_28unsigned_20long_20long_29(i64toi32_i32$1 | 0, i64toi32_i32$0 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 52 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = btConvexHullInternal__DMul_unsigned_20long_20long_2c_20unsigned_20int___mul_28unsigned_20int_2c_20unsigned_20int_29($13 | 0, btConvexHullInternal__DMul_unsigned_20long_20long_2c_20unsigned_20int___high_28unsigned_20long_20long_29(i64toi32_i32$0 | 0, i64toi32_i32$1 | 0) | 0 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
$112 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = i64toi32_i32$2;
|
|
HEAP32[(i64toi32_i32$1 + 24 | 0) >> 2] = $112;
|
|
HEAP32[(i64toi32_i32$1 + 28 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$1 + 56 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$1 + 60 | 0) >> 2] | 0;
|
|
$18 = btConvexHullInternal__DMul_unsigned_20long_20long_2c_20unsigned_20int___high_28unsigned_20long_20long_29(i64toi32_i32$0 | 0, i64toi32_i32$1 | 0) | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 52 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = btConvexHullInternal__DMul_unsigned_20long_20long_2c_20unsigned_20int___mul_28unsigned_20int_2c_20unsigned_20int_29($18 | 0, btConvexHullInternal__DMul_unsigned_20long_20long_2c_20unsigned_20int___low_28unsigned_20long_20long_29(i64toi32_i32$1 | 0, i64toi32_i32$0 | 0) | 0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
$125 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = i64toi32_i32$2;
|
|
HEAP32[(i64toi32_i32$0 + 16 | 0) >> 2] = $125;
|
|
HEAP32[(i64toi32_i32$0 + 20 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = i64toi32_i32$0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$0 + 56 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$0 + 60 | 0) >> 2] | 0;
|
|
$23 = btConvexHullInternal__DMul_unsigned_20long_20long_2c_20unsigned_20int___high_28unsigned_20long_20long_29(i64toi32_i32$1 | 0, i64toi32_i32$0 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 52 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = btConvexHullInternal__DMul_unsigned_20long_20long_2c_20unsigned_20int___mul_28unsigned_20int_2c_20unsigned_20int_29($23 | 0, btConvexHullInternal__DMul_unsigned_20long_20long_2c_20unsigned_20int___high_28unsigned_20long_20long_29(i64toi32_i32$0 | 0, i64toi32_i32$1 | 0) | 0 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
$138 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = i64toi32_i32$2;
|
|
HEAP32[(i64toi32_i32$1 + 8 | 0) >> 2] = $138;
|
|
HEAP32[(i64toi32_i32$1 + 12 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$1 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$1 + 28 | 0) >> 2] | 0;
|
|
$144 = btConvexHullInternal__DMul_unsigned_20long_20long_2c_20unsigned_20int___low_28unsigned_20long_20long_29(i64toi32_i32$0 | 0, i64toi32_i32$1 | 0) | 0;
|
|
i64toi32_i32$1 = 0;
|
|
$30$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 20 | 0) >> 2] | 0;
|
|
$151 = btConvexHullInternal__DMul_unsigned_20long_20long_2c_20unsigned_20int___low_28unsigned_20long_20long_29(i64toi32_i32$1 | 0, i64toi32_i32$0 | 0) | 0;
|
|
i64toi32_i32$0 = 0;
|
|
$34$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $30$hi;
|
|
i64toi32_i32$0 = $34$hi;
|
|
i64toi32_i32$0 = $30$hi;
|
|
i64toi32_i32$2 = $144;
|
|
i64toi32_i32$1 = $34$hi;
|
|
i64toi32_i32$3 = $151;
|
|
i64toi32_i32$4 = i64toi32_i32$2 + i64toi32_i32$3 | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$0 + i64toi32_i32$1 | 0;
|
|
if (i64toi32_i32$4 >>> 0 < i64toi32_i32$3 >>> 0) {
|
|
i64toi32_i32$5 = i64toi32_i32$5 + 1 | 0
|
|
}
|
|
i64toi32_i32$2 = $6;
|
|
HEAP32[i64toi32_i32$2 >> 2] = i64toi32_i32$4;
|
|
HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] = i64toi32_i32$5;
|
|
i64toi32_i32$0 = i64toi32_i32$2;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$0 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$0 + 28 | 0) >> 2] | 0;
|
|
$163 = btConvexHullInternal__DMul_unsigned_20long_20long_2c_20unsigned_20int___high_28unsigned_20long_20long_29(i64toi32_i32$5 | 0, i64toi32_i32$2 | 0) | 0;
|
|
i64toi32_i32$2 = 0;
|
|
$39$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$0 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$0 + 12 | 0) >> 2] | 0;
|
|
$167$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $39$hi;
|
|
i64toi32_i32$5 = $167$hi;
|
|
i64toi32_i32$0 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $39$hi;
|
|
i64toi32_i32$3 = $163;
|
|
i64toi32_i32$1 = i64toi32_i32$0 + i64toi32_i32$3 | 0;
|
|
i64toi32_i32$4 = i64toi32_i32$5 + i64toi32_i32$2 | 0;
|
|
if (i64toi32_i32$1 >>> 0 < i64toi32_i32$3 >>> 0) {
|
|
i64toi32_i32$4 = i64toi32_i32$4 + 1 | 0
|
|
}
|
|
i64toi32_i32$0 = $6;
|
|
HEAP32[(i64toi32_i32$0 + 8 | 0) >> 2] = i64toi32_i32$1;
|
|
HEAP32[(i64toi32_i32$0 + 12 | 0) >> 2] = i64toi32_i32$4;
|
|
i64toi32_i32$5 = i64toi32_i32$0;
|
|
i64toi32_i32$4 = HEAP32[(i64toi32_i32$0 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$0 + 20 | 0) >> 2] | 0;
|
|
$177 = btConvexHullInternal__DMul_unsigned_20long_20long_2c_20unsigned_20int___high_28unsigned_20long_20long_29(i64toi32_i32$4 | 0, i64toi32_i32$0 | 0) | 0;
|
|
i64toi32_i32$0 = 0;
|
|
$45$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$4 = HEAP32[(i64toi32_i32$5 + 12 | 0) >> 2] | 0;
|
|
$181$hi = i64toi32_i32$4;
|
|
i64toi32_i32$4 = $45$hi;
|
|
i64toi32_i32$4 = $181$hi;
|
|
i64toi32_i32$5 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $45$hi;
|
|
i64toi32_i32$3 = $177;
|
|
i64toi32_i32$2 = i64toi32_i32$5 + i64toi32_i32$3 | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$4 + i64toi32_i32$0 | 0;
|
|
if (i64toi32_i32$2 >>> 0 < i64toi32_i32$3 >>> 0) {
|
|
i64toi32_i32$1 = i64toi32_i32$1 + 1 | 0
|
|
}
|
|
i64toi32_i32$5 = $6;
|
|
HEAP32[(i64toi32_i32$5 + 8 | 0) >> 2] = i64toi32_i32$2;
|
|
HEAP32[(i64toi32_i32$5 + 12 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$4 = i64toi32_i32$5;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$5 >> 2] | 0;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$5 + 4 | 0) >> 2] | 0;
|
|
$191 = btConvexHullInternal__DMul_unsigned_20long_20long_2c_20unsigned_20int___high_28unsigned_20long_20long_29(i64toi32_i32$1 | 0, i64toi32_i32$5 | 0) | 0;
|
|
i64toi32_i32$5 = 0;
|
|
$51$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$4 + 12 | 0) >> 2] | 0;
|
|
$195$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $51$hi;
|
|
i64toi32_i32$1 = $195$hi;
|
|
i64toi32_i32$4 = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $51$hi;
|
|
i64toi32_i32$3 = $191;
|
|
i64toi32_i32$0 = i64toi32_i32$4 + i64toi32_i32$3 | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$1 + i64toi32_i32$5 | 0;
|
|
if (i64toi32_i32$0 >>> 0 < i64toi32_i32$3 >>> 0) {
|
|
i64toi32_i32$2 = i64toi32_i32$2 + 1 | 0
|
|
}
|
|
i64toi32_i32$4 = $6;
|
|
HEAP32[(i64toi32_i32$4 + 8 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[(i64toi32_i32$4 + 12 | 0) >> 2] = i64toi32_i32$2;
|
|
btConvexHullInternal__DMul_unsigned_20long_20long_2c_20unsigned_20int___shlHalf_28unsigned_20long_20long__29(i64toi32_i32$4 | 0);
|
|
i64toi32_i32$1 = i64toi32_i32$4;
|
|
i64toi32_i32$2 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$4 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$55 = i64toi32_i32$2;
|
|
$55$hi = i64toi32_i32$4;
|
|
i64toi32_i32$4 = HEAP32[(i64toi32_i32$1 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$1 + 36 | 0) >> 2] | 0;
|
|
$206$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $55$hi;
|
|
i64toi32_i32$2 = $206$hi;
|
|
i64toi32_i32$1 = i64toi32_i32$4;
|
|
i64toi32_i32$4 = $55$hi;
|
|
i64toi32_i32$3 = $55;
|
|
i64toi32_i32$5 = i64toi32_i32$1 + i64toi32_i32$3 | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$2 + i64toi32_i32$4 | 0;
|
|
if (i64toi32_i32$5 >>> 0 < i64toi32_i32$3 >>> 0) {
|
|
i64toi32_i32$0 = i64toi32_i32$0 + 1 | 0
|
|
}
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[(i64toi32_i32$1 + 32 | 0) >> 2] = i64toi32_i32$5;
|
|
HEAP32[(i64toi32_i32$1 + 36 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$1 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$1 + 36 | 0) >> 2] | 0;
|
|
$58 = i64toi32_i32$0;
|
|
$58$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$59$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $58$hi;
|
|
i64toi32_i32$0 = $59$hi;
|
|
i64toi32_i32$0 = $58$hi;
|
|
i64toi32_i32$0 = $59$hi;
|
|
$218 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = $58$hi;
|
|
i64toi32_i32$2 = $58;
|
|
i64toi32_i32$1 = $59$hi;
|
|
i64toi32_i32$3 = $218;
|
|
label$1 : {
|
|
if (!((i64toi32_i32$0 >>> 0 < i64toi32_i32$1 >>> 0 | ((i64toi32_i32$0 | 0) == (i64toi32_i32$1 | 0) & i64toi32_i32$2 >>> 0 < i64toi32_i32$3 >>> 0 | 0) | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
i64toi32_i32$3 = $6;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$3 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$3 + 12 | 0) >> 2] | 0;
|
|
$65$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 0;
|
|
$66$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $65$hi;
|
|
i64toi32_i32$0 = $66$hi;
|
|
i64toi32_i32$0 = $65$hi;
|
|
i64toi32_i32$3 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $66$hi;
|
|
i64toi32_i32$1 = 1;
|
|
i64toi32_i32$4 = i64toi32_i32$3 + i64toi32_i32$1 | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$0 + i64toi32_i32$2 | 0;
|
|
if (i64toi32_i32$4 >>> 0 < i64toi32_i32$1 >>> 0) {
|
|
i64toi32_i32$5 = i64toi32_i32$5 + 1 | 0
|
|
}
|
|
i64toi32_i32$3 = $6;
|
|
HEAP32[(i64toi32_i32$3 + 8 | 0) >> 2] = i64toi32_i32$4;
|
|
HEAP32[(i64toi32_i32$3 + 12 | 0) >> 2] = i64toi32_i32$5;
|
|
}
|
|
i64toi32_i32$0 = $6;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$0 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$0 + 36 | 0) >> 2] | 0;
|
|
$237 = i64toi32_i32$5;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$0 + 44 | 0) >> 2] | 0;
|
|
HEAP32[i64toi32_i32$5 >> 2] = $237;
|
|
HEAP32[(i64toi32_i32$5 + 4 | 0) >> 2] = i64toi32_i32$3;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$0 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$0 + 12 | 0) >> 2] | 0;
|
|
$243 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$0 + 40 | 0) >> 2] | 0;
|
|
HEAP32[i64toi32_i32$3 >> 2] = $243;
|
|
HEAP32[(i64toi32_i32$3 + 4 | 0) >> 2] = i64toi32_i32$5;
|
|
__stack_pointer = i64toi32_i32$0 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Int128__mul_28long_20long_2c_20long_20long_29($0, $1, $1$hi, $2, $2$hi) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$1$hi = $1$hi | 0;
|
|
$2 = $2 | 0;
|
|
$2$hi = $2$hi | 0;
|
|
var i64toi32_i32$3 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, $5 = 0, i64toi32_i32$5 = 0, i64toi32_i32$2 = 0, $9$hi = 0, $10$hi = 0, i64toi32_i32$6 = 0, $22$hi = 0, $23$hi = 0, $30 = 0, $31 = 0, $32 = 0, $19$hi = 0, $33 = 0, $34 = 0, $35 = 0, $34$hi = 0, $37$hi = 0, $38$hi = 0, $54 = 0, $98$hi = 0, $99 = 0, $127$hi = 0, $128 = 0, $37 = 0, $148 = 0, $167 = 0, $180 = 0;
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
i64toi32_i32$0 = $1$hi;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[(i64toi32_i32$1 + 40 | 0) >> 2] = $1;
|
|
HEAP32[(i64toi32_i32$1 + 44 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $2$hi;
|
|
HEAP32[(i64toi32_i32$1 + 32 | 0) >> 2] = $2;
|
|
HEAP32[(i64toi32_i32$1 + 36 | 0) >> 2] = i64toi32_i32$0;
|
|
btConvexHullInternal__Int128__Int128_28_29(i64toi32_i32$1 + 16 | 0 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$1 + 40 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$1 + 44 | 0) >> 2] | 0;
|
|
$9$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$10$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $9$hi;
|
|
i64toi32_i32$1 = $10$hi;
|
|
i64toi32_i32$1 = $9$hi;
|
|
i64toi32_i32$1 = $10$hi;
|
|
i64toi32_i32$1 = $9$hi;
|
|
i64toi32_i32$2 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $10$hi;
|
|
i64toi32_i32$3 = 0;
|
|
if ((i64toi32_i32$1 | 0) < (i64toi32_i32$0 | 0)) {
|
|
$30 = 1
|
|
} else {
|
|
if ((i64toi32_i32$1 | 0) <= (i64toi32_i32$0 | 0)) {
|
|
if (i64toi32_i32$2 >>> 0 >= i64toi32_i32$3 >>> 0) {
|
|
$31 = 0
|
|
} else {
|
|
$31 = 1
|
|
}
|
|
$32 = $31;
|
|
} else {
|
|
$32 = 0
|
|
}
|
|
$30 = $32;
|
|
}
|
|
HEAP8[($5 + 15 | 0) >> 0] = $30 & 1 | 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($5 + 15 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
i64toi32_i32$3 = $5;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$3 + 40 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$3 + 44 | 0) >> 2] | 0;
|
|
$19$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$98$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $19$hi;
|
|
$99 = i64toi32_i32$2;
|
|
i64toi32_i32$1 = $98$hi;
|
|
i64toi32_i32$3 = 0;
|
|
i64toi32_i32$2 = $19$hi;
|
|
i64toi32_i32$0 = $99;
|
|
i64toi32_i32$4 = i64toi32_i32$3 - i64toi32_i32$0 | 0;
|
|
i64toi32_i32$6 = i64toi32_i32$3 >>> 0 < i64toi32_i32$0 >>> 0;
|
|
i64toi32_i32$5 = i64toi32_i32$6 + i64toi32_i32$2 | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$1 - i64toi32_i32$5 | 0;
|
|
i64toi32_i32$3 = $5;
|
|
HEAP32[(i64toi32_i32$3 + 40 | 0) >> 2] = i64toi32_i32$4;
|
|
HEAP32[(i64toi32_i32$3 + 44 | 0) >> 2] = i64toi32_i32$5;
|
|
}
|
|
i64toi32_i32$1 = $5;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$1 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$1 + 36 | 0) >> 2] | 0;
|
|
$22$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = 0;
|
|
$23$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $22$hi;
|
|
i64toi32_i32$3 = $23$hi;
|
|
i64toi32_i32$3 = $22$hi;
|
|
i64toi32_i32$3 = $23$hi;
|
|
i64toi32_i32$3 = $22$hi;
|
|
i64toi32_i32$1 = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $23$hi;
|
|
i64toi32_i32$0 = 0;
|
|
if ((i64toi32_i32$3 | 0) < (i64toi32_i32$5 | 0)) {
|
|
$33 = 1
|
|
} else {
|
|
if ((i64toi32_i32$3 | 0) <= (i64toi32_i32$5 | 0)) {
|
|
if (i64toi32_i32$1 >>> 0 >= i64toi32_i32$0 >>> 0) {
|
|
$34 = 0
|
|
} else {
|
|
$34 = 1
|
|
}
|
|
$35 = $34;
|
|
} else {
|
|
$35 = 0
|
|
}
|
|
$33 = $35;
|
|
}
|
|
label$2 : {
|
|
if (!($33 & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP8[($5 + 15 | 0) >> 0] = ((HEAPU8[($5 + 15 | 0) >> 0] | 0) ^ -1 | 0) & 1 | 0;
|
|
i64toi32_i32$0 = $5;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$0 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$0 + 36 | 0) >> 2] | 0;
|
|
$34$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = 0;
|
|
$127$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $34$hi;
|
|
$128 = i64toi32_i32$1;
|
|
i64toi32_i32$3 = $127$hi;
|
|
i64toi32_i32$0 = 0;
|
|
i64toi32_i32$1 = $34$hi;
|
|
i64toi32_i32$5 = $128;
|
|
i64toi32_i32$2 = i64toi32_i32$0 - i64toi32_i32$5 | 0;
|
|
i64toi32_i32$6 = i64toi32_i32$0 >>> 0 < i64toi32_i32$5 >>> 0;
|
|
i64toi32_i32$4 = i64toi32_i32$6 + i64toi32_i32$1 | 0;
|
|
i64toi32_i32$4 = i64toi32_i32$3 - i64toi32_i32$4 | 0;
|
|
i64toi32_i32$0 = $5;
|
|
HEAP32[(i64toi32_i32$0 + 32 | 0) >> 2] = i64toi32_i32$2;
|
|
HEAP32[(i64toi32_i32$0 + 36 | 0) >> 2] = i64toi32_i32$4;
|
|
}
|
|
i64toi32_i32$3 = $5;
|
|
i64toi32_i32$4 = HEAP32[(i64toi32_i32$3 + 40 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$3 + 44 | 0) >> 2] | 0;
|
|
$37 = i64toi32_i32$4;
|
|
$37$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$3 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$4 = HEAP32[(i64toi32_i32$3 + 36 | 0) >> 2] | 0;
|
|
$38$hi = i64toi32_i32$4;
|
|
i64toi32_i32$4 = $37$hi;
|
|
i64toi32_i32$4 = $38$hi;
|
|
$148 = i64toi32_i32$0;
|
|
i64toi32_i32$4 = $37$hi;
|
|
i64toi32_i32$0 = $38$hi;
|
|
btConvexHullInternal__DMul_unsigned_20long_20long_2c_20unsigned_20int___mul_28unsigned_20long_20long_2c_20unsigned_20long_20long_2c_20unsigned_20long_20long__2c_20unsigned_20long_20long__29($37 | 0, i64toi32_i32$4 | 0, $148 | 0, i64toi32_i32$0 | 0, i64toi32_i32$3 + 16 | 0 | 0, (i64toi32_i32$3 + 16 | 0) + 8 | 0 | 0);
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAPU8[(i64toi32_i32$3 + 15 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
btConvexHullInternal__Int128__operator__28_29_20const($0 | 0, $5 + 16 | 0 | 0);
|
|
break label$3;
|
|
}
|
|
i64toi32_i32$3 = $5;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$3 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$4 = HEAP32[(i64toi32_i32$3 + 20 | 0) >> 2] | 0;
|
|
$167 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $167;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$4;
|
|
$54 = 8;
|
|
i64toi32_i32$3 = (i64toi32_i32$3 + 16 | 0) + $54 | 0;
|
|
i64toi32_i32$4 = HEAP32[i64toi32_i32$3 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$3 + 4 | 0) >> 2] | 0;
|
|
$180 = i64toi32_i32$4;
|
|
i64toi32_i32$4 = $0 + $54 | 0;
|
|
HEAP32[i64toi32_i32$4 >> 2] = $180;
|
|
HEAP32[(i64toi32_i32$4 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__DMul_unsigned_20long_20long_2c_20unsigned_20int___low_28unsigned_20long_20long_29($0, $0$hi) {
|
|
$0 = $0 | 0;
|
|
$0$hi = $0$hi | 0;
|
|
var i64toi32_i32$1 = 0, i64toi32_i32$0 = 0;
|
|
i64toi32_i32$0 = $0$hi;
|
|
i64toi32_i32$1 = __stack_pointer - 16 | 0;
|
|
HEAP32[(i64toi32_i32$1 + 8 | 0) >> 2] = $0;
|
|
HEAP32[(i64toi32_i32$1 + 12 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$1 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$1 + 12 | 0) >> 2] | 0;
|
|
return i64toi32_i32$0 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__DMul_unsigned_20long_20long_2c_20unsigned_20int___mul_28unsigned_20int_2c_20unsigned_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$0 = 0, $4 = 0, i64toi32_i32$1 = 0, $7$hi = 0, $10$hi = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
i64toi32_i32$0 = 0;
|
|
$7$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 0;
|
|
$10$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $7$hi;
|
|
i64toi32_i32$0 = $10$hi;
|
|
i64toi32_i32$0 = $7$hi;
|
|
i64toi32_i32$1 = $10$hi;
|
|
i64toi32_i32$1 = __wasm_i64_mul(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, i64toi32_i32$0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, i64toi32_i32$1 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
i64toi32_i32$HIGH_BITS = i64toi32_i32$0;
|
|
return i64toi32_i32$1 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__DMul_unsigned_20long_20long_2c_20unsigned_20int___high_28unsigned_20long_20long_29($0, $0$hi) {
|
|
$0 = $0 | 0;
|
|
$0$hi = $0$hi | 0;
|
|
var i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, i64toi32_i32$4 = 0, i64toi32_i32$2 = 0, $4$hi = 0, $5$hi = 0, i64toi32_i32$3 = 0, $9 = 0;
|
|
i64toi32_i32$0 = $0$hi;
|
|
i64toi32_i32$1 = __stack_pointer - 16 | 0;
|
|
HEAP32[(i64toi32_i32$1 + 8 | 0) >> 2] = $0;
|
|
HEAP32[(i64toi32_i32$1 + 12 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$1 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$1 + 12 | 0) >> 2] | 0;
|
|
$4$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$5$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4$hi;
|
|
i64toi32_i32$1 = $5$hi;
|
|
i64toi32_i32$1 = $4$hi;
|
|
i64toi32_i32$2 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $5$hi;
|
|
i64toi32_i32$3 = 32;
|
|
i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$0 = 0;
|
|
$9 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0;
|
|
} else {
|
|
i64toi32_i32$0 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0;
|
|
$9 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$1 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__DMul_unsigned_20long_20long_2c_20unsigned_20int___shlHalf_28unsigned_20long_20long__29($0) {
|
|
$0 = $0 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, i64toi32_i32$4 = 0, $3 = 0, $4 = 0, $5$hi = 0, $6$hi = 0, i64toi32_i32$3 = 0, $10 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$5$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$6$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5$hi;
|
|
i64toi32_i32$1 = $6$hi;
|
|
i64toi32_i32$1 = $5$hi;
|
|
i64toi32_i32$2 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6$hi;
|
|
i64toi32_i32$3 = 32;
|
|
i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$0 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
|
|
$10 = 0;
|
|
} else {
|
|
i64toi32_i32$0 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0;
|
|
$10 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
|
|
}
|
|
i64toi32_i32$2 = $4;
|
|
HEAP32[i64toi32_i32$2 >> 2] = $10;
|
|
HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Rational64__compare_28btConvexHullInternal__Rational64_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $5 = 0, $21$hi = 0, $23$hi = 0, $27$hi = 0, $29$hi = 0, $20 = 0, $21 = 0, $97 = 0, $27 = 0, $107 = 0, $37 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 40 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 36 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 40 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) != (HEAP32[((HEAP32[($4 + 36 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($4 + 44 | 0) >> 2] = (HEAP32[($5 + 16 | 0) >> 2] | 0) - (HEAP32[((HEAP32[($4 + 36 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0) | 0;
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
if (HEAP32[($5 + 16 | 0) >> 2] | 0) {
|
|
break label$3
|
|
}
|
|
HEAP32[($4 + 44 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
$20 = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$21 = i64toi32_i32$0;
|
|
$21$hi = i64toi32_i32$1;
|
|
i64toi32_i32$2 = HEAP32[($4 + 36 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 12 | 0) >> 2] | 0;
|
|
$23$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $21$hi;
|
|
i64toi32_i32$0 = $23$hi;
|
|
$97 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = $21$hi;
|
|
i64toi32_i32$1 = $23$hi;
|
|
btConvexHullInternal__Int128__mul_28unsigned_20long_20long_2c_20unsigned_20long_20long_29($4 + 16 | 0 | 0, $21 | 0, i64toi32_i32$0 | 0, $97 | 0, i64toi32_i32$1 | 0);
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 12 | 0) >> 2] | 0;
|
|
$27 = i64toi32_i32$1;
|
|
$27$hi = i64toi32_i32$0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 36 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$29$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $27$hi;
|
|
i64toi32_i32$1 = $29$hi;
|
|
$107 = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $27$hi;
|
|
i64toi32_i32$0 = $29$hi;
|
|
btConvexHullInternal__Int128__mul_28unsigned_20long_20long_2c_20unsigned_20long_20long_29($4 | 0, $27 | 0, i64toi32_i32$1 | 0, $107 | 0, i64toi32_i32$0 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = Math_imul($20, btConvexHullInternal__Int128__ucmp_28btConvexHullInternal__Int128_20const__29_20const($4 + 16 | 0 | 0, $4 | 0) | 0)), HEAP32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
$37 = HEAP32[($4 + 44 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 48 | 0;
|
|
return $37 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Int128__ucmp_28btConvexHullInternal__Int128_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $4 = 0, $5 = 0, $6$hi = 0, $8$hi = 0, $15$hi = 0, $17$hi = 0, $24$hi = 0, $26$hi = 0, $33$hi = 0, $35$hi = 0, $6 = 0, $63 = 0, $15 = 0, $81 = 0, $24 = 0, $99 = 0, $33 = 0, $117 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 12 | 0) >> 2] | 0;
|
|
$6 = i64toi32_i32$0;
|
|
$6$hi = i64toi32_i32$1;
|
|
i64toi32_i32$2 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 12 | 0) >> 2] | 0;
|
|
$8$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6$hi;
|
|
i64toi32_i32$0 = $8$hi;
|
|
i64toi32_i32$0 = $6$hi;
|
|
i64toi32_i32$0 = $8$hi;
|
|
$63 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = $6$hi;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = $8$hi;
|
|
i64toi32_i32$3 = $63;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((i64toi32_i32$0 >>> 0 < i64toi32_i32$1 >>> 0 | ((i64toi32_i32$0 | 0) == (i64toi32_i32$1 | 0) & i64toi32_i32$2 >>> 0 < i64toi32_i32$3 >>> 0 | 0) | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = -1;
|
|
break label$1;
|
|
}
|
|
i64toi32_i32$3 = $5;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$3 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$3 + 12 | 0) >> 2] | 0;
|
|
$15 = i64toi32_i32$2;
|
|
$15$hi = i64toi32_i32$0;
|
|
i64toi32_i32$3 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$3 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$3 + 12 | 0) >> 2] | 0;
|
|
$17$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $15$hi;
|
|
i64toi32_i32$2 = $17$hi;
|
|
i64toi32_i32$2 = $15$hi;
|
|
i64toi32_i32$2 = $17$hi;
|
|
$81 = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $15$hi;
|
|
i64toi32_i32$3 = $15;
|
|
i64toi32_i32$0 = $17$hi;
|
|
i64toi32_i32$1 = $81;
|
|
label$3 : {
|
|
if (!((i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$3 >>> 0 > i64toi32_i32$1 >>> 0 | 0) | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 1;
|
|
break label$1;
|
|
}
|
|
i64toi32_i32$1 = $5;
|
|
i64toi32_i32$3 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$24 = i64toi32_i32$3;
|
|
$24$hi = i64toi32_i32$2;
|
|
i64toi32_i32$1 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$26$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $24$hi;
|
|
i64toi32_i32$3 = $26$hi;
|
|
i64toi32_i32$3 = $24$hi;
|
|
i64toi32_i32$3 = $26$hi;
|
|
$99 = i64toi32_i32$2;
|
|
i64toi32_i32$3 = $24$hi;
|
|
i64toi32_i32$1 = $24;
|
|
i64toi32_i32$2 = $26$hi;
|
|
i64toi32_i32$0 = $99;
|
|
label$4 : {
|
|
if (!((i64toi32_i32$3 >>> 0 < i64toi32_i32$2 >>> 0 | ((i64toi32_i32$3 | 0) == (i64toi32_i32$2 | 0) & i64toi32_i32$1 >>> 0 < i64toi32_i32$0 >>> 0 | 0) | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = -1;
|
|
break label$1;
|
|
}
|
|
i64toi32_i32$0 = $5;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$0 >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] | 0;
|
|
$33 = i64toi32_i32$1;
|
|
$33$hi = i64toi32_i32$3;
|
|
i64toi32_i32$0 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[i64toi32_i32$0 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] | 0;
|
|
$35$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $33$hi;
|
|
i64toi32_i32$1 = $35$hi;
|
|
i64toi32_i32$1 = $33$hi;
|
|
i64toi32_i32$1 = $35$hi;
|
|
$117 = i64toi32_i32$3;
|
|
i64toi32_i32$1 = $33$hi;
|
|
i64toi32_i32$0 = $33;
|
|
i64toi32_i32$3 = $35$hi;
|
|
i64toi32_i32$2 = $117;
|
|
label$5 : {
|
|
if (!((i64toi32_i32$1 >>> 0 > i64toi32_i32$3 >>> 0 | ((i64toi32_i32$1 | 0) == (i64toi32_i32$3 | 0) & i64toi32_i32$0 >>> 0 > i64toi32_i32$2 >>> 0 | 0) | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
return HEAP32[($4 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Rational128__compare_28btConvexHullInternal__Rational128_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, i64toi32_i32$2 = 0, $5 = 0, $61 = 0, $103 = 0, $26$hi = 0, $27$hi = 0, $44 = 0, $53 = 0, $54 = 0, $87 = 0, $88 = 0, $95 = 0, $96 = 0, $23 = 0, $26 = 0, $211 = 0, $257 = 0, $261 = 0, $279 = 0, $283 = 0, $299 = 0, $303 = 0, $319 = 0, $323 = 0, $355 = 0, $359 = 0, $374 = 0, $378 = 0, $394 = 0, $398 = 0, $414 = 0, $418 = 0, $148 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 224 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 216 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 212 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 216 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) != (HEAP32[((HEAP32[($4 + 212 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($4 + 220 | 0) >> 2] = (HEAP32[($5 + 32 | 0) >> 2] | 0) - (HEAP32[((HEAP32[($4 + 212 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) | 0;
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
if (HEAP32[($5 + 32 | 0) >> 2] | 0) {
|
|
break label$3
|
|
}
|
|
HEAP32[($4 + 220 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
label$4 : {
|
|
if (!((HEAPU8[($5 + 36 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$23 = HEAP32[($4 + 212 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$1 >> 31 | 0;
|
|
$26 = i64toi32_i32$1;
|
|
$26$hi = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$27$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $26$hi;
|
|
i64toi32_i32$1 = $27$hi;
|
|
$211 = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $26$hi;
|
|
i64toi32_i32$0 = $27$hi;
|
|
i64toi32_i32$0 = __wasm_i64_mul($26 | 0, i64toi32_i32$1 | 0, $211 | 0, i64toi32_i32$0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = 0 - (btConvexHullInternal__Rational128__compare_28long_20long_29_20const($23 | 0, i64toi32_i32$0 | 0, i64toi32_i32$1 | 0) | 0) | 0), HEAP32[(wasm2js_i32$0 + 220 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
btConvexHullInternal__Int128__Int128_28_29($4 + 192 | 0 | 0) | 0;
|
|
btConvexHullInternal__Int128__Int128_28_29($4 + 176 | 0 | 0) | 0;
|
|
btConvexHullInternal__Int128__Int128_28_29($4 + 160 | 0 | 0) | 0;
|
|
btConvexHullInternal__Int128__Int128_28_29($4 + 144 | 0 | 0) | 0;
|
|
$44 = 8;
|
|
i64toi32_i32$2 = $5 + $44 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$257 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($4 + 128 | 0) + $44 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $257;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$261 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $4;
|
|
HEAP32[(i64toi32_i32$0 + 128 | 0) >> 2] = $261;
|
|
HEAP32[(i64toi32_i32$0 + 132 | 0) >> 2] = i64toi32_i32$1;
|
|
$53 = (HEAP32[(i64toi32_i32$0 + 212 | 0) >> 2] | 0) + 16 | 0;
|
|
$54 = 8;
|
|
i64toi32_i32$2 = $53 + $54 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$279 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($4 + 112 | 0) + $54 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $279;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $53;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$283 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $4;
|
|
HEAP32[(i64toi32_i32$0 + 112 | 0) >> 2] = $283;
|
|
HEAP32[(i64toi32_i32$0 + 116 | 0) >> 2] = i64toi32_i32$1;
|
|
$61 = 8;
|
|
i64toi32_i32$2 = (i64toi32_i32$0 + 128 | 0) + $61 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$299 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($4 + 24 | 0) + $61 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $299;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[($4 + 128 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($4 + 132 | 0) >> 2] | 0;
|
|
$303 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $4;
|
|
HEAP32[(i64toi32_i32$0 + 24 | 0) >> 2] = $303;
|
|
HEAP32[(i64toi32_i32$0 + 28 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = (i64toi32_i32$0 + 112 | 0) + $61 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$319 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($4 + 8 | 0) + $61 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $319;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[($4 + 112 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($4 + 116 | 0) >> 2] | 0;
|
|
$323 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $4;
|
|
HEAP32[(i64toi32_i32$0 + 8 | 0) >> 2] = $323;
|
|
HEAP32[(i64toi32_i32$0 + 12 | 0) >> 2] = i64toi32_i32$1;
|
|
btConvexHullInternal__DMul_btConvexHullInternal__Int128_2c_20unsigned_20long_20long___mul_28btConvexHullInternal__Int128_2c_20btConvexHullInternal__Int128_2c_20btConvexHullInternal__Int128__2c_20btConvexHullInternal__Int128__29(i64toi32_i32$0 + 24 | 0 | 0, i64toi32_i32$0 + 8 | 0 | 0, i64toi32_i32$0 + 192 | 0 | 0, i64toi32_i32$0 + 176 | 0 | 0);
|
|
$87 = $5 + 16 | 0;
|
|
$88 = 8;
|
|
i64toi32_i32$2 = $87 + $88 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$355 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($4 + 96 | 0) + $88 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $355;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $87;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$359 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $4;
|
|
HEAP32[(i64toi32_i32$0 + 96 | 0) >> 2] = $359;
|
|
HEAP32[(i64toi32_i32$0 + 100 | 0) >> 2] = i64toi32_i32$1;
|
|
$95 = HEAP32[(i64toi32_i32$0 + 212 | 0) >> 2] | 0;
|
|
$96 = 8;
|
|
i64toi32_i32$2 = $95 + $96 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$374 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($4 + 80 | 0) + $96 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $374;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $95;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$378 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $4;
|
|
HEAP32[(i64toi32_i32$0 + 80 | 0) >> 2] = $378;
|
|
HEAP32[(i64toi32_i32$0 + 84 | 0) >> 2] = i64toi32_i32$1;
|
|
$103 = 8;
|
|
i64toi32_i32$2 = (i64toi32_i32$0 + 96 | 0) + $103 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$394 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($4 + 56 | 0) + $103 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $394;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[($4 + 96 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($4 + 100 | 0) >> 2] | 0;
|
|
$398 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $4;
|
|
HEAP32[(i64toi32_i32$0 + 56 | 0) >> 2] = $398;
|
|
HEAP32[(i64toi32_i32$0 + 60 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = (i64toi32_i32$0 + 80 | 0) + $103 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$414 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($4 + 40 | 0) + $103 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $414;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[($4 + 80 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($4 + 84 | 0) >> 2] | 0;
|
|
$418 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $4;
|
|
HEAP32[(i64toi32_i32$0 + 40 | 0) >> 2] = $418;
|
|
HEAP32[(i64toi32_i32$0 + 44 | 0) >> 2] = i64toi32_i32$1;
|
|
btConvexHullInternal__DMul_btConvexHullInternal__Int128_2c_20unsigned_20long_20long___mul_28btConvexHullInternal__Int128_2c_20btConvexHullInternal__Int128_2c_20btConvexHullInternal__Int128__2c_20btConvexHullInternal__Int128__29(i64toi32_i32$0 + 56 | 0 | 0, i64toi32_i32$0 + 40 | 0 | 0, i64toi32_i32$0 + 160 | 0 | 0, i64toi32_i32$0 + 144 | 0 | 0);
|
|
(wasm2js_i32$0 = i64toi32_i32$0, wasm2js_i32$1 = btConvexHullInternal__Int128__ucmp_28btConvexHullInternal__Int128_20const__29_20const(i64toi32_i32$0 + 176 | 0 | 0, i64toi32_i32$0 + 144 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 76 | 0) >> 2] = wasm2js_i32$1;
|
|
label$5 : {
|
|
if (!(HEAP32[(i64toi32_i32$0 + 76 | 0) >> 2] | 0)) {
|
|
break label$5
|
|
}
|
|
HEAP32[($4 + 220 | 0) >> 2] = Math_imul(HEAP32[($4 + 76 | 0) >> 2] | 0, HEAP32[($5 + 32 | 0) >> 2] | 0);
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = Math_imul(btConvexHullInternal__Int128__ucmp_28btConvexHullInternal__Int128_20const__29_20const($4 + 192 | 0 | 0, $4 + 160 | 0 | 0) | 0, HEAP32[($5 + 32 | 0) >> 2] | 0)), HEAP32[(wasm2js_i32$0 + 220 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
$148 = HEAP32[($4 + 220 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 224 | 0;
|
|
return $148 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Rational128__compare_28long_20long_29_20const($0, $1, $1$hi) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$1$hi = $1$hi | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, $4 = 0, i64toi32_i32$3 = 0, $5 = 0, i64toi32_i32$5 = 0, $14$hi = 0, $15$hi = 0, $23$hi = 0, $24$hi = 0, $34$hi = 0, $35$hi = 0, $49$hi = 0, $50$hi = 0, $11$hi = 0, $12$hi = 0, $33 = 0, $34 = 0, $35 = 0, $22 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $64$hi = 0, $11 = 0, $109 = 0, $112 = 0, $14 = 0, $120 = 0, $23 = 0, $135 = 0, $202$hi = 0, $203 = 0, $206 = 0, $80 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 40 | 0) >> 2] = $0;
|
|
i64toi32_i32$0 = $1$hi;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[(i64toi32_i32$1 + 32 | 0) >> 2] = $1;
|
|
HEAP32[(i64toi32_i32$1 + 36 | 0) >> 2] = i64toi32_i32$0;
|
|
$5 = HEAP32[(i64toi32_i32$1 + 40 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($5 + 36 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
i64toi32_i32$1 = HEAP32[($5 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$1 >> 31 | 0;
|
|
$11 = i64toi32_i32$1;
|
|
$11$hi = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$12$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11$hi;
|
|
i64toi32_i32$1 = $12$hi;
|
|
$109 = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $11$hi;
|
|
i64toi32_i32$0 = $12$hi;
|
|
i64toi32_i32$0 = __wasm_i64_mul($11 | 0, i64toi32_i32$1 | 0, $109 | 0, i64toi32_i32$0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
$112 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $4;
|
|
HEAP32[(i64toi32_i32$0 + 24 | 0) >> 2] = $112;
|
|
HEAP32[(i64toi32_i32$0 + 28 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = i64toi32_i32$0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 28 | 0) >> 2] | 0;
|
|
$14 = i64toi32_i32$1;
|
|
$14$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 36 | 0) >> 2] | 0;
|
|
$15$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $14$hi;
|
|
i64toi32_i32$1 = $15$hi;
|
|
i64toi32_i32$1 = $14$hi;
|
|
i64toi32_i32$1 = $15$hi;
|
|
$120 = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $14$hi;
|
|
i64toi32_i32$2 = $14;
|
|
i64toi32_i32$0 = $15$hi;
|
|
i64toi32_i32$3 = $120;
|
|
if ((i64toi32_i32$1 | 0) > (i64toi32_i32$0 | 0)) {
|
|
$33 = 1
|
|
} else {
|
|
if ((i64toi32_i32$1 | 0) >= (i64toi32_i32$0 | 0)) {
|
|
if (i64toi32_i32$2 >>> 0 <= i64toi32_i32$3 >>> 0) {
|
|
$34 = 0
|
|
} else {
|
|
$34 = 1
|
|
}
|
|
$35 = $34;
|
|
} else {
|
|
$35 = 0
|
|
}
|
|
$33 = $35;
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!($33 & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$22 = 1;
|
|
break label$3;
|
|
}
|
|
i64toi32_i32$3 = $4;
|
|
i64toi32_i32$2 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
$23 = i64toi32_i32$2;
|
|
$23$hi = i64toi32_i32$1;
|
|
i64toi32_i32$3 = $4;
|
|
i64toi32_i32$1 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 36 | 0) >> 2] | 0;
|
|
$24$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $23$hi;
|
|
i64toi32_i32$2 = $24$hi;
|
|
i64toi32_i32$2 = $23$hi;
|
|
i64toi32_i32$2 = $24$hi;
|
|
$135 = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $23$hi;
|
|
i64toi32_i32$3 = $23;
|
|
i64toi32_i32$1 = $24$hi;
|
|
i64toi32_i32$0 = $135;
|
|
if ((i64toi32_i32$2 | 0) < (i64toi32_i32$1 | 0)) {
|
|
$36 = 1
|
|
} else {
|
|
if ((i64toi32_i32$2 | 0) <= (i64toi32_i32$1 | 0)) {
|
|
if (i64toi32_i32$3 >>> 0 >= i64toi32_i32$0 >>> 0) {
|
|
$37 = 0
|
|
} else {
|
|
$37 = 1
|
|
}
|
|
$38 = $37;
|
|
} else {
|
|
$38 = 0
|
|
}
|
|
$36 = $38;
|
|
}
|
|
$22 = $36 & 1 | 0 ? -1 : 0;
|
|
}
|
|
HEAP32[($4 + 44 | 0) >> 2] = $22;
|
|
break label$1;
|
|
}
|
|
i64toi32_i32$0 = $4;
|
|
i64toi32_i32$3 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 36 | 0) >> 2] | 0;
|
|
$34$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = 0;
|
|
$35$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $34$hi;
|
|
i64toi32_i32$2 = $35$hi;
|
|
i64toi32_i32$2 = $34$hi;
|
|
i64toi32_i32$2 = $35$hi;
|
|
i64toi32_i32$2 = $34$hi;
|
|
i64toi32_i32$0 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $35$hi;
|
|
i64toi32_i32$1 = 0;
|
|
if ((i64toi32_i32$2 | 0) > (i64toi32_i32$3 | 0)) {
|
|
$39 = 1
|
|
} else {
|
|
if ((i64toi32_i32$2 | 0) >= (i64toi32_i32$3 | 0)) {
|
|
if (i64toi32_i32$0 >>> 0 <= i64toi32_i32$1 >>> 0) {
|
|
$40 = 0
|
|
} else {
|
|
$40 = 1
|
|
}
|
|
$41 = $40;
|
|
} else {
|
|
$41 = 0
|
|
}
|
|
$39 = $41;
|
|
}
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!($39 & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
label$7 : {
|
|
if (!((HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) <= (0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAP32[($4 + 44 | 0) >> 2] = -1;
|
|
break label$1;
|
|
}
|
|
break label$5;
|
|
}
|
|
i64toi32_i32$1 = $4;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$1 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$1 + 36 | 0) >> 2] | 0;
|
|
$49$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = 0;
|
|
$50$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $49$hi;
|
|
i64toi32_i32$2 = $50$hi;
|
|
i64toi32_i32$2 = $49$hi;
|
|
i64toi32_i32$2 = $50$hi;
|
|
i64toi32_i32$2 = $49$hi;
|
|
i64toi32_i32$1 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $50$hi;
|
|
i64toi32_i32$3 = 0;
|
|
if ((i64toi32_i32$2 | 0) < (i64toi32_i32$0 | 0)) {
|
|
$42 = 1
|
|
} else {
|
|
if ((i64toi32_i32$2 | 0) <= (i64toi32_i32$0 | 0)) {
|
|
if (i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0) {
|
|
$43 = 0
|
|
} else {
|
|
$43 = 1
|
|
}
|
|
$44 = $43;
|
|
} else {
|
|
$44 = 0
|
|
}
|
|
$42 = $44;
|
|
}
|
|
label$8 : {
|
|
label$9 : {
|
|
if (!($42 & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
label$10 : {
|
|
if (!((HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
HEAP32[($4 + 44 | 0) >> 2] = 1;
|
|
break label$1;
|
|
}
|
|
i64toi32_i32$3 = $4;
|
|
i64toi32_i32$1 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 36 | 0) >> 2] | 0;
|
|
$64$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = 0;
|
|
$202$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $64$hi;
|
|
$203 = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $202$hi;
|
|
i64toi32_i32$3 = 0;
|
|
i64toi32_i32$1 = $64$hi;
|
|
i64toi32_i32$0 = $203;
|
|
i64toi32_i32$5 = (i64toi32_i32$3 >>> 0 < i64toi32_i32$0 >>> 0) + i64toi32_i32$1 | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$2 - i64toi32_i32$5 | 0;
|
|
$206 = i64toi32_i32$3 - i64toi32_i32$0 | 0;
|
|
i64toi32_i32$3 = $4;
|
|
HEAP32[($4 + 32 | 0) >> 2] = $206;
|
|
HEAP32[($4 + 36 | 0) >> 2] = i64toi32_i32$5;
|
|
break label$8;
|
|
}
|
|
HEAP32[($4 + 44 | 0) >> 2] = HEAP32[($5 + 32 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
}
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$2 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$2 + 36 | 0) >> 2] | 0;
|
|
btConvexHullInternal__Int128__operator__28long_20long_29_20const(i64toi32_i32$2 + 8 | 0 | 0, $5 + 16 | 0 | 0, i64toi32_i32$5 | 0, i64toi32_i32$3 | 0);
|
|
(wasm2js_i32$0 = i64toi32_i32$2, wasm2js_i32$1 = Math_imul(btConvexHullInternal__Int128__ucmp_28btConvexHullInternal__Int128_20const__29_20const($5 | 0, i64toi32_i32$2 + 8 | 0 | 0) | 0, HEAP32[($5 + 32 | 0) >> 2] | 0)), HEAP32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
$80 = HEAP32[($4 + 44 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 48 | 0;
|
|
return $80 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__DMul_btConvexHullInternal__Int128_2c_20unsigned_20long_20long___mul_28btConvexHullInternal__Int128_2c_20btConvexHullInternal__Int128_2c_20btConvexHullInternal__Int128__2c_20btConvexHullInternal__Int128__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, $6 = 0, i64toi32_i32$2 = 0, $7 = 0, $14 = 0, $25$hi = 0, $26 = 0, $33 = 0, $44$hi = 0, $48 = 0, $55 = 0, $66$hi = 0, $67 = 0, $74 = 0, $85$hi = 0, $89 = 0, $96 = 0, $107$hi = 0, $108 = 0, $115 = 0, $126$hi = 0, $130 = 0, $137 = 0, $148$hi = 0, $149 = 0, $156 = 0, $167$hi = 0, $171 = 0, $180 = 0, $195 = 0, $204 = 0, $228 = 0, $237 = 0, $258 = 0, $267 = 0, $288 = 0, $297 = 0, $339 = 0, $341 = 0, $347 = 0, $349 = 0, $378 = 0, $382 = 0, $398 = 0, $402 = 0, $25 = 0, $420 = 0, $424 = 0, $440 = 0, $444 = 0, $456 = 0, $469 = 0, $473 = 0, $489 = 0, $493 = 0, $66 = 0, $511 = 0, $515 = 0, $531 = 0, $535 = 0, $547 = 0, $560 = 0, $564 = 0, $580 = 0, $584 = 0, $107 = 0, $602 = 0, $606 = 0, $622 = 0, $626 = 0, $638 = 0, $651 = 0, $655 = 0, $671 = 0, $675 = 0, $148 = 0, $693 = 0, $697 = 0, $713 = 0, $717 = 0, $729 = 0, $745 = 0, $749 = 0, $765 = 0, $769 = 0, $797 = 0, $801 = 0, $817 = 0, $821 = 0, $864 = 0, $868 = 0, $884 = 0, $888 = 0, $927 = 0, $931 = 0, $947 = 0, $951 = 0, $990 = 0, $994 = 0, $1010 = 0, $1014 = 0, $1081 = 0, $1094 = 0, $1100 = 0, $1113 = 0;
|
|
$6 = __stack_pointer - 592 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 588 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 584 | 0) >> 2] = $3;
|
|
$7 = 8;
|
|
i64toi32_i32$2 = $0 + $7 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$378 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 552 | 0) + $7 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $378;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$382 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[(i64toi32_i32$1 + 552 | 0) >> 2] = $382;
|
|
HEAP32[(i64toi32_i32$1 + 556 | 0) >> 2] = i64toi32_i32$0;
|
|
$14 = 8;
|
|
i64toi32_i32$2 = (i64toi32_i32$1 + 552 | 0) + $14 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$398 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 8 | 0) + $14 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $398;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 552 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 556 | 0) >> 2] | 0;
|
|
$402 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[(i64toi32_i32$1 + 8 | 0) >> 2] = $402;
|
|
HEAP32[(i64toi32_i32$1 + 12 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$0 = btConvexHullInternal__DMul_btConvexHullInternal__Int128_2c_20unsigned_20long_20long___low_28btConvexHullInternal__Int128_29(i64toi32_i32$1 + 8 | 0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
$25 = i64toi32_i32$0;
|
|
$25$hi = i64toi32_i32$1;
|
|
$26 = 8;
|
|
i64toi32_i32$2 = $1 + $26 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$420 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($6 + 536 | 0) + $26 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $420;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $1;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$424 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6;
|
|
HEAP32[(i64toi32_i32$0 + 536 | 0) >> 2] = $424;
|
|
HEAP32[(i64toi32_i32$0 + 540 | 0) >> 2] = i64toi32_i32$1;
|
|
$33 = 8;
|
|
i64toi32_i32$2 = (i64toi32_i32$0 + 536 | 0) + $33 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$440 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($6 + 24 | 0) + $33 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $440;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 536 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 540 | 0) >> 2] | 0;
|
|
$444 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6;
|
|
HEAP32[(i64toi32_i32$0 + 24 | 0) >> 2] = $444;
|
|
HEAP32[(i64toi32_i32$0 + 28 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$1 = btConvexHullInternal__DMul_btConvexHullInternal__Int128_2c_20unsigned_20long_20long___low_28btConvexHullInternal__Int128_29(i64toi32_i32$0 + 24 | 0 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
$44$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $25$hi;
|
|
i64toi32_i32$0 = $44$hi;
|
|
$456 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = $25$hi;
|
|
i64toi32_i32$1 = $44$hi;
|
|
btConvexHullInternal__DMul_btConvexHullInternal__Int128_2c_20unsigned_20long_20long___mul_28unsigned_20long_20long_2c_20unsigned_20long_20long_29($6 + 568 | 0 | 0, $25 | 0, i64toi32_i32$0 | 0, $456 | 0, i64toi32_i32$1 | 0);
|
|
$48 = 8;
|
|
i64toi32_i32$2 = $0 + $48 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$469 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($6 + 504 | 0) + $48 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $469;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$473 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6;
|
|
HEAP32[(i64toi32_i32$0 + 504 | 0) >> 2] = $473;
|
|
HEAP32[(i64toi32_i32$0 + 508 | 0) >> 2] = i64toi32_i32$1;
|
|
$55 = 8;
|
|
i64toi32_i32$2 = (i64toi32_i32$0 + 504 | 0) + $55 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$489 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($6 + 40 | 0) + $55 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $489;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 504 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 508 | 0) >> 2] | 0;
|
|
$493 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6;
|
|
HEAP32[(i64toi32_i32$0 + 40 | 0) >> 2] = $493;
|
|
HEAP32[(i64toi32_i32$0 + 44 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$1 = btConvexHullInternal__DMul_btConvexHullInternal__Int128_2c_20unsigned_20long_20long___low_28btConvexHullInternal__Int128_29(i64toi32_i32$0 + 40 | 0 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
$66 = i64toi32_i32$1;
|
|
$66$hi = i64toi32_i32$0;
|
|
$67 = 8;
|
|
i64toi32_i32$2 = $1 + $67 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$511 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 488 | 0) + $67 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $511;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $1;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$515 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[(i64toi32_i32$1 + 488 | 0) >> 2] = $515;
|
|
HEAP32[(i64toi32_i32$1 + 492 | 0) >> 2] = i64toi32_i32$0;
|
|
$74 = 8;
|
|
i64toi32_i32$2 = (i64toi32_i32$1 + 488 | 0) + $74 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$531 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 56 | 0) + $74 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $531;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 488 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 492 | 0) >> 2] | 0;
|
|
$535 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[(i64toi32_i32$1 + 56 | 0) >> 2] = $535;
|
|
HEAP32[(i64toi32_i32$1 + 60 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$0 = btConvexHullInternal__DMul_btConvexHullInternal__Int128_2c_20unsigned_20long_20long___high_28btConvexHullInternal__Int128_29(i64toi32_i32$1 + 56 | 0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
$85$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $66$hi;
|
|
i64toi32_i32$1 = $85$hi;
|
|
$547 = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $66$hi;
|
|
i64toi32_i32$0 = $85$hi;
|
|
btConvexHullInternal__DMul_btConvexHullInternal__Int128_2c_20unsigned_20long_20long___mul_28unsigned_20long_20long_2c_20unsigned_20long_20long_29($6 + 520 | 0 | 0, $66 | 0, i64toi32_i32$1 | 0, $547 | 0, i64toi32_i32$0 | 0);
|
|
$89 = 8;
|
|
i64toi32_i32$2 = $0 + $89 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$560 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 456 | 0) + $89 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $560;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$564 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[(i64toi32_i32$1 + 456 | 0) >> 2] = $564;
|
|
HEAP32[(i64toi32_i32$1 + 460 | 0) >> 2] = i64toi32_i32$0;
|
|
$96 = 8;
|
|
i64toi32_i32$2 = (i64toi32_i32$1 + 456 | 0) + $96 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$580 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 72 | 0) + $96 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $580;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 456 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 460 | 0) >> 2] | 0;
|
|
$584 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[(i64toi32_i32$1 + 72 | 0) >> 2] = $584;
|
|
HEAP32[(i64toi32_i32$1 + 76 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$0 = btConvexHullInternal__DMul_btConvexHullInternal__Int128_2c_20unsigned_20long_20long___high_28btConvexHullInternal__Int128_29(i64toi32_i32$1 + 72 | 0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
$107 = i64toi32_i32$0;
|
|
$107$hi = i64toi32_i32$1;
|
|
$108 = 8;
|
|
i64toi32_i32$2 = $1 + $108 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$602 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($6 + 440 | 0) + $108 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $602;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $1;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$606 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6;
|
|
HEAP32[(i64toi32_i32$0 + 440 | 0) >> 2] = $606;
|
|
HEAP32[(i64toi32_i32$0 + 444 | 0) >> 2] = i64toi32_i32$1;
|
|
$115 = 8;
|
|
i64toi32_i32$2 = (i64toi32_i32$0 + 440 | 0) + $115 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$622 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($6 + 88 | 0) + $115 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $622;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 440 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 444 | 0) >> 2] | 0;
|
|
$626 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6;
|
|
HEAP32[(i64toi32_i32$0 + 88 | 0) >> 2] = $626;
|
|
HEAP32[(i64toi32_i32$0 + 92 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$1 = btConvexHullInternal__DMul_btConvexHullInternal__Int128_2c_20unsigned_20long_20long___low_28btConvexHullInternal__Int128_29(i64toi32_i32$0 + 88 | 0 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
$126$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $107$hi;
|
|
i64toi32_i32$0 = $126$hi;
|
|
$638 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = $107$hi;
|
|
i64toi32_i32$1 = $126$hi;
|
|
btConvexHullInternal__DMul_btConvexHullInternal__Int128_2c_20unsigned_20long_20long___mul_28unsigned_20long_20long_2c_20unsigned_20long_20long_29($6 + 472 | 0 | 0, $107 | 0, i64toi32_i32$0 | 0, $638 | 0, i64toi32_i32$1 | 0);
|
|
$130 = 8;
|
|
i64toi32_i32$2 = $0 + $130 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$651 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($6 + 408 | 0) + $130 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $651;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$655 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6;
|
|
HEAP32[(i64toi32_i32$0 + 408 | 0) >> 2] = $655;
|
|
HEAP32[(i64toi32_i32$0 + 412 | 0) >> 2] = i64toi32_i32$1;
|
|
$137 = 8;
|
|
i64toi32_i32$2 = (i64toi32_i32$0 + 408 | 0) + $137 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$671 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($6 + 104 | 0) + $137 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $671;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 408 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 412 | 0) >> 2] | 0;
|
|
$675 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6;
|
|
HEAP32[(i64toi32_i32$0 + 104 | 0) >> 2] = $675;
|
|
HEAP32[(i64toi32_i32$0 + 108 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$1 = btConvexHullInternal__DMul_btConvexHullInternal__Int128_2c_20unsigned_20long_20long___high_28btConvexHullInternal__Int128_29(i64toi32_i32$0 + 104 | 0 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
$148 = i64toi32_i32$1;
|
|
$148$hi = i64toi32_i32$0;
|
|
$149 = 8;
|
|
i64toi32_i32$2 = $1 + $149 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$693 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 392 | 0) + $149 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $693;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $1;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$697 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[(i64toi32_i32$1 + 392 | 0) >> 2] = $697;
|
|
HEAP32[(i64toi32_i32$1 + 396 | 0) >> 2] = i64toi32_i32$0;
|
|
$156 = 8;
|
|
i64toi32_i32$2 = (i64toi32_i32$1 + 392 | 0) + $156 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$713 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 120 | 0) + $156 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $713;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 392 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 396 | 0) >> 2] | 0;
|
|
$717 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[(i64toi32_i32$1 + 120 | 0) >> 2] = $717;
|
|
HEAP32[(i64toi32_i32$1 + 124 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$0 = btConvexHullInternal__DMul_btConvexHullInternal__Int128_2c_20unsigned_20long_20long___high_28btConvexHullInternal__Int128_29(i64toi32_i32$1 + 120 | 0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
$167$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $148$hi;
|
|
i64toi32_i32$1 = $167$hi;
|
|
$729 = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $148$hi;
|
|
i64toi32_i32$0 = $167$hi;
|
|
btConvexHullInternal__DMul_btConvexHullInternal__Int128_2c_20unsigned_20long_20long___mul_28unsigned_20long_20long_2c_20unsigned_20long_20long_29($6 + 424 | 0 | 0, $148 | 0, i64toi32_i32$1 | 0, $729 | 0, i64toi32_i32$0 | 0);
|
|
$171 = 8;
|
|
i64toi32_i32$2 = ($6 + 520 | 0) + $171 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$745 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 344 | 0) + $171 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $745;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 520 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 524 | 0) >> 2] | 0;
|
|
$749 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[(i64toi32_i32$1 + 344 | 0) >> 2] = $749;
|
|
HEAP32[(i64toi32_i32$1 + 348 | 0) >> 2] = i64toi32_i32$0;
|
|
$180 = 8;
|
|
i64toi32_i32$2 = (i64toi32_i32$1 + 344 | 0) + $180 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$765 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 136 | 0) + $180 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $765;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 344 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 348 | 0) >> 2] | 0;
|
|
$769 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[(i64toi32_i32$1 + 136 | 0) >> 2] = $769;
|
|
HEAP32[(i64toi32_i32$1 + 140 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$0 = btConvexHullInternal__DMul_btConvexHullInternal__Int128_2c_20unsigned_20long_20long___low_28btConvexHullInternal__Int128_29(i64toi32_i32$1 + 136 | 0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
btConvexHullInternal__Int128__Int128_28unsigned_20long_20long_29($6 + 360 | 0 | 0, i64toi32_i32$0 | 0, i64toi32_i32$1 | 0) | 0;
|
|
$195 = 8;
|
|
i64toi32_i32$2 = ($6 + 472 | 0) + $195 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$797 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($6 + 312 | 0) + $195 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $797;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 472 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 476 | 0) >> 2] | 0;
|
|
$801 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6;
|
|
HEAP32[(i64toi32_i32$0 + 312 | 0) >> 2] = $801;
|
|
HEAP32[(i64toi32_i32$0 + 316 | 0) >> 2] = i64toi32_i32$1;
|
|
$204 = 8;
|
|
i64toi32_i32$2 = (i64toi32_i32$0 + 312 | 0) + $204 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$817 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($6 + 152 | 0) + $204 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $817;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 312 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 316 | 0) >> 2] | 0;
|
|
$821 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6;
|
|
HEAP32[(i64toi32_i32$0 + 152 | 0) >> 2] = $821;
|
|
HEAP32[(i64toi32_i32$0 + 156 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$1 = btConvexHullInternal__DMul_btConvexHullInternal__Int128_2c_20unsigned_20long_20long___low_28btConvexHullInternal__Int128_29(i64toi32_i32$0 + 152 | 0 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
btConvexHullInternal__Int128__Int128_28unsigned_20long_20long_29($6 + 328 | 0 | 0, i64toi32_i32$1 | 0, i64toi32_i32$0 | 0) | 0;
|
|
btConvexHullInternal__Int128__operator__28btConvexHullInternal__Int128_20const__29_20const($6 + 376 | 0 | 0, $6 + 360 | 0 | 0, $6 + 328 | 0 | 0);
|
|
$228 = 8;
|
|
i64toi32_i32$2 = ($6 + 520 | 0) + $228 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$864 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 280 | 0) + $228 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $864;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 520 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 524 | 0) >> 2] | 0;
|
|
$868 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[(i64toi32_i32$1 + 280 | 0) >> 2] = $868;
|
|
HEAP32[(i64toi32_i32$1 + 284 | 0) >> 2] = i64toi32_i32$0;
|
|
$237 = 8;
|
|
i64toi32_i32$2 = (i64toi32_i32$1 + 280 | 0) + $237 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$884 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 168 | 0) + $237 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $884;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 280 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 284 | 0) >> 2] | 0;
|
|
$888 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[(i64toi32_i32$1 + 168 | 0) >> 2] = $888;
|
|
HEAP32[(i64toi32_i32$1 + 172 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$0 = btConvexHullInternal__DMul_btConvexHullInternal__Int128_2c_20unsigned_20long_20long___high_28btConvexHullInternal__Int128_29(i64toi32_i32$1 + 168 | 0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
btConvexHullInternal__Int128__Int128_28unsigned_20long_20long_29($6 + 296 | 0 | 0, i64toi32_i32$0 | 0, i64toi32_i32$1 | 0) | 0;
|
|
btConvexHullInternal__Int128__operator___28btConvexHullInternal__Int128_20const__29($6 + 424 | 0 | 0, $6 + 296 | 0 | 0) | 0;
|
|
$258 = 8;
|
|
i64toi32_i32$2 = ($6 + 472 | 0) + $258 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$927 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($6 + 248 | 0) + $258 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $927;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 472 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 476 | 0) >> 2] | 0;
|
|
$931 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6;
|
|
HEAP32[(i64toi32_i32$0 + 248 | 0) >> 2] = $931;
|
|
HEAP32[(i64toi32_i32$0 + 252 | 0) >> 2] = i64toi32_i32$1;
|
|
$267 = 8;
|
|
i64toi32_i32$2 = (i64toi32_i32$0 + 248 | 0) + $267 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$947 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($6 + 184 | 0) + $267 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $947;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 248 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 252 | 0) >> 2] | 0;
|
|
$951 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6;
|
|
HEAP32[(i64toi32_i32$0 + 184 | 0) >> 2] = $951;
|
|
HEAP32[(i64toi32_i32$0 + 188 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$1 = btConvexHullInternal__DMul_btConvexHullInternal__Int128_2c_20unsigned_20long_20long___high_28btConvexHullInternal__Int128_29(i64toi32_i32$0 + 184 | 0 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
btConvexHullInternal__Int128__Int128_28unsigned_20long_20long_29($6 + 264 | 0 | 0, i64toi32_i32$1 | 0, i64toi32_i32$0 | 0) | 0;
|
|
btConvexHullInternal__Int128__operator___28btConvexHullInternal__Int128_20const__29($6 + 424 | 0 | 0, $6 + 264 | 0 | 0) | 0;
|
|
$288 = 8;
|
|
i64toi32_i32$2 = ($6 + 376 | 0) + $288 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$990 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 216 | 0) + $288 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $990;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 376 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 380 | 0) >> 2] | 0;
|
|
$994 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[(i64toi32_i32$1 + 216 | 0) >> 2] = $994;
|
|
HEAP32[(i64toi32_i32$1 + 220 | 0) >> 2] = i64toi32_i32$0;
|
|
$297 = 8;
|
|
i64toi32_i32$2 = (i64toi32_i32$1 + 216 | 0) + $297 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1010 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 200 | 0) + $297 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1010;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 216 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 220 | 0) >> 2] | 0;
|
|
$1014 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[(i64toi32_i32$1 + 200 | 0) >> 2] = $1014;
|
|
HEAP32[(i64toi32_i32$1 + 204 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$0 = btConvexHullInternal__DMul_btConvexHullInternal__Int128_2c_20unsigned_20long_20long___high_28btConvexHullInternal__Int128_29(i64toi32_i32$1 + 200 | 0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
btConvexHullInternal__Int128__Int128_28unsigned_20long_20long_29($6 + 232 | 0 | 0, i64toi32_i32$0 | 0, i64toi32_i32$1 | 0) | 0;
|
|
btConvexHullInternal__Int128__operator___28btConvexHullInternal__Int128_20const__29($6 + 424 | 0 | 0, $6 + 232 | 0 | 0) | 0;
|
|
btConvexHullInternal__DMul_btConvexHullInternal__Int128_2c_20unsigned_20long_20long___shlHalf_28btConvexHullInternal__Int128__29($6 + 376 | 0 | 0);
|
|
btConvexHullInternal__Int128__operator___28btConvexHullInternal__Int128_20const__29($6 + 568 | 0 | 0, $6 + 376 | 0 | 0) | 0;
|
|
label$1 : {
|
|
if (!((btConvexHullInternal__Int128__operator__28btConvexHullInternal__Int128_20const__29_20const_1($6 + 568 | 0 | 0, $6 + 376 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btConvexHullInternal__Int128__operator___28_29($6 + 424 | 0 | 0) | 0;
|
|
}
|
|
$339 = HEAP32[($6 + 588 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 568 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 572 | 0) >> 2] | 0;
|
|
$1081 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $339;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1081;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$341 = 8;
|
|
i64toi32_i32$2 = ($6 + 568 | 0) + $341 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1094 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $339 + $341 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1094;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$347 = HEAP32[($6 + 584 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 424 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 428 | 0) >> 2] | 0;
|
|
$1100 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $347;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1100;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$349 = 8;
|
|
i64toi32_i32$2 = ($6 + 424 | 0) + $349 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1113 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $347 + $349 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1113;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
__stack_pointer = $6 + 592 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__DMul_btConvexHullInternal__Int128_2c_20unsigned_20long_20long___low_28btConvexHullInternal__Int128_29($0) {
|
|
$0 = $0 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0;
|
|
i64toi32_i32$2 = $0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
|
|
return i64toi32_i32$0 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__DMul_btConvexHullInternal__Int128_2c_20unsigned_20long_20long___mul_28unsigned_20long_20long_2c_20unsigned_20long_20long_29($0, $1, $1$hi, $2, $2$hi) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$1$hi = $1$hi | 0;
|
|
$2 = $2 | 0;
|
|
$2$hi = $2$hi | 0;
|
|
var i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, $5 = 0, $6$hi = 0, $7$hi = 0, $6 = 0, $25 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
i64toi32_i32$0 = $1$hi;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[(i64toi32_i32$1 + 8 | 0) >> 2] = $1;
|
|
HEAP32[(i64toi32_i32$1 + 12 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $2$hi;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $2;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$1 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$1 + 12 | 0) >> 2] | 0;
|
|
$6 = i64toi32_i32$0;
|
|
$6$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = HEAP32[$5 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
$7$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6$hi;
|
|
i64toi32_i32$0 = $7$hi;
|
|
$25 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = $6$hi;
|
|
i64toi32_i32$1 = $7$hi;
|
|
btConvexHullInternal__Int128__mul_28unsigned_20long_20long_2c_20unsigned_20long_20long_29($0 | 0, $6 | 0, i64toi32_i32$0 | 0, $25 | 0, i64toi32_i32$1 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__DMul_btConvexHullInternal__Int128_2c_20unsigned_20long_20long___high_28btConvexHullInternal__Int128_29($0) {
|
|
$0 = $0 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0;
|
|
i64toi32_i32$2 = $0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
|
|
return i64toi32_i32$0 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Int128__Int128_28unsigned_20long_20long_29($0, $1, $1$hi) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$1$hi = $1$hi | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, $5 = 0, $21 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
i64toi32_i32$0 = $1$hi;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$5 = HEAP32[(i64toi32_i32$1 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$21 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $5;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $21;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
HEAP32[(i64toi32_i32$0 + 8 | 0) >> 2] = 0;
|
|
HEAP32[(i64toi32_i32$0 + 12 | 0) >> 2] = i64toi32_i32$1;
|
|
return i64toi32_i32$0 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Int128__operator__28btConvexHullInternal__Int128_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$4 = 0, i64toi32_i32$1 = 0, i64toi32_i32$5 = 0, i64toi32_i32$3 = 0, $5 = 0, $6 = 0, $16$hi = 0, $17$hi = 0, $7$hi = 0, $9$hi = 0, $11$hi = 0, $12$hi = 0, $14$hi = 0, $15$hi = 0, $23$hi = 0, $24$hi = 0, $7 = 0, $45 = 0, $11 = 0, $12 = 0, $58 = 0, $16 = 0, $67 = 0, $72 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$7 = i64toi32_i32$0;
|
|
$7$hi = i64toi32_i32$1;
|
|
i64toi32_i32$2 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$9$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $7$hi;
|
|
i64toi32_i32$0 = $9$hi;
|
|
$45 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = $7$hi;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$1 = $9$hi;
|
|
i64toi32_i32$3 = $45;
|
|
i64toi32_i32$4 = i64toi32_i32$2 + i64toi32_i32$3 | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$0 + i64toi32_i32$1 | 0;
|
|
if (i64toi32_i32$4 >>> 0 < i64toi32_i32$3 >>> 0) {
|
|
i64toi32_i32$5 = i64toi32_i32$5 + 1 | 0
|
|
}
|
|
i64toi32_i32$2 = $5;
|
|
HEAP32[i64toi32_i32$2 >> 2] = i64toi32_i32$4;
|
|
HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] = i64toi32_i32$5;
|
|
i64toi32_i32$0 = i64toi32_i32$2;
|
|
i64toi32_i32$5 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$11 = i64toi32_i32$5;
|
|
$11$hi = i64toi32_i32$2;
|
|
i64toi32_i32$0 = $6;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$0 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$0 + 12 | 0) >> 2] | 0;
|
|
$12 = i64toi32_i32$2;
|
|
$12$hi = i64toi32_i32$5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$0 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$0 + 12 | 0) >> 2] | 0;
|
|
$14$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $12$hi;
|
|
i64toi32_i32$2 = $14$hi;
|
|
$58 = i64toi32_i32$5;
|
|
i64toi32_i32$2 = $12$hi;
|
|
i64toi32_i32$0 = $12;
|
|
i64toi32_i32$5 = $14$hi;
|
|
i64toi32_i32$3 = $58;
|
|
i64toi32_i32$1 = i64toi32_i32$0 + i64toi32_i32$3 | 0;
|
|
i64toi32_i32$4 = i64toi32_i32$2 + i64toi32_i32$5 | 0;
|
|
if (i64toi32_i32$1 >>> 0 < i64toi32_i32$3 >>> 0) {
|
|
i64toi32_i32$4 = i64toi32_i32$4 + 1 | 0
|
|
}
|
|
$15$hi = i64toi32_i32$4;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$4 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$16 = i64toi32_i32$4;
|
|
$16$hi = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$4 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$17$hi = i64toi32_i32$4;
|
|
i64toi32_i32$4 = $16$hi;
|
|
i64toi32_i32$4 = $17$hi;
|
|
i64toi32_i32$4 = $16$hi;
|
|
i64toi32_i32$4 = $17$hi;
|
|
$67 = i64toi32_i32$0;
|
|
i64toi32_i32$4 = $16$hi;
|
|
i64toi32_i32$2 = $16;
|
|
i64toi32_i32$0 = $17$hi;
|
|
i64toi32_i32$3 = $67;
|
|
$72 = (i64toi32_i32$4 >>> 0 < i64toi32_i32$0 >>> 0 | ((i64toi32_i32$4 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$2 >>> 0 < i64toi32_i32$3 >>> 0 | 0) | 0) & 1 | 0;
|
|
i64toi32_i32$2 = 0;
|
|
$23$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $15$hi;
|
|
i64toi32_i32$2 = $23$hi;
|
|
i64toi32_i32$2 = $15$hi;
|
|
i64toi32_i32$3 = i64toi32_i32$1;
|
|
i64toi32_i32$4 = $23$hi;
|
|
i64toi32_i32$0 = $72;
|
|
i64toi32_i32$5 = i64toi32_i32$1 + i64toi32_i32$0 | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$2 + i64toi32_i32$4 | 0;
|
|
if (i64toi32_i32$5 >>> 0 < i64toi32_i32$0 >>> 0) {
|
|
i64toi32_i32$1 = i64toi32_i32$1 + 1 | 0
|
|
}
|
|
$24$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11$hi;
|
|
i64toi32_i32$1 = $24$hi;
|
|
i64toi32_i32$1 = $11$hi;
|
|
i64toi32_i32$3 = $24$hi;
|
|
btConvexHullInternal__Int128__Int128_28unsigned_20long_20long_2c_20unsigned_20long_20long_29($0 | 0, $11 | 0, i64toi32_i32$1 | 0, i64toi32_i32$5 | 0, i64toi32_i32$3 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Int128__operator___28btConvexHullInternal__Int128_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$5 = 0, i64toi32_i32$2 = 0, i64toi32_i32$3 = 0, i64toi32_i32$0 = 0, i64toi32_i32$4 = 0, i64toi32_i32$1 = 0, $5 = 0, $4 = 0, $10$hi = 0, $11$hi = 0, $6$hi = 0, $8$hi = 0, $17$hi = 0, $18$hi = 0, $22$hi = 0, $6 = 0, $42 = 0, $10 = 0, $53 = 0, $70 = 0, $22 = 0, $77$hi = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$6 = i64toi32_i32$0;
|
|
$6$hi = i64toi32_i32$1;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$8$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6$hi;
|
|
i64toi32_i32$0 = $8$hi;
|
|
$42 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = $6$hi;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = $8$hi;
|
|
i64toi32_i32$3 = $42;
|
|
i64toi32_i32$4 = i64toi32_i32$2 + i64toi32_i32$3 | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$0 + i64toi32_i32$1 | 0;
|
|
if (i64toi32_i32$4 >>> 0 < i64toi32_i32$3 >>> 0) {
|
|
i64toi32_i32$5 = i64toi32_i32$5 + 1 | 0
|
|
}
|
|
i64toi32_i32$2 = $4;
|
|
HEAP32[i64toi32_i32$2 >> 2] = i64toi32_i32$4;
|
|
HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] = i64toi32_i32$5;
|
|
i64toi32_i32$0 = i64toi32_i32$2;
|
|
i64toi32_i32$5 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$10 = i64toi32_i32$5;
|
|
$10$hi = i64toi32_i32$2;
|
|
i64toi32_i32$0 = $5;
|
|
i64toi32_i32$2 = HEAP32[i64toi32_i32$0 >> 2] | 0;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] | 0;
|
|
$11$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $10$hi;
|
|
i64toi32_i32$5 = $11$hi;
|
|
i64toi32_i32$5 = $10$hi;
|
|
i64toi32_i32$5 = $11$hi;
|
|
$53 = i64toi32_i32$2;
|
|
i64toi32_i32$5 = $10$hi;
|
|
i64toi32_i32$0 = $10;
|
|
i64toi32_i32$2 = $11$hi;
|
|
i64toi32_i32$3 = $53;
|
|
label$1 : {
|
|
if (!((i64toi32_i32$5 >>> 0 < i64toi32_i32$2 >>> 0 | ((i64toi32_i32$5 | 0) == (i64toi32_i32$2 | 0) & i64toi32_i32$0 >>> 0 < i64toi32_i32$3 >>> 0 | 0) | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
i64toi32_i32$3 = $5;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$3 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$3 + 12 | 0) >> 2] | 0;
|
|
$17$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = 0;
|
|
$18$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $17$hi;
|
|
i64toi32_i32$5 = $18$hi;
|
|
i64toi32_i32$5 = $17$hi;
|
|
i64toi32_i32$3 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $18$hi;
|
|
i64toi32_i32$2 = 1;
|
|
i64toi32_i32$1 = i64toi32_i32$3 + i64toi32_i32$2 | 0;
|
|
i64toi32_i32$4 = i64toi32_i32$5 + i64toi32_i32$0 | 0;
|
|
if (i64toi32_i32$1 >>> 0 < i64toi32_i32$2 >>> 0) {
|
|
i64toi32_i32$4 = i64toi32_i32$4 + 1 | 0
|
|
}
|
|
i64toi32_i32$3 = $5;
|
|
HEAP32[(i64toi32_i32$3 + 8 | 0) >> 2] = i64toi32_i32$1;
|
|
HEAP32[(i64toi32_i32$3 + 12 | 0) >> 2] = i64toi32_i32$4;
|
|
}
|
|
i64toi32_i32$5 = $4;
|
|
i64toi32_i32$4 = HEAP32[i64toi32_i32$5 >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$5 + 4 | 0) >> 2] | 0;
|
|
$70 = i64toi32_i32$4;
|
|
i64toi32_i32$4 = $5;
|
|
HEAP32[i64toi32_i32$4 >> 2] = $70;
|
|
HEAP32[(i64toi32_i32$4 + 4 | 0) >> 2] = i64toi32_i32$3;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$4 = HEAP32[(i64toi32_i32$5 + 12 | 0) >> 2] | 0;
|
|
$22 = i64toi32_i32$3;
|
|
$22$hi = i64toi32_i32$4;
|
|
i64toi32_i32$5 = $5;
|
|
i64toi32_i32$4 = HEAP32[(i64toi32_i32$5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$5 + 12 | 0) >> 2] | 0;
|
|
$77$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $22$hi;
|
|
i64toi32_i32$3 = $77$hi;
|
|
i64toi32_i32$5 = i64toi32_i32$4;
|
|
i64toi32_i32$4 = $22$hi;
|
|
i64toi32_i32$2 = $22;
|
|
i64toi32_i32$0 = i64toi32_i32$5 + i64toi32_i32$2 | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$3 + i64toi32_i32$4 | 0;
|
|
if (i64toi32_i32$0 >>> 0 < i64toi32_i32$2 >>> 0) {
|
|
i64toi32_i32$1 = i64toi32_i32$1 + 1 | 0
|
|
}
|
|
i64toi32_i32$5 = $5;
|
|
HEAP32[(i64toi32_i32$5 + 8 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[(i64toi32_i32$5 + 12 | 0) >> 2] = i64toi32_i32$1;
|
|
return i64toi32_i32$5 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__DMul_btConvexHullInternal__Int128_2c_20unsigned_20long_20long___shlHalf_28btConvexHullInternal__Int128__29($0) {
|
|
$0 = $0 | 0;
|
|
var i64toi32_i32$0 = 0, $3 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $22 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
i64toi32_i32$2 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$22 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[(i64toi32_i32$0 + 8 | 0) >> 2] = $22;
|
|
HEAP32[(i64toi32_i32$0 + 12 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
i64toi32_i32$0 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = 0;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Int128__operator__28btConvexHullInternal__Int128_20const__29_20const_1($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$3 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, $5 = 0, $6$hi = 0, $8$hi = 0, $16$hi = 0, $18$hi = 0, $26$hi = 0, $28$hi = 0, $15 = 0, $25 = 0, $6 = 0, $55 = 0, $16 = 0, $71 = 0, $26 = 0, $88 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 12 | 0) >> 2] | 0;
|
|
$6 = i64toi32_i32$0;
|
|
$6$hi = i64toi32_i32$1;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 12 | 0) >> 2] | 0;
|
|
$8$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6$hi;
|
|
i64toi32_i32$0 = $8$hi;
|
|
i64toi32_i32$0 = $6$hi;
|
|
i64toi32_i32$0 = $8$hi;
|
|
$55 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = $6$hi;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = $8$hi;
|
|
i64toi32_i32$3 = $55;
|
|
$15 = 1;
|
|
label$1 : {
|
|
if ((i64toi32_i32$0 >>> 0 < i64toi32_i32$1 >>> 0 | ((i64toi32_i32$0 | 0) == (i64toi32_i32$1 | 0) & i64toi32_i32$2 >>> 0 < i64toi32_i32$3 >>> 0 | 0) | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
i64toi32_i32$3 = $5;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$3 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$3 + 12 | 0) >> 2] | 0;
|
|
$16 = i64toi32_i32$2;
|
|
$16$hi = i64toi32_i32$0;
|
|
i64toi32_i32$3 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$3 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$3 + 12 | 0) >> 2] | 0;
|
|
$18$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $16$hi;
|
|
i64toi32_i32$2 = $18$hi;
|
|
i64toi32_i32$2 = $16$hi;
|
|
i64toi32_i32$2 = $18$hi;
|
|
$71 = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $16$hi;
|
|
i64toi32_i32$3 = $16;
|
|
i64toi32_i32$0 = $18$hi;
|
|
i64toi32_i32$1 = $71;
|
|
$25 = 0;
|
|
label$2 : {
|
|
if (!(((i64toi32_i32$3 | 0) == (i64toi32_i32$1 | 0) & (i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
i64toi32_i32$1 = $5;
|
|
i64toi32_i32$3 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$26 = i64toi32_i32$3;
|
|
$26$hi = i64toi32_i32$2;
|
|
i64toi32_i32$1 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$28$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $26$hi;
|
|
i64toi32_i32$3 = $28$hi;
|
|
i64toi32_i32$3 = $26$hi;
|
|
i64toi32_i32$3 = $28$hi;
|
|
$88 = i64toi32_i32$2;
|
|
i64toi32_i32$3 = $26$hi;
|
|
i64toi32_i32$1 = $26;
|
|
i64toi32_i32$2 = $28$hi;
|
|
i64toi32_i32$0 = $88;
|
|
$25 = i64toi32_i32$3 >>> 0 < i64toi32_i32$2 >>> 0 | ((i64toi32_i32$3 | 0) == (i64toi32_i32$2 | 0) & i64toi32_i32$1 >>> 0 < i64toi32_i32$0 >>> 0 | 0) | 0;
|
|
}
|
|
$15 = $25;
|
|
}
|
|
return $15 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Int128__operator___28_29($0) {
|
|
$0 = $0 | 0;
|
|
var i64toi32_i32$5 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, $4 = 0, $7$hi = 0, $8$hi = 0, $3 = 0, $5$hi = 0, $6$hi = 0, $14$hi = 0, $15$hi = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$5$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$6$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5$hi;
|
|
i64toi32_i32$1 = $6$hi;
|
|
i64toi32_i32$1 = $5$hi;
|
|
i64toi32_i32$2 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6$hi;
|
|
i64toi32_i32$3 = 1;
|
|
i64toi32_i32$4 = i64toi32_i32$2 + i64toi32_i32$3 | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$1 + i64toi32_i32$0 | 0;
|
|
if (i64toi32_i32$4 >>> 0 < i64toi32_i32$3 >>> 0) {
|
|
i64toi32_i32$5 = i64toi32_i32$5 + 1 | 0
|
|
}
|
|
$7$hi = i64toi32_i32$5;
|
|
i64toi32_i32$2 = $4;
|
|
HEAP32[i64toi32_i32$2 >> 2] = i64toi32_i32$4;
|
|
HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] = i64toi32_i32$5;
|
|
i64toi32_i32$5 = 0;
|
|
$8$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $7$hi;
|
|
i64toi32_i32$5 = $8$hi;
|
|
i64toi32_i32$5 = $7$hi;
|
|
i64toi32_i32$5 = $8$hi;
|
|
i64toi32_i32$5 = $7$hi;
|
|
i64toi32_i32$1 = i64toi32_i32$4;
|
|
i64toi32_i32$2 = $8$hi;
|
|
i64toi32_i32$3 = 0;
|
|
label$1 : {
|
|
if (!(((i64toi32_i32$4 | 0) == (i64toi32_i32$3 | 0) & (i64toi32_i32$5 | 0) == (i64toi32_i32$2 | 0) | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
i64toi32_i32$3 = $4;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$3 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$3 + 12 | 0) >> 2] | 0;
|
|
$14$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = 0;
|
|
$15$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $14$hi;
|
|
i64toi32_i32$5 = $15$hi;
|
|
i64toi32_i32$5 = $14$hi;
|
|
i64toi32_i32$3 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $15$hi;
|
|
i64toi32_i32$2 = 1;
|
|
i64toi32_i32$0 = i64toi32_i32$3 + i64toi32_i32$2 | 0;
|
|
i64toi32_i32$4 = i64toi32_i32$5 + i64toi32_i32$1 | 0;
|
|
if (i64toi32_i32$0 >>> 0 < i64toi32_i32$2 >>> 0) {
|
|
i64toi32_i32$4 = i64toi32_i32$4 + 1 | 0
|
|
}
|
|
i64toi32_i32$3 = $4;
|
|
HEAP32[(i64toi32_i32$3 + 8 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[(i64toi32_i32$3 + 12 | 0) >> 2] = i64toi32_i32$4;
|
|
}
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__newEdgePair_28btConvexHullInternal__Vertex__2c_20btConvexHullInternal__Vertex__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $58 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if ((HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
}
|
|
__assert_fail(76189 | 0, 72732 | 0, 1e3 | 0, 71028 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btConvexHullInternal__Pool_btConvexHullInternal__Edge___newObject_28_29($6 + 48 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btConvexHullInternal__Pool_btConvexHullInternal__Edge___newObject_28_29($6 + 48 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 20 | 0) >> 2] = HEAP32[($6 + 100 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + 20 | 0) >> 2] = HEAP32[($6 + 100 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 12 | 0) >> 2] = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 16 | 0) >> 2] = 0;
|
|
HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + 16 | 0) >> 2] = 0;
|
|
HEAP32[($6 + 116 | 0) >> 2] = (HEAP32[($6 + 116 | 0) >> 2] | 0) + 1 | 0;
|
|
label$3 : {
|
|
if (!((HEAP32[($6 + 116 | 0) >> 2] | 0 | 0) > (HEAP32[($6 + 120 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($6 + 120 | 0) >> 2] = HEAP32[($6 + 116 | 0) >> 2] | 0;
|
|
}
|
|
$58 = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return $58 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Pool_btConvexHullInternal__Edge___newObject_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, i64toi32_i32$1 = 0, $4 = 0, $34 = 0, i64toi32_i32$0 = 0, $35 = 0, $25 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
HEAP32[($3 + 4 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[((HEAP32[($3 + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
break label$2;
|
|
}
|
|
$25 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(12 | 0, 16 | 0) | 0;
|
|
btConvexHullInternal__PoolArray_btConvexHullInternal__Edge___PoolArray_28int_29($25 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($3 + 4 | 0) >> 2] = $25;
|
|
HEAP32[((HEAP32[($3 + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[$4 >> 2] | 0;
|
|
HEAP32[$4 >> 2] = HEAP32[($3 + 4 | 0) >> 2] | 0;
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btConvexHullInternal__PoolArray_btConvexHullInternal__Edge___init_28_29(HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
HEAP32[($4 + 8 | 0) >> 2] = HEAP32[(HEAP32[($3 + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
$34 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = 0;
|
|
$35 = 0;
|
|
i64toi32_i32$1 = $34;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $35;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = i64toi32_i32$1 + 16 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $35;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $34 + 8 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $35;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $34 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__PoolArray_btConvexHullInternal__Edge___PoolArray_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(Math_imul(HEAP32[($4 + 8 | 0) >> 2] | 0, 24) | 0, 16 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__PoolArray_btConvexHullInternal__Edge___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $26 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[$4 >> 2] | 0;
|
|
HEAP32[($3 + 4 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(((HEAP32[($3 + 4 | 0) >> 2] | 0) + 1 | 0 | 0) < (HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$26 = (HEAP32[($3 + 8 | 0) >> 2] | 0) + 24 | 0;
|
|
break label$3;
|
|
}
|
|
$26 = 0;
|
|
}
|
|
HEAP32[(HEAP32[($3 + 8 | 0) >> 2] | 0) >> 2] = $26;
|
|
HEAP32[($3 + 4 | 0) >> 2] = (HEAP32[($3 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = (HEAP32[($3 + 8 | 0) >> 2] | 0) + 24 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return HEAP32[$4 >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__mergeProjection_28btConvexHullInternal__IntermediateHull__2c_20btConvexHullInternal__IntermediateHull__2c_20btConvexHullInternal__Vertex___2c_20btConvexHullInternal__Vertex___29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $503 = 0, $543 = 0, $219 = 0, $279 = 0, $359 = 0, $419 = 0, $492 = 0, $495 = 0, $532 = 0, $535 = 0, $625 = 0;
|
|
$7 = __stack_pointer - 160 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 152 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 148 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 144 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 140 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 136 | 0) >> 2] = $4;
|
|
HEAP32[($7 + 132 | 0) >> 2] = HEAP32[((HEAP32[($7 + 148 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 128 | 0) >> 2] = HEAP32[((HEAP32[($7 + 144 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[((HEAP32[($7 + 132 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0 | 0) == (HEAP32[((HEAP32[($7 + 128 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if (!((HEAP32[((HEAP32[($7 + 132 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0 | 0) == (HEAP32[((HEAP32[($7 + 128 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
label$3 : {
|
|
if ((HEAP32[((HEAP32[($7 + 132 | 0) >> 2] | 0) + 96 | 0) >> 2] | 0 | 0) < (HEAP32[((HEAP32[($7 + 128 | 0) >> 2] | 0) + 96 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
__assert_fail(65574 | 0, 72732 | 0, 1025 | 0, 76421 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($7 + 124 | 0) >> 2] = HEAP32[((HEAP32[($7 + 128 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
label$4 : {
|
|
if (!((HEAP32[($7 + 124 | 0) >> 2] | 0 | 0) == (HEAP32[($7 + 128 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP32[(HEAP32[($7 + 140 | 0) >> 2] | 0) >> 2] = HEAP32[($7 + 132 | 0) >> 2] | 0;
|
|
label$5 : {
|
|
if (!((HEAP32[((HEAP32[($7 + 128 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
label$6 : {
|
|
if ((HEAP32[(HEAP32[((HEAP32[($7 + 128 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) >> 2] | 0 | 0) == (HEAP32[((HEAP32[($7 + 128 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$6
|
|
}
|
|
__assert_fail(70216 | 0, 72732 | 0, 1032 | 0, 76421 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($7 + 128 | 0) >> 2] = HEAP32[((HEAP32[((HEAP32[($7 + 128 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
label$7 : {
|
|
if ((HEAP32[(HEAP32[((HEAP32[($7 + 128 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) >> 2] | 0 | 0) == (HEAP32[((HEAP32[($7 + 128 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$7
|
|
}
|
|
__assert_fail(70216 | 0, 72732 | 0, 1034 | 0, 76421 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
}
|
|
HEAP32[(HEAP32[($7 + 136 | 0) >> 2] | 0) >> 2] = HEAP32[($7 + 128 | 0) >> 2] | 0;
|
|
HEAP8[($7 + 159 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[($7 + 120 | 0) >> 2] = HEAP32[(HEAP32[($7 + 128 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($7 + 124 | 0) >> 2] | 0) >> 2] = HEAP32[($7 + 120 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[($7 + 124 | 0) >> 2] | 0;
|
|
label$8 : {
|
|
if (!((HEAP32[($7 + 128 | 0) >> 2] | 0 | 0) == (HEAP32[(HEAP32[($7 + 144 | 0) >> 2] | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
label$9 : {
|
|
label$10 : {
|
|
label$11 : {
|
|
if ((HEAP32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0 | 0) < (HEAP32[((HEAP32[($7 + 124 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$11
|
|
}
|
|
if (!((HEAP32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0 | 0) == (HEAP32[((HEAP32[($7 + 124 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
if (!((HEAP32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0 | 0) < (HEAP32[((HEAP32[($7 + 124 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
}
|
|
HEAP32[(HEAP32[($7 + 144 | 0) >> 2] | 0) >> 2] = HEAP32[($7 + 120 | 0) >> 2] | 0;
|
|
break label$9;
|
|
}
|
|
HEAP32[(HEAP32[($7 + 144 | 0) >> 2] | 0) >> 2] = HEAP32[($7 + 124 | 0) >> 2] | 0;
|
|
}
|
|
}
|
|
label$12 : {
|
|
if (!((HEAP32[($7 + 128 | 0) >> 2] | 0 | 0) == (HEAP32[((HEAP32[($7 + 144 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
label$13 : {
|
|
label$14 : {
|
|
label$15 : {
|
|
if ((HEAP32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0 | 0) > (HEAP32[((HEAP32[($7 + 124 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$15
|
|
}
|
|
if (!((HEAP32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0 | 0) == (HEAP32[((HEAP32[($7 + 124 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
if (!((HEAP32[((HEAP32[($7 + 120 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0 | 0) > (HEAP32[((HEAP32[($7 + 124 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
}
|
|
HEAP32[((HEAP32[($7 + 144 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[($7 + 120 | 0) >> 2] | 0;
|
|
break label$13;
|
|
}
|
|
HEAP32[((HEAP32[($7 + 144 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[($7 + 124 | 0) >> 2] | 0;
|
|
}
|
|
}
|
|
}
|
|
HEAP32[($7 + 132 | 0) >> 2] = HEAP32[((HEAP32[($7 + 148 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 128 | 0) >> 2] = HEAP32[((HEAP32[($7 + 144 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 116 | 0) >> 2] = 0;
|
|
HEAP32[($7 + 112 | 0) >> 2] = 0;
|
|
HEAP32[($7 + 108 | 0) >> 2] = 1;
|
|
HEAP32[($7 + 104 | 0) >> 2] = 0;
|
|
label$16 : {
|
|
label$17 : while (1) {
|
|
if (!((HEAP32[($7 + 104 | 0) >> 2] | 0 | 0) <= (1 | 0) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
HEAP32[($7 + 100 | 0) >> 2] = Math_imul((HEAP32[((HEAP32[($7 + 128 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0) - (HEAP32[((HEAP32[($7 + 132 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0) | 0, HEAP32[($7 + 108 | 0) >> 2] | 0);
|
|
label$18 : {
|
|
label$19 : {
|
|
if (!((HEAP32[($7 + 100 | 0) >> 2] | 0 | 0) > (0 | 0) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
label$20 : {
|
|
label$21 : while (1) {
|
|
HEAP32[($7 + 96 | 0) >> 2] = (HEAP32[((HEAP32[($7 + 128 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0) - (HEAP32[((HEAP32[($7 + 132 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0) | 0;
|
|
label$22 : {
|
|
label$23 : {
|
|
if (!(HEAP32[($7 + 104 | 0) >> 2] | 0)) {
|
|
break label$23
|
|
}
|
|
$219 = HEAP32[(HEAP32[($7 + 132 | 0) >> 2] | 0) >> 2] | 0;
|
|
break label$22;
|
|
}
|
|
$219 = HEAP32[((HEAP32[($7 + 132 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($7 + 92 | 0) >> 2] = $219;
|
|
label$24 : {
|
|
if (!((HEAP32[($7 + 92 | 0) >> 2] | 0 | 0) != (HEAP32[($7 + 132 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$24
|
|
}
|
|
HEAP32[($7 + 88 | 0) >> 2] = Math_imul((HEAP32[((HEAP32[($7 + 92 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0) - (HEAP32[((HEAP32[($7 + 132 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0) | 0, HEAP32[($7 + 108 | 0) >> 2] | 0);
|
|
HEAP32[($7 + 84 | 0) >> 2] = (HEAP32[((HEAP32[($7 + 92 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0) - (HEAP32[((HEAP32[($7 + 132 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0) | 0;
|
|
label$25 : {
|
|
if (!((HEAP32[($7 + 84 | 0) >> 2] | 0 | 0) <= (0 | 0) & 1 | 0)) {
|
|
break label$25
|
|
}
|
|
label$26 : {
|
|
if (!(HEAP32[($7 + 88 | 0) >> 2] | 0)) {
|
|
break label$26
|
|
}
|
|
if (!((HEAP32[($7 + 88 | 0) >> 2] | 0 | 0) < (0 | 0) & 1 | 0)) {
|
|
break label$25
|
|
}
|
|
if (!((Math_imul(HEAP32[($7 + 84 | 0) >> 2] | 0, HEAP32[($7 + 100 | 0) >> 2] | 0) | 0) <= (Math_imul(HEAP32[($7 + 96 | 0) >> 2] | 0, HEAP32[($7 + 88 | 0) >> 2] | 0) | 0) & 1 | 0)) {
|
|
break label$25
|
|
}
|
|
}
|
|
HEAP32[($7 + 132 | 0) >> 2] = HEAP32[($7 + 92 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 100 | 0) >> 2] = Math_imul((HEAP32[((HEAP32[($7 + 128 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0) - (HEAP32[((HEAP32[($7 + 132 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0) | 0, HEAP32[($7 + 108 | 0) >> 2] | 0);
|
|
continue label$21;
|
|
}
|
|
}
|
|
label$27 : {
|
|
label$28 : {
|
|
if (!(HEAP32[($7 + 104 | 0) >> 2] | 0)) {
|
|
break label$28
|
|
}
|
|
$279 = HEAP32[(HEAP32[($7 + 128 | 0) >> 2] | 0) >> 2] | 0;
|
|
break label$27;
|
|
}
|
|
$279 = HEAP32[((HEAP32[($7 + 128 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($7 + 80 | 0) >> 2] = $279;
|
|
if (!((HEAP32[($7 + 80 | 0) >> 2] | 0 | 0) != (HEAP32[($7 + 128 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$20
|
|
}
|
|
HEAP32[($7 + 76 | 0) >> 2] = Math_imul((HEAP32[((HEAP32[($7 + 80 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0) - (HEAP32[((HEAP32[($7 + 128 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0) | 0, HEAP32[($7 + 108 | 0) >> 2] | 0);
|
|
HEAP32[($7 + 72 | 0) >> 2] = (HEAP32[((HEAP32[($7 + 80 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0) - (HEAP32[((HEAP32[($7 + 128 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0) | 0;
|
|
HEAP32[($7 + 68 | 0) >> 2] = Math_imul((HEAP32[((HEAP32[($7 + 80 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0) - (HEAP32[((HEAP32[($7 + 132 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0) | 0, HEAP32[($7 + 108 | 0) >> 2] | 0);
|
|
label$29 : {
|
|
if (!((HEAP32[($7 + 68 | 0) >> 2] | 0 | 0) > (0 | 0) & 1 | 0)) {
|
|
break label$29
|
|
}
|
|
if (!((HEAP32[($7 + 72 | 0) >> 2] | 0 | 0) < (0 | 0) & 1 | 0)) {
|
|
break label$29
|
|
}
|
|
label$30 : {
|
|
if (!(HEAP32[($7 + 76 | 0) >> 2] | 0)) {
|
|
break label$30
|
|
}
|
|
if (!((HEAP32[($7 + 76 | 0) >> 2] | 0 | 0) < (0 | 0) & 1 | 0)) {
|
|
break label$29
|
|
}
|
|
if (!((Math_imul(HEAP32[($7 + 72 | 0) >> 2] | 0, HEAP32[($7 + 100 | 0) >> 2] | 0) | 0) < (Math_imul(HEAP32[($7 + 96 | 0) >> 2] | 0, HEAP32[($7 + 76 | 0) >> 2] | 0) | 0) & 1 | 0)) {
|
|
break label$29
|
|
}
|
|
}
|
|
HEAP32[($7 + 128 | 0) >> 2] = HEAP32[($7 + 80 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 100 | 0) >> 2] = HEAP32[($7 + 68 | 0) >> 2] | 0;
|
|
continue label$21;
|
|
}
|
|
break label$21;
|
|
};
|
|
}
|
|
break label$18;
|
|
}
|
|
label$31 : {
|
|
label$32 : {
|
|
if (!((HEAP32[($7 + 100 | 0) >> 2] | 0 | 0) < (0 | 0) & 1 | 0)) {
|
|
break label$32
|
|
}
|
|
label$33 : {
|
|
label$34 : while (1) {
|
|
HEAP32[($7 + 64 | 0) >> 2] = (HEAP32[((HEAP32[($7 + 128 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0) - (HEAP32[((HEAP32[($7 + 132 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0) | 0;
|
|
label$35 : {
|
|
label$36 : {
|
|
if (!(HEAP32[($7 + 104 | 0) >> 2] | 0)) {
|
|
break label$36
|
|
}
|
|
$359 = HEAP32[((HEAP32[($7 + 128 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
break label$35;
|
|
}
|
|
$359 = HEAP32[(HEAP32[($7 + 128 | 0) >> 2] | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($7 + 60 | 0) >> 2] = $359;
|
|
label$37 : {
|
|
if (!((HEAP32[($7 + 60 | 0) >> 2] | 0 | 0) != (HEAP32[($7 + 128 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$37
|
|
}
|
|
HEAP32[($7 + 56 | 0) >> 2] = Math_imul((HEAP32[((HEAP32[($7 + 60 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0) - (HEAP32[((HEAP32[($7 + 128 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0) | 0, HEAP32[($7 + 108 | 0) >> 2] | 0);
|
|
HEAP32[($7 + 52 | 0) >> 2] = (HEAP32[((HEAP32[($7 + 60 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0) - (HEAP32[((HEAP32[($7 + 128 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0) | 0;
|
|
label$38 : {
|
|
if (!((HEAP32[($7 + 52 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$38
|
|
}
|
|
label$39 : {
|
|
if (!(HEAP32[($7 + 56 | 0) >> 2] | 0)) {
|
|
break label$39
|
|
}
|
|
if (!((HEAP32[($7 + 56 | 0) >> 2] | 0 | 0) < (0 | 0) & 1 | 0)) {
|
|
break label$38
|
|
}
|
|
if (!((Math_imul(HEAP32[($7 + 52 | 0) >> 2] | 0, HEAP32[($7 + 100 | 0) >> 2] | 0) | 0) <= (Math_imul(HEAP32[($7 + 64 | 0) >> 2] | 0, HEAP32[($7 + 56 | 0) >> 2] | 0) | 0) & 1 | 0)) {
|
|
break label$38
|
|
}
|
|
}
|
|
HEAP32[($7 + 128 | 0) >> 2] = HEAP32[($7 + 60 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 100 | 0) >> 2] = Math_imul((HEAP32[((HEAP32[($7 + 128 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0) - (HEAP32[((HEAP32[($7 + 132 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0) | 0, HEAP32[($7 + 108 | 0) >> 2] | 0);
|
|
continue label$34;
|
|
}
|
|
}
|
|
label$40 : {
|
|
label$41 : {
|
|
if (!(HEAP32[($7 + 104 | 0) >> 2] | 0)) {
|
|
break label$41
|
|
}
|
|
$419 = HEAP32[((HEAP32[($7 + 132 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
break label$40;
|
|
}
|
|
$419 = HEAP32[(HEAP32[($7 + 132 | 0) >> 2] | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($7 + 48 | 0) >> 2] = $419;
|
|
if (!((HEAP32[($7 + 48 | 0) >> 2] | 0 | 0) != (HEAP32[($7 + 132 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$33
|
|
}
|
|
HEAP32[($7 + 44 | 0) >> 2] = Math_imul((HEAP32[((HEAP32[($7 + 48 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0) - (HEAP32[((HEAP32[($7 + 132 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0) | 0, HEAP32[($7 + 108 | 0) >> 2] | 0);
|
|
HEAP32[($7 + 40 | 0) >> 2] = (HEAP32[((HEAP32[($7 + 48 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0) - (HEAP32[((HEAP32[($7 + 132 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0) | 0;
|
|
HEAP32[($7 + 36 | 0) >> 2] = Math_imul((HEAP32[((HEAP32[($7 + 128 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0) - (HEAP32[((HEAP32[($7 + 48 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0) | 0, HEAP32[($7 + 108 | 0) >> 2] | 0);
|
|
label$42 : {
|
|
if (!((HEAP32[($7 + 36 | 0) >> 2] | 0 | 0) < (0 | 0) & 1 | 0)) {
|
|
break label$42
|
|
}
|
|
if (!((HEAP32[($7 + 40 | 0) >> 2] | 0 | 0) > (0 | 0) & 1 | 0)) {
|
|
break label$42
|
|
}
|
|
label$43 : {
|
|
if (!(HEAP32[($7 + 44 | 0) >> 2] | 0)) {
|
|
break label$43
|
|
}
|
|
if (!((HEAP32[($7 + 44 | 0) >> 2] | 0 | 0) < (0 | 0) & 1 | 0)) {
|
|
break label$42
|
|
}
|
|
if (!((Math_imul(HEAP32[($7 + 40 | 0) >> 2] | 0, HEAP32[($7 + 100 | 0) >> 2] | 0) | 0) < (Math_imul(HEAP32[($7 + 64 | 0) >> 2] | 0, HEAP32[($7 + 44 | 0) >> 2] | 0) | 0) & 1 | 0)) {
|
|
break label$42
|
|
}
|
|
}
|
|
HEAP32[($7 + 132 | 0) >> 2] = HEAP32[($7 + 48 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 100 | 0) >> 2] = HEAP32[($7 + 36 | 0) >> 2] | 0;
|
|
continue label$34;
|
|
}
|
|
break label$34;
|
|
};
|
|
}
|
|
break label$31;
|
|
}
|
|
HEAP32[($7 + 32 | 0) >> 2] = HEAP32[((HEAP32[($7 + 132 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 28 | 0) >> 2] = HEAP32[((HEAP32[($7 + 132 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = HEAP32[($7 + 132 | 0) >> 2] | 0;
|
|
label$44 : while (1) {
|
|
label$45 : {
|
|
label$46 : {
|
|
if (!(HEAP32[($7 + 104 | 0) >> 2] | 0)) {
|
|
break label$46
|
|
}
|
|
$492 = HEAP32[(HEAP32[($7 + 24 | 0) >> 2] | 0) >> 2] | 0;
|
|
break label$45;
|
|
}
|
|
$492 = HEAP32[((HEAP32[($7 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
}
|
|
$495 = $492;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $495;
|
|
$503 = 0;
|
|
label$47 : {
|
|
if (!(($495 | 0) != (HEAP32[($7 + 132 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$47
|
|
}
|
|
$503 = 0;
|
|
if (!((HEAP32[((HEAP32[($7 + 20 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0 | 0) == (HEAP32[($7 + 32 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$47
|
|
}
|
|
$503 = (HEAP32[((HEAP32[($7 + 20 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0 | 0) <= (HEAP32[($7 + 28 | 0) >> 2] | 0 | 0);
|
|
}
|
|
label$48 : {
|
|
if (!($503 & 1 | 0)) {
|
|
break label$48
|
|
}
|
|
HEAP32[($7 + 24 | 0) >> 2] = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 28 | 0) >> 2] = HEAP32[((HEAP32[($7 + 20 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0;
|
|
continue label$44;
|
|
}
|
|
break label$44;
|
|
};
|
|
HEAP32[($7 + 132 | 0) >> 2] = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 16 | 0) >> 2] = HEAP32[((HEAP32[($7 + 128 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 12 | 0) >> 2] = HEAP32[($7 + 128 | 0) >> 2] | 0;
|
|
label$49 : while (1) {
|
|
label$50 : {
|
|
label$51 : {
|
|
if (!(HEAP32[($7 + 104 | 0) >> 2] | 0)) {
|
|
break label$51
|
|
}
|
|
$532 = HEAP32[((HEAP32[($7 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
break label$50;
|
|
}
|
|
$532 = HEAP32[(HEAP32[($7 + 12 | 0) >> 2] | 0) >> 2] | 0;
|
|
}
|
|
$535 = $532;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $535;
|
|
$543 = 0;
|
|
label$52 : {
|
|
if (!(($535 | 0) != (HEAP32[($7 + 128 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$52
|
|
}
|
|
$543 = 0;
|
|
if (!((HEAP32[((HEAP32[($7 + 20 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0 | 0) == (HEAP32[($7 + 32 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$52
|
|
}
|
|
$543 = (HEAP32[((HEAP32[($7 + 20 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0 | 0) >= (HEAP32[($7 + 16 | 0) >> 2] | 0 | 0);
|
|
}
|
|
label$53 : {
|
|
if (!($543 & 1 | 0)) {
|
|
break label$53
|
|
}
|
|
HEAP32[($7 + 12 | 0) >> 2] = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 16 | 0) >> 2] = HEAP32[((HEAP32[($7 + 20 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0;
|
|
continue label$49;
|
|
}
|
|
break label$49;
|
|
};
|
|
HEAP32[($7 + 128 | 0) >> 2] = HEAP32[($7 + 12 | 0) >> 2] | 0;
|
|
}
|
|
}
|
|
label$54 : {
|
|
if (HEAP32[($7 + 104 | 0) >> 2] | 0) {
|
|
break label$54
|
|
}
|
|
HEAP32[($7 + 116 | 0) >> 2] = HEAP32[($7 + 132 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 112 | 0) >> 2] = HEAP32[($7 + 128 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 132 | 0) >> 2] = HEAP32[(HEAP32[($7 + 148 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($7 + 128 | 0) >> 2] = HEAP32[(HEAP32[($7 + 144 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($7 + 108 | 0) >> 2] = -1;
|
|
}
|
|
HEAP32[($7 + 104 | 0) >> 2] = (HEAP32[($7 + 104 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$17;
|
|
};
|
|
}
|
|
HEAP32[((HEAP32[($7 + 132 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[($7 + 128 | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($7 + 128 | 0) >> 2] | 0) >> 2] = HEAP32[($7 + 132 | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($7 + 116 | 0) >> 2] | 0) >> 2] = HEAP32[($7 + 112 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($7 + 112 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[($7 + 116 | 0) >> 2] | 0;
|
|
label$55 : {
|
|
if (!((HEAP32[((HEAP32[(HEAP32[($7 + 144 | 0) >> 2] | 0) >> 2] | 0) + 88 | 0) >> 2] | 0 | 0) < (HEAP32[((HEAP32[(HEAP32[($7 + 148 | 0) >> 2] | 0) >> 2] | 0) + 88 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$55
|
|
}
|
|
HEAP32[(HEAP32[($7 + 148 | 0) >> 2] | 0) >> 2] = HEAP32[(HEAP32[($7 + 144 | 0) >> 2] | 0) >> 2] | 0;
|
|
}
|
|
label$56 : {
|
|
if (!((HEAP32[((HEAP32[((HEAP32[($7 + 144 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0 | 0) >= (HEAP32[((HEAP32[((HEAP32[($7 + 148 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$56
|
|
}
|
|
HEAP32[((HEAP32[($7 + 148 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[((HEAP32[($7 + 144 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[((HEAP32[($7 + 148 | 0) >> 2] | 0) + 12 | 0) >> 2] = HEAP32[((HEAP32[($7 + 144 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($7 + 140 | 0) >> 2] | 0) >> 2] = HEAP32[($7 + 116 | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($7 + 136 | 0) >> 2] | 0) >> 2] = HEAP32[($7 + 112 | 0) >> 2] | 0;
|
|
HEAP8[($7 + 159 | 0) >> 0] = 1 & 1 | 0;
|
|
}
|
|
$625 = (HEAPU8[($7 + 159 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $7 + 160 | 0;
|
|
return $625 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__computeInternal_28int_2c_20int_2c_20btConvexHullInternal__IntermediateHull__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $11 = 0, $205 = 0, $206 = 0, $222 = 0, $767 = 0, $771 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 96 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 92 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 88 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 84 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 80 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 92 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 76 | 0) >> 2] = (HEAP32[($6 + 84 | 0) >> 2] | 0) - (HEAP32[($6 + 88 | 0) >> 2] | 0) | 0;
|
|
$11 = HEAP32[($6 + 76 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
switch ($11 | 0) {
|
|
case 0:
|
|
HEAP32[(HEAP32[($6 + 80 | 0) >> 2] | 0) >> 2] = 0;
|
|
HEAP32[((HEAP32[($6 + 80 | 0) >> 2] | 0) + 4 | 0) >> 2] = 0;
|
|
HEAP32[((HEAP32[($6 + 80 | 0) >> 2] | 0) + 8 | 0) >> 2] = 0;
|
|
HEAP32[((HEAP32[($6 + 80 | 0) >> 2] | 0) + 12 | 0) >> 2] = 0;
|
|
break label$1;
|
|
case 2:
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btConvexHullInternal__Vertex____operator_5b_5d_28int_29($7 + 80 | 0 | 0, HEAP32[($6 + 88 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 72 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($6 + 68 | 0) >> 2] = (HEAP32[($6 + 72 | 0) >> 2] | 0) + 112 | 0;
|
|
label$6 : {
|
|
if (!((btConvexHullInternal__Point32__operator___28btConvexHullInternal__Point32_20const__29_20const((HEAP32[($6 + 72 | 0) >> 2] | 0) + 88 | 0 | 0, (HEAP32[($6 + 68 | 0) >> 2] | 0) + 88 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAP32[($6 + 64 | 0) >> 2] = (HEAP32[((HEAP32[($6 + 72 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0) - (HEAP32[((HEAP32[($6 + 68 | 0) >> 2] | 0) + 88 | 0) >> 2] | 0) | 0;
|
|
HEAP32[($6 + 60 | 0) >> 2] = (HEAP32[((HEAP32[($6 + 72 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0) - (HEAP32[((HEAP32[($6 + 68 | 0) >> 2] | 0) + 92 | 0) >> 2] | 0) | 0;
|
|
label$7 : {
|
|
label$8 : {
|
|
if (HEAP32[($6 + 64 | 0) >> 2] | 0) {
|
|
break label$8
|
|
}
|
|
if (HEAP32[($6 + 60 | 0) >> 2] | 0) {
|
|
break label$8
|
|
}
|
|
label$9 : {
|
|
if (!((HEAP32[((HEAP32[($6 + 72 | 0) >> 2] | 0) + 96 | 0) >> 2] | 0 | 0) > (HEAP32[((HEAP32[($6 + 68 | 0) >> 2] | 0) + 96 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
HEAP32[($6 + 56 | 0) >> 2] = HEAP32[($6 + 68 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 68 | 0) >> 2] = HEAP32[($6 + 72 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 72 | 0) >> 2] = HEAP32[($6 + 56 | 0) >> 2] | 0;
|
|
}
|
|
label$10 : {
|
|
if ((HEAP32[((HEAP32[($6 + 72 | 0) >> 2] | 0) + 96 | 0) >> 2] | 0 | 0) < (HEAP32[((HEAP32[($6 + 68 | 0) >> 2] | 0) + 96 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$10
|
|
}
|
|
__assert_fail(65550 | 0, 72732 | 0, 1232 | 0, 77500 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[(HEAP32[($6 + 72 | 0) >> 2] | 0) >> 2] = HEAP32[($6 + 72 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 72 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[($6 + 72 | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($6 + 80 | 0) >> 2] | 0) >> 2] = HEAP32[($6 + 72 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 80 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[($6 + 72 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 80 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($6 + 72 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 80 | 0) >> 2] | 0) + 12 | 0) >> 2] = HEAP32[($6 + 72 | 0) >> 2] | 0;
|
|
break label$7;
|
|
}
|
|
HEAP32[(HEAP32[($6 + 72 | 0) >> 2] | 0) >> 2] = HEAP32[($6 + 68 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 72 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[($6 + 68 | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($6 + 68 | 0) >> 2] | 0) >> 2] = HEAP32[($6 + 72 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 68 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[($6 + 72 | 0) >> 2] | 0;
|
|
label$11 : {
|
|
label$12 : {
|
|
label$13 : {
|
|
if ((HEAP32[($6 + 64 | 0) >> 2] | 0 | 0) < (0 | 0) & 1 | 0) {
|
|
break label$13
|
|
}
|
|
if (HEAP32[($6 + 64 | 0) >> 2] | 0) {
|
|
break label$12
|
|
}
|
|
if (!((HEAP32[($6 + 60 | 0) >> 2] | 0 | 0) < (0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
}
|
|
HEAP32[(HEAP32[($6 + 80 | 0) >> 2] | 0) >> 2] = HEAP32[($6 + 72 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 80 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[($6 + 68 | 0) >> 2] | 0;
|
|
break label$11;
|
|
}
|
|
HEAP32[(HEAP32[($6 + 80 | 0) >> 2] | 0) >> 2] = HEAP32[($6 + 68 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 80 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[($6 + 72 | 0) >> 2] | 0;
|
|
}
|
|
label$14 : {
|
|
label$15 : {
|
|
label$16 : {
|
|
if ((HEAP32[($6 + 60 | 0) >> 2] | 0 | 0) < (0 | 0) & 1 | 0) {
|
|
break label$16
|
|
}
|
|
if (HEAP32[($6 + 60 | 0) >> 2] | 0) {
|
|
break label$15
|
|
}
|
|
if (!((HEAP32[($6 + 64 | 0) >> 2] | 0 | 0) < (0 | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
}
|
|
HEAP32[((HEAP32[($6 + 80 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($6 + 72 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 80 | 0) >> 2] | 0) + 12 | 0) >> 2] = HEAP32[($6 + 68 | 0) >> 2] | 0;
|
|
break label$14;
|
|
}
|
|
HEAP32[((HEAP32[($6 + 80 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($6 + 68 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 80 | 0) >> 2] | 0) + 12 | 0) >> 2] = HEAP32[($6 + 72 | 0) >> 2] | 0;
|
|
}
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btConvexHullInternal__newEdgePair_28btConvexHullInternal__Vertex__2c_20btConvexHullInternal__Vertex__29($7 | 0, HEAP32[($6 + 72 | 0) >> 2] | 0 | 0, HEAP32[($6 + 68 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 52 | 0) >> 2] = wasm2js_i32$1;
|
|
btConvexHullInternal__Edge__link_28btConvexHullInternal__Edge__29(HEAP32[($6 + 52 | 0) >> 2] | 0 | 0, HEAP32[($6 + 52 | 0) >> 2] | 0 | 0);
|
|
HEAP32[((HEAP32[($6 + 72 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($6 + 52 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 52 | 0) >> 2] = HEAP32[((HEAP32[($6 + 52 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
btConvexHullInternal__Edge__link_28btConvexHullInternal__Edge__29(HEAP32[($6 + 52 | 0) >> 2] | 0 | 0, HEAP32[($6 + 52 | 0) >> 2] | 0 | 0);
|
|
HEAP32[((HEAP32[($6 + 68 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($6 + 52 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btConvexHullInternal__Vertex____operator_5b_5d_28int_29($7 + 80 | 0 | 0, HEAP32[($6 + 88 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 48 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[((HEAP32[($6 + 48 | 0) >> 2] | 0) + 8 | 0) >> 2] = 0;
|
|
HEAP32[(HEAP32[($6 + 48 | 0) >> 2] | 0) >> 2] = HEAP32[($6 + 48 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 48 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[($6 + 48 | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($6 + 80 | 0) >> 2] | 0) >> 2] = HEAP32[($6 + 48 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 80 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[($6 + 48 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 80 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($6 + 48 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 80 | 0) >> 2] | 0) + 12 | 0) >> 2] = HEAP32[($6 + 48 | 0) >> 2] | 0;
|
|
break label$1;
|
|
case 1:
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btConvexHullInternal__Vertex____operator_5b_5d_28int_29($7 + 80 | 0 | 0, HEAP32[($6 + 88 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[((HEAP32[($6 + 44 | 0) >> 2] | 0) + 8 | 0) >> 2] = 0;
|
|
HEAP32[(HEAP32[($6 + 44 | 0) >> 2] | 0) >> 2] = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 44 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($6 + 80 | 0) >> 2] | 0) >> 2] = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 80 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 80 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 80 | 0) >> 2] | 0) + 12 | 0) >> 2] = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
break label$1;
|
|
default:
|
|
break label$2;
|
|
};
|
|
}
|
|
HEAP32[($6 + 40 | 0) >> 2] = (HEAP32[($6 + 88 | 0) >> 2] | 0) + ((HEAP32[($6 + 76 | 0) >> 2] | 0 | 0) / (2 | 0) | 0) | 0;
|
|
$205 = (HEAP32[(btAlignedObjectArray_btConvexHullInternal__Vertex____operator_5b_5d_28int_29($7 + 80 | 0 | 0, (HEAP32[($6 + 40 | 0) >> 2] | 0) - 1 | 0 | 0) | 0) >> 2] | 0) + 88 | 0;
|
|
$206 = 8;
|
|
i64toi32_i32$2 = $205 + $206 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$767 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 24 | 0) + $206 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $767;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $205;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$771 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $771;
|
|
HEAP32[($6 + 28 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($6 + 20 | 0) >> 2] = HEAP32[($6 + 40 | 0) >> 2] | 0;
|
|
label$17 : while (1) {
|
|
$222 = 0;
|
|
label$18 : {
|
|
if (!((HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 84 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$18
|
|
}
|
|
$222 = btConvexHullInternal__Point32__operator___28btConvexHullInternal__Point32_20const__29_20const_1((HEAP32[(btAlignedObjectArray_btConvexHullInternal__Vertex____operator_5b_5d_28int_29($7 + 80 | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0) + 88 | 0 | 0, $6 + 24 | 0 | 0) | 0;
|
|
}
|
|
label$19 : {
|
|
if (!($222 & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
HEAP32[($6 + 20 | 0) >> 2] = (HEAP32[($6 + 20 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$17;
|
|
}
|
|
break label$17;
|
|
};
|
|
btConvexHullInternal__computeInternal_28int_2c_20int_2c_20btConvexHullInternal__IntermediateHull__29($7 | 0, HEAP32[($6 + 88 | 0) >> 2] | 0 | 0, HEAP32[($6 + 40 | 0) >> 2] | 0 | 0, HEAP32[($6 + 80 | 0) >> 2] | 0 | 0);
|
|
btConvexHullInternal__IntermediateHull__IntermediateHull_28_29($6 + 4 | 0 | 0) | 0;
|
|
btConvexHullInternal__computeInternal_28int_2c_20int_2c_20btConvexHullInternal__IntermediateHull__29($7 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, HEAP32[($6 + 84 | 0) >> 2] | 0 | 0, $6 + 4 | 0 | 0);
|
|
btConvexHullInternal__merge_28btConvexHullInternal__IntermediateHull__2c_20btConvexHullInternal__IntermediateHull__29($7 | 0, HEAP32[($6 + 80 | 0) >> 2] | 0 | 0, $6 + 4 | 0 | 0);
|
|
}
|
|
__stack_pointer = $6 + 96 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Vertex____operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78295 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btConvexHullInternal__Vertex____size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78295 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Point32__operator___28btConvexHullInternal__Point32_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $15 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$15 = 1;
|
|
label$1 : {
|
|
if ((HEAP32[$5 >> 2] | 0 | 0) != (HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
$15 = 1;
|
|
if ((HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) != (HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
$15 = (HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) != (HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0);
|
|
}
|
|
return $15 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Edge__link_28btConvexHullInternal__Edge__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) == (HEAP32[((HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(68510 | 0, 72732 | 0, 528 | 0, 77666 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[$5 >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] = $5;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Point32__operator___28btConvexHullInternal__Point32_20const__29_20const_1($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $15 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$15 = 0;
|
|
label$1 : {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) == (HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$15 = 0;
|
|
if (!((HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) == (HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$15 = (HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) == (HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0);
|
|
}
|
|
return $15 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__IntermediateHull__IntermediateHull_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__merge_28btConvexHullInternal__IntermediateHull__2c_20btConvexHullInternal__IntermediateHull__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, i64toi32_i32$3 = 0, $6 = 0, $118$hi = 0, $119$hi = 0, $129$hi = 0, $130$hi = 0, $150$hi = 0, $151$hi = 0, $222$hi = 0, $223$hi = 0, $233$hi = 0, $234$hi = 0, $254$hi = 0, $255$hi = 0, $24 = 0, $26 = 0, $65 = 0, $60 = 0, $61 = 0, $62 = 0, $137 = 0, $63 = 0, $64 = 0, $66 = 0, $166 = 0, $172 = 0, $67 = 0, $68 = 0, $69 = 0, $241 = 0, $70 = 0, $71 = 0, $72 = 0, $270 = 0, $276 = 0, $325 = 0, $346 = 0, $347 = 0, $359 = 0, $360 = 0, $408 = 0, $429 = 0, $482 = 0, $491 = 0, $565 = 0, $635 = 0, $636 = 0, $716 = 0, $717 = 0, $863 = 0, $873 = 0, $1040 = 0, $167 = 0, $168 = 0, $1226 = 0, $271 = 0, $272 = 0, $1462 = 0, $1466 = 0, $1491 = 0, $1495 = 0, $2055 = 0, $2059 = 0, $2228 = 0, $2232 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 496 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 492 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 488 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 484 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 492 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if ((HEAP32[((HEAP32[($5 + 484 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
if ((HEAP32[((HEAP32[($5 + 488 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
$24 = HEAP32[($5 + 488 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 484 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$863 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $24;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $863;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$26 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $26 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$873 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $24 + $26 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $873;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$1;
|
|
}
|
|
HEAP32[($6 + 100 | 0) >> 2] = (HEAP32[($6 + 100 | 0) >> 2] | 0) + -1 | 0;
|
|
HEAP32[($5 + 480 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 476 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 472 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 468 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 464 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 460 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 456 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 452 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 448 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 444 | 0) >> 2] = 0;
|
|
btConvexHullInternal__Point32__Point32_28_29($5 + 424 | 0 | 0) | 0;
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!((btConvexHullInternal__mergeProjection_28btConvexHullInternal__IntermediateHull__2c_20btConvexHullInternal__IntermediateHull__2c_20btConvexHullInternal__Vertex___2c_20btConvexHullInternal__Vertex___29($6 | 0, HEAP32[($5 + 488 | 0) >> 2] | 0 | 0, HEAP32[($5 + 484 | 0) >> 2] | 0 | 0, $5 + 480 | 0 | 0, $5 + 460 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btConvexHullInternal__Vertex__operator__28btConvexHullInternal__Vertex_20const__29_20const($5 + 408 | 0 | 0, HEAP32[($5 + 460 | 0) >> 2] | 0 | 0, HEAP32[($5 + 480 | 0) >> 2] | 0 | 0);
|
|
$65 = 0;
|
|
btConvexHullInternal__Point32__Point32_28int_2c_20int_2c_20int_29($5 + 368 | 0 | 0, $65 | 0, $65 | 0, -1 | 0) | 0;
|
|
btConvexHullInternal__Point32__cross_28btConvexHullInternal__Point32_20const__29_20const($5 + 384 | 0 | 0, $5 + 368 | 0 | 0, $5 + 408 | 0 | 0);
|
|
btConvexHullInternal__Point32__cross_28btConvexHullInternal__Point64_20const__29_20const($5 + 344 | 0 | 0, $5 + 408 | 0 | 0, $5 + 384 | 0 | 0);
|
|
label$6 : {
|
|
if (!((btConvexHullInternal__Point64__isZero_28_29($5 + 344 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
__assert_fail(87266 | 0, 72732 | 0, 1691 | 0, 81906 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($5 + 340 | 0) >> 2] = HEAP32[((HEAP32[($5 + 480 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 336 | 0) >> 2] = 0;
|
|
label$7 : {
|
|
if (!((HEAP32[($5 + 340 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
label$8 : while (1) {
|
|
btConvexHullInternal__Vertex__operator__28btConvexHullInternal__Vertex_20const__29_20const($5 + 312 | 0 | 0, HEAP32[((HEAP32[($5 + 340 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0, HEAP32[($5 + 480 | 0) >> 2] | 0 | 0);
|
|
i64toi32_i32$0 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const($5 + 312 | 0 | 0, $5 + 384 | 0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
$1040 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $5;
|
|
HEAP32[($5 + 328 | 0) >> 2] = $1040;
|
|
HEAP32[($5 + 332 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[($5 + 328 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 332 | 0) >> 2] | 0;
|
|
$118$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 0;
|
|
$119$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $118$hi;
|
|
i64toi32_i32$0 = $119$hi;
|
|
i64toi32_i32$0 = $118$hi;
|
|
i64toi32_i32$0 = $119$hi;
|
|
i64toi32_i32$0 = $118$hi;
|
|
i64toi32_i32$2 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $119$hi;
|
|
i64toi32_i32$3 = 0;
|
|
if ((i64toi32_i32$0 | 0) < (i64toi32_i32$1 | 0)) {
|
|
$60 = 1
|
|
} else {
|
|
if ((i64toi32_i32$0 | 0) <= (i64toi32_i32$1 | 0)) {
|
|
if (i64toi32_i32$2 >>> 0 > i64toi32_i32$3 >>> 0) {
|
|
$61 = 0
|
|
} else {
|
|
$61 = 1
|
|
}
|
|
$62 = $61;
|
|
} else {
|
|
$62 = 0
|
|
}
|
|
$60 = $62;
|
|
}
|
|
label$9 : {
|
|
if ($60 & 1 | 0) {
|
|
break label$9
|
|
}
|
|
__assert_fail(86116 | 0, 72732 | 0, 1700 | 0, 81906 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
i64toi32_i32$3 = $5;
|
|
i64toi32_i32$2 = HEAP32[($5 + 328 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 332 | 0) >> 2] | 0;
|
|
$129$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 0;
|
|
$130$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $129$hi;
|
|
i64toi32_i32$0 = $130$hi;
|
|
i64toi32_i32$0 = $129$hi;
|
|
i64toi32_i32$0 = $130$hi;
|
|
i64toi32_i32$0 = $129$hi;
|
|
i64toi32_i32$3 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $130$hi;
|
|
i64toi32_i32$1 = 0;
|
|
$137 = 0;
|
|
label$10 : {
|
|
if (!(((i64toi32_i32$3 | 0) == (i64toi32_i32$1 | 0) & (i64toi32_i32$0 | 0) == (i64toi32_i32$2 | 0) | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
btConvexHullInternal__Vertex__operator__28btConvexHullInternal__Vertex_20const__29_20const($5 + 296 | 0 | 0, HEAP32[((HEAP32[($5 + 340 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0, HEAP32[($5 + 480 | 0) >> 2] | 0 | 0);
|
|
i64toi32_i32$3 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const($5 + 296 | 0 | 0, $5 + 344 | 0 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
$150$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 0;
|
|
$151$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $150$hi;
|
|
i64toi32_i32$0 = $151$hi;
|
|
i64toi32_i32$0 = $150$hi;
|
|
i64toi32_i32$0 = $151$hi;
|
|
i64toi32_i32$0 = $150$hi;
|
|
i64toi32_i32$1 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $151$hi;
|
|
i64toi32_i32$2 = 0;
|
|
if ((i64toi32_i32$0 | 0) > (i64toi32_i32$3 | 0)) {
|
|
$63 = 1
|
|
} else {
|
|
if ((i64toi32_i32$0 | 0) >= (i64toi32_i32$3 | 0)) {
|
|
if (i64toi32_i32$1 >>> 0 <= i64toi32_i32$2 >>> 0) {
|
|
$64 = 0
|
|
} else {
|
|
$64 = 1
|
|
}
|
|
$66 = $64;
|
|
} else {
|
|
$66 = 0
|
|
}
|
|
$63 = $66;
|
|
}
|
|
$137 = $63;
|
|
}
|
|
label$11 : {
|
|
if (!($137 & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
$166 = 1;
|
|
label$12 : {
|
|
if (!((HEAP32[($5 + 336 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
$167 = HEAP32[($5 + 336 | 0) >> 2] | 0;
|
|
$168 = HEAP32[($5 + 340 | 0) >> 2] | 0;
|
|
$172 = 0;
|
|
btConvexHullInternal__Point32__Point32_28int_2c_20int_2c_20int_29($5 + 280 | 0 | 0, $172 | 0, $172 | 0, -1 | 0) | 0;
|
|
$166 = (btConvexHullInternal__getOrientation_28btConvexHullInternal__Edge_20const__2c_20btConvexHullInternal__Edge_20const__2c_20btConvexHullInternal__Point32_20const__2c_20btConvexHullInternal__Point32_20const__29($167 | 0, $168 | 0, $5 + 408 | 0 | 0, $5 + 280 | 0 | 0) | 0 | 0) == (1 | 0);
|
|
}
|
|
label$13 : {
|
|
if (!($166 & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
HEAP32[($5 + 336 | 0) >> 2] = HEAP32[($5 + 340 | 0) >> 2] | 0;
|
|
}
|
|
}
|
|
HEAP32[($5 + 340 | 0) >> 2] = HEAP32[(HEAP32[($5 + 340 | 0) >> 2] | 0) >> 2] | 0;
|
|
if ((HEAP32[($5 + 340 | 0) >> 2] | 0 | 0) != (HEAP32[((HEAP32[($5 + 480 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
continue label$8
|
|
}
|
|
break label$8;
|
|
};
|
|
}
|
|
HEAP32[($5 + 340 | 0) >> 2] = HEAP32[((HEAP32[($5 + 460 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 276 | 0) >> 2] = 0;
|
|
label$14 : {
|
|
if (!((HEAP32[($5 + 340 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
label$15 : while (1) {
|
|
btConvexHullInternal__Vertex__operator__28btConvexHullInternal__Vertex_20const__29_20const($5 + 248 | 0 | 0, HEAP32[((HEAP32[($5 + 340 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0, HEAP32[($5 + 460 | 0) >> 2] | 0 | 0);
|
|
i64toi32_i32$1 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const($5 + 248 | 0 | 0, $5 + 384 | 0 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
$1226 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 264 | 0) >> 2] = $1226;
|
|
HEAP32[($5 + 268 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 264 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 268 | 0) >> 2] | 0;
|
|
$222$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$223$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $222$hi;
|
|
i64toi32_i32$1 = $223$hi;
|
|
i64toi32_i32$1 = $222$hi;
|
|
i64toi32_i32$1 = $223$hi;
|
|
i64toi32_i32$1 = $222$hi;
|
|
i64toi32_i32$2 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $223$hi;
|
|
i64toi32_i32$3 = 0;
|
|
if ((i64toi32_i32$1 | 0) < (i64toi32_i32$0 | 0)) {
|
|
$67 = 1
|
|
} else {
|
|
if ((i64toi32_i32$1 | 0) <= (i64toi32_i32$0 | 0)) {
|
|
if (i64toi32_i32$2 >>> 0 > i64toi32_i32$3 >>> 0) {
|
|
$68 = 0
|
|
} else {
|
|
$68 = 1
|
|
}
|
|
$69 = $68;
|
|
} else {
|
|
$69 = 0
|
|
}
|
|
$67 = $69;
|
|
}
|
|
label$16 : {
|
|
if ($67 & 1 | 0) {
|
|
break label$16
|
|
}
|
|
__assert_fail(86116 | 0, 72732 | 0, 1719 | 0, 81906 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
i64toi32_i32$3 = $5;
|
|
i64toi32_i32$2 = HEAP32[($5 + 264 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 268 | 0) >> 2] | 0;
|
|
$233$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$234$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $233$hi;
|
|
i64toi32_i32$1 = $234$hi;
|
|
i64toi32_i32$1 = $233$hi;
|
|
i64toi32_i32$1 = $234$hi;
|
|
i64toi32_i32$1 = $233$hi;
|
|
i64toi32_i32$3 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $234$hi;
|
|
i64toi32_i32$0 = 0;
|
|
$241 = 0;
|
|
label$17 : {
|
|
if (!(((i64toi32_i32$3 | 0) == (i64toi32_i32$0 | 0) & (i64toi32_i32$1 | 0) == (i64toi32_i32$2 | 0) | 0) & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
btConvexHullInternal__Vertex__operator__28btConvexHullInternal__Vertex_20const__29_20const($5 + 232 | 0 | 0, HEAP32[((HEAP32[($5 + 340 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0, HEAP32[($5 + 460 | 0) >> 2] | 0 | 0);
|
|
i64toi32_i32$3 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const($5 + 232 | 0 | 0, $5 + 344 | 0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
$254$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$255$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $254$hi;
|
|
i64toi32_i32$1 = $255$hi;
|
|
i64toi32_i32$1 = $254$hi;
|
|
i64toi32_i32$1 = $255$hi;
|
|
i64toi32_i32$1 = $254$hi;
|
|
i64toi32_i32$0 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $255$hi;
|
|
i64toi32_i32$2 = 0;
|
|
if ((i64toi32_i32$1 | 0) > (i64toi32_i32$3 | 0)) {
|
|
$70 = 1
|
|
} else {
|
|
if ((i64toi32_i32$1 | 0) >= (i64toi32_i32$3 | 0)) {
|
|
if (i64toi32_i32$0 >>> 0 <= i64toi32_i32$2 >>> 0) {
|
|
$71 = 0
|
|
} else {
|
|
$71 = 1
|
|
}
|
|
$72 = $71;
|
|
} else {
|
|
$72 = 0
|
|
}
|
|
$70 = $72;
|
|
}
|
|
$241 = $70;
|
|
}
|
|
label$18 : {
|
|
if (!($241 & 1 | 0)) {
|
|
break label$18
|
|
}
|
|
$270 = 1;
|
|
label$19 : {
|
|
if (!((HEAP32[($5 + 276 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
$271 = HEAP32[($5 + 276 | 0) >> 2] | 0;
|
|
$272 = HEAP32[($5 + 340 | 0) >> 2] | 0;
|
|
$276 = 0;
|
|
btConvexHullInternal__Point32__Point32_28int_2c_20int_2c_20int_29($5 + 216 | 0 | 0, $276 | 0, $276 | 0, -1 | 0) | 0;
|
|
$270 = (btConvexHullInternal__getOrientation_28btConvexHullInternal__Edge_20const__2c_20btConvexHullInternal__Edge_20const__2c_20btConvexHullInternal__Point32_20const__2c_20btConvexHullInternal__Point32_20const__29($271 | 0, $272 | 0, $5 + 408 | 0 | 0, $5 + 216 | 0 | 0) | 0 | 0) == (2 | 0);
|
|
}
|
|
label$20 : {
|
|
if (!($270 & 1 | 0)) {
|
|
break label$20
|
|
}
|
|
HEAP32[($5 + 276 | 0) >> 2] = HEAP32[($5 + 340 | 0) >> 2] | 0;
|
|
}
|
|
}
|
|
HEAP32[($5 + 340 | 0) >> 2] = HEAP32[(HEAP32[($5 + 340 | 0) >> 2] | 0) >> 2] | 0;
|
|
if ((HEAP32[($5 + 340 | 0) >> 2] | 0 | 0) != (HEAP32[((HEAP32[($5 + 460 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
continue label$15
|
|
}
|
|
break label$15;
|
|
};
|
|
}
|
|
label$21 : {
|
|
label$22 : {
|
|
if ((HEAP32[($5 + 336 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$22
|
|
}
|
|
if (!((HEAP32[($5 + 276 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$21
|
|
}
|
|
}
|
|
$325 = 0;
|
|
btConvexHullInternal__findEdgeForCoplanarFaces_28btConvexHullInternal__Vertex__2c_20btConvexHullInternal__Vertex__2c_20btConvexHullInternal__Edge___2c_20btConvexHullInternal__Edge___2c_20btConvexHullInternal__Vertex__2c_20btConvexHullInternal__Vertex__29($6 | 0, HEAP32[($5 + 480 | 0) >> 2] | 0 | 0, HEAP32[($5 + 460 | 0) >> 2] | 0 | 0, $5 + 336 | 0 | 0, $5 + 276 | 0 | 0, $325 | 0, $325 | 0);
|
|
label$23 : {
|
|
if (!((HEAP32[($5 + 336 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$23
|
|
}
|
|
HEAP32[($5 + 480 | 0) >> 2] = HEAP32[((HEAP32[($5 + 336 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
}
|
|
label$24 : {
|
|
if (!((HEAP32[($5 + 276 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$24
|
|
}
|
|
HEAP32[($5 + 460 | 0) >> 2] = HEAP32[((HEAP32[($5 + 276 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
}
|
|
}
|
|
$346 = (HEAP32[($5 + 460 | 0) >> 2] | 0) + 88 | 0;
|
|
$347 = 8;
|
|
i64toi32_i32$2 = $346 + $347 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1462 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 424 | 0) + $347 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1462;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $346;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1466 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 424 | 0) >> 2] = $1466;
|
|
HEAP32[($5 + 428 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($5 + 432 | 0) >> 2] = (HEAP32[($5 + 432 | 0) >> 2] | 0) + 1 | 0;
|
|
break label$4;
|
|
}
|
|
$359 = (HEAP32[($5 + 460 | 0) >> 2] | 0) + 88 | 0;
|
|
$360 = 8;
|
|
i64toi32_i32$2 = $359 + $360 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1491 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 424 | 0) + $360 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1491;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $359;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1495 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 424 | 0) >> 2] = $1495;
|
|
HEAP32[($5 + 428 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($5 + 424 | 0) >> 2] = (HEAP32[($5 + 424 | 0) >> 2] | 0) + 1 | 0;
|
|
}
|
|
HEAP32[($5 + 212 | 0) >> 2] = HEAP32[($5 + 480 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 208 | 0) >> 2] = HEAP32[($5 + 460 | 0) >> 2] | 0;
|
|
HEAP8[($5 + 207 | 0) >> 0] = 1;
|
|
label$25 : while (1) {
|
|
btConvexHullInternal__Vertex__operator__28btConvexHullInternal__Vertex_20const__29_20const($5 + 188 | 0 | 0, HEAP32[($5 + 460 | 0) >> 2] | 0 | 0, HEAP32[($5 + 480 | 0) >> 2] | 0 | 0);
|
|
btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const($5 + 172 | 0 | 0, $5 + 424 | 0 | 0, (HEAP32[($5 + 480 | 0) >> 2] | 0) + 88 | 0 | 0);
|
|
btConvexHullInternal__Point32__cross_28btConvexHullInternal__Point32_20const__29_20const($5 + 144 | 0 | 0, $5 + 172 | 0 | 0, $5 + 188 | 0 | 0);
|
|
btConvexHullInternal__Point32__cross_28btConvexHullInternal__Point64_20const__29_20const($5 + 120 | 0 | 0, $5 + 188 | 0 | 0, $5 + 144 | 0 | 0);
|
|
i64toi32_i32$0 = 0;
|
|
$408 = 0;
|
|
i64toi32_i32$1 = i64toi32_i32$0;
|
|
btConvexHullInternal__Rational64__Rational64_28long_20long_2c_20long_20long_29($5 + 96 | 0 | 0, $408 | 0, i64toi32_i32$0 | 0, $408 | 0, i64toi32_i32$0 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btConvexHullInternal__findMaxAngle_28bool_2c_20btConvexHullInternal__Vertex_20const__2c_20btConvexHullInternal__Point32_20const__2c_20btConvexHullInternal__Point64_20const__2c_20btConvexHullInternal__Point64_20const__2c_20btConvexHullInternal__Rational64__29($6 | 0, 0 & 1 | 0 | 0, HEAP32[($5 + 480 | 0) >> 2] | 0 | 0, $5 + 188 | 0 | 0, $5 + 144 | 0 | 0, $5 + 120 | 0 | 0, $5 + 96 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 92 | 0) >> 2] = wasm2js_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$429 = 0;
|
|
i64toi32_i32$0 = i64toi32_i32$1;
|
|
btConvexHullInternal__Rational64__Rational64_28long_20long_2c_20long_20long_29($5 + 64 | 0 | 0, $429 | 0, i64toi32_i32$0 | 0, $429 | 0, i64toi32_i32$0 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btConvexHullInternal__findMaxAngle_28bool_2c_20btConvexHullInternal__Vertex_20const__2c_20btConvexHullInternal__Point32_20const__2c_20btConvexHullInternal__Point64_20const__2c_20btConvexHullInternal__Point64_20const__2c_20btConvexHullInternal__Rational64__29($6 | 0, 1 & 1 | 0 | 0, HEAP32[($5 + 460 | 0) >> 2] | 0 | 0, $5 + 188 | 0 | 0, $5 + 144 | 0 | 0, $5 + 120 | 0 | 0, $5 + 64 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 60 | 0) >> 2] = wasm2js_i32$1;
|
|
label$26 : {
|
|
if ((HEAP32[($5 + 92 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$26
|
|
}
|
|
if ((HEAP32[($5 + 60 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$26
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btConvexHullInternal__newEdgePair_28btConvexHullInternal__Vertex__2c_20btConvexHullInternal__Vertex__29($6 | 0, HEAP32[($5 + 480 | 0) >> 2] | 0 | 0, HEAP32[($5 + 460 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 56 | 0) >> 2] = wasm2js_i32$1;
|
|
btConvexHullInternal__Edge__link_28btConvexHullInternal__Edge__29(HEAP32[($5 + 56 | 0) >> 2] | 0 | 0, HEAP32[($5 + 56 | 0) >> 2] | 0 | 0);
|
|
HEAP32[((HEAP32[($5 + 480 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($5 + 56 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 56 | 0) >> 2] = HEAP32[((HEAP32[($5 + 56 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
btConvexHullInternal__Edge__link_28btConvexHullInternal__Edge__29(HEAP32[($5 + 56 | 0) >> 2] | 0 | 0, HEAP32[($5 + 56 | 0) >> 2] | 0 | 0);
|
|
HEAP32[((HEAP32[($5 + 460 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($5 + 56 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
label$27 : {
|
|
label$28 : {
|
|
if ((HEAP32[($5 + 92 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$28
|
|
}
|
|
$482 = 1;
|
|
break label$27;
|
|
}
|
|
label$29 : {
|
|
label$30 : {
|
|
if ((HEAP32[($5 + 60 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$30
|
|
}
|
|
$491 = -1;
|
|
break label$29;
|
|
}
|
|
$491 = btConvexHullInternal__Rational64__compare_28btConvexHullInternal__Rational64_20const__29_20const($5 + 96 | 0 | 0, $5 + 64 | 0 | 0) | 0;
|
|
}
|
|
$482 = $491;
|
|
}
|
|
HEAP32[($5 + 52 | 0) >> 2] = $482;
|
|
label$31 : {
|
|
label$32 : {
|
|
if ((HEAPU8[($5 + 207 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$32
|
|
}
|
|
label$33 : {
|
|
if (!((HEAP32[($5 + 52 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$33
|
|
}
|
|
if ((btConvexHullInternal__Rational64__isNegativeInfinity_28_29_20const($5 + 64 | 0 | 0) | 0) & 1 | 0) {
|
|
break label$31
|
|
}
|
|
break label$32;
|
|
}
|
|
if ((btConvexHullInternal__Rational64__isNegativeInfinity_28_29_20const($5 + 96 | 0 | 0) | 0) & 1 | 0) {
|
|
break label$31
|
|
}
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btConvexHullInternal__newEdgePair_28btConvexHullInternal__Vertex__2c_20btConvexHullInternal__Vertex__29($6 | 0, HEAP32[($5 + 480 | 0) >> 2] | 0 | 0, HEAP32[($5 + 460 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 48 | 0) >> 2] = wasm2js_i32$1;
|
|
label$34 : {
|
|
label$35 : {
|
|
if (!((HEAP32[($5 + 464 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$35
|
|
}
|
|
HEAP32[((HEAP32[($5 + 464 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[($5 + 48 | 0) >> 2] | 0;
|
|
break label$34;
|
|
}
|
|
HEAP32[($5 + 468 | 0) >> 2] = HEAP32[($5 + 48 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[(HEAP32[($5 + 48 | 0) >> 2] | 0) >> 2] = HEAP32[($5 + 464 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 464 | 0) >> 2] = HEAP32[($5 + 48 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 48 | 0) >> 2] = HEAP32[((HEAP32[($5 + 48 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
label$36 : {
|
|
label$37 : {
|
|
if (!((HEAP32[($5 + 444 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$37
|
|
}
|
|
HEAP32[(HEAP32[($5 + 444 | 0) >> 2] | 0) >> 2] = HEAP32[($5 + 48 | 0) >> 2] | 0;
|
|
break label$36;
|
|
}
|
|
HEAP32[($5 + 448 | 0) >> 2] = HEAP32[($5 + 48 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[((HEAP32[($5 + 48 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[($5 + 444 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 444 | 0) >> 2] = HEAP32[($5 + 48 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($5 + 44 | 0) >> 2] = HEAP32[($5 + 92 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 40 | 0) >> 2] = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
label$38 : {
|
|
if (HEAP32[($5 + 52 | 0) >> 2] | 0) {
|
|
break label$38
|
|
}
|
|
$565 = 0;
|
|
btConvexHullInternal__findEdgeForCoplanarFaces_28btConvexHullInternal__Vertex__2c_20btConvexHullInternal__Vertex__2c_20btConvexHullInternal__Edge___2c_20btConvexHullInternal__Edge___2c_20btConvexHullInternal__Vertex__2c_20btConvexHullInternal__Vertex__29($6 | 0, HEAP32[($5 + 480 | 0) >> 2] | 0 | 0, HEAP32[($5 + 460 | 0) >> 2] | 0 | 0, $5 + 44 | 0 | 0, $5 + 40 | 0 | 0, $565 | 0, $565 | 0);
|
|
}
|
|
label$39 : {
|
|
if (!((HEAP32[($5 + 52 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$39
|
|
}
|
|
if (!((HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$39
|
|
}
|
|
label$40 : {
|
|
if (!((HEAP32[($5 + 456 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$40
|
|
}
|
|
HEAP32[($5 + 36 | 0) >> 2] = HEAP32[(HEAP32[($5 + 456 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 32 | 0) >> 2] = 0;
|
|
label$41 : {
|
|
label$42 : while (1) {
|
|
if (!((HEAP32[($5 + 36 | 0) >> 2] | 0 | 0) != (HEAP32[($5 + 60 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$41
|
|
}
|
|
HEAP32[($5 + 32 | 0) >> 2] = HEAP32[(HEAP32[($5 + 36 | 0) >> 2] | 0) >> 2] | 0;
|
|
btConvexHullInternal__removeEdgePair_28btConvexHullInternal__Edge__29($6 | 0, HEAP32[($5 + 36 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($5 + 36 | 0) >> 2] = HEAP32[($5 + 32 | 0) >> 2] | 0;
|
|
continue label$42;
|
|
};
|
|
}
|
|
}
|
|
label$43 : {
|
|
label$44 : {
|
|
if (!((HEAP32[($5 + 444 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$44
|
|
}
|
|
label$45 : {
|
|
label$46 : {
|
|
if (!((HEAP32[($5 + 456 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$46
|
|
}
|
|
btConvexHullInternal__Edge__link_28btConvexHullInternal__Edge__29(HEAP32[($5 + 456 | 0) >> 2] | 0 | 0, HEAP32[($5 + 448 | 0) >> 2] | 0 | 0);
|
|
break label$45;
|
|
}
|
|
btConvexHullInternal__Edge__link_28btConvexHullInternal__Edge__29(HEAP32[((HEAP32[($5 + 60 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0, HEAP32[($5 + 448 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($5 + 452 | 0) >> 2] = HEAP32[($5 + 448 | 0) >> 2] | 0;
|
|
}
|
|
btConvexHullInternal__Edge__link_28btConvexHullInternal__Edge__29(HEAP32[($5 + 444 | 0) >> 2] | 0 | 0, HEAP32[($5 + 60 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($5 + 448 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 444 | 0) >> 2] = 0;
|
|
break label$43;
|
|
}
|
|
label$47 : {
|
|
if ((HEAP32[($5 + 456 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$47
|
|
}
|
|
HEAP32[($5 + 452 | 0) >> 2] = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
}
|
|
}
|
|
$635 = (HEAP32[($5 + 460 | 0) >> 2] | 0) + 88 | 0;
|
|
$636 = 8;
|
|
i64toi32_i32$2 = $635 + $636 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2055 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 424 | 0) + $636 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2055;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $635;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2059 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 424 | 0) >> 2] = $2059;
|
|
HEAP32[($5 + 428 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($5 + 460 | 0) >> 2] = HEAP32[((HEAP32[($5 + 40 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 456 | 0) >> 2] = HEAP32[((HEAP32[($5 + 40 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
}
|
|
label$48 : {
|
|
if (!((HEAP32[($5 + 52 | 0) >> 2] | 0 | 0) <= (0 | 0) & 1 | 0)) {
|
|
break label$48
|
|
}
|
|
if (!((HEAP32[($5 + 44 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$48
|
|
}
|
|
label$49 : {
|
|
if (!((HEAP32[($5 + 476 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$49
|
|
}
|
|
HEAP32[($5 + 28 | 0) >> 2] = HEAP32[((HEAP32[($5 + 476 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = 0;
|
|
label$50 : {
|
|
label$51 : while (1) {
|
|
if (!((HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) != (HEAP32[($5 + 92 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$50
|
|
}
|
|
HEAP32[($5 + 24 | 0) >> 2] = HEAP32[((HEAP32[($5 + 28 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
btConvexHullInternal__removeEdgePair_28btConvexHullInternal__Edge__29($6 | 0, HEAP32[($5 + 28 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($5 + 28 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
continue label$51;
|
|
};
|
|
}
|
|
}
|
|
label$52 : {
|
|
label$53 : {
|
|
if (!((HEAP32[($5 + 464 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$53
|
|
}
|
|
label$54 : {
|
|
label$55 : {
|
|
if (!((HEAP32[($5 + 476 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$55
|
|
}
|
|
btConvexHullInternal__Edge__link_28btConvexHullInternal__Edge__29(HEAP32[($5 + 468 | 0) >> 2] | 0 | 0, HEAP32[($5 + 476 | 0) >> 2] | 0 | 0);
|
|
break label$54;
|
|
}
|
|
btConvexHullInternal__Edge__link_28btConvexHullInternal__Edge__29(HEAP32[($5 + 468 | 0) >> 2] | 0 | 0, HEAP32[(HEAP32[($5 + 92 | 0) >> 2] | 0) >> 2] | 0 | 0);
|
|
HEAP32[($5 + 472 | 0) >> 2] = HEAP32[($5 + 468 | 0) >> 2] | 0;
|
|
}
|
|
btConvexHullInternal__Edge__link_28btConvexHullInternal__Edge__29(HEAP32[($5 + 92 | 0) >> 2] | 0 | 0, HEAP32[($5 + 464 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($5 + 468 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 464 | 0) >> 2] = 0;
|
|
break label$52;
|
|
}
|
|
label$56 : {
|
|
if ((HEAP32[($5 + 476 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$56
|
|
}
|
|
HEAP32[($5 + 472 | 0) >> 2] = HEAP32[($5 + 92 | 0) >> 2] | 0;
|
|
}
|
|
}
|
|
$716 = (HEAP32[($5 + 480 | 0) >> 2] | 0) + 88 | 0;
|
|
$717 = 8;
|
|
i64toi32_i32$2 = $716 + $717 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2228 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 424 | 0) + $717 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2228;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $716;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2232 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 424 | 0) >> 2] = $2232;
|
|
HEAP32[($5 + 428 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($5 + 480 | 0) >> 2] = HEAP32[((HEAP32[($5 + 44 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 476 | 0) >> 2] = HEAP32[((HEAP32[($5 + 44 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
}
|
|
label$57 : {
|
|
if (!((HEAP32[($5 + 480 | 0) >> 2] | 0 | 0) == (HEAP32[($5 + 212 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$57
|
|
}
|
|
if (!((HEAP32[($5 + 460 | 0) >> 2] | 0 | 0) == (HEAP32[($5 + 208 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$57
|
|
}
|
|
label$58 : {
|
|
label$59 : {
|
|
if (!((HEAP32[($5 + 476 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0)) {
|
|
break label$59
|
|
}
|
|
btConvexHullInternal__Edge__link_28btConvexHullInternal__Edge__29(HEAP32[($5 + 468 | 0) >> 2] | 0 | 0, HEAP32[($5 + 464 | 0) >> 2] | 0 | 0);
|
|
HEAP32[((HEAP32[($5 + 480 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($5 + 464 | 0) >> 2] | 0;
|
|
break label$58;
|
|
}
|
|
HEAP32[($5 + 20 | 0) >> 2] = HEAP32[((HEAP32[($5 + 476 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 16 | 0) >> 2] = 0;
|
|
label$60 : {
|
|
label$61 : while (1) {
|
|
if (!((HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) != (HEAP32[($5 + 472 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$60
|
|
}
|
|
HEAP32[($5 + 16 | 0) >> 2] = HEAP32[((HEAP32[($5 + 20 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
btConvexHullInternal__removeEdgePair_28btConvexHullInternal__Edge__29($6 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($5 + 20 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
continue label$61;
|
|
};
|
|
}
|
|
label$62 : {
|
|
if (!((HEAP32[($5 + 464 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$62
|
|
}
|
|
btConvexHullInternal__Edge__link_28btConvexHullInternal__Edge__29(HEAP32[($5 + 468 | 0) >> 2] | 0 | 0, HEAP32[($5 + 476 | 0) >> 2] | 0 | 0);
|
|
btConvexHullInternal__Edge__link_28btConvexHullInternal__Edge__29(HEAP32[($5 + 472 | 0) >> 2] | 0 | 0, HEAP32[($5 + 464 | 0) >> 2] | 0 | 0);
|
|
}
|
|
}
|
|
label$63 : {
|
|
label$64 : {
|
|
if (!((HEAP32[($5 + 456 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0)) {
|
|
break label$64
|
|
}
|
|
btConvexHullInternal__Edge__link_28btConvexHullInternal__Edge__29(HEAP32[($5 + 444 | 0) >> 2] | 0 | 0, HEAP32[($5 + 448 | 0) >> 2] | 0 | 0);
|
|
HEAP32[((HEAP32[($5 + 460 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($5 + 444 | 0) >> 2] | 0;
|
|
break label$63;
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[(HEAP32[($5 + 456 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = 0;
|
|
label$65 : {
|
|
label$66 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) != (HEAP32[($5 + 452 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$65
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[(HEAP32[($5 + 12 | 0) >> 2] | 0) >> 2] | 0;
|
|
btConvexHullInternal__removeEdgePair_28btConvexHullInternal__Edge__29($6 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
continue label$66;
|
|
};
|
|
}
|
|
label$67 : {
|
|
if (!((HEAP32[($5 + 444 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$67
|
|
}
|
|
btConvexHullInternal__Edge__link_28btConvexHullInternal__Edge__29(HEAP32[($5 + 456 | 0) >> 2] | 0 | 0, HEAP32[($5 + 448 | 0) >> 2] | 0 | 0);
|
|
btConvexHullInternal__Edge__link_28btConvexHullInternal__Edge__29(HEAP32[($5 + 444 | 0) >> 2] | 0 | 0, HEAP32[($5 + 452 | 0) >> 2] | 0 | 0);
|
|
}
|
|
}
|
|
break label$1;
|
|
}
|
|
HEAP8[($5 + 207 | 0) >> 0] = 0;
|
|
continue label$25;
|
|
};
|
|
}
|
|
__stack_pointer = $5 + 496 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Vertex____size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Point32__Point32_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Vertex__operator__28btConvexHullInternal__Vertex_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $2;
|
|
btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const($0 | 0, (HEAP32[($5 + 12 | 0) >> 2] | 0) + 88 | 0 | 0, (HEAP32[($5 + 8 | 0) >> 2] | 0) + 88 | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Point32__Point32_28int_2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$7 >> 2] = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 8 | 0) >> 2] = HEAP32[$6 >> 2] | 0;
|
|
HEAP32[($7 + 12 | 0) >> 2] = -1;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Point32__cross_28btConvexHullInternal__Point32_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, $6 = 0, $17$hi = 0, $28$hi = 0, $39$hi = 0, $17 = 0, $28 = 0, $128 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = Math_imul(HEAP32[($6 + 4 | 0) >> 2] | 0, HEAP32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) - Math_imul(HEAP32[($6 + 8 | 0) >> 2] | 0, HEAP32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$1 >> 31 | 0;
|
|
$17 = i64toi32_i32$1;
|
|
$17$hi = i64toi32_i32$0;
|
|
i64toi32_i32$1 = Math_imul(HEAP32[($6 + 8 | 0) >> 2] | 0, HEAP32[(HEAP32[($5 + 8 | 0) >> 2] | 0) >> 2] | 0) - Math_imul(HEAP32[$6 >> 2] | 0, HEAP32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$1 >> 31 | 0;
|
|
$28 = i64toi32_i32$1;
|
|
$28$hi = i64toi32_i32$0;
|
|
i64toi32_i32$1 = Math_imul(HEAP32[$6 >> 2] | 0, HEAP32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) - Math_imul(HEAP32[($6 + 4 | 0) >> 2] | 0, HEAP32[(HEAP32[($5 + 8 | 0) >> 2] | 0) >> 2] | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$1 >> 31 | 0;
|
|
$39$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $17$hi;
|
|
i64toi32_i32$0 = $28$hi;
|
|
i64toi32_i32$0 = $39$hi;
|
|
$128 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = $17$hi;
|
|
i64toi32_i32$1 = $28$hi;
|
|
btConvexHullInternal__Point64__Point64_28long_20long_2c_20long_20long_2c_20long_20long_29($0 | 0, $17 | 0, i64toi32_i32$0 | 0, $28 | 0, i64toi32_i32$1 | 0, $128 | 0, $39$hi | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Point32__cross_28btConvexHullInternal__Point64_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$5 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, i64toi32_i32$4 = 0, $5 = 0, i64toi32_i32$3 = 0, $6 = 0, i64toi32_i32$6 = 0, $9$hi = 0, $11$hi = 0, $12$hi = 0, $15$hi = 0, $17$hi = 0, $18$hi = 0, $19$hi = 0, $22$hi = 0, $24$hi = 0, $25$hi = 0, $28$hi = 0, $30$hi = 0, $31$hi = 0, $32$hi = 0, $35$hi = 0, $37$hi = 0, $38$hi = 0, $41$hi = 0, $43$hi = 0, $44$hi = 0, $45$hi = 0, $9 = 0, $69 = 0, $12 = 0, $15 = 0, $81 = 0, $84 = 0, $19 = 0, $22 = 0, $96 = 0, $25 = 0, $28 = 0, $108 = 0, $111 = 0, $32 = 0, $35 = 0, $123 = 0, $38 = 0, $41 = 0, $135 = 0, $138 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$1 >> 31 | 0;
|
|
$9 = i64toi32_i32$1;
|
|
$9$hi = i64toi32_i32$0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 20 | 0) >> 2] | 0;
|
|
$11$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $9$hi;
|
|
i64toi32_i32$1 = $11$hi;
|
|
$69 = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $9$hi;
|
|
i64toi32_i32$0 = $11$hi;
|
|
i64toi32_i32$0 = __wasm_i64_mul($9 | 0, i64toi32_i32$1 | 0, $69 | 0, i64toi32_i32$0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
$12 = i64toi32_i32$0;
|
|
$12$hi = i64toi32_i32$1;
|
|
i64toi32_i32$0 = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$0 >> 31 | 0;
|
|
$15 = i64toi32_i32$0;
|
|
$15$hi = i64toi32_i32$1;
|
|
i64toi32_i32$2 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 12 | 0) >> 2] | 0;
|
|
$17$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $15$hi;
|
|
i64toi32_i32$0 = $17$hi;
|
|
$81 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = $15$hi;
|
|
i64toi32_i32$1 = $17$hi;
|
|
i64toi32_i32$1 = __wasm_i64_mul($15 | 0, i64toi32_i32$0 | 0, $81 | 0, i64toi32_i32$1 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
$18$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $12$hi;
|
|
i64toi32_i32$0 = $18$hi;
|
|
$84 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = $12$hi;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$1 = $18$hi;
|
|
i64toi32_i32$3 = $84;
|
|
i64toi32_i32$4 = i64toi32_i32$2 - i64toi32_i32$3 | 0;
|
|
i64toi32_i32$6 = i64toi32_i32$2 >>> 0 < i64toi32_i32$3 >>> 0;
|
|
i64toi32_i32$5 = i64toi32_i32$6 + i64toi32_i32$1 | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$0 - i64toi32_i32$5 | 0;
|
|
$19 = i64toi32_i32$4;
|
|
$19$hi = i64toi32_i32$5;
|
|
i64toi32_i32$2 = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$2 >> 31 | 0;
|
|
$22 = i64toi32_i32$2;
|
|
$22$hi = i64toi32_i32$5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$5 = HEAP32[i64toi32_i32$0 >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] | 0;
|
|
$24$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $22$hi;
|
|
i64toi32_i32$2 = $24$hi;
|
|
$96 = i64toi32_i32$5;
|
|
i64toi32_i32$2 = $22$hi;
|
|
i64toi32_i32$5 = $24$hi;
|
|
i64toi32_i32$5 = __wasm_i64_mul($22 | 0, i64toi32_i32$2 | 0, $96 | 0, i64toi32_i32$5 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$HIGH_BITS;
|
|
$25 = i64toi32_i32$5;
|
|
$25$hi = i64toi32_i32$2;
|
|
i64toi32_i32$5 = HEAP32[$6 >> 2] | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$5 >> 31 | 0;
|
|
$28 = i64toi32_i32$5;
|
|
$28$hi = i64toi32_i32$2;
|
|
i64toi32_i32$0 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$0 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$0 + 20 | 0) >> 2] | 0;
|
|
$30$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $28$hi;
|
|
i64toi32_i32$5 = $30$hi;
|
|
$108 = i64toi32_i32$2;
|
|
i64toi32_i32$5 = $28$hi;
|
|
i64toi32_i32$2 = $30$hi;
|
|
i64toi32_i32$2 = __wasm_i64_mul($28 | 0, i64toi32_i32$5 | 0, $108 | 0, i64toi32_i32$2 | 0) | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$HIGH_BITS;
|
|
$31$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $25$hi;
|
|
i64toi32_i32$5 = $31$hi;
|
|
$111 = i64toi32_i32$2;
|
|
i64toi32_i32$5 = $25$hi;
|
|
i64toi32_i32$0 = $25;
|
|
i64toi32_i32$2 = $31$hi;
|
|
i64toi32_i32$3 = $111;
|
|
i64toi32_i32$1 = i64toi32_i32$0 - i64toi32_i32$3 | 0;
|
|
i64toi32_i32$6 = i64toi32_i32$0 >>> 0 < i64toi32_i32$3 >>> 0;
|
|
i64toi32_i32$4 = i64toi32_i32$6 + i64toi32_i32$2 | 0;
|
|
i64toi32_i32$4 = i64toi32_i32$5 - i64toi32_i32$4 | 0;
|
|
$32 = i64toi32_i32$1;
|
|
$32$hi = i64toi32_i32$4;
|
|
i64toi32_i32$0 = HEAP32[$6 >> 2] | 0;
|
|
i64toi32_i32$4 = i64toi32_i32$0 >> 31 | 0;
|
|
$35 = i64toi32_i32$0;
|
|
$35$hi = i64toi32_i32$4;
|
|
i64toi32_i32$5 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$4 = HEAP32[(i64toi32_i32$5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$5 + 12 | 0) >> 2] | 0;
|
|
$37$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $35$hi;
|
|
i64toi32_i32$0 = $37$hi;
|
|
$123 = i64toi32_i32$4;
|
|
i64toi32_i32$0 = $35$hi;
|
|
i64toi32_i32$4 = $37$hi;
|
|
i64toi32_i32$4 = __wasm_i64_mul($35 | 0, i64toi32_i32$0 | 0, $123 | 0, i64toi32_i32$4 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
$38 = i64toi32_i32$4;
|
|
$38$hi = i64toi32_i32$0;
|
|
i64toi32_i32$4 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$4 >> 31 | 0;
|
|
$41 = i64toi32_i32$4;
|
|
$41$hi = i64toi32_i32$0;
|
|
i64toi32_i32$5 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$5 >> 2] | 0;
|
|
i64toi32_i32$4 = HEAP32[(i64toi32_i32$5 + 4 | 0) >> 2] | 0;
|
|
$43$hi = i64toi32_i32$4;
|
|
i64toi32_i32$4 = $41$hi;
|
|
i64toi32_i32$4 = $43$hi;
|
|
$135 = i64toi32_i32$0;
|
|
i64toi32_i32$4 = $41$hi;
|
|
i64toi32_i32$0 = $43$hi;
|
|
i64toi32_i32$0 = __wasm_i64_mul($41 | 0, i64toi32_i32$4 | 0, $135 | 0, i64toi32_i32$0 | 0) | 0;
|
|
i64toi32_i32$4 = i64toi32_i32$HIGH_BITS;
|
|
$44$hi = i64toi32_i32$4;
|
|
i64toi32_i32$4 = $38$hi;
|
|
i64toi32_i32$4 = $44$hi;
|
|
$138 = i64toi32_i32$0;
|
|
i64toi32_i32$4 = $38$hi;
|
|
i64toi32_i32$5 = $38;
|
|
i64toi32_i32$0 = $44$hi;
|
|
i64toi32_i32$3 = $138;
|
|
i64toi32_i32$2 = i64toi32_i32$5 - i64toi32_i32$3 | 0;
|
|
i64toi32_i32$6 = i64toi32_i32$5 >>> 0 < i64toi32_i32$3 >>> 0;
|
|
i64toi32_i32$1 = i64toi32_i32$6 + i64toi32_i32$0 | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$4 - i64toi32_i32$1 | 0;
|
|
$45$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $19$hi;
|
|
i64toi32_i32$1 = $32$hi;
|
|
i64toi32_i32$1 = $45$hi;
|
|
i64toi32_i32$1 = $19$hi;
|
|
i64toi32_i32$5 = $32$hi;
|
|
i64toi32_i32$4 = $45$hi;
|
|
btConvexHullInternal__Point64__Point64_28long_20long_2c_20long_20long_2c_20long_20long_29($0 | 0, $19 | 0, i64toi32_i32$1 | 0, $32 | 0, i64toi32_i32$5 | 0, i64toi32_i32$2 | 0, i64toi32_i32$4 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Point64__isZero_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$3 = 0, $4 = 0, $5$hi = 0, $6$hi = 0, $13 = 0, $14$hi = 0, $15$hi = 0, $22$hi = 0, $23$hi = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$5$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$6$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5$hi;
|
|
i64toi32_i32$1 = $6$hi;
|
|
i64toi32_i32$1 = $5$hi;
|
|
i64toi32_i32$1 = $6$hi;
|
|
i64toi32_i32$1 = $5$hi;
|
|
i64toi32_i32$2 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6$hi;
|
|
i64toi32_i32$3 = 0;
|
|
$13 = 0;
|
|
label$1 : {
|
|
if (!(((i64toi32_i32$2 | 0) == (i64toi32_i32$3 | 0) & (i64toi32_i32$1 | 0) == (i64toi32_i32$0 | 0) | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
i64toi32_i32$3 = $4;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$3 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$3 + 12 | 0) >> 2] | 0;
|
|
$14$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$15$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $14$hi;
|
|
i64toi32_i32$1 = $15$hi;
|
|
i64toi32_i32$1 = $14$hi;
|
|
i64toi32_i32$1 = $15$hi;
|
|
i64toi32_i32$1 = $14$hi;
|
|
i64toi32_i32$3 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $15$hi;
|
|
i64toi32_i32$0 = 0;
|
|
$13 = 0;
|
|
if (!(((i64toi32_i32$3 | 0) == (i64toi32_i32$0 | 0) & (i64toi32_i32$1 | 0) == (i64toi32_i32$2 | 0) | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
i64toi32_i32$0 = $4;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$0 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$0 + 20 | 0) >> 2] | 0;
|
|
$22$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$23$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22$hi;
|
|
i64toi32_i32$1 = $23$hi;
|
|
i64toi32_i32$1 = $22$hi;
|
|
i64toi32_i32$1 = $23$hi;
|
|
i64toi32_i32$1 = $22$hi;
|
|
i64toi32_i32$0 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $23$hi;
|
|
i64toi32_i32$2 = 0;
|
|
$13 = (i64toi32_i32$0 | 0) == (i64toi32_i32$2 | 0) & (i64toi32_i32$1 | 0) == (i64toi32_i32$3 | 0) | 0;
|
|
}
|
|
return $13 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, i64toi32_i32$5 = 0, $4 = 0, i64toi32_i32$4 = 0, i64toi32_i32$3 = 0, $5 = 0, $8$hi = 0, $10$hi = 0, $11$hi = 0, $14$hi = 0, $16$hi = 0, $17$hi = 0, $18$hi = 0, $21$hi = 0, $23$hi = 0, $24$hi = 0, $8 = 0, $46 = 0, $11 = 0, $14 = 0, $58 = 0, $61 = 0, $21 = 0, $73 = 0, $76 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[$5 >> 2] | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$1 >> 31 | 0;
|
|
$8 = i64toi32_i32$1;
|
|
$8$hi = i64toi32_i32$0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$10$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8$hi;
|
|
i64toi32_i32$1 = $10$hi;
|
|
$46 = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $8$hi;
|
|
i64toi32_i32$0 = $10$hi;
|
|
i64toi32_i32$0 = __wasm_i64_mul($8 | 0, i64toi32_i32$1 | 0, $46 | 0, i64toi32_i32$0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
$11 = i64toi32_i32$0;
|
|
$11$hi = i64toi32_i32$1;
|
|
i64toi32_i32$0 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$0 >> 31 | 0;
|
|
$14 = i64toi32_i32$0;
|
|
$14$hi = i64toi32_i32$1;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 12 | 0) >> 2] | 0;
|
|
$16$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $14$hi;
|
|
i64toi32_i32$0 = $16$hi;
|
|
$58 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = $14$hi;
|
|
i64toi32_i32$1 = $16$hi;
|
|
i64toi32_i32$1 = __wasm_i64_mul($14 | 0, i64toi32_i32$0 | 0, $58 | 0, i64toi32_i32$1 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
$17$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $11$hi;
|
|
i64toi32_i32$0 = $17$hi;
|
|
$61 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = $11$hi;
|
|
i64toi32_i32$2 = $11;
|
|
i64toi32_i32$1 = $17$hi;
|
|
i64toi32_i32$3 = $61;
|
|
i64toi32_i32$4 = i64toi32_i32$2 + i64toi32_i32$3 | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$0 + i64toi32_i32$1 | 0;
|
|
if (i64toi32_i32$4 >>> 0 < i64toi32_i32$3 >>> 0) {
|
|
i64toi32_i32$5 = i64toi32_i32$5 + 1 | 0
|
|
}
|
|
$18$hi = i64toi32_i32$5;
|
|
i64toi32_i32$2 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$2 >> 31 | 0;
|
|
$21 = i64toi32_i32$2;
|
|
$21$hi = i64toi32_i32$5;
|
|
i64toi32_i32$0 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$0 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$0 + 20 | 0) >> 2] | 0;
|
|
$23$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $21$hi;
|
|
i64toi32_i32$2 = $23$hi;
|
|
$73 = i64toi32_i32$5;
|
|
i64toi32_i32$2 = $21$hi;
|
|
i64toi32_i32$5 = $23$hi;
|
|
i64toi32_i32$5 = __wasm_i64_mul($21 | 0, i64toi32_i32$2 | 0, $73 | 0, i64toi32_i32$5 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$HIGH_BITS;
|
|
$24$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $18$hi;
|
|
i64toi32_i32$2 = $24$hi;
|
|
$76 = i64toi32_i32$5;
|
|
i64toi32_i32$2 = $18$hi;
|
|
i64toi32_i32$0 = i64toi32_i32$4;
|
|
i64toi32_i32$5 = $24$hi;
|
|
i64toi32_i32$3 = $76;
|
|
i64toi32_i32$1 = i64toi32_i32$0 + i64toi32_i32$3 | 0;
|
|
i64toi32_i32$4 = i64toi32_i32$2 + i64toi32_i32$5 | 0;
|
|
if (i64toi32_i32$1 >>> 0 < i64toi32_i32$3 >>> 0) {
|
|
i64toi32_i32$4 = i64toi32_i32$4 + 1 | 0
|
|
}
|
|
i64toi32_i32$0 = i64toi32_i32$1;
|
|
i64toi32_i32$HIGH_BITS = i64toi32_i32$4;
|
|
return i64toi32_i32$0 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__getOrientation_28btConvexHullInternal__Edge_20const__2c_20btConvexHullInternal__Edge_20const__2c_20btConvexHullInternal__Point32_20const__2c_20btConvexHullInternal__Point32_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, i64toi32_i32$3 = 0, $85$hi = 0, $86$hi = 0, $96$hi = 0, $97$hi = 0, $15 = 0, $16 = 0, $17 = 0, $277 = 0, $117 = 0;
|
|
$6 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 104 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 100 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 96 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 92 | 0) >> 2] = $3;
|
|
label$1 : {
|
|
if ((HEAP32[((HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) == (HEAP32[((HEAP32[((HEAP32[($6 + 100 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(68463 | 0, 72732 | 0, 1400 | 0, 76667 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((HEAP32[(HEAP32[($6 + 104 | 0) >> 2] | 0) >> 2] | 0 | 0) == (HEAP32[($6 + 100 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
label$4 : {
|
|
if (!((HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) == (HEAP32[($6 + 100 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
btConvexHullInternal__Point32__cross_28btConvexHullInternal__Point32_20const__29_20const($6 + 64 | 0 | 0, HEAP32[($6 + 92 | 0) >> 2] | 0 | 0, HEAP32[($6 + 96 | 0) >> 2] | 0 | 0);
|
|
btConvexHullInternal__Vertex__operator__28btConvexHullInternal__Vertex_20const__29_20const($6 + 24 | 0 | 0, HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[((HEAP32[($6 + 100 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0);
|
|
btConvexHullInternal__Vertex__operator__28btConvexHullInternal__Vertex_20const__29_20const($6 + 8 | 0 | 0, HEAP32[((HEAP32[($6 + 100 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[((HEAP32[($6 + 100 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0);
|
|
btConvexHullInternal__Point32__cross_28btConvexHullInternal__Point32_20const__29_20const($6 + 40 | 0 | 0, $6 + 24 | 0 | 0, $6 + 8 | 0 | 0);
|
|
label$5 : {
|
|
if (!((btConvexHullInternal__Point64__isZero_28_29($6 + 40 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
__assert_fail(87293 | 0, 72732 | 0, 1407 | 0, 76667 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
i64toi32_i32$0 = btConvexHullInternal__Point64__dot_28btConvexHullInternal__Point64_20const__29_20const($6 + 64 | 0 | 0, $6 + 40 | 0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
$277 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6;
|
|
HEAP32[$6 >> 2] = $277;
|
|
HEAP32[($6 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[$6 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
$85$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 0;
|
|
$86$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $85$hi;
|
|
i64toi32_i32$0 = $86$hi;
|
|
i64toi32_i32$0 = $85$hi;
|
|
i64toi32_i32$0 = $86$hi;
|
|
i64toi32_i32$0 = $85$hi;
|
|
i64toi32_i32$2 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $86$hi;
|
|
i64toi32_i32$3 = 0;
|
|
label$6 : {
|
|
if (((i64toi32_i32$2 | 0) != (i64toi32_i32$3 | 0) | (i64toi32_i32$0 | 0) != (i64toi32_i32$1 | 0) | 0) & 1 | 0) {
|
|
break label$6
|
|
}
|
|
__assert_fail(86151 | 0, 72732 | 0, 1409 | 0, 76667 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
i64toi32_i32$3 = $6;
|
|
i64toi32_i32$2 = HEAP32[$6 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
$96$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 0;
|
|
$97$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $96$hi;
|
|
i64toi32_i32$0 = $97$hi;
|
|
i64toi32_i32$0 = $96$hi;
|
|
i64toi32_i32$0 = $97$hi;
|
|
i64toi32_i32$0 = $96$hi;
|
|
i64toi32_i32$3 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $97$hi;
|
|
i64toi32_i32$1 = 0;
|
|
if ((i64toi32_i32$0 | 0) > (i64toi32_i32$2 | 0)) {
|
|
$15 = 1
|
|
} else {
|
|
if ((i64toi32_i32$0 | 0) >= (i64toi32_i32$2 | 0)) {
|
|
if (i64toi32_i32$3 >>> 0 <= i64toi32_i32$1 >>> 0) {
|
|
$16 = 0
|
|
} else {
|
|
$16 = 1
|
|
}
|
|
$17 = $16;
|
|
} else {
|
|
$17 = 0
|
|
}
|
|
$15 = $17;
|
|
}
|
|
HEAP32[($6 + 108 | 0) >> 2] = $15 & 1 | 0 ? 2 : 1;
|
|
break label$2;
|
|
}
|
|
HEAP32[($6 + 108 | 0) >> 2] = 2;
|
|
break label$2;
|
|
}
|
|
label$7 : {
|
|
if (!((HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) == (HEAP32[($6 + 100 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAP32[($6 + 108 | 0) >> 2] = 1;
|
|
break label$2;
|
|
}
|
|
HEAP32[($6 + 108 | 0) >> 2] = 0;
|
|
}
|
|
$117 = HEAP32[($6 + 108 | 0) >> 2] | 0;
|
|
__stack_pointer = $6 + 112 | 0;
|
|
return $117 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__findEdgeForCoplanarFaces_28btConvexHullInternal__Vertex__2c_20btConvexHullInternal__Vertex__2c_20btConvexHullInternal__Edge___2c_20btConvexHullInternal__Edge___2c_20btConvexHullInternal__Vertex__2c_20btConvexHullInternal__Vertex__29($0, $1, $2, $3, $4, $5, $6) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
var $9 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, i64toi32_i32$5 = 0, i64toi32_i32$3 = 0, $10 = 0, $120$hi = 0, $121$hi = 0, $185$hi = 0, $186$hi = 0, $199$hi = 0, $200$hi = 0, $226$hi = 0, $227$hi = 0, $282$hi = 0, $283$hi = 0, $296$hi = 0, $297$hi = 0, $323$hi = 0, $324$hi = 0, $347$hi = 0, $348$hi = 0, $433$hi = 0, $434$hi = 0, $440$hi = 0, $441$hi = 0, $446$hi = 0, $447$hi = 0, $565$hi = 0, $566$hi = 0, $603$hi = 0, $604$hi = 0, $612$hi = 0, $613$hi = 0, $619$hi = 0, $620$hi = 0, $625$hi = 0, $626$hi = 0, $689$hi = 0, $690$hi = 0, $700$hi = 0, $701$hi = 0, $786$hi = 0, $787$hi = 0, $793$hi = 0, $794$hi = 0, $799$hi = 0, $800$hi = 0, $918$hi = 0, $919$hi = 0, $956$hi = 0, $957$hi = 0, $965$hi = 0, $966$hi = 0, $972$hi = 0, $973$hi = 0, $978$hi = 0, $979$hi = 0, $1042$hi = 0, $1043$hi = 0, $26 = 0, $30 = 0, $31 = 0, $49 = 0, $53 = 0, $54 = 0, $78 = 0, $189 = 0, $190 = 0, $191 = 0, $192 = 0, $193 = 0, $194 = 0, $239 = 0, $240 = 0, $195 = 0, $196 = 0, $197 = 0, $198 = 0, $200 = 0, $201 = 0, $336 = 0, $337 = 0, $344$hi = 0, $345$hi = 0, $202 = 0, $203 = 0, $204 = 0, $205 = 0, $206 = 0, $207 = 0, $445 = 0, $208 = 0, $209 = 0, $210 = 0, $454 = 0, $455$hi = 0, $456$hi = 0, $460$hi = 0, $461$hi = 0, $483 = 0, $484 = 0, $516 = 0, $211 = 0, $212 = 0, $213 = 0, $611 = 0, $214 = 0, $215 = 0, $216 = 0, $624 = 0, $217 = 0, $218 = 0, $219 = 0, $633 = 0, $634$hi = 0, $635$hi = 0, $639$hi = 0, $640$hi = 0, $666 = 0, $667 = 0, $220 = 0, $221 = 0, $222 = 0, $223 = 0, $224 = 0, $225 = 0, $227 = 0, $228 = 0, $229 = 0, $798 = 0, $230 = 0, $231 = 0, $232 = 0, $807 = 0, $808$hi = 0, $809$hi = 0, $813$hi = 0, $814$hi = 0, $836 = 0, $837 = 0, $869 = 0, $233 = 0, $234 = 0, $235 = 0, $964 = 0, $236 = 0, $237 = 0, $238 = 0, $977 = 0, $241 = 0, $242 = 0, $243 = 0, $986 = 0, $987$hi = 0, $988$hi = 0, $992$hi = 0, $993$hi = 0, $1019 = 0, $1020 = 0, $244 = 0, $245 = 0, $246 = 0, $1127 = 0, $1131 = 0, $1171 = 0, $1175 = 0, $1257 = 0, $120 = 0, $1289 = 0, $1341 = 0, $185 = 0, $1403 = 0, $199 = 0, $1429 = 0, $1470 = 0, $226 = 0, $1478 = 0, $1488 = 0, $1514 = 0, $1518 = 0, $1531 = 0, $282 = 0, $1593 = 0, $296 = 0, $1619 = 0, $1660 = 0, $323 = 0, $1668 = 0, $1678 = 0, $1704 = 0, $1708 = 0, $344 = 0, $1714 = 0, $1717 = 0, $1757 = 0, $1846 = 0, $1877 = 0, $455 = 0, $1921 = 0, $460 = 0, $1933 = 0, $1979 = 0, $1983 = 0, $2011 = 0, $2146 = 0, $2159 = 0, $2190 = 0, $634 = 0, $2247 = 0, $639 = 0, $2259 = 0, $2315 = 0, $2319 = 0, $2323 = 0, $2403 = 0, $2492 = 0, $2523 = 0, $808 = 0, $2567 = 0, $813 = 0, $2579 = 0, $2625 = 0, $2629 = 0, $2657 = 0, $2792 = 0, $2805 = 0, $2836 = 0, $987 = 0, $2893 = 0, $992 = 0, $2905 = 0, $2961 = 0, $2965 = 0, $2969 = 0;
|
|
$9 = __stack_pointer - 736 | 0;
|
|
__stack_pointer = $9;
|
|
HEAP32[($9 + 732 | 0) >> 2] = $0;
|
|
HEAP32[($9 + 728 | 0) >> 2] = $1;
|
|
HEAP32[($9 + 724 | 0) >> 2] = $2;
|
|
HEAP32[($9 + 720 | 0) >> 2] = $3;
|
|
HEAP32[($9 + 716 | 0) >> 2] = $4;
|
|
HEAP32[($9 + 712 | 0) >> 2] = $5;
|
|
HEAP32[($9 + 708 | 0) >> 2] = $6;
|
|
$10 = HEAP32[($9 + 732 | 0) >> 2] | 0;
|
|
HEAP32[($9 + 704 | 0) >> 2] = HEAP32[(HEAP32[($9 + 720 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($9 + 700 | 0) >> 2] = HEAP32[(HEAP32[($9 + 716 | 0) >> 2] | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($9 + 704 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$26 = (HEAP32[((HEAP32[($9 + 704 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 88 | 0;
|
|
break label$1;
|
|
}
|
|
$26 = (HEAP32[($9 + 728 | 0) >> 2] | 0) + 88 | 0;
|
|
}
|
|
$30 = $26;
|
|
$31 = 8;
|
|
i64toi32_i32$2 = $30 + $31 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1127 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($9 + 680 | 0) + $31 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1127;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $30;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1131 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $9;
|
|
HEAP32[($9 + 680 | 0) >> 2] = $1131;
|
|
HEAP32[($9 + 684 | 0) >> 2] = i64toi32_i32$0;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAP32[($9 + 700 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$49 = (HEAP32[((HEAP32[($9 + 700 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 88 | 0;
|
|
break label$3;
|
|
}
|
|
$49 = (HEAP32[($9 + 724 | 0) >> 2] | 0) + 88 | 0;
|
|
}
|
|
$53 = $49;
|
|
$54 = 8;
|
|
i64toi32_i32$2 = $53 + $54 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1171 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($9 + 664 | 0) + $54 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1171;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $53;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1175 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $9;
|
|
HEAP32[($9 + 664 | 0) >> 2] = $1175;
|
|
HEAP32[($9 + 668 | 0) >> 2] = i64toi32_i32$0;
|
|
btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const($9 + 648 | 0 | 0, (HEAP32[($9 + 724 | 0) >> 2] | 0) + 88 | 0 | 0, (HEAP32[($9 + 728 | 0) >> 2] | 0) + 88 | 0 | 0);
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!((HEAP32[($9 + 704 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$78 = HEAP32[($9 + 704 | 0) >> 2] | 0;
|
|
break label$5;
|
|
}
|
|
$78 = HEAP32[($9 + 700 | 0) >> 2] | 0;
|
|
}
|
|
btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const($9 + 608 | 0 | 0, (HEAP32[($78 + 12 | 0) >> 2] | 0) + 88 | 0 | 0, (HEAP32[($9 + 728 | 0) >> 2] | 0) + 88 | 0 | 0);
|
|
btConvexHullInternal__Point32__cross_28btConvexHullInternal__Point32_20const__29_20const($9 + 624 | 0 | 0, $9 + 608 | 0 | 0, $9 + 648 | 0 | 0);
|
|
i64toi32_i32$0 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const((HEAP32[($9 + 728 | 0) >> 2] | 0) + 88 | 0 | 0, $9 + 624 | 0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
$1257 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $9;
|
|
HEAP32[($9 + 600 | 0) >> 2] = $1257;
|
|
HEAP32[($9 + 604 | 0) >> 2] = i64toi32_i32$1;
|
|
label$7 : {
|
|
if (!((HEAP32[($9 + 700 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
i64toi32_i32$1 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const((HEAP32[((HEAP32[($9 + 700 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 88 | 0 | 0, $9 + 624 | 0 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
$120 = i64toi32_i32$1;
|
|
$120$hi = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$0 = HEAP32[($9 + 600 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 604 | 0) >> 2] | 0;
|
|
$121$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $120$hi;
|
|
i64toi32_i32$1 = $121$hi;
|
|
i64toi32_i32$1 = $120$hi;
|
|
i64toi32_i32$1 = $121$hi;
|
|
$1289 = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $120$hi;
|
|
i64toi32_i32$2 = $120;
|
|
i64toi32_i32$0 = $121$hi;
|
|
i64toi32_i32$3 = $1289;
|
|
if (((i64toi32_i32$2 | 0) == (i64toi32_i32$3 | 0) & (i64toi32_i32$1 | 0) == (i64toi32_i32$0 | 0) | 0) & 1 | 0) {
|
|
break label$7
|
|
}
|
|
__assert_fail(86181 | 0, 72732 | 0, 1485 | 0, 70286 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
btConvexHullInternal__Point32__cross_28btConvexHullInternal__Point64_20const__29_20const($9 + 576 | 0 | 0, $9 + 648 | 0 | 0, $9 + 624 | 0 | 0);
|
|
label$8 : {
|
|
if (!((btConvexHullInternal__Point64__isZero_28_29($9 + 576 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
__assert_fail(87278 | 0, 72732 | 0, 1487 | 0, 70286 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
i64toi32_i32$2 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const($9 + 680 | 0 | 0, $9 + 576 | 0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
$1341 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $9;
|
|
HEAP32[($9 + 568 | 0) >> 2] = $1341;
|
|
HEAP32[($9 + 572 | 0) >> 2] = i64toi32_i32$1;
|
|
label$9 : {
|
|
if (!((HEAP32[(HEAP32[($9 + 720 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
label$10 : {
|
|
label$11 : while (1) {
|
|
if (!((HEAP32[((HEAP32[(HEAP32[($9 + 720 | 0) >> 2] | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) != (HEAP32[($9 + 712 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
HEAP32[($9 + 564 | 0) >> 2] = HEAP32[((HEAP32[((HEAP32[(HEAP32[($9 + 720 | 0) >> 2] | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const((HEAP32[((HEAP32[($9 + 564 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 88 | 0 | 0, $9 + 624 | 0 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$HIGH_BITS;
|
|
$185 = i64toi32_i32$1;
|
|
$185$hi = i64toi32_i32$2;
|
|
i64toi32_i32$3 = $9;
|
|
i64toi32_i32$2 = HEAP32[($9 + 600 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 604 | 0) >> 2] | 0;
|
|
$186$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $185$hi;
|
|
i64toi32_i32$1 = $186$hi;
|
|
i64toi32_i32$1 = $185$hi;
|
|
i64toi32_i32$1 = $186$hi;
|
|
$1403 = i64toi32_i32$2;
|
|
i64toi32_i32$1 = $185$hi;
|
|
i64toi32_i32$3 = $185;
|
|
i64toi32_i32$2 = $186$hi;
|
|
i64toi32_i32$0 = $1403;
|
|
if ((i64toi32_i32$1 | 0) < (i64toi32_i32$2 | 0)) {
|
|
$189 = 1
|
|
} else {
|
|
if ((i64toi32_i32$1 | 0) <= (i64toi32_i32$2 | 0)) {
|
|
if (i64toi32_i32$3 >>> 0 >= i64toi32_i32$0 >>> 0) {
|
|
$190 = 0
|
|
} else {
|
|
$190 = 1
|
|
}
|
|
$191 = $190;
|
|
} else {
|
|
$191 = 0
|
|
}
|
|
$189 = $191;
|
|
}
|
|
label$12 : {
|
|
if (!($189 & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
break label$10;
|
|
}
|
|
i64toi32_i32$3 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const((HEAP32[((HEAP32[($9 + 564 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 88 | 0 | 0, $9 + 624 | 0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
$199 = i64toi32_i32$3;
|
|
$199$hi = i64toi32_i32$1;
|
|
i64toi32_i32$0 = $9;
|
|
i64toi32_i32$1 = HEAP32[($9 + 600 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($9 + 604 | 0) >> 2] | 0;
|
|
$200$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $199$hi;
|
|
i64toi32_i32$3 = $200$hi;
|
|
i64toi32_i32$3 = $199$hi;
|
|
i64toi32_i32$3 = $200$hi;
|
|
$1429 = i64toi32_i32$1;
|
|
i64toi32_i32$3 = $199$hi;
|
|
i64toi32_i32$0 = $199;
|
|
i64toi32_i32$1 = $200$hi;
|
|
i64toi32_i32$2 = $1429;
|
|
label$13 : {
|
|
if (((i64toi32_i32$0 | 0) == (i64toi32_i32$2 | 0) & (i64toi32_i32$3 | 0) == (i64toi32_i32$1 | 0) | 0) & 1 | 0) {
|
|
break label$13
|
|
}
|
|
__assert_fail(67337 | 0, 72732 | 0, 1503 | 0, 70286 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$14 : {
|
|
if (!((HEAP32[((HEAP32[($9 + 564 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) == (HEAP32[($10 + 100 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
break label$10;
|
|
}
|
|
i64toi32_i32$0 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const((HEAP32[((HEAP32[($9 + 564 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 88 | 0 | 0, $9 + 576 | 0 | 0) | 0;
|
|
i64toi32_i32$3 = i64toi32_i32$HIGH_BITS;
|
|
$1470 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $9;
|
|
HEAP32[($9 + 552 | 0) >> 2] = $1470;
|
|
HEAP32[($9 + 556 | 0) >> 2] = i64toi32_i32$3;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$3 = HEAP32[($9 + 552 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($9 + 556 | 0) >> 2] | 0;
|
|
$226 = i64toi32_i32$3;
|
|
$226$hi = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$0 = HEAP32[($9 + 568 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($9 + 572 | 0) >> 2] | 0;
|
|
$227$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $226$hi;
|
|
i64toi32_i32$3 = $227$hi;
|
|
i64toi32_i32$3 = $226$hi;
|
|
i64toi32_i32$3 = $227$hi;
|
|
$1478 = i64toi32_i32$0;
|
|
i64toi32_i32$3 = $226$hi;
|
|
i64toi32_i32$2 = $226;
|
|
i64toi32_i32$0 = $227$hi;
|
|
i64toi32_i32$1 = $1478;
|
|
if ((i64toi32_i32$3 | 0) < (i64toi32_i32$0 | 0)) {
|
|
$192 = 1
|
|
} else {
|
|
if ((i64toi32_i32$3 | 0) <= (i64toi32_i32$0 | 0)) {
|
|
if (i64toi32_i32$2 >>> 0 > i64toi32_i32$1 >>> 0) {
|
|
$193 = 0
|
|
} else {
|
|
$193 = 1
|
|
}
|
|
$194 = $193;
|
|
} else {
|
|
$194 = 0
|
|
}
|
|
$192 = $194;
|
|
}
|
|
label$15 : {
|
|
if (!($192 & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
break label$10;
|
|
}
|
|
i64toi32_i32$1 = $9;
|
|
i64toi32_i32$2 = HEAP32[($9 + 552 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($9 + 556 | 0) >> 2] | 0;
|
|
$1488 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $9;
|
|
HEAP32[($9 + 568 | 0) >> 2] = $1488;
|
|
HEAP32[($9 + 572 | 0) >> 2] = i64toi32_i32$3;
|
|
HEAP32[(HEAP32[($9 + 720 | 0) >> 2] | 0) >> 2] = HEAP32[($9 + 564 | 0) >> 2] | 0;
|
|
$239 = (HEAP32[((HEAP32[($9 + 564 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 88 | 0;
|
|
$240 = 8;
|
|
i64toi32_i32$1 = $239 + $240 | 0;
|
|
i64toi32_i32$3 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$1514 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = ($9 + 680 | 0) + $240 | 0;
|
|
HEAP32[i64toi32_i32$3 >> 2] = $1514;
|
|
HEAP32[(i64toi32_i32$3 + 4 | 0) >> 2] = i64toi32_i32$2;
|
|
i64toi32_i32$1 = $239;
|
|
i64toi32_i32$2 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$1518 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $9;
|
|
HEAP32[($9 + 680 | 0) >> 2] = $1518;
|
|
HEAP32[($9 + 684 | 0) >> 2] = i64toi32_i32$3;
|
|
continue label$11;
|
|
};
|
|
}
|
|
}
|
|
i64toi32_i32$3 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const($9 + 664 | 0 | 0, $9 + 576 | 0 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$HIGH_BITS;
|
|
$1531 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $9;
|
|
HEAP32[($9 + 544 | 0) >> 2] = $1531;
|
|
HEAP32[($9 + 548 | 0) >> 2] = i64toi32_i32$2;
|
|
label$16 : {
|
|
if (!((HEAP32[(HEAP32[($9 + 716 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
label$17 : {
|
|
label$18 : while (1) {
|
|
if (!((HEAP32[((HEAP32[(HEAP32[($9 + 716 | 0) >> 2] | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) != (HEAP32[($9 + 708 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
HEAP32[($9 + 540 | 0) >> 2] = HEAP32[(HEAP32[((HEAP32[(HEAP32[($9 + 716 | 0) >> 2] | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const((HEAP32[((HEAP32[($9 + 540 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 88 | 0 | 0, $9 + 624 | 0 | 0) | 0;
|
|
i64toi32_i32$3 = i64toi32_i32$HIGH_BITS;
|
|
$282 = i64toi32_i32$2;
|
|
$282$hi = i64toi32_i32$3;
|
|
i64toi32_i32$1 = $9;
|
|
i64toi32_i32$3 = HEAP32[($9 + 600 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($9 + 604 | 0) >> 2] | 0;
|
|
$283$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $282$hi;
|
|
i64toi32_i32$2 = $283$hi;
|
|
i64toi32_i32$2 = $282$hi;
|
|
i64toi32_i32$2 = $283$hi;
|
|
$1593 = i64toi32_i32$3;
|
|
i64toi32_i32$2 = $282$hi;
|
|
i64toi32_i32$1 = $282;
|
|
i64toi32_i32$3 = $283$hi;
|
|
i64toi32_i32$0 = $1593;
|
|
if ((i64toi32_i32$2 | 0) < (i64toi32_i32$3 | 0)) {
|
|
$195 = 1
|
|
} else {
|
|
if ((i64toi32_i32$2 | 0) <= (i64toi32_i32$3 | 0)) {
|
|
if (i64toi32_i32$1 >>> 0 >= i64toi32_i32$0 >>> 0) {
|
|
$196 = 0
|
|
} else {
|
|
$196 = 1
|
|
}
|
|
$197 = $196;
|
|
} else {
|
|
$197 = 0
|
|
}
|
|
$195 = $197;
|
|
}
|
|
label$19 : {
|
|
if (!($195 & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
break label$17;
|
|
}
|
|
i64toi32_i32$1 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const((HEAP32[((HEAP32[($9 + 540 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 88 | 0 | 0, $9 + 624 | 0 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$HIGH_BITS;
|
|
$296 = i64toi32_i32$1;
|
|
$296$hi = i64toi32_i32$2;
|
|
i64toi32_i32$0 = $9;
|
|
i64toi32_i32$2 = HEAP32[($9 + 600 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 604 | 0) >> 2] | 0;
|
|
$297$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $296$hi;
|
|
i64toi32_i32$1 = $297$hi;
|
|
i64toi32_i32$1 = $296$hi;
|
|
i64toi32_i32$1 = $297$hi;
|
|
$1619 = i64toi32_i32$2;
|
|
i64toi32_i32$1 = $296$hi;
|
|
i64toi32_i32$0 = $296;
|
|
i64toi32_i32$2 = $297$hi;
|
|
i64toi32_i32$3 = $1619;
|
|
label$20 : {
|
|
if (((i64toi32_i32$0 | 0) == (i64toi32_i32$3 | 0) & (i64toi32_i32$1 | 0) == (i64toi32_i32$2 | 0) | 0) & 1 | 0) {
|
|
break label$20
|
|
}
|
|
__assert_fail(67337 | 0, 72732 | 0, 1529 | 0, 70286 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$21 : {
|
|
if (!((HEAP32[((HEAP32[($9 + 540 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) == (HEAP32[($10 + 100 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$21
|
|
}
|
|
break label$17;
|
|
}
|
|
i64toi32_i32$0 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const((HEAP32[((HEAP32[($9 + 540 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 88 | 0 | 0, $9 + 576 | 0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
$1660 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $9;
|
|
HEAP32[($9 + 528 | 0) >> 2] = $1660;
|
|
HEAP32[($9 + 532 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$3 = $9;
|
|
i64toi32_i32$1 = HEAP32[($9 + 528 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($9 + 532 | 0) >> 2] | 0;
|
|
$323 = i64toi32_i32$1;
|
|
$323$hi = i64toi32_i32$0;
|
|
i64toi32_i32$3 = $9;
|
|
i64toi32_i32$0 = HEAP32[($9 + 544 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 548 | 0) >> 2] | 0;
|
|
$324$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $323$hi;
|
|
i64toi32_i32$1 = $324$hi;
|
|
i64toi32_i32$1 = $323$hi;
|
|
i64toi32_i32$1 = $324$hi;
|
|
$1668 = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $323$hi;
|
|
i64toi32_i32$3 = $323;
|
|
i64toi32_i32$0 = $324$hi;
|
|
i64toi32_i32$2 = $1668;
|
|
if ((i64toi32_i32$1 | 0) < (i64toi32_i32$0 | 0)) {
|
|
$198 = 1
|
|
} else {
|
|
if ((i64toi32_i32$1 | 0) <= (i64toi32_i32$0 | 0)) {
|
|
if (i64toi32_i32$3 >>> 0 > i64toi32_i32$2 >>> 0) {
|
|
$200 = 0
|
|
} else {
|
|
$200 = 1
|
|
}
|
|
$201 = $200;
|
|
} else {
|
|
$201 = 0
|
|
}
|
|
$198 = $201;
|
|
}
|
|
label$22 : {
|
|
if (!($198 & 1 | 0)) {
|
|
break label$22
|
|
}
|
|
break label$17;
|
|
}
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$3 = HEAP32[($9 + 528 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 532 | 0) >> 2] | 0;
|
|
$1678 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $9;
|
|
HEAP32[($9 + 544 | 0) >> 2] = $1678;
|
|
HEAP32[($9 + 548 | 0) >> 2] = i64toi32_i32$1;
|
|
HEAP32[(HEAP32[($9 + 716 | 0) >> 2] | 0) >> 2] = HEAP32[($9 + 540 | 0) >> 2] | 0;
|
|
$336 = (HEAP32[((HEAP32[($9 + 540 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 88 | 0;
|
|
$337 = 8;
|
|
i64toi32_i32$2 = $336 + $337 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1704 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($9 + 664 | 0) + $337 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1704;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$3;
|
|
i64toi32_i32$2 = $336;
|
|
i64toi32_i32$3 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1708 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $9;
|
|
HEAP32[($9 + 664 | 0) >> 2] = $1708;
|
|
HEAP32[($9 + 668 | 0) >> 2] = i64toi32_i32$1;
|
|
continue label$18;
|
|
};
|
|
}
|
|
}
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$1 = HEAP32[($9 + 544 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($9 + 548 | 0) >> 2] | 0;
|
|
$344 = i64toi32_i32$1;
|
|
$344$hi = i64toi32_i32$3;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$3 = HEAP32[($9 + 568 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 572 | 0) >> 2] | 0;
|
|
$345$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $344$hi;
|
|
i64toi32_i32$1 = $345$hi;
|
|
$1714 = i64toi32_i32$3;
|
|
i64toi32_i32$1 = $344$hi;
|
|
i64toi32_i32$2 = $344;
|
|
i64toi32_i32$3 = $345$hi;
|
|
i64toi32_i32$0 = $1714;
|
|
i64toi32_i32$5 = (i64toi32_i32$2 >>> 0 < i64toi32_i32$0 >>> 0) + i64toi32_i32$3 | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$1 - i64toi32_i32$5 | 0;
|
|
$1717 = i64toi32_i32$2 - i64toi32_i32$0 | 0;
|
|
i64toi32_i32$2 = $9;
|
|
HEAP32[($9 + 520 | 0) >> 2] = $1717;
|
|
HEAP32[($9 + 524 | 0) >> 2] = i64toi32_i32$5;
|
|
i64toi32_i32$1 = $9;
|
|
i64toi32_i32$5 = HEAP32[($9 + 520 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($9 + 524 | 0) >> 2] | 0;
|
|
$347$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = 0;
|
|
$348$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $347$hi;
|
|
i64toi32_i32$2 = $348$hi;
|
|
i64toi32_i32$2 = $347$hi;
|
|
i64toi32_i32$2 = $348$hi;
|
|
i64toi32_i32$2 = $347$hi;
|
|
i64toi32_i32$1 = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $348$hi;
|
|
i64toi32_i32$0 = 0;
|
|
if ((i64toi32_i32$2 | 0) > (i64toi32_i32$5 | 0)) {
|
|
$202 = 1
|
|
} else {
|
|
if ((i64toi32_i32$2 | 0) >= (i64toi32_i32$5 | 0)) {
|
|
if (i64toi32_i32$1 >>> 0 <= i64toi32_i32$0 >>> 0) {
|
|
$203 = 0
|
|
} else {
|
|
$203 = 1
|
|
}
|
|
$204 = $203;
|
|
} else {
|
|
$204 = 0
|
|
}
|
|
$202 = $204;
|
|
}
|
|
label$23 : {
|
|
label$24 : {
|
|
if (!($202 & 1 | 0)) {
|
|
break label$24
|
|
}
|
|
label$25 : {
|
|
label$26 : {
|
|
label$27 : {
|
|
label$28 : {
|
|
label$29 : while (1) {
|
|
btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const($9 + 496 | 0 | 0, $9 + 664 | 0 | 0, $9 + 680 | 0 | 0);
|
|
i64toi32_i32$1 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point32_20const__29_20const($9 + 496 | 0 | 0, $9 + 648 | 0 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$HIGH_BITS;
|
|
$1757 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $9;
|
|
HEAP32[($9 + 512 | 0) >> 2] = $1757;
|
|
HEAP32[($9 + 516 | 0) >> 2] = i64toi32_i32$2;
|
|
label$30 : {
|
|
if (!((HEAP32[(HEAP32[($9 + 720 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$30
|
|
}
|
|
if (!((HEAP32[((HEAP32[(HEAP32[($9 + 720 | 0) >> 2] | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) != (HEAP32[($9 + 712 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$30
|
|
}
|
|
HEAP32[($9 + 492 | 0) >> 2] = HEAP32[((HEAP32[(HEAP32[(HEAP32[($9 + 720 | 0) >> 2] | 0) >> 2] | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
label$31 : {
|
|
if (!((HEAP32[((HEAP32[($9 + 492 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) > (HEAP32[($10 + 100 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$31
|
|
}
|
|
btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const($9 + 464 | 0 | 0, (HEAP32[((HEAP32[($9 + 492 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 88 | 0 | 0, $9 + 680 | 0 | 0);
|
|
i64toi32_i32$2 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const($9 + 464 | 0 | 0, $9 + 576 | 0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
$1846 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $9;
|
|
HEAP32[($9 + 480 | 0) >> 2] = $1846;
|
|
HEAP32[($9 + 484 | 0) >> 2] = i64toi32_i32$1;
|
|
btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const($9 + 440 | 0 | 0, (HEAP32[((HEAP32[($9 + 492 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 88 | 0 | 0, $9 + 680 | 0 | 0);
|
|
i64toi32_i32$1 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point32_20const__29_20const($9 + 440 | 0 | 0, $9 + 648 | 0 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$HIGH_BITS;
|
|
$1877 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $9;
|
|
HEAP32[($9 + 456 | 0) >> 2] = $1877;
|
|
HEAP32[($9 + 460 | 0) >> 2] = i64toi32_i32$2;
|
|
i64toi32_i32$0 = $9;
|
|
i64toi32_i32$2 = HEAP32[($9 + 480 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 484 | 0) >> 2] | 0;
|
|
$433$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$434$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $433$hi;
|
|
i64toi32_i32$1 = $434$hi;
|
|
i64toi32_i32$1 = $433$hi;
|
|
i64toi32_i32$1 = $434$hi;
|
|
i64toi32_i32$1 = $433$hi;
|
|
i64toi32_i32$0 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $434$hi;
|
|
i64toi32_i32$5 = 0;
|
|
label$32 : {
|
|
label$33 : {
|
|
if (!(((i64toi32_i32$0 | 0) == (i64toi32_i32$5 | 0) & (i64toi32_i32$1 | 0) == (i64toi32_i32$2 | 0) | 0) & 1 | 0)) {
|
|
break label$33
|
|
}
|
|
i64toi32_i32$5 = $9;
|
|
i64toi32_i32$0 = HEAP32[($9 + 456 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 460 | 0) >> 2] | 0;
|
|
$440$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$441$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $440$hi;
|
|
i64toi32_i32$1 = $441$hi;
|
|
i64toi32_i32$1 = $440$hi;
|
|
i64toi32_i32$1 = $441$hi;
|
|
i64toi32_i32$1 = $440$hi;
|
|
i64toi32_i32$5 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $441$hi;
|
|
i64toi32_i32$2 = 0;
|
|
if ((i64toi32_i32$1 | 0) < (i64toi32_i32$0 | 0)) {
|
|
$205 = 1
|
|
} else {
|
|
if ((i64toi32_i32$1 | 0) <= (i64toi32_i32$0 | 0)) {
|
|
if (i64toi32_i32$5 >>> 0 >= i64toi32_i32$2 >>> 0) {
|
|
$206 = 0
|
|
} else {
|
|
$206 = 1
|
|
}
|
|
$207 = $206;
|
|
} else {
|
|
$207 = 0
|
|
}
|
|
$205 = $207;
|
|
}
|
|
$445 = $205;
|
|
break label$32;
|
|
}
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$5 = HEAP32[($9 + 480 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 484 | 0) >> 2] | 0;
|
|
$446$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$447$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $446$hi;
|
|
i64toi32_i32$1 = $447$hi;
|
|
i64toi32_i32$1 = $446$hi;
|
|
i64toi32_i32$1 = $447$hi;
|
|
i64toi32_i32$1 = $446$hi;
|
|
i64toi32_i32$2 = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $447$hi;
|
|
i64toi32_i32$0 = 0;
|
|
if ((i64toi32_i32$1 | 0) < (i64toi32_i32$5 | 0)) {
|
|
$208 = 1
|
|
} else {
|
|
if ((i64toi32_i32$1 | 0) <= (i64toi32_i32$5 | 0)) {
|
|
if (i64toi32_i32$2 >>> 0 >= i64toi32_i32$0 >>> 0) {
|
|
$209 = 0
|
|
} else {
|
|
$209 = 1
|
|
}
|
|
$210 = $209;
|
|
} else {
|
|
$210 = 0
|
|
}
|
|
$208 = $210;
|
|
}
|
|
$454 = 0;
|
|
label$34 : {
|
|
if (!($208 & 1 | 0)) {
|
|
break label$34
|
|
}
|
|
i64toi32_i32$0 = $9;
|
|
i64toi32_i32$2 = HEAP32[($9 + 456 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 460 | 0) >> 2] | 0;
|
|
$455 = i64toi32_i32$2;
|
|
$455$hi = i64toi32_i32$1;
|
|
i64toi32_i32$0 = $9;
|
|
i64toi32_i32$1 = HEAP32[($9 + 480 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($9 + 484 | 0) >> 2] | 0;
|
|
$456$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $455$hi;
|
|
i64toi32_i32$2 = $456$hi;
|
|
$1921 = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $455$hi;
|
|
i64toi32_i32$1 = $456$hi;
|
|
btConvexHullInternal__Rational64__Rational64_28long_20long_2c_20long_20long_29($9 + 416 | 0 | 0, $455 | 0, i64toi32_i32$2 | 0, $1921 | 0, i64toi32_i32$1 | 0) | 0;
|
|
i64toi32_i32$0 = $9;
|
|
i64toi32_i32$1 = HEAP32[($9 + 512 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($9 + 516 | 0) >> 2] | 0;
|
|
$460 = i64toi32_i32$1;
|
|
$460$hi = i64toi32_i32$2;
|
|
i64toi32_i32$0 = $9;
|
|
i64toi32_i32$2 = HEAP32[($9 + 520 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 524 | 0) >> 2] | 0;
|
|
$461$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $460$hi;
|
|
i64toi32_i32$1 = $461$hi;
|
|
$1933 = i64toi32_i32$2;
|
|
i64toi32_i32$1 = $460$hi;
|
|
i64toi32_i32$2 = $461$hi;
|
|
btConvexHullInternal__Rational64__Rational64_28long_20long_2c_20long_20long_29($9 + 392 | 0 | 0, $460 | 0, i64toi32_i32$1 | 0, $1933 | 0, i64toi32_i32$2 | 0) | 0;
|
|
$454 = (btConvexHullInternal__Rational64__compare_28btConvexHullInternal__Rational64_20const__29_20const($9 + 416 | 0 | 0, $9 + 392 | 0 | 0) | 0 | 0) >= (0 | 0);
|
|
}
|
|
$445 = $454;
|
|
}
|
|
label$35 : {
|
|
if (!($445 & 1 | 0)) {
|
|
break label$35
|
|
}
|
|
$483 = (HEAP32[((HEAP32[($9 + 492 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 88 | 0;
|
|
$484 = 8;
|
|
i64toi32_i32$0 = $483 + $484 | 0;
|
|
i64toi32_i32$2 = HEAP32[i64toi32_i32$0 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] | 0;
|
|
$1979 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = ($9 + 680 | 0) + $484 | 0;
|
|
HEAP32[i64toi32_i32$2 >> 2] = $1979;
|
|
HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$0 = $483;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$0 >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] | 0;
|
|
$1983 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $9;
|
|
HEAP32[($9 + 680 | 0) >> 2] = $1983;
|
|
HEAP32[($9 + 684 | 0) >> 2] = i64toi32_i32$2;
|
|
btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const($9 + 376 | 0 | 0, $9 + 664 | 0 | 0, $9 + 680 | 0 | 0);
|
|
i64toi32_i32$2 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const($9 + 376 | 0 | 0, $9 + 576 | 0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
$2011 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $9;
|
|
HEAP32[($9 + 520 | 0) >> 2] = $2011;
|
|
HEAP32[($9 + 524 | 0) >> 2] = i64toi32_i32$1;
|
|
label$36 : {
|
|
label$37 : {
|
|
if (!((HEAP32[(HEAP32[($9 + 720 | 0) >> 2] | 0) >> 2] | 0 | 0) == (HEAP32[($9 + 704 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$37
|
|
}
|
|
$516 = 0;
|
|
break label$36;
|
|
}
|
|
$516 = HEAP32[($9 + 492 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[(HEAP32[($9 + 720 | 0) >> 2] | 0) >> 2] = $516;
|
|
continue label$29;
|
|
}
|
|
}
|
|
}
|
|
if (!((HEAP32[(HEAP32[($9 + 716 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$25
|
|
}
|
|
if (!((HEAP32[((HEAP32[(HEAP32[($9 + 716 | 0) >> 2] | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) != (HEAP32[($9 + 708 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$25
|
|
}
|
|
HEAP32[($9 + 372 | 0) >> 2] = HEAP32[(HEAP32[((HEAP32[(HEAP32[($9 + 716 | 0) >> 2] | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
if (!((HEAP32[((HEAP32[($9 + 372 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) > (HEAP32[($10 + 100 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$26
|
|
}
|
|
btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const($9 + 356 | 0 | 0, (HEAP32[((HEAP32[($9 + 372 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 88 | 0 | 0, $9 + 664 | 0 | 0);
|
|
i64toi32_i32$1 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const($9 + 356 | 0 | 0, $9 + 624 | 0 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$HIGH_BITS;
|
|
$565$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = 0;
|
|
$566$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $565$hi;
|
|
i64toi32_i32$2 = $566$hi;
|
|
i64toi32_i32$2 = $565$hi;
|
|
i64toi32_i32$2 = $566$hi;
|
|
i64toi32_i32$2 = $565$hi;
|
|
i64toi32_i32$0 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $566$hi;
|
|
i64toi32_i32$5 = 0;
|
|
if (!(((i64toi32_i32$0 | 0) == (i64toi32_i32$5 | 0) & (i64toi32_i32$2 | 0) == (i64toi32_i32$1 | 0) | 0) & 1 | 0)) {
|
|
break label$28
|
|
}
|
|
i64toi32_i32$0 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const($9 + 356 | 0 | 0, $9 + 576 | 0 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$HIGH_BITS;
|
|
$2146 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $9;
|
|
HEAP32[($9 + 344 | 0) >> 2] = $2146;
|
|
HEAP32[($9 + 348 | 0) >> 2] = i64toi32_i32$2;
|
|
i64toi32_i32$2 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point32_20const__29_20const($9 + 356 | 0 | 0, $9 + 648 | 0 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
$2159 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $9;
|
|
HEAP32[($9 + 336 | 0) >> 2] = $2159;
|
|
HEAP32[($9 + 340 | 0) >> 2] = i64toi32_i32$0;
|
|
btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const($9 + 312 | 0 | 0, (HEAP32[((HEAP32[($9 + 372 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 88 | 0 | 0, $9 + 680 | 0 | 0);
|
|
i64toi32_i32$0 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const($9 + 312 | 0 | 0, $9 + 576 | 0 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$HIGH_BITS;
|
|
$2190 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $9;
|
|
HEAP32[($9 + 328 | 0) >> 2] = $2190;
|
|
HEAP32[($9 + 332 | 0) >> 2] = i64toi32_i32$2;
|
|
i64toi32_i32$5 = $9;
|
|
i64toi32_i32$2 = HEAP32[($9 + 328 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($9 + 332 | 0) >> 2] | 0;
|
|
$603$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 0;
|
|
$604$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $603$hi;
|
|
i64toi32_i32$0 = $604$hi;
|
|
i64toi32_i32$0 = $603$hi;
|
|
i64toi32_i32$0 = $604$hi;
|
|
i64toi32_i32$0 = $603$hi;
|
|
i64toi32_i32$5 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $604$hi;
|
|
i64toi32_i32$1 = 0;
|
|
if ((i64toi32_i32$0 | 0) > (i64toi32_i32$2 | 0)) {
|
|
$211 = 1
|
|
} else {
|
|
if ((i64toi32_i32$0 | 0) >= (i64toi32_i32$2 | 0)) {
|
|
if (i64toi32_i32$5 >>> 0 <= i64toi32_i32$1 >>> 0) {
|
|
$212 = 0
|
|
} else {
|
|
$212 = 1
|
|
}
|
|
$213 = $212;
|
|
} else {
|
|
$213 = 0
|
|
}
|
|
$211 = $213;
|
|
}
|
|
$611 = 0;
|
|
label$38 : {
|
|
if (!($211 & 1 | 0)) {
|
|
break label$38
|
|
}
|
|
i64toi32_i32$1 = $9;
|
|
i64toi32_i32$5 = HEAP32[($9 + 344 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($9 + 348 | 0) >> 2] | 0;
|
|
$612$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 0;
|
|
$613$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $612$hi;
|
|
i64toi32_i32$0 = $613$hi;
|
|
i64toi32_i32$0 = $612$hi;
|
|
i64toi32_i32$0 = $613$hi;
|
|
i64toi32_i32$0 = $612$hi;
|
|
i64toi32_i32$1 = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $613$hi;
|
|
i64toi32_i32$2 = 0;
|
|
label$39 : {
|
|
label$40 : {
|
|
if (!(((i64toi32_i32$1 | 0) == (i64toi32_i32$2 | 0) & (i64toi32_i32$0 | 0) == (i64toi32_i32$5 | 0) | 0) & 1 | 0)) {
|
|
break label$40
|
|
}
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$1 = HEAP32[($9 + 336 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($9 + 340 | 0) >> 2] | 0;
|
|
$619$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 0;
|
|
$620$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $619$hi;
|
|
i64toi32_i32$0 = $620$hi;
|
|
i64toi32_i32$0 = $619$hi;
|
|
i64toi32_i32$0 = $620$hi;
|
|
i64toi32_i32$0 = $619$hi;
|
|
i64toi32_i32$2 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $620$hi;
|
|
i64toi32_i32$5 = 0;
|
|
if ((i64toi32_i32$0 | 0) < (i64toi32_i32$1 | 0)) {
|
|
$214 = 1
|
|
} else {
|
|
if ((i64toi32_i32$0 | 0) <= (i64toi32_i32$1 | 0)) {
|
|
if (i64toi32_i32$2 >>> 0 >= i64toi32_i32$5 >>> 0) {
|
|
$215 = 0
|
|
} else {
|
|
$215 = 1
|
|
}
|
|
$216 = $215;
|
|
} else {
|
|
$216 = 0
|
|
}
|
|
$214 = $216;
|
|
}
|
|
$624 = $214;
|
|
break label$39;
|
|
}
|
|
i64toi32_i32$5 = $9;
|
|
i64toi32_i32$2 = HEAP32[($9 + 344 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($9 + 348 | 0) >> 2] | 0;
|
|
$625$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 0;
|
|
$626$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $625$hi;
|
|
i64toi32_i32$0 = $626$hi;
|
|
i64toi32_i32$0 = $625$hi;
|
|
i64toi32_i32$0 = $626$hi;
|
|
i64toi32_i32$0 = $625$hi;
|
|
i64toi32_i32$5 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $626$hi;
|
|
i64toi32_i32$1 = 0;
|
|
if ((i64toi32_i32$0 | 0) < (i64toi32_i32$2 | 0)) {
|
|
$217 = 1
|
|
} else {
|
|
if ((i64toi32_i32$0 | 0) <= (i64toi32_i32$2 | 0)) {
|
|
if (i64toi32_i32$5 >>> 0 >= i64toi32_i32$1 >>> 0) {
|
|
$218 = 0
|
|
} else {
|
|
$218 = 1
|
|
}
|
|
$219 = $218;
|
|
} else {
|
|
$219 = 0
|
|
}
|
|
$217 = $219;
|
|
}
|
|
$633 = 0;
|
|
label$41 : {
|
|
if (!($217 & 1 | 0)) {
|
|
break label$41
|
|
}
|
|
i64toi32_i32$1 = $9;
|
|
i64toi32_i32$5 = HEAP32[($9 + 336 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($9 + 340 | 0) >> 2] | 0;
|
|
$634 = i64toi32_i32$5;
|
|
$634$hi = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $9;
|
|
i64toi32_i32$0 = HEAP32[($9 + 344 | 0) >> 2] | 0;
|
|
i64toi32_i32$5 = HEAP32[($9 + 348 | 0) >> 2] | 0;
|
|
$635$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $634$hi;
|
|
i64toi32_i32$5 = $635$hi;
|
|
$2247 = i64toi32_i32$0;
|
|
i64toi32_i32$5 = $634$hi;
|
|
i64toi32_i32$0 = $635$hi;
|
|
btConvexHullInternal__Rational64__Rational64_28long_20long_2c_20long_20long_29($9 + 288 | 0 | 0, $634 | 0, i64toi32_i32$5 | 0, $2247 | 0, i64toi32_i32$0 | 0) | 0;
|
|
i64toi32_i32$1 = $9;
|
|
i64toi32_i32$0 = HEAP32[($9 + 512 | 0) >> 2] | 0;
|
|
i64toi32_i32$5 = HEAP32[($9 + 516 | 0) >> 2] | 0;
|
|
$639 = i64toi32_i32$0;
|
|
$639$hi = i64toi32_i32$5;
|
|
i64toi32_i32$1 = $9;
|
|
i64toi32_i32$5 = HEAP32[($9 + 520 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($9 + 524 | 0) >> 2] | 0;
|
|
$640$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $639$hi;
|
|
i64toi32_i32$0 = $640$hi;
|
|
$2259 = i64toi32_i32$5;
|
|
i64toi32_i32$0 = $639$hi;
|
|
i64toi32_i32$5 = $640$hi;
|
|
btConvexHullInternal__Rational64__Rational64_28long_20long_2c_20long_20long_29($9 + 264 | 0 | 0, $639 | 0, i64toi32_i32$0 | 0, $2259 | 0, i64toi32_i32$5 | 0) | 0;
|
|
$633 = (btConvexHullInternal__Rational64__compare_28btConvexHullInternal__Rational64_20const__29_20const($9 + 288 | 0 | 0, $9 + 264 | 0 | 0) | 0 | 0) > (0 | 0);
|
|
}
|
|
$624 = $633;
|
|
}
|
|
$611 = $624;
|
|
}
|
|
label$42 : {
|
|
if (!($611 & 1 | 0)) {
|
|
break label$42
|
|
}
|
|
HEAP32[(HEAP32[($9 + 716 | 0) >> 2] | 0) >> 2] = HEAP32[($9 + 372 | 0) >> 2] | 0;
|
|
$666 = (HEAP32[((HEAP32[(HEAP32[($9 + 716 | 0) >> 2] | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 88 | 0;
|
|
$667 = 8;
|
|
i64toi32_i32$1 = $666 + $667 | 0;
|
|
i64toi32_i32$5 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$2315 = i64toi32_i32$5;
|
|
i64toi32_i32$5 = ($9 + 664 | 0) + $667 | 0;
|
|
HEAP32[i64toi32_i32$5 >> 2] = $2315;
|
|
HEAP32[(i64toi32_i32$5 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $666;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$2319 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $9;
|
|
HEAP32[($9 + 664 | 0) >> 2] = $2319;
|
|
HEAP32[($9 + 668 | 0) >> 2] = i64toi32_i32$5;
|
|
i64toi32_i32$1 = $9;
|
|
i64toi32_i32$5 = HEAP32[($9 + 328 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($9 + 332 | 0) >> 2] | 0;
|
|
$2323 = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $9;
|
|
HEAP32[($9 + 520 | 0) >> 2] = $2323;
|
|
HEAP32[($9 + 524 | 0) >> 2] = i64toi32_i32$0;
|
|
continue label$29;
|
|
}
|
|
break label$29;
|
|
};
|
|
break label$27;
|
|
}
|
|
label$43 : {
|
|
label$44 : {
|
|
if (!((HEAP32[(HEAP32[($9 + 716 | 0) >> 2] | 0) >> 2] | 0 | 0) == (HEAP32[($9 + 700 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$44
|
|
}
|
|
i64toi32_i32$0 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const($9 + 356 | 0 | 0, $9 + 624 | 0 | 0) | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$HIGH_BITS;
|
|
$689$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = 0;
|
|
$690$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $689$hi;
|
|
i64toi32_i32$5 = $690$hi;
|
|
i64toi32_i32$5 = $689$hi;
|
|
i64toi32_i32$5 = $690$hi;
|
|
i64toi32_i32$5 = $689$hi;
|
|
i64toi32_i32$1 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $690$hi;
|
|
i64toi32_i32$2 = 0;
|
|
if ((i64toi32_i32$5 | 0) < (i64toi32_i32$0 | 0)) {
|
|
$220 = 1
|
|
} else {
|
|
if ((i64toi32_i32$5 | 0) <= (i64toi32_i32$0 | 0)) {
|
|
if (i64toi32_i32$1 >>> 0 >= i64toi32_i32$2 >>> 0) {
|
|
$221 = 0
|
|
} else {
|
|
$221 = 1
|
|
}
|
|
$222 = $221;
|
|
} else {
|
|
$222 = 0
|
|
}
|
|
$220 = $222;
|
|
}
|
|
if ($220 & 1 | 0) {
|
|
break label$43
|
|
}
|
|
}
|
|
__assert_fail(86764 | 0, 72732 | 0, 1594 | 0, 70286 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
break label$23;
|
|
}
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$1 = HEAP32[($9 + 520 | 0) >> 2] | 0;
|
|
i64toi32_i32$5 = HEAP32[($9 + 524 | 0) >> 2] | 0;
|
|
$700$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = 0;
|
|
$701$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $700$hi;
|
|
i64toi32_i32$5 = $701$hi;
|
|
i64toi32_i32$5 = $700$hi;
|
|
i64toi32_i32$5 = $701$hi;
|
|
i64toi32_i32$5 = $700$hi;
|
|
i64toi32_i32$2 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $701$hi;
|
|
i64toi32_i32$0 = 0;
|
|
if ((i64toi32_i32$5 | 0) < (i64toi32_i32$1 | 0)) {
|
|
$223 = 1
|
|
} else {
|
|
if ((i64toi32_i32$5 | 0) <= (i64toi32_i32$1 | 0)) {
|
|
if (i64toi32_i32$2 >>> 0 >= i64toi32_i32$0 >>> 0) {
|
|
$224 = 0
|
|
} else {
|
|
$224 = 1
|
|
}
|
|
$225 = $224;
|
|
} else {
|
|
$225 = 0
|
|
}
|
|
$223 = $225;
|
|
}
|
|
label$45 : {
|
|
if (!($223 & 1 | 0)) {
|
|
break label$45
|
|
}
|
|
label$46 : {
|
|
label$47 : {
|
|
label$48 : {
|
|
label$49 : {
|
|
label$50 : while (1) {
|
|
btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const($9 + 240 | 0 | 0, $9 + 664 | 0 | 0, $9 + 680 | 0 | 0);
|
|
i64toi32_i32$2 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point32_20const__29_20const($9 + 240 | 0 | 0, $9 + 648 | 0 | 0) | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$HIGH_BITS;
|
|
$2403 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $9;
|
|
HEAP32[($9 + 256 | 0) >> 2] = $2403;
|
|
HEAP32[($9 + 260 | 0) >> 2] = i64toi32_i32$5;
|
|
label$51 : {
|
|
if (!((HEAP32[(HEAP32[($9 + 716 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$51
|
|
}
|
|
if (!((HEAP32[((HEAP32[(HEAP32[($9 + 716 | 0) >> 2] | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) != (HEAP32[($9 + 708 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$51
|
|
}
|
|
HEAP32[($9 + 236 | 0) >> 2] = HEAP32[((HEAP32[((HEAP32[(HEAP32[($9 + 716 | 0) >> 2] | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
label$52 : {
|
|
if (!((HEAP32[((HEAP32[($9 + 236 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) > (HEAP32[($10 + 100 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$52
|
|
}
|
|
btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const($9 + 208 | 0 | 0, (HEAP32[((HEAP32[($9 + 236 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 88 | 0 | 0, $9 + 664 | 0 | 0);
|
|
i64toi32_i32$5 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const($9 + 208 | 0 | 0, $9 + 576 | 0 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$HIGH_BITS;
|
|
$2492 = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $9;
|
|
HEAP32[($9 + 224 | 0) >> 2] = $2492;
|
|
HEAP32[($9 + 228 | 0) >> 2] = i64toi32_i32$2;
|
|
btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const($9 + 184 | 0 | 0, (HEAP32[((HEAP32[($9 + 236 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 88 | 0 | 0, $9 + 664 | 0 | 0);
|
|
i64toi32_i32$2 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point32_20const__29_20const($9 + 184 | 0 | 0, $9 + 648 | 0 | 0) | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$HIGH_BITS;
|
|
$2523 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $9;
|
|
HEAP32[($9 + 200 | 0) >> 2] = $2523;
|
|
HEAP32[($9 + 204 | 0) >> 2] = i64toi32_i32$5;
|
|
i64toi32_i32$0 = $9;
|
|
i64toi32_i32$5 = HEAP32[($9 + 224 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($9 + 228 | 0) >> 2] | 0;
|
|
$786$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = 0;
|
|
$787$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $786$hi;
|
|
i64toi32_i32$2 = $787$hi;
|
|
i64toi32_i32$2 = $786$hi;
|
|
i64toi32_i32$2 = $787$hi;
|
|
i64toi32_i32$2 = $786$hi;
|
|
i64toi32_i32$0 = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $787$hi;
|
|
i64toi32_i32$1 = 0;
|
|
label$53 : {
|
|
label$54 : {
|
|
if (!(((i64toi32_i32$0 | 0) == (i64toi32_i32$1 | 0) & (i64toi32_i32$2 | 0) == (i64toi32_i32$5 | 0) | 0) & 1 | 0)) {
|
|
break label$54
|
|
}
|
|
i64toi32_i32$1 = $9;
|
|
i64toi32_i32$0 = HEAP32[($9 + 200 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($9 + 204 | 0) >> 2] | 0;
|
|
$793$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = 0;
|
|
$794$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $793$hi;
|
|
i64toi32_i32$2 = $794$hi;
|
|
i64toi32_i32$2 = $793$hi;
|
|
i64toi32_i32$2 = $794$hi;
|
|
i64toi32_i32$2 = $793$hi;
|
|
i64toi32_i32$1 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $794$hi;
|
|
i64toi32_i32$5 = 0;
|
|
if ((i64toi32_i32$2 | 0) > (i64toi32_i32$0 | 0)) {
|
|
$227 = 1
|
|
} else {
|
|
if ((i64toi32_i32$2 | 0) >= (i64toi32_i32$0 | 0)) {
|
|
if (i64toi32_i32$1 >>> 0 <= i64toi32_i32$5 >>> 0) {
|
|
$228 = 0
|
|
} else {
|
|
$228 = 1
|
|
}
|
|
$229 = $228;
|
|
} else {
|
|
$229 = 0
|
|
}
|
|
$227 = $229;
|
|
}
|
|
$798 = $227;
|
|
break label$53;
|
|
}
|
|
i64toi32_i32$5 = $9;
|
|
i64toi32_i32$1 = HEAP32[($9 + 224 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($9 + 228 | 0) >> 2] | 0;
|
|
$799$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = 0;
|
|
$800$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $799$hi;
|
|
i64toi32_i32$2 = $800$hi;
|
|
i64toi32_i32$2 = $799$hi;
|
|
i64toi32_i32$2 = $800$hi;
|
|
i64toi32_i32$2 = $799$hi;
|
|
i64toi32_i32$5 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $800$hi;
|
|
i64toi32_i32$0 = 0;
|
|
if ((i64toi32_i32$2 | 0) < (i64toi32_i32$1 | 0)) {
|
|
$230 = 1
|
|
} else {
|
|
if ((i64toi32_i32$2 | 0) <= (i64toi32_i32$1 | 0)) {
|
|
if (i64toi32_i32$5 >>> 0 >= i64toi32_i32$0 >>> 0) {
|
|
$231 = 0
|
|
} else {
|
|
$231 = 1
|
|
}
|
|
$232 = $231;
|
|
} else {
|
|
$232 = 0
|
|
}
|
|
$230 = $232;
|
|
}
|
|
$807 = 0;
|
|
label$55 : {
|
|
if (!($230 & 1 | 0)) {
|
|
break label$55
|
|
}
|
|
i64toi32_i32$0 = $9;
|
|
i64toi32_i32$5 = HEAP32[($9 + 200 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($9 + 204 | 0) >> 2] | 0;
|
|
$808 = i64toi32_i32$5;
|
|
$808$hi = i64toi32_i32$2;
|
|
i64toi32_i32$0 = $9;
|
|
i64toi32_i32$2 = HEAP32[($9 + 224 | 0) >> 2] | 0;
|
|
i64toi32_i32$5 = HEAP32[($9 + 228 | 0) >> 2] | 0;
|
|
$809$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $808$hi;
|
|
i64toi32_i32$5 = $809$hi;
|
|
$2567 = i64toi32_i32$2;
|
|
i64toi32_i32$5 = $808$hi;
|
|
i64toi32_i32$2 = $809$hi;
|
|
btConvexHullInternal__Rational64__Rational64_28long_20long_2c_20long_20long_29($9 + 160 | 0 | 0, $808 | 0, i64toi32_i32$5 | 0, $2567 | 0, i64toi32_i32$2 | 0) | 0;
|
|
i64toi32_i32$0 = $9;
|
|
i64toi32_i32$2 = HEAP32[($9 + 256 | 0) >> 2] | 0;
|
|
i64toi32_i32$5 = HEAP32[($9 + 260 | 0) >> 2] | 0;
|
|
$813 = i64toi32_i32$2;
|
|
$813$hi = i64toi32_i32$5;
|
|
i64toi32_i32$0 = $9;
|
|
i64toi32_i32$5 = HEAP32[($9 + 520 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($9 + 524 | 0) >> 2] | 0;
|
|
$814$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $813$hi;
|
|
i64toi32_i32$2 = $814$hi;
|
|
$2579 = i64toi32_i32$5;
|
|
i64toi32_i32$2 = $813$hi;
|
|
i64toi32_i32$5 = $814$hi;
|
|
btConvexHullInternal__Rational64__Rational64_28long_20long_2c_20long_20long_29($9 + 136 | 0 | 0, $813 | 0, i64toi32_i32$2 | 0, $2579 | 0, i64toi32_i32$5 | 0) | 0;
|
|
$807 = (btConvexHullInternal__Rational64__compare_28btConvexHullInternal__Rational64_20const__29_20const($9 + 160 | 0 | 0, $9 + 136 | 0 | 0) | 0 | 0) <= (0 | 0);
|
|
}
|
|
$798 = $807;
|
|
}
|
|
label$56 : {
|
|
if (!($798 & 1 | 0)) {
|
|
break label$56
|
|
}
|
|
$836 = (HEAP32[((HEAP32[($9 + 236 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 88 | 0;
|
|
$837 = 8;
|
|
i64toi32_i32$0 = $836 + $837 | 0;
|
|
i64toi32_i32$5 = HEAP32[i64toi32_i32$0 >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] | 0;
|
|
$2625 = i64toi32_i32$5;
|
|
i64toi32_i32$5 = ($9 + 664 | 0) + $837 | 0;
|
|
HEAP32[i64toi32_i32$5 >> 2] = $2625;
|
|
HEAP32[(i64toi32_i32$5 + 4 | 0) >> 2] = i64toi32_i32$2;
|
|
i64toi32_i32$0 = $836;
|
|
i64toi32_i32$2 = HEAP32[i64toi32_i32$0 >> 2] | 0;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] | 0;
|
|
$2629 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $9;
|
|
HEAP32[($9 + 664 | 0) >> 2] = $2629;
|
|
HEAP32[($9 + 668 | 0) >> 2] = i64toi32_i32$5;
|
|
btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const($9 + 120 | 0 | 0, $9 + 664 | 0 | 0, $9 + 680 | 0 | 0);
|
|
i64toi32_i32$5 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const($9 + 120 | 0 | 0, $9 + 576 | 0 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$HIGH_BITS;
|
|
$2657 = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $9;
|
|
HEAP32[($9 + 520 | 0) >> 2] = $2657;
|
|
HEAP32[($9 + 524 | 0) >> 2] = i64toi32_i32$2;
|
|
label$57 : {
|
|
label$58 : {
|
|
if (!((HEAP32[(HEAP32[($9 + 716 | 0) >> 2] | 0) >> 2] | 0 | 0) == (HEAP32[($9 + 700 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$58
|
|
}
|
|
$869 = 0;
|
|
break label$57;
|
|
}
|
|
$869 = HEAP32[($9 + 236 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[(HEAP32[($9 + 716 | 0) >> 2] | 0) >> 2] = $869;
|
|
continue label$50;
|
|
}
|
|
}
|
|
}
|
|
if (!((HEAP32[(HEAP32[($9 + 720 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$46
|
|
}
|
|
if (!((HEAP32[((HEAP32[(HEAP32[($9 + 720 | 0) >> 2] | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) != (HEAP32[($9 + 712 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$46
|
|
}
|
|
HEAP32[($9 + 116 | 0) >> 2] = HEAP32[((HEAP32[((HEAP32[(HEAP32[($9 + 720 | 0) >> 2] | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
if (!((HEAP32[((HEAP32[($9 + 116 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) > (HEAP32[($10 + 100 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$47
|
|
}
|
|
btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const($9 + 100 | 0 | 0, (HEAP32[((HEAP32[($9 + 116 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 88 | 0 | 0, $9 + 680 | 0 | 0);
|
|
i64toi32_i32$2 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const($9 + 100 | 0 | 0, $9 + 624 | 0 | 0) | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$HIGH_BITS;
|
|
$918$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = 0;
|
|
$919$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $918$hi;
|
|
i64toi32_i32$5 = $919$hi;
|
|
i64toi32_i32$5 = $918$hi;
|
|
i64toi32_i32$5 = $919$hi;
|
|
i64toi32_i32$5 = $918$hi;
|
|
i64toi32_i32$0 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $919$hi;
|
|
i64toi32_i32$1 = 0;
|
|
if (!(((i64toi32_i32$0 | 0) == (i64toi32_i32$1 | 0) & (i64toi32_i32$5 | 0) == (i64toi32_i32$2 | 0) | 0) & 1 | 0)) {
|
|
break label$49
|
|
}
|
|
i64toi32_i32$0 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const($9 + 100 | 0 | 0, $9 + 576 | 0 | 0) | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$HIGH_BITS;
|
|
$2792 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $9;
|
|
HEAP32[($9 + 88 | 0) >> 2] = $2792;
|
|
HEAP32[($9 + 92 | 0) >> 2] = i64toi32_i32$5;
|
|
i64toi32_i32$5 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point32_20const__29_20const($9 + 100 | 0 | 0, $9 + 648 | 0 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
$2805 = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $9;
|
|
HEAP32[($9 + 80 | 0) >> 2] = $2805;
|
|
HEAP32[($9 + 84 | 0) >> 2] = i64toi32_i32$0;
|
|
btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const($9 + 56 | 0 | 0, $9 + 664 | 0 | 0, (HEAP32[((HEAP32[($9 + 116 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 88 | 0 | 0);
|
|
i64toi32_i32$0 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const($9 + 56 | 0 | 0, $9 + 576 | 0 | 0) | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$HIGH_BITS;
|
|
$2836 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $9;
|
|
HEAP32[($9 + 72 | 0) >> 2] = $2836;
|
|
HEAP32[($9 + 76 | 0) >> 2] = i64toi32_i32$5;
|
|
i64toi32_i32$1 = $9;
|
|
i64toi32_i32$5 = HEAP32[($9 + 72 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($9 + 76 | 0) >> 2] | 0;
|
|
$956$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 0;
|
|
$957$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $956$hi;
|
|
i64toi32_i32$0 = $957$hi;
|
|
i64toi32_i32$0 = $956$hi;
|
|
i64toi32_i32$0 = $957$hi;
|
|
i64toi32_i32$0 = $956$hi;
|
|
i64toi32_i32$1 = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $957$hi;
|
|
i64toi32_i32$2 = 0;
|
|
if ((i64toi32_i32$0 | 0) < (i64toi32_i32$5 | 0)) {
|
|
$233 = 1
|
|
} else {
|
|
if ((i64toi32_i32$0 | 0) <= (i64toi32_i32$5 | 0)) {
|
|
if (i64toi32_i32$1 >>> 0 >= i64toi32_i32$2 >>> 0) {
|
|
$234 = 0
|
|
} else {
|
|
$234 = 1
|
|
}
|
|
$235 = $234;
|
|
} else {
|
|
$235 = 0
|
|
}
|
|
$233 = $235;
|
|
}
|
|
$964 = 0;
|
|
label$59 : {
|
|
if (!($233 & 1 | 0)) {
|
|
break label$59
|
|
}
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$1 = HEAP32[($9 + 88 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($9 + 92 | 0) >> 2] | 0;
|
|
$965$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 0;
|
|
$966$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $965$hi;
|
|
i64toi32_i32$0 = $966$hi;
|
|
i64toi32_i32$0 = $965$hi;
|
|
i64toi32_i32$0 = $966$hi;
|
|
i64toi32_i32$0 = $965$hi;
|
|
i64toi32_i32$2 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $966$hi;
|
|
i64toi32_i32$5 = 0;
|
|
label$60 : {
|
|
label$61 : {
|
|
if (!(((i64toi32_i32$2 | 0) == (i64toi32_i32$5 | 0) & (i64toi32_i32$0 | 0) == (i64toi32_i32$1 | 0) | 0) & 1 | 0)) {
|
|
break label$61
|
|
}
|
|
i64toi32_i32$5 = $9;
|
|
i64toi32_i32$2 = HEAP32[($9 + 80 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($9 + 84 | 0) >> 2] | 0;
|
|
$972$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 0;
|
|
$973$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $972$hi;
|
|
i64toi32_i32$0 = $973$hi;
|
|
i64toi32_i32$0 = $972$hi;
|
|
i64toi32_i32$0 = $973$hi;
|
|
i64toi32_i32$0 = $972$hi;
|
|
i64toi32_i32$5 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $973$hi;
|
|
i64toi32_i32$1 = 0;
|
|
if ((i64toi32_i32$0 | 0) > (i64toi32_i32$2 | 0)) {
|
|
$236 = 1
|
|
} else {
|
|
if ((i64toi32_i32$0 | 0) >= (i64toi32_i32$2 | 0)) {
|
|
if (i64toi32_i32$5 >>> 0 <= i64toi32_i32$1 >>> 0) {
|
|
$237 = 0
|
|
} else {
|
|
$237 = 1
|
|
}
|
|
$238 = $237;
|
|
} else {
|
|
$238 = 0
|
|
}
|
|
$236 = $238;
|
|
}
|
|
$977 = $236;
|
|
break label$60;
|
|
}
|
|
i64toi32_i32$1 = $9;
|
|
i64toi32_i32$5 = HEAP32[($9 + 88 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($9 + 92 | 0) >> 2] | 0;
|
|
$978$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 0;
|
|
$979$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $978$hi;
|
|
i64toi32_i32$0 = $979$hi;
|
|
i64toi32_i32$0 = $978$hi;
|
|
i64toi32_i32$0 = $979$hi;
|
|
i64toi32_i32$0 = $978$hi;
|
|
i64toi32_i32$1 = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $979$hi;
|
|
i64toi32_i32$2 = 0;
|
|
if ((i64toi32_i32$0 | 0) < (i64toi32_i32$5 | 0)) {
|
|
$241 = 1
|
|
} else {
|
|
if ((i64toi32_i32$0 | 0) <= (i64toi32_i32$5 | 0)) {
|
|
if (i64toi32_i32$1 >>> 0 >= i64toi32_i32$2 >>> 0) {
|
|
$242 = 0
|
|
} else {
|
|
$242 = 1
|
|
}
|
|
$243 = $242;
|
|
} else {
|
|
$243 = 0
|
|
}
|
|
$241 = $243;
|
|
}
|
|
$986 = 0;
|
|
label$62 : {
|
|
if (!($241 & 1 | 0)) {
|
|
break label$62
|
|
}
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$1 = HEAP32[($9 + 80 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($9 + 84 | 0) >> 2] | 0;
|
|
$987 = i64toi32_i32$1;
|
|
$987$hi = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$0 = HEAP32[($9 + 88 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 92 | 0) >> 2] | 0;
|
|
$988$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $987$hi;
|
|
i64toi32_i32$1 = $988$hi;
|
|
$2893 = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $987$hi;
|
|
i64toi32_i32$0 = $988$hi;
|
|
btConvexHullInternal__Rational64__Rational64_28long_20long_2c_20long_20long_29($9 + 32 | 0 | 0, $987 | 0, i64toi32_i32$1 | 0, $2893 | 0, i64toi32_i32$0 | 0) | 0;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$0 = HEAP32[($9 + 256 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 260 | 0) >> 2] | 0;
|
|
$992 = i64toi32_i32$0;
|
|
$992$hi = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$1 = HEAP32[($9 + 520 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($9 + 524 | 0) >> 2] | 0;
|
|
$993$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $992$hi;
|
|
i64toi32_i32$0 = $993$hi;
|
|
$2905 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = $992$hi;
|
|
i64toi32_i32$1 = $993$hi;
|
|
btConvexHullInternal__Rational64__Rational64_28long_20long_2c_20long_20long_29($9 + 8 | 0 | 0, $992 | 0, i64toi32_i32$0 | 0, $2905 | 0, i64toi32_i32$1 | 0) | 0;
|
|
$986 = (btConvexHullInternal__Rational64__compare_28btConvexHullInternal__Rational64_20const__29_20const($9 + 32 | 0 | 0, $9 + 8 | 0 | 0) | 0 | 0) < (0 | 0);
|
|
}
|
|
$977 = $986;
|
|
}
|
|
$964 = $977;
|
|
}
|
|
label$63 : {
|
|
if (!($964 & 1 | 0)) {
|
|
break label$63
|
|
}
|
|
HEAP32[(HEAP32[($9 + 720 | 0) >> 2] | 0) >> 2] = HEAP32[($9 + 116 | 0) >> 2] | 0;
|
|
$1019 = (HEAP32[((HEAP32[(HEAP32[($9 + 720 | 0) >> 2] | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 88 | 0;
|
|
$1020 = 8;
|
|
i64toi32_i32$2 = $1019 + $1020 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2961 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($9 + 680 | 0) + $1020 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $2961;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $1019;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2965 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $9;
|
|
HEAP32[($9 + 680 | 0) >> 2] = $2965;
|
|
HEAP32[($9 + 684 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$1 = HEAP32[($9 + 72 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($9 + 76 | 0) >> 2] | 0;
|
|
$2969 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $9;
|
|
HEAP32[($9 + 520 | 0) >> 2] = $2969;
|
|
HEAP32[($9 + 524 | 0) >> 2] = i64toi32_i32$0;
|
|
continue label$50;
|
|
}
|
|
break label$50;
|
|
};
|
|
break label$48;
|
|
}
|
|
label$64 : {
|
|
label$65 : {
|
|
if (!((HEAP32[(HEAP32[($9 + 720 | 0) >> 2] | 0) >> 2] | 0 | 0) == (HEAP32[($9 + 704 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$65
|
|
}
|
|
i64toi32_i32$0 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const($9 + 100 | 0 | 0, $9 + 624 | 0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
$1042$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$1043$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $1042$hi;
|
|
i64toi32_i32$1 = $1043$hi;
|
|
i64toi32_i32$1 = $1042$hi;
|
|
i64toi32_i32$1 = $1043$hi;
|
|
i64toi32_i32$1 = $1042$hi;
|
|
i64toi32_i32$2 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $1043$hi;
|
|
i64toi32_i32$5 = 0;
|
|
if ((i64toi32_i32$1 | 0) < (i64toi32_i32$0 | 0)) {
|
|
$244 = 1
|
|
} else {
|
|
if ((i64toi32_i32$1 | 0) <= (i64toi32_i32$0 | 0)) {
|
|
if (i64toi32_i32$2 >>> 0 >= i64toi32_i32$5 >>> 0) {
|
|
$245 = 0
|
|
} else {
|
|
$245 = 1
|
|
}
|
|
$246 = $245;
|
|
} else {
|
|
$246 = 0
|
|
}
|
|
$244 = $246;
|
|
}
|
|
if ($244 & 1 | 0) {
|
|
break label$64
|
|
}
|
|
}
|
|
__assert_fail(86803 | 0, 72732 | 0, 1646 | 0, 70286 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
__stack_pointer = $9 + 736 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btConvexHullInternal__Point32__Point32_28int_2c_20int_2c_20int_29($0 | 0, (HEAP32[$6 >> 2] | 0) - (HEAP32[(HEAP32[($5 + 8 | 0) >> 2] | 0) >> 2] | 0) | 0 | 0, (HEAP32[($6 + 4 | 0) >> 2] | 0) - (HEAP32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) | 0 | 0, (HEAP32[($6 + 8 | 0) >> 2] | 0) - (HEAP32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Rational64__Rational64_28long_20long_2c_20long_20long_29($0, $1, $1$hi, $2, $2$hi) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$1$hi = $1$hi | 0;
|
|
$2 = $2 | 0;
|
|
$2$hi = $2$hi | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$5 = 0, $5 = 0, $6 = 0, i64toi32_i32$3 = 0, i64toi32_i32$4 = 0, $7$hi = 0, $8$hi = 0, $16$hi = 0, $17$hi = 0, i64toi32_i32$6 = 0, $29$hi = 0, $30$hi = 0, $37$hi = 0, $38$hi = 0, $30 = 0, $31 = 0, $32 = 0, $33 = 0, $34 = 0, $35 = 0, $24$hi = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $47$hi = 0, $83 = 0, $100$hi = 0, $101 = 0, $124 = 0, $146$hi = 0, $147 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $0;
|
|
i64toi32_i32$0 = $1$hi;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[(i64toi32_i32$1 + 16 | 0) >> 2] = $1;
|
|
HEAP32[(i64toi32_i32$1 + 20 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $2$hi;
|
|
HEAP32[(i64toi32_i32$1 + 8 | 0) >> 2] = $2;
|
|
HEAP32[(i64toi32_i32$1 + 12 | 0) >> 2] = i64toi32_i32$0;
|
|
$6 = HEAP32[(i64toi32_i32$1 + 24 | 0) >> 2] | 0;
|
|
HEAP32[(i64toi32_i32$1 + 28 | 0) >> 2] = $6;
|
|
i64toi32_i32$2 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 20 | 0) >> 2] | 0;
|
|
$7$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$8$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $7$hi;
|
|
i64toi32_i32$1 = $8$hi;
|
|
i64toi32_i32$1 = $7$hi;
|
|
i64toi32_i32$1 = $8$hi;
|
|
i64toi32_i32$1 = $7$hi;
|
|
i64toi32_i32$2 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $8$hi;
|
|
i64toi32_i32$3 = 0;
|
|
if ((i64toi32_i32$1 | 0) > (i64toi32_i32$0 | 0)) {
|
|
$30 = 1
|
|
} else {
|
|
if ((i64toi32_i32$1 | 0) >= (i64toi32_i32$0 | 0)) {
|
|
if (i64toi32_i32$2 >>> 0 <= i64toi32_i32$3 >>> 0) {
|
|
$31 = 0
|
|
} else {
|
|
$31 = 1
|
|
}
|
|
$32 = $31;
|
|
} else {
|
|
$32 = 0
|
|
}
|
|
$30 = $32;
|
|
}
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!($30 & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($6 + 16 | 0) >> 2] = 1;
|
|
i64toi32_i32$3 = $5;
|
|
i64toi32_i32$2 = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
$83 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $6;
|
|
HEAP32[i64toi32_i32$2 >> 2] = $83;
|
|
HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
break label$1;
|
|
}
|
|
i64toi32_i32$3 = $5;
|
|
i64toi32_i32$1 = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
$16$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = 0;
|
|
$17$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $16$hi;
|
|
i64toi32_i32$2 = $17$hi;
|
|
i64toi32_i32$2 = $16$hi;
|
|
i64toi32_i32$2 = $17$hi;
|
|
i64toi32_i32$2 = $16$hi;
|
|
i64toi32_i32$3 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $17$hi;
|
|
i64toi32_i32$0 = 0;
|
|
if ((i64toi32_i32$2 | 0) < (i64toi32_i32$1 | 0)) {
|
|
$33 = 1
|
|
} else {
|
|
if ((i64toi32_i32$2 | 0) <= (i64toi32_i32$1 | 0)) {
|
|
if (i64toi32_i32$3 >>> 0 >= i64toi32_i32$0 >>> 0) {
|
|
$34 = 0
|
|
} else {
|
|
$34 = 1
|
|
}
|
|
$35 = $34;
|
|
} else {
|
|
$35 = 0
|
|
}
|
|
$33 = $35;
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!($33 & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP32[($6 + 16 | 0) >> 2] = -1;
|
|
i64toi32_i32$0 = $5;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$0 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$0 + 20 | 0) >> 2] | 0;
|
|
$24$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = 0;
|
|
$100$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $24$hi;
|
|
$101 = i64toi32_i32$3;
|
|
i64toi32_i32$2 = $100$hi;
|
|
i64toi32_i32$0 = 0;
|
|
i64toi32_i32$3 = $24$hi;
|
|
i64toi32_i32$1 = $101;
|
|
i64toi32_i32$4 = i64toi32_i32$0 - i64toi32_i32$1 | 0;
|
|
i64toi32_i32$6 = i64toi32_i32$0 >>> 0 < i64toi32_i32$1 >>> 0;
|
|
i64toi32_i32$5 = i64toi32_i32$6 + i64toi32_i32$3 | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$2 - i64toi32_i32$5 | 0;
|
|
i64toi32_i32$0 = $6;
|
|
HEAP32[i64toi32_i32$0 >> 2] = i64toi32_i32$4;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$5;
|
|
break label$3;
|
|
}
|
|
HEAP32[($6 + 16 | 0) >> 2] = 0;
|
|
i64toi32_i32$5 = 0;
|
|
i64toi32_i32$0 = $6;
|
|
HEAP32[i64toi32_i32$0 >> 2] = 0;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$5;
|
|
}
|
|
}
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$2 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 12 | 0) >> 2] | 0;
|
|
$29$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 0;
|
|
$30$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $29$hi;
|
|
i64toi32_i32$0 = $30$hi;
|
|
i64toi32_i32$0 = $29$hi;
|
|
i64toi32_i32$0 = $30$hi;
|
|
i64toi32_i32$0 = $29$hi;
|
|
i64toi32_i32$2 = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $30$hi;
|
|
i64toi32_i32$1 = 0;
|
|
if ((i64toi32_i32$0 | 0) > (i64toi32_i32$5 | 0)) {
|
|
$36 = 1
|
|
} else {
|
|
if ((i64toi32_i32$0 | 0) >= (i64toi32_i32$5 | 0)) {
|
|
if (i64toi32_i32$2 >>> 0 <= i64toi32_i32$1 >>> 0) {
|
|
$37 = 0
|
|
} else {
|
|
$37 = 1
|
|
}
|
|
$38 = $37;
|
|
} else {
|
|
$38 = 0
|
|
}
|
|
$36 = $38;
|
|
}
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!($36 & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
i64toi32_i32$1 = $5;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$1 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$1 + 12 | 0) >> 2] | 0;
|
|
$124 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $6;
|
|
HEAP32[(i64toi32_i32$2 + 8 | 0) >> 2] = $124;
|
|
HEAP32[(i64toi32_i32$2 + 12 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$5;
|
|
}
|
|
i64toi32_i32$1 = $5;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$1 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$1 + 12 | 0) >> 2] | 0;
|
|
$37$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = 0;
|
|
$38$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $37$hi;
|
|
i64toi32_i32$2 = $38$hi;
|
|
i64toi32_i32$2 = $37$hi;
|
|
i64toi32_i32$2 = $38$hi;
|
|
i64toi32_i32$2 = $37$hi;
|
|
i64toi32_i32$1 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $38$hi;
|
|
i64toi32_i32$5 = 0;
|
|
if ((i64toi32_i32$2 | 0) < (i64toi32_i32$0 | 0)) {
|
|
$39 = 1
|
|
} else {
|
|
if ((i64toi32_i32$2 | 0) <= (i64toi32_i32$0 | 0)) {
|
|
if (i64toi32_i32$1 >>> 0 >= i64toi32_i32$5 >>> 0) {
|
|
$40 = 0
|
|
} else {
|
|
$40 = 1
|
|
}
|
|
$41 = $40;
|
|
} else {
|
|
$41 = 0
|
|
}
|
|
$39 = $41;
|
|
}
|
|
label$7 : {
|
|
label$8 : {
|
|
if (!($39 & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
HEAP32[($6 + 16 | 0) >> 2] = 0 - (HEAP32[($6 + 16 | 0) >> 2] | 0) | 0;
|
|
i64toi32_i32$5 = $5;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$5 + 12 | 0) >> 2] | 0;
|
|
$47$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = 0;
|
|
$146$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $47$hi;
|
|
$147 = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $146$hi;
|
|
i64toi32_i32$5 = 0;
|
|
i64toi32_i32$1 = $47$hi;
|
|
i64toi32_i32$0 = $147;
|
|
i64toi32_i32$3 = i64toi32_i32$5 - i64toi32_i32$0 | 0;
|
|
i64toi32_i32$6 = i64toi32_i32$5 >>> 0 < i64toi32_i32$0 >>> 0;
|
|
i64toi32_i32$4 = i64toi32_i32$6 + i64toi32_i32$1 | 0;
|
|
i64toi32_i32$4 = i64toi32_i32$2 - i64toi32_i32$4 | 0;
|
|
i64toi32_i32$5 = $6;
|
|
HEAP32[(i64toi32_i32$5 + 8 | 0) >> 2] = i64toi32_i32$3;
|
|
HEAP32[(i64toi32_i32$5 + 12 | 0) >> 2] = i64toi32_i32$4;
|
|
break label$7;
|
|
}
|
|
i64toi32_i32$4 = 0;
|
|
i64toi32_i32$5 = $6;
|
|
HEAP32[(i64toi32_i32$5 + 8 | 0) >> 2] = 0;
|
|
HEAP32[(i64toi32_i32$5 + 12 | 0) >> 2] = i64toi32_i32$4;
|
|
}
|
|
}
|
|
return HEAP32[($5 + 28 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__findMaxAngle_28bool_2c_20btConvexHullInternal__Vertex_20const__2c_20btConvexHullInternal__Point32_20const__2c_20btConvexHullInternal__Point64_20const__2c_20btConvexHullInternal__Point64_20const__2c_20btConvexHullInternal__Rational64__29($0, $1, $2, $3, $4, $5, $6) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
var $9 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, i64toi32_i32$2 = 0, $62$hi = 0, $63$hi = 0, $73$hi = 0, $74$hi = 0, $40$hi = 0, $45$hi = 0, $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $91 = 0, $93 = 0, $99 = 0, $110 = 0, $117 = 0, $119 = 0, $125 = 0, $11 = 0, $40 = 0, $263 = 0, $340 = 0, $366 = 0, $397 = 0, $423 = 0, $165 = 0;
|
|
$9 = __stack_pointer - 96 | 0;
|
|
__stack_pointer = $9;
|
|
HEAP32[($9 + 92 | 0) >> 2] = $0;
|
|
HEAP8[($9 + 91 | 0) >> 0] = $1;
|
|
HEAP32[($9 + 84 | 0) >> 2] = $2;
|
|
HEAP32[($9 + 80 | 0) >> 2] = $3;
|
|
HEAP32[($9 + 76 | 0) >> 2] = $4;
|
|
HEAP32[($9 + 72 | 0) >> 2] = $5;
|
|
HEAP32[($9 + 68 | 0) >> 2] = $6;
|
|
$11 = HEAP32[($9 + 92 | 0) >> 2] | 0;
|
|
HEAP32[($9 + 64 | 0) >> 2] = 0;
|
|
HEAP32[($9 + 60 | 0) >> 2] = HEAP32[((HEAP32[($9 + 84 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($9 + 60 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : while (1) {
|
|
label$3 : {
|
|
if (!((HEAP32[((HEAP32[($9 + 60 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) > (HEAP32[($11 + 100 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
btConvexHullInternal__Vertex__operator__28btConvexHullInternal__Vertex_20const__29_20const($9 + 44 | 0 | 0, HEAP32[((HEAP32[($9 + 60 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0, HEAP32[($9 + 84 | 0) >> 2] | 0 | 0);
|
|
i64toi32_i32$0 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const($9 + 44 | 0 | 0, HEAP32[($9 + 72 | 0) >> 2] | 0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
$40 = i64toi32_i32$0;
|
|
$40$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const($9 + 44 | 0 | 0, HEAP32[($9 + 76 | 0) >> 2] | 0 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
$45$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $40$hi;
|
|
i64toi32_i32$0 = $45$hi;
|
|
$263 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = $40$hi;
|
|
i64toi32_i32$1 = $45$hi;
|
|
btConvexHullInternal__Rational64__Rational64_28long_20long_2c_20long_20long_29($9 + 16 | 0 | 0, $40 | 0, i64toi32_i32$0 | 0, $263 | 0, i64toi32_i32$1 | 0) | 0;
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!((btConvexHullInternal__Rational64__isNaN_28_29_20const($9 + 16 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
label$6 : {
|
|
label$7 : {
|
|
label$8 : {
|
|
if (!((HEAPU8[($9 + 91 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
i64toi32_i32$1 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point32_20const__29_20const($9 + 44 | 0 | 0, HEAP32[($9 + 80 | 0) >> 2] | 0 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
$62$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 0;
|
|
$63$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $62$hi;
|
|
i64toi32_i32$0 = $63$hi;
|
|
i64toi32_i32$0 = $62$hi;
|
|
i64toi32_i32$0 = $63$hi;
|
|
i64toi32_i32$0 = $62$hi;
|
|
i64toi32_i32$2 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $63$hi;
|
|
i64toi32_i32$3 = 0;
|
|
if ((i64toi32_i32$0 | 0) < (i64toi32_i32$1 | 0)) {
|
|
$33 = 1
|
|
} else {
|
|
if ((i64toi32_i32$0 | 0) <= (i64toi32_i32$1 | 0)) {
|
|
if (i64toi32_i32$2 >>> 0 >= i64toi32_i32$3 >>> 0) {
|
|
$34 = 0
|
|
} else {
|
|
$34 = 1
|
|
}
|
|
$35 = $34;
|
|
} else {
|
|
$35 = 0
|
|
}
|
|
$33 = $35;
|
|
}
|
|
if ($33 & 1 | 0) {
|
|
break label$6
|
|
}
|
|
break label$7;
|
|
}
|
|
i64toi32_i32$2 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point32_20const__29_20const($9 + 44 | 0 | 0, HEAP32[($9 + 80 | 0) >> 2] | 0 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
$73$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 0;
|
|
$74$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $73$hi;
|
|
i64toi32_i32$0 = $74$hi;
|
|
i64toi32_i32$0 = $73$hi;
|
|
i64toi32_i32$0 = $74$hi;
|
|
i64toi32_i32$0 = $73$hi;
|
|
i64toi32_i32$3 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $74$hi;
|
|
i64toi32_i32$1 = 0;
|
|
if ((i64toi32_i32$0 | 0) > (i64toi32_i32$2 | 0)) {
|
|
$36 = 1
|
|
} else {
|
|
if ((i64toi32_i32$0 | 0) >= (i64toi32_i32$2 | 0)) {
|
|
if (i64toi32_i32$3 >>> 0 <= i64toi32_i32$1 >>> 0) {
|
|
$37 = 0
|
|
} else {
|
|
$37 = 1
|
|
}
|
|
$38 = $37;
|
|
} else {
|
|
$38 = 0
|
|
}
|
|
$36 = $38;
|
|
}
|
|
if ($36 & 1 | 0) {
|
|
break label$6
|
|
}
|
|
}
|
|
__assert_fail(86726 | 0, 72732 | 0, 1446 | 0, 81886 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
break label$4;
|
|
}
|
|
label$9 : {
|
|
label$10 : {
|
|
if (!((HEAP32[($9 + 64 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
$91 = HEAP32[($9 + 68 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = $9;
|
|
i64toi32_i32$3 = HEAP32[($9 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($9 + 20 | 0) >> 2] | 0;
|
|
$340 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $91;
|
|
HEAP32[i64toi32_i32$3 >> 2] = $340;
|
|
HEAP32[(i64toi32_i32$3 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$93 = 16;
|
|
HEAP32[(i64toi32_i32$3 + $93 | 0) >> 2] = HEAP32[(($9 + 16 | 0) + $93 | 0) >> 2] | 0;
|
|
$99 = 8;
|
|
i64toi32_i32$1 = ($9 + 16 | 0) + $99 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$366 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $91 + $99 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $366;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$3;
|
|
HEAP32[($9 + 64 | 0) >> 2] = HEAP32[($9 + 60 | 0) >> 2] | 0;
|
|
break label$9;
|
|
}
|
|
$110 = btConvexHullInternal__Rational64__compare_28btConvexHullInternal__Rational64_20const__29_20const($9 + 16 | 0 | 0, HEAP32[($9 + 68 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($9 + 12 | 0) >> 2] = $110;
|
|
label$11 : {
|
|
label$12 : {
|
|
if (!(($110 | 0) < (0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
$117 = HEAP32[($9 + 68 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = $9;
|
|
i64toi32_i32$3 = HEAP32[($9 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($9 + 20 | 0) >> 2] | 0;
|
|
$397 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $117;
|
|
HEAP32[i64toi32_i32$3 >> 2] = $397;
|
|
HEAP32[(i64toi32_i32$3 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$119 = 16;
|
|
HEAP32[(i64toi32_i32$3 + $119 | 0) >> 2] = HEAP32[(($9 + 16 | 0) + $119 | 0) >> 2] | 0;
|
|
$125 = 8;
|
|
i64toi32_i32$1 = ($9 + 16 | 0) + $125 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$423 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $117 + $125 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $423;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$3;
|
|
HEAP32[($9 + 64 | 0) >> 2] = HEAP32[($9 + 60 | 0) >> 2] | 0;
|
|
break label$11;
|
|
}
|
|
label$13 : {
|
|
if (HEAP32[($9 + 12 | 0) >> 2] | 0) {
|
|
break label$13
|
|
}
|
|
if (!(((HEAPU8[($9 + 91 | 0) >> 0] | 0) & 1 | 0 | 0) == ((btConvexHullInternal__getOrientation_28btConvexHullInternal__Edge_20const__2c_20btConvexHullInternal__Edge_20const__2c_20btConvexHullInternal__Point32_20const__2c_20btConvexHullInternal__Point32_20const__29(HEAP32[($9 + 64 | 0) >> 2] | 0 | 0, HEAP32[($9 + 60 | 0) >> 2] | 0 | 0, HEAP32[($9 + 80 | 0) >> 2] | 0 | 0, $9 + 44 | 0 | 0) | 0 | 0) == (2 | 0) & 1 | 0 | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
HEAP32[($9 + 64 | 0) >> 2] = HEAP32[($9 + 60 | 0) >> 2] | 0;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
HEAP32[($9 + 60 | 0) >> 2] = HEAP32[(HEAP32[($9 + 60 | 0) >> 2] | 0) >> 2] | 0;
|
|
if ((HEAP32[($9 + 60 | 0) >> 2] | 0 | 0) != (HEAP32[((HEAP32[($9 + 84 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
continue label$2
|
|
}
|
|
break label$2;
|
|
};
|
|
}
|
|
$165 = HEAP32[($9 + 64 | 0) >> 2] | 0;
|
|
__stack_pointer = $9 + 96 | 0;
|
|
return $165 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Rational64__isNegativeInfinity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $14$hi = 0, $15$hi = 0, $3 = 0, $4 = 0, $13 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$13 = 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) < (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 12 | 0) >> 2] | 0;
|
|
$14$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$15$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $14$hi;
|
|
i64toi32_i32$1 = $15$hi;
|
|
i64toi32_i32$1 = $14$hi;
|
|
i64toi32_i32$1 = $15$hi;
|
|
i64toi32_i32$1 = $14$hi;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$2 + 8 | 0) >> 2] | 0;
|
|
$13 = (i64toi32_i32$2 | 0) == (0 | 0) & ($14$hi | 0) == ($15$hi | 0) | 0;
|
|
}
|
|
return $13 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__removeEdgePair_28btConvexHullInternal__Edge__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if ((HEAP32[((HEAP32[$4 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
}
|
|
__assert_fail(68437 | 0, 72732 | 0, 784 | 0, 71040 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) != (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP32[((HEAP32[($4 + 4 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[((HEAP32[$4 >> 2] | 0) + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
break label$3;
|
|
}
|
|
HEAP32[((HEAP32[((HEAP32[$4 >> 2] | 0) + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] = 0;
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[(HEAP32[$4 >> 2] | 0) >> 2] | 0;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) != (HEAP32[$4 >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAP32[((HEAP32[($4 + 4 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[((HEAP32[$4 >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[((HEAP32[$4 >> 2] | 0) + 4 | 0) >> 2] | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
break label$5;
|
|
}
|
|
HEAP32[((HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] = 0;
|
|
}
|
|
btConvexHullInternal__Pool_btConvexHullInternal__Edge___freeObject_28btConvexHullInternal__Edge__29($5 + 48 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
btConvexHullInternal__Pool_btConvexHullInternal__Edge___freeObject_28btConvexHullInternal__Edge__29($5 + 48 | 0 | 0, HEAP32[$4 >> 2] | 0 | 0);
|
|
HEAP32[($5 + 116 | 0) >> 2] = (HEAP32[($5 + 116 | 0) >> 2] | 0) + -1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Point64__dot_28btConvexHullInternal__Point64_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, i64toi32_i32$5 = 0, $4 = 0, i64toi32_i32$4 = 0, i64toi32_i32$3 = 0, $5 = 0, $6$hi = 0, $8$hi = 0, $9$hi = 0, $10$hi = 0, $12$hi = 0, $13$hi = 0, $14$hi = 0, $15$hi = 0, $17$hi = 0, $18$hi = 0, $6 = 0, $37 = 0, $9 = 0, $10 = 0, $46 = 0, $49 = 0, $15 = 0, $58 = 0, $61 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$6 = i64toi32_i32$0;
|
|
$6$hi = i64toi32_i32$1;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$8$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6$hi;
|
|
i64toi32_i32$0 = $8$hi;
|
|
$37 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = $6$hi;
|
|
i64toi32_i32$1 = $8$hi;
|
|
i64toi32_i32$1 = __wasm_i64_mul($6 | 0, i64toi32_i32$0 | 0, $37 | 0, i64toi32_i32$1 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
$9 = i64toi32_i32$1;
|
|
$9$hi = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 12 | 0) >> 2] | 0;
|
|
$10 = i64toi32_i32$0;
|
|
$10$hi = i64toi32_i32$1;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 12 | 0) >> 2] | 0;
|
|
$12$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $10$hi;
|
|
i64toi32_i32$0 = $12$hi;
|
|
$46 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = $10$hi;
|
|
i64toi32_i32$1 = $12$hi;
|
|
i64toi32_i32$1 = __wasm_i64_mul($10 | 0, i64toi32_i32$0 | 0, $46 | 0, i64toi32_i32$1 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
$13$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $9$hi;
|
|
i64toi32_i32$0 = $13$hi;
|
|
$49 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = $9$hi;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$1 = $13$hi;
|
|
i64toi32_i32$3 = $49;
|
|
i64toi32_i32$4 = i64toi32_i32$2 + i64toi32_i32$3 | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$0 + i64toi32_i32$1 | 0;
|
|
if (i64toi32_i32$4 >>> 0 < i64toi32_i32$3 >>> 0) {
|
|
i64toi32_i32$5 = i64toi32_i32$5 + 1 | 0
|
|
}
|
|
$14$hi = i64toi32_i32$5;
|
|
i64toi32_i32$0 = $5;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$0 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$0 + 20 | 0) >> 2] | 0;
|
|
$15 = i64toi32_i32$5;
|
|
$15$hi = i64toi32_i32$2;
|
|
i64toi32_i32$0 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$0 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$0 + 20 | 0) >> 2] | 0;
|
|
$17$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $15$hi;
|
|
i64toi32_i32$5 = $17$hi;
|
|
$58 = i64toi32_i32$2;
|
|
i64toi32_i32$5 = $15$hi;
|
|
i64toi32_i32$2 = $17$hi;
|
|
i64toi32_i32$2 = __wasm_i64_mul($15 | 0, i64toi32_i32$5 | 0, $58 | 0, i64toi32_i32$2 | 0) | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$HIGH_BITS;
|
|
$18$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $14$hi;
|
|
i64toi32_i32$5 = $18$hi;
|
|
$61 = i64toi32_i32$2;
|
|
i64toi32_i32$5 = $14$hi;
|
|
i64toi32_i32$0 = i64toi32_i32$4;
|
|
i64toi32_i32$2 = $18$hi;
|
|
i64toi32_i32$3 = $61;
|
|
i64toi32_i32$1 = i64toi32_i32$0 + i64toi32_i32$3 | 0;
|
|
i64toi32_i32$4 = i64toi32_i32$5 + i64toi32_i32$2 | 0;
|
|
if (i64toi32_i32$1 >>> 0 < i64toi32_i32$3 >>> 0) {
|
|
i64toi32_i32$4 = i64toi32_i32$4 + 1 | 0
|
|
}
|
|
i64toi32_i32$0 = i64toi32_i32$1;
|
|
i64toi32_i32$HIGH_BITS = i64toi32_i32$4;
|
|
return i64toi32_i32$0 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Point64__Point64_28long_20long_2c_20long_20long_2c_20long_20long_29($0, $1, $1$hi, $2, $2$hi, $3, $3$hi) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$1$hi = $1$hi | 0;
|
|
$2 = $2 | 0;
|
|
$2$hi = $2$hi | 0;
|
|
$3 = $3 | 0;
|
|
$3$hi = $3$hi | 0;
|
|
var i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, $7 = 0, $6 = 0, $28 = 0, $32 = 0, $36 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
i64toi32_i32$0 = $1$hi;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[(i64toi32_i32$1 + 16 | 0) >> 2] = $1;
|
|
HEAP32[(i64toi32_i32$1 + 20 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $2$hi;
|
|
HEAP32[(i64toi32_i32$1 + 8 | 0) >> 2] = $2;
|
|
HEAP32[(i64toi32_i32$1 + 12 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $3$hi;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $3;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$7 = HEAP32[(i64toi32_i32$1 + 28 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$1 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$1 + 20 | 0) >> 2] | 0;
|
|
$28 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $7;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $28;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 12 | 0) >> 2] | 0;
|
|
$32 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $7;
|
|
HEAP32[(i64toi32_i32$1 + 8 | 0) >> 2] = $32;
|
|
HEAP32[(i64toi32_i32$1 + 12 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$36 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $7;
|
|
HEAP32[(i64toi32_i32$0 + 16 | 0) >> 2] = $36;
|
|
HEAP32[(i64toi32_i32$0 + 20 | 0) >> 2] = i64toi32_i32$1;
|
|
return i64toi32_i32$0 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Rational64__isNaN_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $8$hi = 0, $9$hi = 0, $3 = 0, $4 = 0, $7 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$7 = 0;
|
|
label$1 : {
|
|
if (HEAP32[($4 + 16 | 0) >> 2] | 0) {
|
|
break label$1
|
|
}
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 12 | 0) >> 2] | 0;
|
|
$8$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$9$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8$hi;
|
|
i64toi32_i32$1 = $9$hi;
|
|
i64toi32_i32$1 = $8$hi;
|
|
i64toi32_i32$1 = $9$hi;
|
|
i64toi32_i32$1 = $8$hi;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$2 + 8 | 0) >> 2] | 0;
|
|
$7 = (i64toi32_i32$2 | 0) == (0 | 0) & ($8$hi | 0) == ($9$hi | 0) | 0;
|
|
}
|
|
return $7 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point32_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, i64toi32_i32$1 = 0, i64toi32_i32$0 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = (Math_imul(HEAP32[$5 >> 2] | 0, HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 4 | 0) >> 2] | 0, HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) | 0) + Math_imul(HEAP32[($5 + 8 | 0) >> 2] | 0, HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$1 >> 31 | 0;
|
|
i64toi32_i32$HIGH_BITS = i64toi32_i32$0;
|
|
return i64toi32_i32$1 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Pool_btConvexHullInternal__Edge___freeObject_28btConvexHullInternal__Edge__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btConvexHullInternal__Edge___Edge_28_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__compute_28void_20const__2c_20bool_2c_20int_2c_20int_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $9 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $189 = 0, $278 = 0, $280 = 0, $353 = 0, $370 = Math_fround(0), $376 = 0, $392 = Math_fround(0), $398 = 0, $414 = Math_fround(0), $420 = 0, $476 = 0, $493 = Math_fround(0), $499 = 0, $515 = Math_fround(0), $521 = 0, $537 = Math_fround(0), $543 = 0, $598 = 0, $600 = 0, $1014 = 0, $1027 = 0, $211 = Math_fround(0), $232 = Math_fround(0), $253 = Math_fround(0), $1177 = 0, $1190 = 0, $289 = 0, $1345 = 0, $1349 = 0, $428 = 0, $1584 = 0, $1588 = 0, $551 = 0, $573 = 0, $595 = 0, $1808 = 0, $1818 = 0, $606 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$7 = __stack_pointer - 400 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 396 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 392 | 0) >> 2] = $1;
|
|
HEAP8[($7 + 391 | 0) >> 0] = $2;
|
|
HEAP32[($7 + 384 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 380 | 0) >> 2] = $4;
|
|
$9 = HEAP32[($7 + 396 | 0) >> 2] | 0;
|
|
HEAPF32[($7 + 360 | 0) >> 2] = Math_fround(1000000015047466219876688.0e6);
|
|
HEAPF32[($7 + 356 | 0) >> 2] = Math_fround(1000000015047466219876688.0e6);
|
|
HEAPF32[($7 + 352 | 0) >> 2] = Math_fround(1000000015047466219876688.0e6);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 364 | 0 | 0, $7 + 360 | 0 | 0, $7 + 356 | 0 | 0, $7 + 352 | 0 | 0) | 0;
|
|
HEAPF32[($7 + 332 | 0) >> 2] = Math_fround(-1000000015047466219876688.0e6);
|
|
HEAPF32[($7 + 328 | 0) >> 2] = Math_fround(-1000000015047466219876688.0e6);
|
|
HEAPF32[($7 + 324 | 0) >> 2] = Math_fround(-1000000015047466219876688.0e6);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 336 | 0 | 0, $7 + 332 | 0 | 0, $7 + 328 | 0 | 0, $7 + 324 | 0 | 0) | 0;
|
|
HEAP32[($7 + 320 | 0) >> 2] = HEAP32[($7 + 392 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($7 + 391 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($7 + 316 | 0) >> 2] = 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($7 + 316 | 0) >> 2] | 0 | 0) < (HEAP32[($7 + 380 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($7 + 312 | 0) >> 2] = HEAP32[($7 + 320 | 0) >> 2] | 0;
|
|
HEAPF32[($7 + 292 | 0) >> 2] = Math_fround(+HEAPF64[(HEAP32[($7 + 312 | 0) >> 2] | 0) >> 3]);
|
|
HEAPF32[($7 + 288 | 0) >> 2] = Math_fround(+HEAPF64[((HEAP32[($7 + 312 | 0) >> 2] | 0) + 8 | 0) >> 3]);
|
|
HEAPF32[($7 + 284 | 0) >> 2] = Math_fround(+HEAPF64[((HEAP32[($7 + 312 | 0) >> 2] | 0) + 16 | 0) >> 3]);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 296 | 0 | 0, $7 + 292 | 0 | 0, $7 + 288 | 0 | 0, $7 + 284 | 0 | 0) | 0;
|
|
HEAP32[($7 + 320 | 0) >> 2] = (HEAP32[($7 + 320 | 0) >> 2] | 0) + (HEAP32[($7 + 384 | 0) >> 2] | 0) | 0;
|
|
btVector3__setMin_28btVector3_20const__29($7 + 364 | 0 | 0, $7 + 296 | 0 | 0);
|
|
btVector3__setMax_28btVector3_20const__29($7 + 336 | 0 | 0, $7 + 296 | 0 | 0);
|
|
HEAP32[($7 + 316 | 0) >> 2] = (HEAP32[($7 + 316 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
break label$1;
|
|
}
|
|
HEAP32[($7 + 280 | 0) >> 2] = 0;
|
|
label$5 : {
|
|
label$6 : while (1) {
|
|
if (!((HEAP32[($7 + 280 | 0) >> 2] | 0 | 0) < (HEAP32[($7 + 380 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAP32[($7 + 276 | 0) >> 2] = HEAP32[($7 + 320 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 260 | 0 | 0, HEAP32[($7 + 276 | 0) >> 2] | 0 | 0, (HEAP32[($7 + 276 | 0) >> 2] | 0) + 4 | 0 | 0, (HEAP32[($7 + 276 | 0) >> 2] | 0) + 8 | 0 | 0) | 0;
|
|
HEAP32[($7 + 320 | 0) >> 2] = (HEAP32[($7 + 320 | 0) >> 2] | 0) + (HEAP32[($7 + 384 | 0) >> 2] | 0) | 0;
|
|
btVector3__setMin_28btVector3_20const__29($7 + 364 | 0 | 0, $7 + 260 | 0 | 0);
|
|
btVector3__setMax_28btVector3_20const__29($7 + 336 | 0 | 0, $7 + 260 | 0 | 0);
|
|
HEAP32[($7 + 280 | 0) >> 2] = (HEAP32[($7 + 280 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$6;
|
|
};
|
|
}
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($7 + 244 | 0 | 0, $7 + 336 | 0 | 0, $7 + 364 | 0 | 0);
|
|
(wasm2js_i32$0 = $9, wasm2js_i32$1 = btVector3__maxAxis_28_29_20const($7 + 244 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 112 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $9, wasm2js_i32$1 = btVector3__minAxis_28_29_20const($7 + 244 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 104 | 0) >> 2] = wasm2js_i32$1;
|
|
label$7 : {
|
|
if (!((HEAP32[($9 + 104 | 0) >> 2] | 0 | 0) == (HEAP32[($9 + 112 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAP32[($9 + 104 | 0) >> 2] = ((HEAP32[($9 + 112 | 0) >> 2] | 0) + 1 | 0 | 0) % (3 | 0) | 0;
|
|
}
|
|
HEAP32[($9 + 108 | 0) >> 2] = (3 - (HEAP32[($9 + 112 | 0) >> 2] | 0) | 0) - (HEAP32[($9 + 104 | 0) >> 2] | 0) | 0;
|
|
HEAPF32[($7 + 240 | 0) >> 2] = Math_fround(10216.0);
|
|
btVector3__operator___28float_20const__29($7 + 244 | 0 | 0, $7 + 240 | 0 | 0) | 0;
|
|
label$8 : {
|
|
if (!((((HEAP32[($9 + 108 | 0) >> 2] | 0) + 1 | 0 | 0) % (3 | 0) | 0 | 0) != (HEAP32[($9 + 112 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
HEAPF32[($7 + 236 | 0) >> 2] = Math_fround(-1.0);
|
|
btVector3__operator___28float_20const__29_1($7 + 244 | 0 | 0, $7 + 236 | 0 | 0) | 0;
|
|
}
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$0 = HEAP32[($7 + 244 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($7 + 248 | 0) >> 2] | 0;
|
|
$1014 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $9;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1014;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$189 = 8;
|
|
i64toi32_i32$2 = ($7 + 244 | 0) + $189 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1027 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $9 + $189 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1027;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
label$9 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__operator_20float__28_29($7 + 244 | 0 | 0) | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
$211 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[(btVector3__operator_20float__28_29($7 + 244 | 0 | 0) | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($7 + 244 | 0 | 0) | 0, wasm2js_f32$0 = $211), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
}
|
|
label$10 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($7 + 244 | 0 | 0) | 0) + 4 | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
$232 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[((btVector3__operator_20float__28_29($7 + 244 | 0 | 0) | 0) + 4 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($7 + 244 | 0 | 0) | 0, wasm2js_f32$0 = $232), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
label$11 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($7 + 244 | 0 | 0) | 0) + 8 | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
$253 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[((btVector3__operator_20float__28_29($7 + 244 | 0 | 0) | 0) + 8 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($7 + 244 | 0 | 0) | 0, wasm2js_f32$0 = $253), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($7 + 204 | 0 | 0, $7 + 364 | 0 | 0, $7 + 336 | 0 | 0);
|
|
HEAPF32[($7 + 200 | 0) >> 2] = Math_fround(.5);
|
|
operator__28btVector3_20const__2c_20float_20const__29($7 + 220 | 0 | 0, $7 + 204 | 0 | 0, $7 + 200 | 0 | 0);
|
|
$278 = $9 + 16 | 0;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$0 = HEAP32[($7 + 220 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($7 + 224 | 0) >> 2] | 0;
|
|
$1177 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $278;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1177;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$280 = 8;
|
|
i64toi32_i32$2 = ($7 + 220 | 0) + $280 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1190 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $278 + $280 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1190;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btAlignedObjectArray_btConvexHullInternal__Point32___btAlignedObjectArray_28_29($7 + 180 | 0 | 0) | 0;
|
|
$289 = HEAP32[($7 + 380 | 0) >> 2] | 0;
|
|
btConvexHullInternal__Point32__Point32_28_29($7 + 164 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Point32___resize_28int_2c_20btConvexHullInternal__Point32_20const__29($7 + 180 | 0 | 0, $289 | 0, $7 + 164 | 0 | 0);
|
|
HEAP32[($7 + 320 | 0) >> 2] = HEAP32[($7 + 392 | 0) >> 2] | 0;
|
|
label$12 : {
|
|
label$13 : {
|
|
if (!((HEAPU8[($7 + 391 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
HEAP32[($7 + 160 | 0) >> 2] = 0;
|
|
label$14 : {
|
|
label$15 : while (1) {
|
|
if (!((HEAP32[($7 + 160 | 0) >> 2] | 0 | 0) < (HEAP32[($7 + 380 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
HEAP32[($7 + 156 | 0) >> 2] = HEAP32[($7 + 320 | 0) >> 2] | 0;
|
|
HEAPF32[($7 + 132 | 0) >> 2] = Math_fround(+HEAPF64[(HEAP32[($7 + 156 | 0) >> 2] | 0) >> 3]);
|
|
HEAPF32[($7 + 128 | 0) >> 2] = Math_fround(+HEAPF64[((HEAP32[($7 + 156 | 0) >> 2] | 0) + 8 | 0) >> 3]);
|
|
HEAPF32[($7 + 124 | 0) >> 2] = Math_fround(+HEAPF64[((HEAP32[($7 + 156 | 0) >> 2] | 0) + 16 | 0) >> 3]);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 136 | 0 | 0, $7 + 132 | 0 | 0, $7 + 128 | 0 | 0, $7 + 124 | 0 | 0) | 0;
|
|
HEAP32[($7 + 320 | 0) >> 2] = (HEAP32[($7 + 320 | 0) >> 2] | 0) + (HEAP32[($7 + 384 | 0) >> 2] | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($7 + 92 | 0 | 0, $7 + 136 | 0 | 0, $9 + 16 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($7 + 108 | 0 | 0, $7 + 92 | 0 | 0, $7 + 244 | 0 | 0);
|
|
$353 = 8;
|
|
i64toi32_i32$2 = ($7 + 108 | 0) + $353 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1345 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($7 + 136 | 0) + $353 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1345;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$1 = HEAP32[($7 + 108 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($7 + 112 | 0) >> 2] | 0;
|
|
$1349 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $7;
|
|
HEAP32[($7 + 136 | 0) >> 2] = $1349;
|
|
HEAP32[($7 + 140 | 0) >> 2] = i64toi32_i32$0;
|
|
$370 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($7 + 136 | 0 | 0) | 0) + ((HEAP32[($9 + 108 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
label$16 : {
|
|
label$17 : {
|
|
if (!(Math_fround(Math_abs($370)) < Math_fround(2147483648.0))) {
|
|
break label$17
|
|
}
|
|
$376 = ~~$370;
|
|
break label$16;
|
|
}
|
|
$376 = -2147483648;
|
|
}
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btConvexHullInternal__Point32___operator_5b_5d_28int_29($7 + 180 | 0 | 0, HEAP32[($7 + 160 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $376), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$392 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($7 + 136 | 0 | 0) | 0) + ((HEAP32[($9 + 112 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
label$18 : {
|
|
label$19 : {
|
|
if (!(Math_fround(Math_abs($392)) < Math_fround(2147483648.0))) {
|
|
break label$19
|
|
}
|
|
$398 = ~~$392;
|
|
break label$18;
|
|
}
|
|
$398 = -2147483648;
|
|
}
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btConvexHullInternal__Point32___operator_5b_5d_28int_29($7 + 180 | 0 | 0, HEAP32[($7 + 160 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $398), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
$414 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($7 + 136 | 0 | 0) | 0) + ((HEAP32[($9 + 104 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
label$20 : {
|
|
label$21 : {
|
|
if (!(Math_fround(Math_abs($414)) < Math_fround(2147483648.0))) {
|
|
break label$21
|
|
}
|
|
$420 = ~~$414;
|
|
break label$20;
|
|
}
|
|
$420 = -2147483648;
|
|
}
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btConvexHullInternal__Point32___operator_5b_5d_28int_29($7 + 180 | 0 | 0, HEAP32[($7 + 160 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $420), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
$428 = HEAP32[($7 + 160 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btConvexHullInternal__Point32___operator_5b_5d_28int_29($7 + 180 | 0 | 0, HEAP32[($7 + 160 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $428), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($7 + 160 | 0) >> 2] = (HEAP32[($7 + 160 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$15;
|
|
};
|
|
}
|
|
break label$12;
|
|
}
|
|
HEAP32[($7 + 88 | 0) >> 2] = 0;
|
|
label$22 : {
|
|
label$23 : while (1) {
|
|
if (!((HEAP32[($7 + 88 | 0) >> 2] | 0 | 0) < (HEAP32[($7 + 380 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$22
|
|
}
|
|
HEAP32[($7 + 84 | 0) >> 2] = HEAP32[($7 + 320 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 64 | 0 | 0, HEAP32[($7 + 84 | 0) >> 2] | 0 | 0, (HEAP32[($7 + 84 | 0) >> 2] | 0) + 4 | 0 | 0, (HEAP32[($7 + 84 | 0) >> 2] | 0) + 8 | 0 | 0) | 0;
|
|
HEAP32[($7 + 320 | 0) >> 2] = (HEAP32[($7 + 320 | 0) >> 2] | 0) + (HEAP32[($7 + 384 | 0) >> 2] | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($7 + 32 | 0 | 0, $7 + 64 | 0 | 0, $9 + 16 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($7 + 48 | 0 | 0, $7 + 32 | 0 | 0, $7 + 244 | 0 | 0);
|
|
$476 = 8;
|
|
i64toi32_i32$2 = ($7 + 48 | 0) + $476 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1584 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($7 + 64 | 0) + $476 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1584;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$1 = HEAP32[($7 + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($7 + 52 | 0) >> 2] | 0;
|
|
$1588 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $7;
|
|
HEAP32[($7 + 64 | 0) >> 2] = $1588;
|
|
HEAP32[($7 + 68 | 0) >> 2] = i64toi32_i32$0;
|
|
$493 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($7 + 64 | 0 | 0) | 0) + ((HEAP32[($9 + 108 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
label$24 : {
|
|
label$25 : {
|
|
if (!(Math_fround(Math_abs($493)) < Math_fround(2147483648.0))) {
|
|
break label$25
|
|
}
|
|
$499 = ~~$493;
|
|
break label$24;
|
|
}
|
|
$499 = -2147483648;
|
|
}
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btConvexHullInternal__Point32___operator_5b_5d_28int_29($7 + 180 | 0 | 0, HEAP32[($7 + 88 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $499), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$515 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($7 + 64 | 0 | 0) | 0) + ((HEAP32[($9 + 112 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
label$26 : {
|
|
label$27 : {
|
|
if (!(Math_fround(Math_abs($515)) < Math_fround(2147483648.0))) {
|
|
break label$27
|
|
}
|
|
$521 = ~~$515;
|
|
break label$26;
|
|
}
|
|
$521 = -2147483648;
|
|
}
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btConvexHullInternal__Point32___operator_5b_5d_28int_29($7 + 180 | 0 | 0, HEAP32[($7 + 88 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $521), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
$537 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($7 + 64 | 0 | 0) | 0) + ((HEAP32[($9 + 104 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
label$28 : {
|
|
label$29 : {
|
|
if (!(Math_fround(Math_abs($537)) < Math_fround(2147483648.0))) {
|
|
break label$29
|
|
}
|
|
$543 = ~~$537;
|
|
break label$28;
|
|
}
|
|
$543 = -2147483648;
|
|
}
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btConvexHullInternal__Point32___operator_5b_5d_28int_29($7 + 180 | 0 | 0, HEAP32[($7 + 88 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $543), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
$551 = HEAP32[($7 + 88 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btConvexHullInternal__Point32___operator_5b_5d_28int_29($7 + 180 | 0 | 0, HEAP32[($7 + 88 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $551), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($7 + 88 | 0) >> 2] = (HEAP32[($7 + 88 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$23;
|
|
};
|
|
}
|
|
}
|
|
void_20btAlignedObjectArray_btConvexHullInternal__Point32___quickSort_pointCmp__28pointCmp_20const__29($7 + 180 | 0 | 0, $7 + 31 | 0 | 0);
|
|
btConvexHullInternal__Pool_btConvexHullInternal__Vertex___reset_28_29($9 + 32 | 0 | 0);
|
|
btConvexHullInternal__Pool_btConvexHullInternal__Vertex___setArraySize_28int_29($9 + 32 | 0 | 0, HEAP32[($7 + 380 | 0) >> 2] | 0 | 0);
|
|
$573 = HEAP32[($7 + 380 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____resize_28int_2c_20btConvexHullInternal__Vertex__20const__29($9 + 80 | 0 | 0, $573 | 0, $7 + 24 | 0 | 0);
|
|
HEAP32[($7 + 20 | 0) >> 2] = 0;
|
|
label$30 : {
|
|
label$31 : while (1) {
|
|
if (!((HEAP32[($7 + 20 | 0) >> 2] | 0 | 0) < (HEAP32[($7 + 380 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$30
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btConvexHullInternal__Pool_btConvexHullInternal__Vertex___newObject_28_29($9 + 32 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[((HEAP32[($7 + 16 | 0) >> 2] | 0) + 8 | 0) >> 2] = 0;
|
|
$595 = btAlignedObjectArray_btConvexHullInternal__Point32___operator_5b_5d_28int_29($7 + 180 | 0 | 0, HEAP32[($7 + 20 | 0) >> 2] | 0 | 0) | 0;
|
|
$598 = (HEAP32[($7 + 16 | 0) >> 2] | 0) + 88 | 0;
|
|
i64toi32_i32$2 = $595;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1808 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $598;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1808;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$600 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $600 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1818 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $598 + $600 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1818;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[((HEAP32[($7 + 16 | 0) >> 2] | 0) + 104 | 0) >> 2] = -1;
|
|
$606 = HEAP32[($7 + 16 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btConvexHullInternal__Vertex____operator_5b_5d_28int_29($9 + 80 | 0 | 0, HEAP32[($7 + 20 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $606), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = (HEAP32[($7 + 20 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$31;
|
|
};
|
|
}
|
|
btAlignedObjectArray_btConvexHullInternal__Point32___clear_28_29($7 + 180 | 0 | 0);
|
|
btConvexHullInternal__Pool_btConvexHullInternal__Edge___reset_28_29($9 + 48 | 0 | 0);
|
|
btConvexHullInternal__Pool_btConvexHullInternal__Edge___setArraySize_28int_29($9 + 48 | 0 | 0, Math_imul(HEAP32[($7 + 380 | 0) >> 2] | 0, 6) | 0);
|
|
HEAP32[($9 + 116 | 0) >> 2] = 0;
|
|
HEAP32[($9 + 120 | 0) >> 2] = 0;
|
|
HEAP32[($9 + 100 | 0) >> 2] = -3;
|
|
btConvexHullInternal__IntermediateHull__IntermediateHull_28_29($7 | 0) | 0;
|
|
btConvexHullInternal__computeInternal_28int_2c_20int_2c_20btConvexHullInternal__IntermediateHull__29($9 | 0, 0 | 0, HEAP32[($7 + 380 | 0) >> 2] | 0 | 0, $7 | 0);
|
|
HEAP32[($9 + 124 | 0) >> 2] = HEAP32[$7 >> 2] | 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Point32____btAlignedObjectArray_28_29($7 + 180 | 0 | 0) | 0;
|
|
__stack_pointer = $7 + 400 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Point32___btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btConvexHullInternal__Point32_2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Point32___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Point32___resize_28int_2c_20btConvexHullInternal__Point32_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, $46 = 0, $49 = 0, $166 = 0, $176 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btConvexHullInternal__Point32___size_28_29_20const($6 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) > (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btAlignedObjectArray_btConvexHullInternal__Point32___reserve_28int_29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$46 = (HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$166 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $46;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $166;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$49 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $49 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$176 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $46 + $49 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $176;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Point32___operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78295 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btConvexHullInternal__Point32___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78295 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function void_20btAlignedObjectArray_btConvexHullInternal__Point32___quickSort_pointCmp__28pointCmp_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btConvexHullInternal__Point32___size_28_29_20const($5 | 0) | 0 | 0) > (1 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
void_20btAlignedObjectArray_btConvexHullInternal__Point32___quickSortInternal_pointCmp__28pointCmp_20const__2c_20int_2c_20int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 0 | 0, (btAlignedObjectArray_btConvexHullInternal__Point32___size_28_29_20const($5 | 0) | 0) - 1 | 0 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Pool_btConvexHullInternal__Vertex___reset_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[$4 >> 2] | 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Pool_btConvexHullInternal__Vertex___setArraySize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 12 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Vertex____resize_28int_2c_20btConvexHullInternal__Vertex__20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btConvexHullInternal__Vertex____size_28_29_20const($6 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) > (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____reserve_28int_29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[(HEAP32[($5 + 20 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Pool_btConvexHullInternal__Vertex___newObject_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $25 = 0, $34 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
HEAP32[($3 + 4 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[((HEAP32[($3 + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
break label$2;
|
|
}
|
|
$25 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(12 | 0, 16 | 0) | 0;
|
|
btConvexHullInternal__PoolArray_btConvexHullInternal__Vertex___PoolArray_28int_29($25 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($3 + 4 | 0) >> 2] = $25;
|
|
HEAP32[((HEAP32[($3 + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[$4 >> 2] | 0;
|
|
HEAP32[$4 >> 2] = HEAP32[($3 + 4 | 0) >> 2] | 0;
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btConvexHullInternal__PoolArray_btConvexHullInternal__Vertex___init_28_29(HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
HEAP32[($4 + 8 | 0) >> 2] = HEAP32[(HEAP32[($3 + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
$34 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
btConvexHullInternal__Vertex__Vertex_28_29($34 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $34 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Point32___clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Point32___destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btConvexHullInternal__Point32___size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btConvexHullInternal__Point32___deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btConvexHullInternal__Point32___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Pool_btConvexHullInternal__Edge___reset_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[$4 >> 2] | 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Pool_btConvexHullInternal__Edge___setArraySize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 12 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Point32____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Point32___clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_btConvexHullInternal__Point32_2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Point32___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Point32___size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Point32___reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btConvexHullInternal__Point32___capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btConvexHullInternal__Point32___allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btConvexHullInternal__Point32___copy_28int_2c_20int_2c_20btConvexHullInternal__Point32__29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btConvexHullInternal__Point32___size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btConvexHullInternal__Point32___destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btConvexHullInternal__Point32___size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btConvexHullInternal__Point32___deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20btAlignedObjectArray_btConvexHullInternal__Point32___quickSortInternal_pointCmp__28pointCmp_20const__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $18 = 0, $19 = 0, $153 = 0, $157 = 0;
|
|
$6 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 32 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = HEAP32[($6 + 36 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = HEAP32[($6 + 32 | 0) >> 2] | 0;
|
|
$18 = (HEAP32[($7 + 12 | 0) >> 2] | 0) + ((((HEAP32[($6 + 36 | 0) >> 2] | 0) + (HEAP32[($6 + 32 | 0) >> 2] | 0) | 0 | 0) / (2 | 0) | 0) << 4 | 0) | 0;
|
|
$19 = 8;
|
|
i64toi32_i32$2 = $18 + $19 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$153 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 8 | 0) + $19 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $153;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $18;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$157 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $157;
|
|
HEAP32[($6 + 12 | 0) >> 2] = i64toi32_i32$0;
|
|
label$1 : while (1) {
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((pointCmp__operator_28_29_28btConvexHullInternal__Point32_20const__2c_20btConvexHullInternal__Point32_20const__29_20const(HEAP32[($6 + 40 | 0) >> 2] | 0 | 0, (HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 28 | 0) >> 2] | 0) << 4 | 0) | 0 | 0, $6 + 8 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($6 + 28 | 0) >> 2] = (HEAP32[($6 + 28 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((pointCmp__operator_28_29_28btConvexHullInternal__Point32_20const__2c_20btConvexHullInternal__Point32_20const__29_20const(HEAP32[($6 + 40 | 0) >> 2] | 0 | 0, $6 + 8 | 0 | 0, (HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 24 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP32[($6 + 24 | 0) >> 2] = (HEAP32[($6 + 24 | 0) >> 2] | 0) + -1 | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
label$6 : {
|
|
if (!((HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) <= (HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
btAlignedObjectArray_btConvexHullInternal__Point32___swap_28int_2c_20int_29($7 | 0, HEAP32[($6 + 28 | 0) >> 2] | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($6 + 28 | 0) >> 2] = (HEAP32[($6 + 28 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = (HEAP32[($6 + 24 | 0) >> 2] | 0) + -1 | 0;
|
|
}
|
|
if ((HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) <= (HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
label$7 : {
|
|
if (!((HEAP32[($6 + 36 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
void_20btAlignedObjectArray_btConvexHullInternal__Point32___quickSortInternal_pointCmp__28pointCmp_20const__2c_20int_2c_20int_29($7 | 0, HEAP32[($6 + 40 | 0) >> 2] | 0 | 0, HEAP32[($6 + 36 | 0) >> 2] | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0);
|
|
}
|
|
label$8 : {
|
|
if (!((HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 32 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
void_20btAlignedObjectArray_btConvexHullInternal__Point32___quickSortInternal_pointCmp__28pointCmp_20const__2c_20int_2c_20int_29($7 | 0, HEAP32[($6 + 40 | 0) >> 2] | 0 | 0, HEAP32[($6 + 28 | 0) >> 2] | 0 | 0, HEAP32[($6 + 32 | 0) >> 2] | 0 | 0);
|
|
}
|
|
__stack_pointer = $6 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Vertex____reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btConvexHullInternal__Vertex____capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btConvexHullInternal__Vertex____allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____copy_28int_2c_20int_2c_20btConvexHullInternal__Vertex___29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btConvexHullInternal__Vertex____size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btConvexHullInternal__Vertex____size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__PoolArray_btConvexHullInternal__Vertex___PoolArray_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(Math_imul(HEAP32[($4 + 8 | 0) >> 2] | 0, 112) | 0, 16 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__PoolArray_btConvexHullInternal__Vertex___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $26 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[$4 >> 2] | 0;
|
|
HEAP32[($3 + 4 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(((HEAP32[($3 + 4 | 0) >> 2] | 0) + 1 | 0 | 0) < (HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$26 = (HEAP32[($3 + 8 | 0) >> 2] | 0) + 112 | 0;
|
|
break label$3;
|
|
}
|
|
$26 = 0;
|
|
}
|
|
HEAP32[(HEAP32[($3 + 8 | 0) >> 2] | 0) >> 2] = $26;
|
|
HEAP32[($3 + 4 | 0) >> 2] = (HEAP32[($3 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = (HEAP32[($3 + 8 | 0) >> 2] | 0) + 112 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return HEAP32[$4 >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Vertex__Vertex_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = 0;
|
|
btConvexHullInternal__PointR128__PointR128_28_29($4 + 24 | 0 | 0) | 0;
|
|
btConvexHullInternal__Point32__Point32_28_29($4 + 88 | 0 | 0) | 0;
|
|
HEAP32[($4 + 104 | 0) >> 2] = -1;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Point32___destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Point32___deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btConvexHullInternal__Point32_2c_2016u___deallocate_28btConvexHullInternal__Point32__29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__toBtVector_28btConvexHullInternal__Point32_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $12 = Math_fround(0), $23 = Math_fround(0), $34 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($5 + 8 | 0 | 0) | 0;
|
|
$12 = Math_fround(HEAP32[(HEAP32[($5 + 24 | 0) >> 2] | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($5 + 8 | 0 | 0) | 0) + ((HEAP32[($6 + 108 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $12), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$23 = Math_fround(HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($5 + 8 | 0 | 0) | 0) + ((HEAP32[($6 + 112 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $23), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$34 = Math_fround(HEAP32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($5 + 8 | 0 | 0) | 0) + ((HEAP32[($6 + 104 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $34), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($0 | 0, $5 + 8 | 0 | 0, $6 | 0);
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__getBtNormal_28btConvexHullInternal__Face__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 60 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 56 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
btConvexHullInternal__toBtVector_28btConvexHullInternal__Point32_20const__29($5 + 24 | 0 | 0, $6 | 0, (HEAP32[($5 + 56 | 0) >> 2] | 0) + 28 | 0 | 0);
|
|
btConvexHullInternal__toBtVector_28btConvexHullInternal__Point32_20const__29($5 + 8 | 0 | 0, $6 | 0, (HEAP32[($5 + 56 | 0) >> 2] | 0) + 44 | 0 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($5 + 40 | 0 | 0, $5 + 24 | 0 | 0, $5 + 8 | 0 | 0);
|
|
btVector3__normalized_28_29_20const($0 | 0, $5 + 40 | 0 | 0);
|
|
__stack_pointer = $5 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__getCoordinates_28btConvexHullInternal__Vertex_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $11 = Math_fround(0), $21 = Math_fround(0), $31 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 44 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($5 + 24 | 0 | 0) | 0;
|
|
$11 = Math_fround(btConvexHullInternal__Vertex__xvalue_28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($5 + 24 | 0 | 0) | 0) + ((HEAP32[($6 + 108 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $11), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$21 = Math_fround(btConvexHullInternal__Vertex__yvalue_28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($5 + 24 | 0 | 0) | 0) + ((HEAP32[($6 + 112 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $21), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$31 = Math_fround(btConvexHullInternal__Vertex__zvalue_28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($5 + 24 | 0 | 0) | 0) + ((HEAP32[($6 + 104 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $31), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($5 + 8 | 0 | 0, $5 + 24 | 0 | 0, $6 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($0 | 0, $5 + 8 | 0 | 0, $6 + 16 | 0 | 0);
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Vertex__xvalue_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $14 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($4 + 100 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$14 = Math_fround(HEAP32[($4 + 88 | 0) >> 2] | 0 | 0);
|
|
break label$1;
|
|
}
|
|
$14 = Math_fround(btConvexHullInternal__PointR128__xvalue_28_29_20const($4 + 24 | 0 | 0));
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($14);
|
|
}
|
|
|
|
function btConvexHullInternal__Vertex__yvalue_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $14 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($4 + 100 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$14 = Math_fround(HEAP32[($4 + 92 | 0) >> 2] | 0 | 0);
|
|
break label$1;
|
|
}
|
|
$14 = Math_fround(btConvexHullInternal__PointR128__yvalue_28_29_20const($4 + 24 | 0 | 0));
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($14);
|
|
}
|
|
|
|
function btConvexHullInternal__Vertex__zvalue_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $14 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($4 + 100 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$14 = Math_fround(HEAP32[($4 + 96 | 0) >> 2] | 0 | 0);
|
|
break label$1;
|
|
}
|
|
$14 = Math_fround(btConvexHullInternal__PointR128__zvalue_28_29_20const($4 + 24 | 0 | 0));
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($14);
|
|
}
|
|
|
|
function btConvexHullInternal__PointR128__xvalue_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $9 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$9 = Math_fround(Math_fround(btConvexHullInternal__Int128__toScalar_28_29_20const($4 | 0)) / Math_fround(btConvexHullInternal__Int128__toScalar_28_29_20const($4 + 48 | 0 | 0)));
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($9);
|
|
}
|
|
|
|
function btConvexHullInternal__PointR128__yvalue_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $11 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$11 = Math_fround(Math_fround(btConvexHullInternal__Int128__toScalar_28_29_20const($4 + 16 | 0 | 0)) / Math_fround(btConvexHullInternal__Int128__toScalar_28_29_20const($4 + 48 | 0 | 0)));
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($11);
|
|
}
|
|
|
|
function btConvexHullInternal__PointR128__zvalue_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $11 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$11 = Math_fround(Math_fround(btConvexHullInternal__Int128__toScalar_28_29_20const($4 + 32 | 0 | 0)) / Math_fround(btConvexHullInternal__Int128__toScalar_28_29_20const($4 + 48 | 0 | 0)));
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($11);
|
|
}
|
|
|
|
function btConvexHullInternal__shrink_28float_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $6 = 0, $194$hi = 0, $195$hi = 0, $18 = 0, $34 = 0, $35 = 0, $45 = 0, $49 = 0, $53 = 0, $57 = 0, i64toi32_i32$3 = 0, $40 = 0, $41 = 0, $42 = 0, $232$hi = 0, $235$hi = 0, $246$hi = 0, $249$hi = 0, $260$hi = 0, $263$hi = 0, $633 = 0, $637 = 0, $926 = 0, $232 = 0, $998 = 0, $246 = 0, $1026 = 0, $260 = 0, $1054 = 0, $342 = Math_fround(0), $354 = Math_fround(0), $366 = Math_fround(0), $516 = 0, $517 = Math_fround(0), $529 = 0, $549 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 496 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 488 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 484 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 480 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 488 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if ((HEAP32[($6 + 124 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($5 + 492 | 0) >> 2] = Math_fround(0 | 0);
|
|
break label$1;
|
|
}
|
|
$18 = (HEAP32[($6 + 100 | 0) >> 2] | 0) + -1 | 0;
|
|
HEAP32[($6 + 100 | 0) >> 2] = $18;
|
|
HEAP32[($5 + 476 | 0) >> 2] = $18;
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____btAlignedObjectArray_28_29($5 + 456 | 0 | 0) | 0;
|
|
HEAP32[((HEAP32[($6 + 124 | 0) >> 2] | 0) + 104 | 0) >> 2] = HEAP32[($5 + 476 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____push_back_28btConvexHullInternal__Vertex__20const__29($5 + 456 | 0 | 0, $6 + 124 | 0 | 0);
|
|
btAlignedObjectArray_btConvexHullInternal__Face____btAlignedObjectArray_28_29($5 + 436 | 0 | 0) | 0;
|
|
$34 = (HEAP32[($6 + 124 | 0) >> 2] | 0) + 88 | 0;
|
|
$35 = 8;
|
|
i64toi32_i32$2 = $34 + $35 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$633 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 416 | 0) + $35 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $633;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $34;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$637 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 416 | 0) >> 2] = $637;
|
|
HEAP32[($5 + 420 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 0;
|
|
$45 = 0;
|
|
i64toi32_i32$1 = i64toi32_i32$0;
|
|
btConvexHullInternal__Int128__Int128_28unsigned_20long_20long_2c_20unsigned_20long_20long_29($5 + 400 | 0 | 0, $45 | 0, i64toi32_i32$0 | 0, $45 | 0, i64toi32_i32$0 | 0) | 0;
|
|
i64toi32_i32$1 = 0;
|
|
$49 = 0;
|
|
i64toi32_i32$0 = i64toi32_i32$1;
|
|
btConvexHullInternal__Int128__Int128_28unsigned_20long_20long_2c_20unsigned_20long_20long_29($5 + 384 | 0 | 0, $49 | 0, i64toi32_i32$0 | 0, $49 | 0, i64toi32_i32$0 | 0) | 0;
|
|
i64toi32_i32$0 = 0;
|
|
$53 = 0;
|
|
i64toi32_i32$1 = i64toi32_i32$0;
|
|
btConvexHullInternal__Int128__Int128_28unsigned_20long_20long_2c_20unsigned_20long_20long_29($5 + 368 | 0 | 0, $53 | 0, i64toi32_i32$0 | 0, $53 | 0, i64toi32_i32$0 | 0) | 0;
|
|
i64toi32_i32$1 = 0;
|
|
$57 = 0;
|
|
i64toi32_i32$0 = i64toi32_i32$1;
|
|
btConvexHullInternal__Int128__Int128_28unsigned_20long_20long_2c_20unsigned_20long_20long_29($5 + 352 | 0 | 0, $57 | 0, i64toi32_i32$0 | 0, $57 | 0, i64toi32_i32$0 | 0) | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((btAlignedObjectArray_btConvexHullInternal__Vertex____size_28_29_20const($5 + 456 | 0 | 0) | 0 | 0) > (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btConvexHullInternal__Vertex____operator_5b_5d_28int_29($5 + 456 | 0 | 0, (btAlignedObjectArray_btConvexHullInternal__Vertex____size_28_29_20const($5 + 456 | 0 | 0) | 0) - 1 | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 348 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____pop_back_28_29($5 + 456 | 0 | 0);
|
|
HEAP32[($5 + 344 | 0) >> 2] = HEAP32[((HEAP32[($5 + 348 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 344 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
label$6 : while (1) {
|
|
label$7 : {
|
|
if (!((HEAP32[((HEAP32[((HEAP32[($5 + 344 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 104 | 0) >> 2] | 0 | 0) != (HEAP32[($5 + 476 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAP32[((HEAP32[((HEAP32[($5 + 344 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 104 | 0) >> 2] = HEAP32[($5 + 476 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____push_back_28btConvexHullInternal__Vertex__20const__29($5 + 456 | 0 | 0, (HEAP32[($5 + 344 | 0) >> 2] | 0) + 12 | 0 | 0);
|
|
}
|
|
label$8 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 344 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) != (HEAP32[($5 + 476 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btConvexHullInternal__Pool_btConvexHullInternal__Face___newObject_28_29($6 + 64 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 340 | 0) >> 2] = wasm2js_i32$1;
|
|
btConvexHullInternal__Face__init_28btConvexHullInternal__Vertex__2c_20btConvexHullInternal__Vertex__2c_20btConvexHullInternal__Vertex__29(HEAP32[($5 + 340 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5 + 344 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[((HEAP32[((HEAP32[($5 + 344 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0, HEAP32[($5 + 348 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btConvexHullInternal__Face____push_back_28btConvexHullInternal__Face__20const__29($5 + 436 | 0 | 0, $5 + 340 | 0 | 0);
|
|
HEAP32[($5 + 336 | 0) >> 2] = HEAP32[($5 + 344 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 332 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 328 | 0) >> 2] = 0;
|
|
label$9 : while (1) {
|
|
label$10 : {
|
|
if (!((HEAP32[($5 + 332 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
if (!((HEAP32[($5 + 328 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const($5 + 304 | 0 | 0, (HEAP32[($5 + 348 | 0) >> 2] | 0) + 88 | 0 | 0, $5 + 416 | 0 | 0);
|
|
btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const($5 + 264 | 0 | 0, (HEAP32[($5 + 332 | 0) >> 2] | 0) + 88 | 0 | 0, $5 + 416 | 0 | 0);
|
|
btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const($5 + 248 | 0 | 0, (HEAP32[($5 + 328 | 0) >> 2] | 0) + 88 | 0 | 0, $5 + 416 | 0 | 0);
|
|
btConvexHullInternal__Point32__cross_28btConvexHullInternal__Point32_20const__29_20const($5 + 280 | 0 | 0, $5 + 264 | 0 | 0, $5 + 248 | 0 | 0);
|
|
i64toi32_i32$0 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const($5 + 304 | 0 | 0, $5 + 280 | 0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
$926 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $5;
|
|
HEAP32[($5 + 320 | 0) >> 2] = $926;
|
|
HEAP32[($5 + 324 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[($5 + 320 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 324 | 0) >> 2] | 0;
|
|
$194$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 0;
|
|
$195$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $194$hi;
|
|
i64toi32_i32$0 = $195$hi;
|
|
i64toi32_i32$0 = $194$hi;
|
|
i64toi32_i32$0 = $195$hi;
|
|
i64toi32_i32$0 = $194$hi;
|
|
i64toi32_i32$2 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $195$hi;
|
|
i64toi32_i32$3 = 0;
|
|
if ((i64toi32_i32$0 | 0) > (i64toi32_i32$1 | 0)) {
|
|
$40 = 1
|
|
} else {
|
|
if ((i64toi32_i32$0 | 0) >= (i64toi32_i32$1 | 0)) {
|
|
if (i64toi32_i32$2 >>> 0 < i64toi32_i32$3 >>> 0) {
|
|
$41 = 0
|
|
} else {
|
|
$41 = 1
|
|
}
|
|
$42 = $41;
|
|
} else {
|
|
$42 = 0
|
|
}
|
|
$40 = $42;
|
|
}
|
|
label$11 : {
|
|
if ($40 & 1 | 0) {
|
|
break label$11
|
|
}
|
|
__assert_fail(86093 | 0, 72732 | 0, 2147 | 0, 77659 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const_1($5 + 200 | 0 | 0, (HEAP32[($5 + 348 | 0) >> 2] | 0) + 88 | 0 | 0, (HEAP32[($5 + 332 | 0) >> 2] | 0) + 88 | 0 | 0);
|
|
btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const_1($5 + 216 | 0 | 0, $5 + 200 | 0 | 0, (HEAP32[($5 + 328 | 0) >> 2] | 0) + 88 | 0 | 0);
|
|
btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const_1($5 + 232 | 0 | 0, $5 + 216 | 0 | 0, $5 + 416 | 0 | 0);
|
|
i64toi32_i32$2 = HEAP32[($5 + 320 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 324 | 0) >> 2] | 0;
|
|
$232 = i64toi32_i32$2;
|
|
$232$hi = i64toi32_i32$0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 232 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$2 >> 31 | 0;
|
|
$235$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $232$hi;
|
|
i64toi32_i32$0 = $235$hi;
|
|
$998 = i64toi32_i32$2;
|
|
i64toi32_i32$0 = $232$hi;
|
|
i64toi32_i32$2 = $235$hi;
|
|
i64toi32_i32$2 = __wasm_i64_mul($232 | 0, i64toi32_i32$0 | 0, $998 | 0, i64toi32_i32$2 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
btConvexHullInternal__Int128__Int128_28long_20long_29($5 + 184 | 0 | 0, i64toi32_i32$2 | 0, i64toi32_i32$0 | 0) | 0;
|
|
btConvexHullInternal__Int128__operator___28btConvexHullInternal__Int128_20const__29($5 + 400 | 0 | 0, $5 + 184 | 0 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 320 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 324 | 0) >> 2] | 0;
|
|
$246 = i64toi32_i32$0;
|
|
$246$hi = i64toi32_i32$2;
|
|
i64toi32_i32$0 = HEAP32[($5 + 236 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$0 >> 31 | 0;
|
|
$249$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $246$hi;
|
|
i64toi32_i32$2 = $249$hi;
|
|
$1026 = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $246$hi;
|
|
i64toi32_i32$0 = $249$hi;
|
|
i64toi32_i32$0 = __wasm_i64_mul($246 | 0, i64toi32_i32$2 | 0, $1026 | 0, i64toi32_i32$0 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$HIGH_BITS;
|
|
btConvexHullInternal__Int128__Int128_28long_20long_29($5 + 168 | 0 | 0, i64toi32_i32$0 | 0, i64toi32_i32$2 | 0) | 0;
|
|
btConvexHullInternal__Int128__operator___28btConvexHullInternal__Int128_20const__29($5 + 384 | 0 | 0, $5 + 168 | 0 | 0) | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 320 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 324 | 0) >> 2] | 0;
|
|
$260 = i64toi32_i32$2;
|
|
$260$hi = i64toi32_i32$0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 240 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$2 >> 31 | 0;
|
|
$263$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $260$hi;
|
|
i64toi32_i32$0 = $263$hi;
|
|
$1054 = i64toi32_i32$2;
|
|
i64toi32_i32$0 = $260$hi;
|
|
i64toi32_i32$2 = $263$hi;
|
|
i64toi32_i32$2 = __wasm_i64_mul($260 | 0, i64toi32_i32$0 | 0, $1054 | 0, i64toi32_i32$2 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
btConvexHullInternal__Int128__Int128_28long_20long_29($5 + 152 | 0 | 0, i64toi32_i32$2 | 0, i64toi32_i32$0 | 0) | 0;
|
|
btConvexHullInternal__Int128__operator___28btConvexHullInternal__Int128_20const__29($5 + 368 | 0 | 0, $5 + 152 | 0 | 0) | 0;
|
|
i64toi32_i32$3 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 320 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 324 | 0) >> 2] | 0;
|
|
btConvexHullInternal__Int128__Int128_28long_20long_29($5 + 136 | 0 | 0, i64toi32_i32$0 | 0, i64toi32_i32$2 | 0) | 0;
|
|
btConvexHullInternal__Int128__operator___28btConvexHullInternal__Int128_20const__29($5 + 352 | 0 | 0, $5 + 136 | 0 | 0) | 0;
|
|
}
|
|
label$12 : {
|
|
if ((HEAP32[((HEAP32[($5 + 336 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) != (HEAP32[($5 + 476 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$12
|
|
}
|
|
__assert_fail(76078 | 0, 72732 | 0, 2155 | 0, 77659 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[((HEAP32[($5 + 336 | 0) >> 2] | 0) + 20 | 0) >> 2] = HEAP32[($5 + 476 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 336 | 0) >> 2] | 0) + 16 | 0) >> 2] = HEAP32[($5 + 340 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 332 | 0) >> 2] = HEAP32[($5 + 328 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 328 | 0) >> 2] = HEAP32[((HEAP32[($5 + 336 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 336 | 0) >> 2] = HEAP32[((HEAP32[((HEAP32[($5 + 336 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
if ((HEAP32[($5 + 336 | 0) >> 2] | 0 | 0) != (HEAP32[($5 + 344 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
continue label$9
|
|
}
|
|
break label$9;
|
|
};
|
|
}
|
|
HEAP32[($5 + 344 | 0) >> 2] = HEAP32[(HEAP32[($5 + 344 | 0) >> 2] | 0) >> 2] | 0;
|
|
if ((HEAP32[($5 + 344 | 0) >> 2] | 0 | 0) != (HEAP32[((HEAP32[($5 + 348 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
continue label$6
|
|
}
|
|
break label$6;
|
|
};
|
|
}
|
|
continue label$4;
|
|
};
|
|
}
|
|
label$13 : {
|
|
label$14 : {
|
|
if (!((btConvexHullInternal__Int128__getSign_28_29_20const($5 + 352 | 0 | 0) | 0 | 0) <= (0 | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
HEAPF32[($5 + 492 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP32[($5 + 132 | 0) >> 2] = 1;
|
|
break label$13;
|
|
}
|
|
btVector3__btVector3_28_29($5 + 116 | 0 | 0) | 0;
|
|
$342 = Math_fround(btConvexHullInternal__Int128__toScalar_28_29_20const($5 + 400 | 0 | 0));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($5 + 116 | 0 | 0) | 0) + ((HEAP32[($6 + 108 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $342), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$354 = Math_fround(btConvexHullInternal__Int128__toScalar_28_29_20const($5 + 384 | 0 | 0));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($5 + 116 | 0 | 0) | 0) + ((HEAP32[($6 + 112 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $354), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$366 = Math_fround(btConvexHullInternal__Int128__toScalar_28_29_20const($5 + 368 | 0 | 0));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($5 + 116 | 0 | 0) | 0) + ((HEAP32[($6 + 104 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $366), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(4.0) * Math_fround(btConvexHullInternal__Int128__toScalar_28_29_20const($5 + 352 | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 112 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__operator___28float_20const__29($5 + 116 | 0 | 0, $5 + 112 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_2($5 + 116 | 0 | 0, $6 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btConvexHullInternal__Face____size_28_29_20const($5 + 436 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 108 | 0) >> 2] = wasm2js_i32$1;
|
|
label$15 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 480 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
HEAPF32[($5 + 104 | 0) >> 2] = Math_fround(3402823466385288598117041.0e14);
|
|
HEAP32[($5 + 100 | 0) >> 2] = 0;
|
|
label$16 : {
|
|
label$17 : while (1) {
|
|
if (!((HEAP32[($5 + 100 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 108 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
btConvexHullInternal__getBtNormal_28btConvexHullInternal__Face__29($5 + 84 | 0 | 0, $6 | 0, HEAP32[(btAlignedObjectArray_btConvexHullInternal__Face____operator_5b_5d_28int_29($5 + 436 | 0 | 0, HEAP32[($5 + 100 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0);
|
|
btConvexHullInternal__toBtVector_28btConvexHullInternal__Point32_20const__29($5 + 48 | 0 | 0, $6 | 0, (HEAP32[(btAlignedObjectArray_btConvexHullInternal__Face____operator_5b_5d_28int_29($5 + 436 | 0 | 0, HEAP32[($5 + 100 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0) + 12 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 64 | 0 | 0, $5 + 48 | 0 | 0, $5 + 116 | 0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($5 + 84 | 0 | 0, $5 + 64 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 80 | 0) >> 2] = wasm2js_f32$0;
|
|
label$18 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 80 | 0) >> 2]) < Math_fround(HEAPF32[($5 + 104 | 0) >> 2]) & 1 | 0)) {
|
|
break label$18
|
|
}
|
|
HEAPF32[($5 + 104 | 0) >> 2] = Math_fround(HEAPF32[($5 + 80 | 0) >> 2]);
|
|
}
|
|
HEAP32[($5 + 100 | 0) >> 2] = (HEAP32[($5 + 100 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$17;
|
|
};
|
|
}
|
|
label$19 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 104 | 0) >> 2]) <= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
HEAPF32[($5 + 492 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP32[($5 + 132 | 0) >> 2] = 1;
|
|
break label$13;
|
|
}
|
|
HEAPF32[($5 + 44 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 104 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 480 | 0) >> 2]));
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(HEAPF32[(float_20const__20btMin_float__28float_20const__2c_20float_20const__29($5 + 484 | 0 | 0, $5 + 44 | 0 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 484 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
HEAP32[($5 + 40 | 0) >> 2] = 243703;
|
|
HEAP32[($5 + 36 | 0) >> 2] = 0;
|
|
label$20 : {
|
|
label$21 : while (1) {
|
|
if (!((HEAP32[($5 + 36 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 108 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$20
|
|
}
|
|
void_20btSwap_btConvexHullInternal__Face___28btConvexHullInternal__Face___2c_20btConvexHullInternal__Face___29(btAlignedObjectArray_btConvexHullInternal__Face____operator_5b_5d_28int_29($5 + 436 | 0 | 0, HEAP32[($5 + 36 | 0) >> 2] | 0 | 0) | 0 | 0, btAlignedObjectArray_btConvexHullInternal__Face____operator_5b_5d_28int_29($5 + 436 | 0 | 0, ((HEAP32[($5 + 40 | 0) >> 2] | 0) >>> 0) % ((HEAP32[($5 + 108 | 0) >> 2] | 0) >>> 0) | 0 | 0) | 0 | 0);
|
|
HEAP32[($5 + 36 | 0) >> 2] = (HEAP32[($5 + 36 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($5 + 40 | 0) >> 2] = Math_imul(HEAP32[($5 + 40 | 0) >> 2] | 0, 1664525) + 1013904223 | 0;
|
|
continue label$21;
|
|
};
|
|
}
|
|
HEAP32[($5 + 32 | 0) >> 2] = 0;
|
|
label$22 : {
|
|
label$23 : while (1) {
|
|
if (!((HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 108 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$22
|
|
}
|
|
$516 = HEAP32[(btAlignedObjectArray_btConvexHullInternal__Face____operator_5b_5d_28int_29($5 + 436 | 0 | 0, HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
$517 = Math_fround(HEAPF32[($5 + 484 | 0) >> 2]);
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____btAlignedObjectArray_28btAlignedObjectArray_btConvexHullInternal__Vertex___20const__29($5 + 12 | 0 | 0, $5 + 456 | 0 | 0) | 0;
|
|
$529 = (btConvexHullInternal__shiftFace_28btConvexHullInternal__Face__2c_20float_2c_20btAlignedObjectArray_btConvexHullInternal__Vertex___29($6 | 0, $516 | 0, Math_fround($517), $5 + 12 | 0 | 0) | 0) ^ -1 | 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex_____btAlignedObjectArray_28_29($5 + 12 | 0 | 0) | 0;
|
|
label$24 : {
|
|
if (!($529 & 1 | 0)) {
|
|
break label$24
|
|
}
|
|
HEAPF32[($5 + 492 | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($5 + 484 | 0) >> 2]));
|
|
HEAP32[($5 + 132 | 0) >> 2] = 1;
|
|
break label$13;
|
|
}
|
|
HEAP32[($5 + 32 | 0) >> 2] = (HEAP32[($5 + 32 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$23;
|
|
};
|
|
}
|
|
HEAPF32[($5 + 492 | 0) >> 2] = Math_fround(HEAPF32[($5 + 484 | 0) >> 2]);
|
|
HEAP32[($5 + 132 | 0) >> 2] = 1;
|
|
}
|
|
btAlignedObjectArray_btConvexHullInternal__Face_____btAlignedObjectArray_28_29($5 + 436 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex_____btAlignedObjectArray_28_29($5 + 456 | 0 | 0) | 0;
|
|
}
|
|
$549 = Math_fround(HEAPF32[($5 + 492 | 0) >> 2]);
|
|
__stack_pointer = $5 + 496 | 0;
|
|
return Math_fround($549);
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Vertex____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btConvexHullInternal__Vertex__2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Vertex____push_back_28btConvexHullInternal__Vertex__20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btConvexHullInternal__Vertex____size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btConvexHullInternal__Vertex____capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____reserve_28int_29($5 | 0, btAlignedObjectArray_btConvexHullInternal__Vertex____allocSize_28int_29($5 | 0, btAlignedObjectArray_btConvexHullInternal__Vertex____size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Face____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btConvexHullInternal__Face__2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Face____init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Vertex____pop_back_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) > (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85800 | 0, 78295 | 0, 201 | 0, 77711 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + -1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Pool_btConvexHullInternal__Face___newObject_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $25 = 0, $34 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
HEAP32[($3 + 4 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[((HEAP32[($3 + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
break label$2;
|
|
}
|
|
$25 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(12 | 0, 16 | 0) | 0;
|
|
btConvexHullInternal__PoolArray_btConvexHullInternal__Face___PoolArray_28int_29($25 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($3 + 4 | 0) >> 2] = $25;
|
|
HEAP32[((HEAP32[($3 + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[$4 >> 2] | 0;
|
|
HEAP32[$4 >> 2] = HEAP32[($3 + 4 | 0) >> 2] | 0;
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btConvexHullInternal__PoolArray_btConvexHullInternal__Face___init_28_29(HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
HEAP32[($4 + 8 | 0) >> 2] = HEAP32[(HEAP32[($3 + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
$34 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
btConvexHullInternal__Face__Face_28_29($34 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $34 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Face__init_28btConvexHullInternal__Vertex__2c_20btConvexHullInternal__Vertex__2c_20btConvexHullInternal__Vertex__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $7 = 0, $13 = 0, $15 = 0, $25 = 0, $27 = 0, $37 = 0, $39 = 0, $87 = 0, $97 = 0, $115 = 0, $128 = 0, $143 = 0, $153 = 0;
|
|
$6 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 32 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = HEAP32[($6 + 40 | 0) >> 2] | 0;
|
|
$13 = $7 + 12 | 0;
|
|
i64toi32_i32$2 = (HEAP32[($6 + 40 | 0) >> 2] | 0) + 88 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$87 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $13;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $87;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$15 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $15 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$97 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $13 + $15 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $97;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btConvexHullInternal__Vertex__operator__28btConvexHullInternal__Vertex_20const__29_20const($6 + 16 | 0 | 0, HEAP32[($6 + 36 | 0) >> 2] | 0 | 0, HEAP32[($6 + 40 | 0) >> 2] | 0 | 0);
|
|
$25 = $7 + 28 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 20 | 0) >> 2] | 0;
|
|
$115 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $25;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $115;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$27 = 8;
|
|
i64toi32_i32$2 = ($6 + 16 | 0) + $27 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$128 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $25 + $27 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $128;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btConvexHullInternal__Vertex__operator__28btConvexHullInternal__Vertex_20const__29_20const($6 | 0, HEAP32[($6 + 32 | 0) >> 2] | 0 | 0, HEAP32[($6 + 40 | 0) >> 2] | 0 | 0);
|
|
$37 = $7 + 44 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[$6 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
$143 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $37;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $143;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$39 = 8;
|
|
i64toi32_i32$2 = $6 + $39 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$153 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $37 + $39 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $153;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[((HEAP32[($6 + 40 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[((HEAP32[((HEAP32[($6 + 40 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0) + 8 | 0) >> 2] = $7;
|
|
break label$1;
|
|
}
|
|
HEAP32[((HEAP32[($6 + 40 | 0) >> 2] | 0) + 12 | 0) >> 2] = $7;
|
|
}
|
|
HEAP32[((HEAP32[($6 + 40 | 0) >> 2] | 0) + 16 | 0) >> 2] = $7;
|
|
__stack_pointer = $6 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Face____push_back_28btConvexHullInternal__Face__20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btConvexHullInternal__Face____size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btConvexHullInternal__Face____capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btConvexHullInternal__Face____reserve_28int_29($5 | 0, btAlignedObjectArray_btConvexHullInternal__Face____allocSize_28int_29($5 | 0, btAlignedObjectArray_btConvexHullInternal__Face____size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const_1($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btConvexHullInternal__Point32__Point32_28int_2c_20int_2c_20int_29($0 | 0, (HEAP32[$6 >> 2] | 0) + (HEAP32[(HEAP32[($5 + 8 | 0) >> 2] | 0) >> 2] | 0) | 0 | 0, (HEAP32[($6 + 4 | 0) >> 2] | 0) + (HEAP32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) | 0 | 0, (HEAP32[($6 + 8 | 0) >> 2] | 0) + (HEAP32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Int128__Int128_28long_20long_29($0, $1, $1$hi) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$1$hi = $1$hi | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $7$hi = 0, $8$hi = 0, i64toi32_i32$3 = 0, $4 = 0, $5 = 0, $16 = 0, $17 = 0, $18 = 0, $12$hi = 0, $13$hi = 0, i64toi32_i32$4 = 0, $30 = 0, $46 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
i64toi32_i32$0 = $1$hi;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$5 = HEAP32[(i64toi32_i32$1 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$30 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $5;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $30;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$7$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 0;
|
|
$8$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $7$hi;
|
|
i64toi32_i32$0 = $8$hi;
|
|
i64toi32_i32$0 = $7$hi;
|
|
i64toi32_i32$0 = $8$hi;
|
|
i64toi32_i32$0 = $7$hi;
|
|
i64toi32_i32$2 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8$hi;
|
|
i64toi32_i32$3 = 0;
|
|
if ((i64toi32_i32$0 | 0) > (i64toi32_i32$1 | 0)) {
|
|
$16 = 1
|
|
} else {
|
|
if ((i64toi32_i32$0 | 0) >= (i64toi32_i32$1 | 0)) {
|
|
if (i64toi32_i32$2 >>> 0 < i64toi32_i32$3 >>> 0) {
|
|
$17 = 0
|
|
} else {
|
|
$17 = 1
|
|
}
|
|
$18 = $17;
|
|
} else {
|
|
$18 = 0
|
|
}
|
|
$16 = $18;
|
|
}
|
|
i64toi32_i32$2 = 0;
|
|
$12$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = -1;
|
|
$13$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $12$hi;
|
|
i64toi32_i32$2 = $13$hi;
|
|
i64toi32_i32$4 = $16 & 1 | 0;
|
|
i64toi32_i32$2 = $12$hi;
|
|
i64toi32_i32$0 = $13$hi;
|
|
i64toi32_i32$1 = i64toi32_i32$4 ? 0 : -1;
|
|
i64toi32_i32$3 = i64toi32_i32$4 ? i64toi32_i32$2 : i64toi32_i32$0;
|
|
$46 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[(i64toi32_i32$1 + 8 | 0) >> 2] = $46;
|
|
HEAP32[(i64toi32_i32$1 + 12 | 0) >> 2] = i64toi32_i32$3;
|
|
return i64toi32_i32$1 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Int128__getSign_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$3 = 0, $4 = 0, $5$hi = 0, $6$hi = 0, $14$hi = 0, $15$hi = 0, $23$hi = 0, $24$hi = 0, $3 = 0, $15 = 0, $16 = 0, $17 = 0, $13 = 0, $22 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 12 | 0) >> 2] | 0;
|
|
$5$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$6$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5$hi;
|
|
i64toi32_i32$1 = $6$hi;
|
|
i64toi32_i32$1 = $5$hi;
|
|
i64toi32_i32$1 = $6$hi;
|
|
i64toi32_i32$1 = $5$hi;
|
|
i64toi32_i32$2 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6$hi;
|
|
i64toi32_i32$3 = 0;
|
|
if ((i64toi32_i32$1 | 0) < (i64toi32_i32$0 | 0)) {
|
|
$15 = 1
|
|
} else {
|
|
if ((i64toi32_i32$1 | 0) <= (i64toi32_i32$0 | 0)) {
|
|
if (i64toi32_i32$2 >>> 0 >= i64toi32_i32$3 >>> 0) {
|
|
$16 = 0
|
|
} else {
|
|
$16 = 1
|
|
}
|
|
$17 = $16;
|
|
} else {
|
|
$17 = 0
|
|
}
|
|
$15 = $17;
|
|
}
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!($15 & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$13 = -1;
|
|
break label$1;
|
|
}
|
|
i64toi32_i32$3 = $4;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$3 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$3 + 12 | 0) >> 2] | 0;
|
|
$14$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$15$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $14$hi;
|
|
i64toi32_i32$1 = $15$hi;
|
|
i64toi32_i32$1 = $14$hi;
|
|
i64toi32_i32$1 = $15$hi;
|
|
i64toi32_i32$1 = $14$hi;
|
|
i64toi32_i32$3 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $15$hi;
|
|
i64toi32_i32$0 = 0;
|
|
$22 = 1;
|
|
label$3 : {
|
|
if (((i64toi32_i32$3 | 0) != (i64toi32_i32$0 | 0) | (i64toi32_i32$1 | 0) != (i64toi32_i32$2 | 0) | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
i64toi32_i32$0 = $4;
|
|
i64toi32_i32$3 = HEAP32[i64toi32_i32$0 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] | 0;
|
|
$23$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$24$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $23$hi;
|
|
i64toi32_i32$1 = $24$hi;
|
|
i64toi32_i32$1 = $23$hi;
|
|
i64toi32_i32$1 = $24$hi;
|
|
i64toi32_i32$1 = $23$hi;
|
|
i64toi32_i32$0 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $24$hi;
|
|
i64toi32_i32$2 = 0;
|
|
$22 = (i64toi32_i32$0 | 0) != (i64toi32_i32$2 | 0) | (i64toi32_i32$1 | 0) != (i64toi32_i32$3 | 0) | 0;
|
|
}
|
|
$13 = $22 & 1 | 0 ? 1 : 0;
|
|
}
|
|
return $13 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Int128__toScalar_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, i64toi32_i32$2 = 0, $3 = 0, $4 = 0, $6$hi = 0, i64toi32_i32$0 = 0, $5$hi = 0, $11 = 0, $12 = 0, $14 = 0, $19 = Math_fround(0), $13 = Math_fround(0);
|
|
$3 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 28 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 28 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 12 | 0) >> 2] | 0;
|
|
$5$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$6$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5$hi;
|
|
i64toi32_i32$1 = $6$hi;
|
|
i64toi32_i32$1 = $5$hi;
|
|
i64toi32_i32$1 = $6$hi;
|
|
i64toi32_i32$1 = $5$hi;
|
|
i64toi32_i32$2 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6$hi;
|
|
i64toi32_i32$3 = 0;
|
|
if ((i64toi32_i32$1 | 0) > ($6$hi | 0)) {
|
|
$11 = 1
|
|
} else {
|
|
if ((i64toi32_i32$1 | 0) >= (i64toi32_i32$0 | 0)) {
|
|
if (i64toi32_i32$2 >>> 0 < i64toi32_i32$3 >>> 0) {
|
|
$12 = 0
|
|
} else {
|
|
$12 = 1
|
|
}
|
|
$14 = $12;
|
|
} else {
|
|
$14 = 0
|
|
}
|
|
$11 = $14;
|
|
}
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!($11 & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
i64toi32_i32$3 = $4;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$3 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$3 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = 0;
|
|
$13 = Math_fround(+(i64toi32_i32$2 >>> 0) + 4294967296.0 * +(i64toi32_i32$1 >>> 0));
|
|
i64toi32_i32$3 = $4;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$3 >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$3 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = 0;
|
|
$19 = Math_fround(Math_fround($13 * Math_fround(18446744073709551615.0)) + Math_fround(+(i64toi32_i32$1 >>> 0) + 4294967296.0 * +(i64toi32_i32$2 >>> 0)));
|
|
break label$1;
|
|
}
|
|
btConvexHullInternal__Int128__operator__28_29_20const($3 + 8 | 0 | 0, $4 | 0);
|
|
$19 = Math_fround(-Math_fround(btConvexHullInternal__Int128__toScalar_28_29_20const($3 + 8 | 0 | 0)));
|
|
}
|
|
__stack_pointer = $3 + 32 | 0;
|
|
return Math_fround($19);
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Face____size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Face____operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78295 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btConvexHullInternal__Face____size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78295 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function void_20btSwap_btConvexHullInternal__Face___28btConvexHullInternal__Face___2c_20btConvexHullInternal__Face___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] = HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Vertex____btAlignedObjectArray_28btAlignedObjectArray_btConvexHullInternal__Vertex___20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $8 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btConvexHullInternal__Vertex__2c_2016u___btAlignedAllocator_28_29($5 | 0) | 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____init_28_29($5 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btConvexHullInternal__Vertex____size_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
$8 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____resize_28int_2c_20btConvexHullInternal__Vertex__20const__29($5 | 0, $8 | 0, $4 | 0);
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____copy_28int_2c_20int_2c_20btConvexHullInternal__Vertex___29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__shiftFace_28btConvexHullInternal__Face__2c_20float_2c_20btAlignedObjectArray_btConvexHullInternal__Vertex___29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$2 = 0, i64toi32_i32$3 = 0, i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, $7 = 0, $951 = 0, $992 = 0, $204 = 0, $205 = 0, $158$hi = 0, $159$hi = 0, $169$hi = 0, $170$hi = 0, $35 = 0, $50 = 0, $65 = 0, $76 = Math_fround(0), $82 = 0, $93 = Math_fround(0), $99 = 0, $110 = Math_fround(0), $116 = 0, $206 = 0, $207 = 0, $208 = 0, $209 = 0, $210 = 0, $211 = 0, $245 = 0, $253 = 0, $261 = 0, $269 = 0, $359 = 0, $367 = 0, $375 = 0, $383 = 0, $651$hi = 0, $652$hi = 0, $656$hi = 0, $657$hi = 0, $688$hi = 0, $689$hi = 0, $690$hi = 0, $691$hi = 0, $698$hi = 0, $699$hi = 0, $700$hi = 0, $701$hi = 0, $717$hi = 0, $718$hi = 0, $719$hi = 0, $720$hi = 0, $736$hi = 0, $737$hi = 0, $738$hi = 0, $739$hi = 0, $773$hi = 0, $774$hi = 0, $775$hi = 0, $776$hi = 0, $783$hi = 0, $784$hi = 0, $785$hi = 0, $786$hi = 0, $802$hi = 0, $803$hi = 0, $804$hi = 0, $805$hi = 0, $821$hi = 0, $822$hi = 0, $823$hi = 0, $824$hi = 0, $858$hi = 0, $859$hi = 0, $860$hi = 0, $861$hi = 0, $868$hi = 0, $869$hi = 0, $870$hi = 0, $871$hi = 0, $887$hi = 0, $888$hi = 0, $889$hi = 0, $890$hi = 0, $906$hi = 0, $907$hi = 0, $908$hi = 0, $909$hi = 0, $940 = 0, $994 = 0, $1000 = 0, $1006 = 0, $1012 = 0, $1018 = 0, $1024 = 0, $1030 = 0, $1039 = Math_fround(0), $1045 = 0, $1052 = Math_fround(0), $1058 = 0, $1065 = Math_fround(0), $1071 = 0, $1278 = 0, $1284 = 0, $1288 = 0, $1332 = 0, $1334 = 0, $31 = Math_fround(0), $46 = Math_fround(0), $61 = Math_fround(0), $84 = 0, $101 = 0, $1619 = 0, $1648 = 0, $158 = 0, $1656 = 0, $169 = 0, $1673 = 0, $1821 = 0, $1837 = 0, $1853 = 0, $1869 = 0, $1873 = 0, $2043 = 0, $2059 = 0, $2075 = 0, $2091 = 0, $2095 = 0, $2518 = 0, $2532 = 0, $2546 = 0, $2560 = 0, $2591 = 0, $2624 = 0, $651 = 0, $2635 = 0, $656 = 0, $2646 = 0, $688 = 0, $2698 = 0, $690 = 0, $2708 = 0, $698 = 0, $2719 = 0, $700 = 0, $2729 = 0, $717 = 0, $2755 = 0, $719 = 0, $2765 = 0, $736 = 0, $2791 = 0, $738 = 0, $2801 = 0, $773 = 0, $2858 = 0, $775 = 0, $2868 = 0, $783 = 0, $2879 = 0, $785 = 0, $2889 = 0, $802 = 0, $2915 = 0, $804 = 0, $2925 = 0, $821 = 0, $2951 = 0, $823 = 0, $2961 = 0, $858 = 0, $3018 = 0, $860 = 0, $3028 = 0, $868 = 0, $3039 = 0, $870 = 0, $3049 = 0, $887 = 0, $3075 = 0, $889 = 0, $3085 = 0, $906 = 0, $3111 = 0, $908 = 0, $3121 = 0, $3183 = 0, $3187 = 0, $3207 = 0, $3211 = 0, $3227 = 0, $3231 = 0, $3247 = 0, $3251 = 0, $3264 = 0, $3268 = 0, $3295 = 0, $3308 = 0, $3321 = 0, $3334 = 0, $3347 = 0, $3360 = 0, $3373 = 0, $3386 = 0, $4019 = 0, $4032 = 0, $1345 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 1248 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 1240 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 1236 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 1232 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 1228 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 1240 | 0) >> 2] | 0;
|
|
btConvexHullInternal__getBtNormal_28btConvexHullInternal__Face__29($6 + 1196 | 0 | 0, $7 | 0, HEAP32[($6 + 1236 | 0) >> 2] | 0 | 0);
|
|
HEAPF32[($6 + 1192 | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($6 + 1232 | 0) >> 2]));
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 1212 | 0 | 0, $6 + 1196 | 0 | 0, $6 + 1192 | 0 | 0);
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__operator_20float__28_29($7 | 0) | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$31 = Math_fround(HEAPF32[(btVector3__operator_20float__28_29($7 | 0) | 0) >> 2]);
|
|
$35 = btVector3__operator_20float__28_29($6 + 1212 | 0 | 0) | 0;
|
|
HEAPF32[$35 >> 2] = Math_fround(Math_fround(HEAPF32[$35 >> 2]) / $31);
|
|
}
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($7 | 0) | 0) + 4 | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$46 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($7 | 0) | 0) + 4 | 0) >> 2]);
|
|
$50 = btVector3__operator_20float__28_29($6 + 1212 | 0 | 0) | 0;
|
|
HEAPF32[($50 + 4 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($50 + 4 | 0) >> 2]) / $46);
|
|
}
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($7 | 0) | 0) + 8 | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$61 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($7 | 0) | 0) + 8 | 0) >> 2]);
|
|
$65 = btVector3__operator_20float__28_29($6 + 1212 | 0 | 0) | 0;
|
|
HEAPF32[($65 + 8 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($65 + 8 | 0) >> 2]) / $61);
|
|
}
|
|
$76 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 1212 | 0 | 0) | 0) + ((HEAP32[($7 + 108 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!(Math_fround(Math_abs($76)) < Math_fround(2147483648.0))) {
|
|
break label$5
|
|
}
|
|
$82 = ~~$76;
|
|
break label$4;
|
|
}
|
|
$82 = -2147483648;
|
|
}
|
|
$84 = $82;
|
|
$93 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 1212 | 0 | 0) | 0) + ((HEAP32[($7 + 112 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!(Math_fround(Math_abs($93)) < Math_fround(2147483648.0))) {
|
|
break label$7
|
|
}
|
|
$99 = ~~$93;
|
|
break label$6;
|
|
}
|
|
$99 = -2147483648;
|
|
}
|
|
$101 = $99;
|
|
$110 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 1212 | 0 | 0) | 0) + ((HEAP32[($7 + 104 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
label$8 : {
|
|
label$9 : {
|
|
if (!(Math_fround(Math_abs($110)) < Math_fround(2147483648.0))) {
|
|
break label$9
|
|
}
|
|
$116 = ~~$110;
|
|
break label$8;
|
|
}
|
|
$116 = -2147483648;
|
|
}
|
|
btConvexHullInternal__Point32__Point32_28int_2c_20int_2c_20int_29($6 + 1176 | 0 | 0, $84 | 0, $101 | 0, $116 | 0) | 0;
|
|
label$10 : {
|
|
label$11 : {
|
|
if (!((btConvexHullInternal__Point32__isZero_28_29($6 + 1176 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
HEAP8[($6 + 1247 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$10;
|
|
}
|
|
btConvexHullInternal__Face__getNormal_28_29($6 + 1152 | 0 | 0, HEAP32[($6 + 1236 | 0) >> 2] | 0 | 0);
|
|
i64toi32_i32$0 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const((HEAP32[($6 + 1236 | 0) >> 2] | 0) + 12 | 0 | 0, $6 + 1152 | 0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
$1619 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6;
|
|
HEAP32[($6 + 1144 | 0) >> 2] = $1619;
|
|
HEAP32[($6 + 1148 | 0) >> 2] = i64toi32_i32$1;
|
|
btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const_1($6 + 1128 | 0 | 0, (HEAP32[($6 + 1236 | 0) >> 2] | 0) + 12 | 0 | 0, $6 + 1176 | 0 | 0);
|
|
i64toi32_i32$1 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const($6 + 1128 | 0 | 0, $6 + 1152 | 0 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
$1648 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 1120 | 0) >> 2] = $1648;
|
|
HEAP32[($6 + 1124 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 1120 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 1124 | 0) >> 2] | 0;
|
|
$158 = i64toi32_i32$0;
|
|
$158$hi = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 1144 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 1148 | 0) >> 2] | 0;
|
|
$159$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $158$hi;
|
|
i64toi32_i32$0 = $159$hi;
|
|
i64toi32_i32$0 = $158$hi;
|
|
i64toi32_i32$0 = $159$hi;
|
|
$1656 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = $158$hi;
|
|
i64toi32_i32$2 = $158;
|
|
i64toi32_i32$1 = $159$hi;
|
|
i64toi32_i32$3 = $1656;
|
|
if ((i64toi32_i32$0 | 0) < (i64toi32_i32$1 | 0)) {
|
|
$206 = 1
|
|
} else {
|
|
if ((i64toi32_i32$0 | 0) <= (i64toi32_i32$1 | 0)) {
|
|
if (i64toi32_i32$2 >>> 0 > i64toi32_i32$3 >>> 0) {
|
|
$207 = 0
|
|
} else {
|
|
$207 = 1
|
|
}
|
|
$208 = $207;
|
|
} else {
|
|
$208 = 0
|
|
}
|
|
$206 = $208;
|
|
}
|
|
label$12 : {
|
|
if ($206 & 1 | 0) {
|
|
break label$12
|
|
}
|
|
__assert_fail(67544 | 0, 72732 | 0, 2250 | 0, 82177 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
i64toi32_i32$3 = $6;
|
|
i64toi32_i32$2 = HEAP32[($6 + 1120 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 1124 | 0) >> 2] | 0;
|
|
$169 = i64toi32_i32$2;
|
|
$169$hi = i64toi32_i32$0;
|
|
i64toi32_i32$3 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 1144 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 1148 | 0) >> 2] | 0;
|
|
$170$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $169$hi;
|
|
i64toi32_i32$2 = $170$hi;
|
|
i64toi32_i32$2 = $169$hi;
|
|
i64toi32_i32$2 = $170$hi;
|
|
$1673 = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $169$hi;
|
|
i64toi32_i32$3 = $169;
|
|
i64toi32_i32$0 = $170$hi;
|
|
i64toi32_i32$1 = $1673;
|
|
if ((i64toi32_i32$2 | 0) > (i64toi32_i32$0 | 0)) {
|
|
$209 = 1
|
|
} else {
|
|
if ((i64toi32_i32$2 | 0) >= (i64toi32_i32$0 | 0)) {
|
|
if (i64toi32_i32$3 >>> 0 < i64toi32_i32$1 >>> 0) {
|
|
$210 = 0
|
|
} else {
|
|
$210 = 1
|
|
}
|
|
$211 = $210;
|
|
} else {
|
|
$211 = 0
|
|
}
|
|
$209 = $211;
|
|
}
|
|
label$13 : {
|
|
if (!($209 & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
HEAP8[($6 + 1247 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$10;
|
|
}
|
|
HEAP32[($6 + 1116 | 0) >> 2] = 0;
|
|
HEAP32[($6 + 1112 | 0) >> 2] = HEAP32[((HEAP32[((HEAP32[($6 + 1236 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
btConvexHullInternal__Vertex__dot_28btConvexHullInternal__Point64_20const__29_20const($6 + 1072 | 0 | 0, HEAP32[((HEAP32[($6 + 1236 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0, $6 + 1152 | 0 | 0);
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$3 = HEAP32[($6 + 1120 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 1124 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btConvexHullInternal__Rational128__compare_28long_20long_29_20const($6 + 1072 | 0 | 0, i64toi32_i32$3 | 0, i64toi32_i32$2 | 0) | 0), HEAP32[(wasm2js_i32$0 + 1068 | 0) >> 2] = wasm2js_i32$1;
|
|
label$14 : {
|
|
label$15 : {
|
|
if (!((HEAP32[($6 + 1068 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
HEAP32[($6 + 1064 | 0) >> 2] = HEAP32[($6 + 1112 | 0) >> 2] | 0;
|
|
label$16 : while (1) {
|
|
btConvexHullInternal__Vertex__dot_28btConvexHullInternal__Point64_20const__29_20const($6 + 1024 | 0 | 0, HEAP32[((HEAP32[($6 + 1064 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0, $6 + 1152 | 0 | 0);
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$2 = HEAP32[($6 + 1144 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($6 + 1148 | 0) >> 2] | 0;
|
|
label$17 : {
|
|
if ((btConvexHullInternal__Rational128__compare_28long_20long_29_20const($6 + 1024 | 0 | 0, i64toi32_i32$2 | 0, i64toi32_i32$3 | 0) | 0 | 0) <= (0 | 0) & 1 | 0) {
|
|
break label$17
|
|
}
|
|
__assert_fail(86125 | 0, 72732 | 0, 2278 | 0, 82177 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$18 : {
|
|
label$19 : {
|
|
if (!((btConvexHullInternal__Rational128__compare_28btConvexHullInternal__Rational128_20const__29_20const($6 + 1024 | 0 | 0, $6 + 1072 | 0 | 0) | 0 | 0) < (0 | 0) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$3 = HEAP32[($6 + 1120 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 1124 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btConvexHullInternal__Rational128__compare_28long_20long_29_20const($6 + 1024 | 0 | 0, i64toi32_i32$3 | 0, i64toi32_i32$2 | 0) | 0), HEAP32[(wasm2js_i32$0 + 1020 | 0) >> 2] = wasm2js_i32$1;
|
|
$245 = 29;
|
|
i64toi32_i32$1 = ($6 + 1024 | 0) + $245 | 0;
|
|
i64toi32_i32$2 = HEAPU8[i64toi32_i32$1 >> 0] | 0 | ((HEAPU8[(i64toi32_i32$1 + 1 | 0) >> 0] | 0) << 8 | 0) | 0 | ((HEAPU8[(i64toi32_i32$1 + 2 | 0) >> 0] | 0) << 16 | 0 | ((HEAPU8[(i64toi32_i32$1 + 3 | 0) >> 0] | 0) << 24 | 0) | 0) | 0;
|
|
i64toi32_i32$3 = HEAPU8[(i64toi32_i32$1 + 4 | 0) >> 0] | 0 | ((HEAPU8[(i64toi32_i32$1 + 5 | 0) >> 0] | 0) << 8 | 0) | 0 | ((HEAPU8[(i64toi32_i32$1 + 6 | 0) >> 0] | 0) << 16 | 0 | ((HEAPU8[(i64toi32_i32$1 + 7 | 0) >> 0] | 0) << 24 | 0) | 0) | 0;
|
|
$1821 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = ($6 + 1072 | 0) + $245 | 0;
|
|
$204 = $1821;
|
|
HEAP8[i64toi32_i32$2 >> 0] = $204;
|
|
HEAP8[(i64toi32_i32$2 + 1 | 0) >> 0] = $204 >>> 8 | 0;
|
|
HEAP8[(i64toi32_i32$2 + 2 | 0) >> 0] = $204 >>> 16 | 0;
|
|
HEAP8[(i64toi32_i32$2 + 3 | 0) >> 0] = $204 >>> 24 | 0;
|
|
HEAP8[(i64toi32_i32$2 + 4 | 0) >> 0] = i64toi32_i32$3;
|
|
HEAP8[(i64toi32_i32$2 + 5 | 0) >> 0] = i64toi32_i32$3 >>> 8 | 0;
|
|
HEAP8[(i64toi32_i32$2 + 6 | 0) >> 0] = i64toi32_i32$3 >>> 16 | 0;
|
|
HEAP8[(i64toi32_i32$2 + 7 | 0) >> 0] = i64toi32_i32$3 >>> 24 | 0;
|
|
$253 = 24;
|
|
i64toi32_i32$1 = ($6 + 1024 | 0) + $253 | 0;
|
|
i64toi32_i32$3 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$1837 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = ($6 + 1072 | 0) + $253 | 0;
|
|
HEAP32[i64toi32_i32$3 >> 2] = $1837;
|
|
HEAP32[(i64toi32_i32$3 + 4 | 0) >> 2] = i64toi32_i32$2;
|
|
$261 = 16;
|
|
i64toi32_i32$1 = ($6 + 1024 | 0) + $261 | 0;
|
|
i64toi32_i32$2 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$1853 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = ($6 + 1072 | 0) + $261 | 0;
|
|
HEAP32[i64toi32_i32$2 >> 2] = $1853;
|
|
HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] = i64toi32_i32$3;
|
|
$269 = 8;
|
|
i64toi32_i32$1 = ($6 + 1024 | 0) + $269 | 0;
|
|
i64toi32_i32$3 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$1869 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = ($6 + 1072 | 0) + $269 | 0;
|
|
HEAP32[i64toi32_i32$3 >> 2] = $1869;
|
|
HEAP32[(i64toi32_i32$3 + 4 | 0) >> 2] = i64toi32_i32$2;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$2 = HEAP32[($6 + 1024 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($6 + 1028 | 0) >> 2] | 0;
|
|
$1873 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $6;
|
|
HEAP32[($6 + 1072 | 0) >> 2] = $1873;
|
|
HEAP32[($6 + 1076 | 0) >> 2] = i64toi32_i32$3;
|
|
HEAP32[($6 + 1064 | 0) >> 2] = HEAP32[((HEAP32[($6 + 1064 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 1112 | 0) >> 2] = HEAP32[($6 + 1064 | 0) >> 2] | 0;
|
|
label$20 : {
|
|
if (!((HEAP32[($6 + 1020 | 0) >> 2] | 0 | 0) < (0 | 0) & 1 | 0)) {
|
|
break label$20
|
|
}
|
|
HEAP32[($6 + 1116 | 0) >> 2] = HEAP32[($6 + 1064 | 0) >> 2] | 0;
|
|
break label$18;
|
|
}
|
|
HEAP32[($6 + 1068 | 0) >> 2] = HEAP32[($6 + 1020 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($6 + 1064 | 0) >> 2] = HEAP32[((HEAP32[($6 + 1064 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
if ((HEAP32[($6 + 1064 | 0) >> 2] | 0 | 0) != (HEAP32[($6 + 1112 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
continue label$16
|
|
}
|
|
}
|
|
break label$16;
|
|
};
|
|
label$21 : {
|
|
if ((HEAP32[($6 + 1116 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$21
|
|
}
|
|
HEAP8[($6 + 1247 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$10;
|
|
}
|
|
break label$14;
|
|
}
|
|
HEAP32[($6 + 1016 | 0) >> 2] = HEAP32[($6 + 1112 | 0) >> 2] | 0;
|
|
label$22 : while (1) {
|
|
btConvexHullInternal__Vertex__dot_28btConvexHullInternal__Point64_20const__29_20const($6 + 976 | 0 | 0, HEAP32[((HEAP32[($6 + 1016 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0, $6 + 1152 | 0 | 0);
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$3 = HEAP32[($6 + 1144 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 1148 | 0) >> 2] | 0;
|
|
label$23 : {
|
|
if ((btConvexHullInternal__Rational128__compare_28long_20long_29_20const($6 + 976 | 0 | 0, i64toi32_i32$3 | 0, i64toi32_i32$2 | 0) | 0 | 0) <= (0 | 0) & 1 | 0) {
|
|
break label$23
|
|
}
|
|
__assert_fail(86125 | 0, 72732 | 0, 2314 | 0, 82177 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$24 : {
|
|
label$25 : {
|
|
if (!((btConvexHullInternal__Rational128__compare_28btConvexHullInternal__Rational128_20const__29_20const($6 + 976 | 0 | 0, $6 + 1072 | 0 | 0) | 0 | 0) > (0 | 0) & 1 | 0)) {
|
|
break label$25
|
|
}
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$2 = HEAP32[($6 + 1120 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($6 + 1124 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btConvexHullInternal__Rational128__compare_28long_20long_29_20const($6 + 976 | 0 | 0, i64toi32_i32$2 | 0, i64toi32_i32$3 | 0) | 0), HEAP32[(wasm2js_i32$0 + 1068 | 0) >> 2] = wasm2js_i32$1;
|
|
label$26 : {
|
|
if (!((HEAP32[($6 + 1068 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$26
|
|
}
|
|
HEAP32[($6 + 1116 | 0) >> 2] = HEAP32[($6 + 1016 | 0) >> 2] | 0;
|
|
break label$24;
|
|
}
|
|
$359 = 29;
|
|
i64toi32_i32$1 = ($6 + 976 | 0) + $359 | 0;
|
|
i64toi32_i32$3 = HEAPU8[i64toi32_i32$1 >> 0] | 0 | ((HEAPU8[(i64toi32_i32$1 + 1 | 0) >> 0] | 0) << 8 | 0) | 0 | ((HEAPU8[(i64toi32_i32$1 + 2 | 0) >> 0] | 0) << 16 | 0 | ((HEAPU8[(i64toi32_i32$1 + 3 | 0) >> 0] | 0) << 24 | 0) | 0) | 0;
|
|
i64toi32_i32$2 = HEAPU8[(i64toi32_i32$1 + 4 | 0) >> 0] | 0 | ((HEAPU8[(i64toi32_i32$1 + 5 | 0) >> 0] | 0) << 8 | 0) | 0 | ((HEAPU8[(i64toi32_i32$1 + 6 | 0) >> 0] | 0) << 16 | 0 | ((HEAPU8[(i64toi32_i32$1 + 7 | 0) >> 0] | 0) << 24 | 0) | 0) | 0;
|
|
$2043 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = ($6 + 1072 | 0) + $359 | 0;
|
|
$205 = $2043;
|
|
HEAP8[i64toi32_i32$3 >> 0] = $205;
|
|
HEAP8[(i64toi32_i32$3 + 1 | 0) >> 0] = $205 >>> 8 | 0;
|
|
HEAP8[(i64toi32_i32$3 + 2 | 0) >> 0] = $205 >>> 16 | 0;
|
|
HEAP8[(i64toi32_i32$3 + 3 | 0) >> 0] = $205 >>> 24 | 0;
|
|
HEAP8[(i64toi32_i32$3 + 4 | 0) >> 0] = i64toi32_i32$2;
|
|
HEAP8[(i64toi32_i32$3 + 5 | 0) >> 0] = i64toi32_i32$2 >>> 8 | 0;
|
|
HEAP8[(i64toi32_i32$3 + 6 | 0) >> 0] = i64toi32_i32$2 >>> 16 | 0;
|
|
HEAP8[(i64toi32_i32$3 + 7 | 0) >> 0] = i64toi32_i32$2 >>> 24 | 0;
|
|
$367 = 24;
|
|
i64toi32_i32$1 = ($6 + 976 | 0) + $367 | 0;
|
|
i64toi32_i32$2 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$2059 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = ($6 + 1072 | 0) + $367 | 0;
|
|
HEAP32[i64toi32_i32$2 >> 2] = $2059;
|
|
HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] = i64toi32_i32$3;
|
|
$375 = 16;
|
|
i64toi32_i32$1 = ($6 + 976 | 0) + $375 | 0;
|
|
i64toi32_i32$3 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$2075 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = ($6 + 1072 | 0) + $375 | 0;
|
|
HEAP32[i64toi32_i32$3 >> 2] = $2075;
|
|
HEAP32[(i64toi32_i32$3 + 4 | 0) >> 2] = i64toi32_i32$2;
|
|
$383 = 8;
|
|
i64toi32_i32$1 = ($6 + 976 | 0) + $383 | 0;
|
|
i64toi32_i32$2 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$2091 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = ($6 + 1072 | 0) + $383 | 0;
|
|
HEAP32[i64toi32_i32$2 >> 2] = $2091;
|
|
HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] = i64toi32_i32$3;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$3 = HEAP32[($6 + 976 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 980 | 0) >> 2] | 0;
|
|
$2095 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $6;
|
|
HEAP32[($6 + 1072 | 0) >> 2] = $2095;
|
|
HEAP32[($6 + 1076 | 0) >> 2] = i64toi32_i32$2;
|
|
HEAP32[($6 + 1016 | 0) >> 2] = HEAP32[((HEAP32[($6 + 1016 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 1112 | 0) >> 2] = HEAP32[($6 + 1016 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($6 + 1016 | 0) >> 2] = HEAP32[((HEAP32[($6 + 1016 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
if ((HEAP32[($6 + 1016 | 0) >> 2] | 0 | 0) != (HEAP32[($6 + 1112 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
continue label$22
|
|
}
|
|
}
|
|
break label$22;
|
|
};
|
|
label$27 : {
|
|
if ((HEAP32[($6 + 1116 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$27
|
|
}
|
|
HEAP8[($6 + 1247 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$10;
|
|
}
|
|
}
|
|
label$28 : {
|
|
if (HEAP32[($6 + 1068 | 0) >> 2] | 0) {
|
|
break label$28
|
|
}
|
|
HEAP32[($6 + 972 | 0) >> 2] = HEAP32[(HEAP32[((HEAP32[($6 + 1116 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
label$29 : {
|
|
label$30 : while (1) {
|
|
btConvexHullInternal__Vertex__dot_28btConvexHullInternal__Point64_20const__29_20const($6 + 928 | 0 | 0, HEAP32[((HEAP32[($6 + 972 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0, $6 + 1152 | 0 | 0);
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$2 = HEAP32[($6 + 1120 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($6 + 1124 | 0) >> 2] | 0;
|
|
if (!((btConvexHullInternal__Rational128__compare_28long_20long_29_20const($6 + 928 | 0 | 0, i64toi32_i32$2 | 0, i64toi32_i32$3 | 0) | 0 | 0) <= (0 | 0) & 1 | 0)) {
|
|
break label$29
|
|
}
|
|
HEAP32[($6 + 972 | 0) >> 2] = HEAP32[(HEAP32[($6 + 972 | 0) >> 2] | 0) >> 2] | 0;
|
|
label$31 : {
|
|
if (!((HEAP32[($6 + 972 | 0) >> 2] | 0 | 0) == (HEAP32[((HEAP32[($6 + 1116 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$31
|
|
}
|
|
HEAP8[($6 + 1247 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$10;
|
|
}
|
|
continue label$30;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($6 + 924 | 0) >> 2] = 0;
|
|
HEAP32[($6 + 920 | 0) >> 2] = 0;
|
|
HEAP32[($6 + 916 | 0) >> 2] = 0;
|
|
label$32 : while (1) {
|
|
label$33 : {
|
|
if (HEAP32[($6 + 1068 | 0) >> 2] | 0) {
|
|
break label$33
|
|
}
|
|
HEAP32[($6 + 912 | 0) >> 2] = HEAP32[(HEAP32[((HEAP32[($6 + 1116 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($6 + 1112 | 0) >> 2] = HEAP32[($6 + 912 | 0) >> 2] | 0;
|
|
label$34 : {
|
|
label$35 : while (1) {
|
|
btConvexHullInternal__Vertex__dot_28btConvexHullInternal__Point64_20const__29_20const($6 + 872 | 0 | 0, HEAP32[((HEAP32[($6 + 912 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0, $6 + 1152 | 0 | 0);
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$3 = HEAP32[($6 + 1120 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 1124 | 0) >> 2] | 0;
|
|
label$36 : {
|
|
if (!((btConvexHullInternal__Rational128__compare_28long_20long_29_20const($6 + 872 | 0 | 0, i64toi32_i32$3 | 0, i64toi32_i32$2 | 0) | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$36
|
|
}
|
|
break label$34;
|
|
}
|
|
HEAP32[($6 + 1116 | 0) >> 2] = HEAP32[((HEAP32[($6 + 912 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 912 | 0) >> 2] = HEAP32[(HEAP32[($6 + 912 | 0) >> 2] | 0) >> 2] | 0;
|
|
label$37 : {
|
|
if (!((HEAP32[($6 + 912 | 0) >> 2] | 0 | 0) == (HEAP32[($6 + 1112 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$37
|
|
}
|
|
HEAP8[($6 + 1247 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$10;
|
|
}
|
|
continue label$35;
|
|
};
|
|
}
|
|
}
|
|
label$38 : {
|
|
label$39 : {
|
|
label$40 : {
|
|
if ((HEAP32[($6 + 924 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$40
|
|
}
|
|
HEAP32[($6 + 924 | 0) >> 2] = HEAP32[($6 + 1116 | 0) >> 2] | 0;
|
|
break label$39;
|
|
}
|
|
label$41 : {
|
|
if (!((HEAP32[($6 + 1116 | 0) >> 2] | 0 | 0) == (HEAP32[($6 + 924 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$41
|
|
}
|
|
break label$38;
|
|
}
|
|
}
|
|
HEAP32[($6 + 868 | 0) >> 2] = HEAP32[($6 + 1068 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 864 | 0) >> 2] = HEAP32[($6 + 1116 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 860 | 0) >> 2] = HEAP32[($6 + 920 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 856 | 0) >> 2] = HEAP32[((HEAP32[($6 + 1116 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
label$42 : while (1) {
|
|
HEAP32[($6 + 856 | 0) >> 2] = HEAP32[((HEAP32[((HEAP32[($6 + 856 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
label$43 : {
|
|
if ((HEAP32[($6 + 856 | 0) >> 2] | 0 | 0) != (HEAP32[((HEAP32[($6 + 1116 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$43
|
|
}
|
|
__assert_fail(81402 | 0, 72732 | 0, 2446 | 0, 82177 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
btConvexHullInternal__Vertex__dot_28btConvexHullInternal__Point64_20const__29_20const($6 + 816 | 0 | 0, HEAP32[((HEAP32[($6 + 856 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0, $6 + 1152 | 0 | 0);
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$2 = HEAP32[($6 + 1120 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($6 + 1124 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btConvexHullInternal__Rational128__compare_28long_20long_29_20const($6 + 816 | 0 | 0, i64toi32_i32$2 | 0, i64toi32_i32$3 | 0) | 0), HEAP32[(wasm2js_i32$0 + 1068 | 0) >> 2] = wasm2js_i32$1;
|
|
label$44 : {
|
|
label$45 : {
|
|
if (!((HEAP32[($6 + 1068 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$45
|
|
}
|
|
HEAP32[($6 + 1116 | 0) >> 2] = HEAP32[($6 + 856 | 0) >> 2] | 0;
|
|
break label$44;
|
|
}
|
|
continue label$42;
|
|
}
|
|
break label$42;
|
|
};
|
|
label$46 : {
|
|
if (!((HEAP32[($6 + 1068 | 0) >> 2] | 0 | 0) > (0 | 0) & 1 | 0)) {
|
|
break label$46
|
|
}
|
|
HEAP32[($6 + 812 | 0) >> 2] = HEAP32[((HEAP32[($6 + 1116 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 856 | 0) >> 2] = HEAP32[((HEAP32[($6 + 1116 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
label$47 : {
|
|
label$48 : {
|
|
if (!((HEAP32[((HEAP32[($6 + 856 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) == (HEAP32[($6 + 856 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$48
|
|
}
|
|
HEAP32[((HEAP32[($6 + 812 | 0) >> 2] | 0) + 8 | 0) >> 2] = 0;
|
|
break label$47;
|
|
}
|
|
HEAP32[((HEAP32[($6 + 812 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[((HEAP32[($6 + 856 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
btConvexHullInternal__Edge__link_28btConvexHullInternal__Edge__29(HEAP32[((HEAP32[($6 + 856 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0, HEAP32[(HEAP32[($6 + 856 | 0) >> 2] | 0) >> 2] | 0 | 0);
|
|
btConvexHullInternal__Edge__link_28btConvexHullInternal__Edge__29(HEAP32[($6 + 856 | 0) >> 2] | 0 | 0, HEAP32[($6 + 856 | 0) >> 2] | 0 | 0);
|
|
}
|
|
btConvexHullInternal__Face__getNormal_28_29($6 + 784 | 0 | 0, HEAP32[((HEAP32[($6 + 1116 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0 | 0);
|
|
btConvexHullInternal__Face__getNormal_28_29($6 + 760 | 0 | 0, HEAP32[((HEAP32[((HEAP32[($6 + 1116 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0 | 0);
|
|
i64toi32_i32$3 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const((HEAP32[($6 + 1236 | 0) >> 2] | 0) + 28 | 0 | 0, $6 + 784 | 0 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$HIGH_BITS;
|
|
$2518 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $6;
|
|
HEAP32[($6 + 752 | 0) >> 2] = $2518;
|
|
HEAP32[($6 + 756 | 0) >> 2] = i64toi32_i32$2;
|
|
i64toi32_i32$2 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const((HEAP32[($6 + 1236 | 0) >> 2] | 0) + 44 | 0 | 0, $6 + 784 | 0 | 0) | 0;
|
|
i64toi32_i32$3 = i64toi32_i32$HIGH_BITS;
|
|
$2532 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $6;
|
|
HEAP32[($6 + 744 | 0) >> 2] = $2532;
|
|
HEAP32[($6 + 748 | 0) >> 2] = i64toi32_i32$3;
|
|
i64toi32_i32$3 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const((HEAP32[($6 + 1236 | 0) >> 2] | 0) + 28 | 0 | 0, $6 + 760 | 0 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$HIGH_BITS;
|
|
$2546 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $6;
|
|
HEAP32[($6 + 736 | 0) >> 2] = $2546;
|
|
HEAP32[($6 + 740 | 0) >> 2] = i64toi32_i32$2;
|
|
i64toi32_i32$2 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const((HEAP32[($6 + 1236 | 0) >> 2] | 0) + 44 | 0 | 0, $6 + 760 | 0 | 0) | 0;
|
|
i64toi32_i32$3 = i64toi32_i32$HIGH_BITS;
|
|
$2560 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $6;
|
|
HEAP32[($6 + 728 | 0) >> 2] = $2560;
|
|
HEAP32[($6 + 732 | 0) >> 2] = i64toi32_i32$3;
|
|
btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const($6 + 704 | 0 | 0, (HEAP32[((HEAP32[($6 + 1116 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0) + 12 | 0 | 0, $6 + 1128 | 0 | 0);
|
|
i64toi32_i32$3 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const($6 + 704 | 0 | 0, $6 + 784 | 0 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$HIGH_BITS;
|
|
$2591 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $6;
|
|
HEAP32[($6 + 720 | 0) >> 2] = $2591;
|
|
HEAP32[($6 + 724 | 0) >> 2] = i64toi32_i32$2;
|
|
btConvexHullInternal__Point32__operator__28btConvexHullInternal__Point32_20const__29_20const($6 + 680 | 0 | 0, (HEAP32[((HEAP32[((HEAP32[($6 + 1116 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0) + 12 | 0 | 0, $6 + 1128 | 0 | 0);
|
|
i64toi32_i32$2 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const($6 + 680 | 0 | 0, $6 + 760 | 0 | 0) | 0;
|
|
i64toi32_i32$3 = i64toi32_i32$HIGH_BITS;
|
|
$2624 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $6;
|
|
HEAP32[($6 + 696 | 0) >> 2] = $2624;
|
|
HEAP32[($6 + 700 | 0) >> 2] = i64toi32_i32$3;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$3 = HEAP32[($6 + 752 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 756 | 0) >> 2] | 0;
|
|
$651 = i64toi32_i32$3;
|
|
$651$hi = i64toi32_i32$2;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$2 = HEAP32[($6 + 728 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($6 + 732 | 0) >> 2] | 0;
|
|
$652$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $651$hi;
|
|
i64toi32_i32$3 = $652$hi;
|
|
$2635 = i64toi32_i32$2;
|
|
i64toi32_i32$3 = $651$hi;
|
|
i64toi32_i32$2 = $652$hi;
|
|
btConvexHullInternal__Int128__mul_28long_20long_2c_20long_20long_29($6 + 648 | 0 | 0, $651 | 0, i64toi32_i32$3 | 0, $2635 | 0, i64toi32_i32$2 | 0);
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$2 = HEAP32[($6 + 744 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($6 + 748 | 0) >> 2] | 0;
|
|
$656 = i64toi32_i32$2;
|
|
$656$hi = i64toi32_i32$3;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$3 = HEAP32[($6 + 736 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 740 | 0) >> 2] | 0;
|
|
$657$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $656$hi;
|
|
i64toi32_i32$2 = $657$hi;
|
|
$2646 = i64toi32_i32$3;
|
|
i64toi32_i32$2 = $656$hi;
|
|
i64toi32_i32$3 = $657$hi;
|
|
btConvexHullInternal__Int128__mul_28long_20long_2c_20long_20long_29($6 + 632 | 0 | 0, $656 | 0, i64toi32_i32$2 | 0, $2646 | 0, i64toi32_i32$3 | 0);
|
|
btConvexHullInternal__Int128__operator__28btConvexHullInternal__Int128_20const__29_20const_2($6 + 664 | 0 | 0, $6 + 648 | 0 | 0, $6 + 632 | 0 | 0);
|
|
label$49 : {
|
|
if (btConvexHullInternal__Int128__getSign_28_29_20const($6 + 664 | 0 | 0) | 0) {
|
|
break label$49
|
|
}
|
|
__assert_fail(86160 | 0, 72732 | 0, 2490 | 0, 82177 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btConvexHullInternal__Pool_btConvexHullInternal__Vertex___newObject_28_29($7 + 32 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 628 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[((HEAP32[($6 + 628 | 0) >> 2] | 0) + 100 | 0) >> 2] = -1;
|
|
HEAP32[((HEAP32[($6 + 628 | 0) >> 2] | 0) + 104 | 0) >> 2] = -1;
|
|
i64toi32_i32$2 = HEAP32[((HEAP32[($6 + 1236 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = i64toi32_i32$2 >> 31 | 0;
|
|
$688 = i64toi32_i32$2;
|
|
$688$hi = i64toi32_i32$3;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$3 = HEAP32[($6 + 720 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 724 | 0) >> 2] | 0;
|
|
$689$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $688$hi;
|
|
i64toi32_i32$2 = $689$hi;
|
|
$2698 = i64toi32_i32$3;
|
|
i64toi32_i32$2 = $688$hi;
|
|
i64toi32_i32$3 = $689$hi;
|
|
i64toi32_i32$3 = __wasm_i64_mul($688 | 0, i64toi32_i32$2 | 0, $2698 | 0, i64toi32_i32$3 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$HIGH_BITS;
|
|
$690 = i64toi32_i32$3;
|
|
$690$hi = i64toi32_i32$2;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$2 = HEAP32[($6 + 728 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($6 + 732 | 0) >> 2] | 0;
|
|
$691$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $690$hi;
|
|
i64toi32_i32$3 = $691$hi;
|
|
$2708 = i64toi32_i32$2;
|
|
i64toi32_i32$3 = $690$hi;
|
|
i64toi32_i32$2 = $691$hi;
|
|
btConvexHullInternal__Int128__mul_28long_20long_2c_20long_20long_29($6 + 480 | 0 | 0, $690 | 0, i64toi32_i32$3 | 0, $2708 | 0, i64toi32_i32$2 | 0);
|
|
i64toi32_i32$3 = HEAP32[((HEAP32[($6 + 1236 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$3 >> 31 | 0;
|
|
$698 = i64toi32_i32$3;
|
|
$698$hi = i64toi32_i32$2;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$2 = HEAP32[($6 + 696 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($6 + 700 | 0) >> 2] | 0;
|
|
$699$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $698$hi;
|
|
i64toi32_i32$3 = $699$hi;
|
|
$2719 = i64toi32_i32$2;
|
|
i64toi32_i32$3 = $698$hi;
|
|
i64toi32_i32$2 = $699$hi;
|
|
i64toi32_i32$2 = __wasm_i64_mul($698 | 0, i64toi32_i32$3 | 0, $2719 | 0, i64toi32_i32$2 | 0) | 0;
|
|
i64toi32_i32$3 = i64toi32_i32$HIGH_BITS;
|
|
$700 = i64toi32_i32$2;
|
|
$700$hi = i64toi32_i32$3;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$3 = HEAP32[($6 + 744 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 748 | 0) >> 2] | 0;
|
|
$701$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $700$hi;
|
|
i64toi32_i32$2 = $701$hi;
|
|
$2729 = i64toi32_i32$3;
|
|
i64toi32_i32$2 = $700$hi;
|
|
i64toi32_i32$3 = $701$hi;
|
|
btConvexHullInternal__Int128__mul_28long_20long_2c_20long_20long_29($6 + 464 | 0 | 0, $700 | 0, i64toi32_i32$2 | 0, $2729 | 0, i64toi32_i32$3 | 0);
|
|
btConvexHullInternal__Int128__operator__28btConvexHullInternal__Int128_20const__29_20const_2($6 + 496 | 0 | 0, $6 + 480 | 0 | 0, $6 + 464 | 0 | 0);
|
|
i64toi32_i32$2 = HEAP32[((HEAP32[($6 + 1236 | 0) >> 2] | 0) + 44 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = i64toi32_i32$2 >> 31 | 0;
|
|
$717 = i64toi32_i32$2;
|
|
$717$hi = i64toi32_i32$3;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$3 = HEAP32[($6 + 696 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 700 | 0) >> 2] | 0;
|
|
$718$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $717$hi;
|
|
i64toi32_i32$2 = $718$hi;
|
|
$2755 = i64toi32_i32$3;
|
|
i64toi32_i32$2 = $717$hi;
|
|
i64toi32_i32$3 = $718$hi;
|
|
i64toi32_i32$3 = __wasm_i64_mul($717 | 0, i64toi32_i32$2 | 0, $2755 | 0, i64toi32_i32$3 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$HIGH_BITS;
|
|
$719 = i64toi32_i32$3;
|
|
$719$hi = i64toi32_i32$2;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$2 = HEAP32[($6 + 752 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($6 + 756 | 0) >> 2] | 0;
|
|
$720$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $719$hi;
|
|
i64toi32_i32$3 = $720$hi;
|
|
$2765 = i64toi32_i32$2;
|
|
i64toi32_i32$3 = $719$hi;
|
|
i64toi32_i32$2 = $720$hi;
|
|
btConvexHullInternal__Int128__mul_28long_20long_2c_20long_20long_29($6 + 448 | 0 | 0, $719 | 0, i64toi32_i32$3 | 0, $2765 | 0, i64toi32_i32$2 | 0);
|
|
btConvexHullInternal__Int128__operator__28btConvexHullInternal__Int128_20const__29_20const($6 + 512 | 0 | 0, $6 + 496 | 0 | 0, $6 + 448 | 0 | 0);
|
|
i64toi32_i32$3 = HEAP32[((HEAP32[($6 + 1236 | 0) >> 2] | 0) + 44 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$3 >> 31 | 0;
|
|
$736 = i64toi32_i32$3;
|
|
$736$hi = i64toi32_i32$2;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$2 = HEAP32[($6 + 720 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($6 + 724 | 0) >> 2] | 0;
|
|
$737$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $736$hi;
|
|
i64toi32_i32$3 = $737$hi;
|
|
$2791 = i64toi32_i32$2;
|
|
i64toi32_i32$3 = $736$hi;
|
|
i64toi32_i32$2 = $737$hi;
|
|
i64toi32_i32$2 = __wasm_i64_mul($736 | 0, i64toi32_i32$3 | 0, $2791 | 0, i64toi32_i32$2 | 0) | 0;
|
|
i64toi32_i32$3 = i64toi32_i32$HIGH_BITS;
|
|
$738 = i64toi32_i32$2;
|
|
$738$hi = i64toi32_i32$3;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$3 = HEAP32[($6 + 736 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 740 | 0) >> 2] | 0;
|
|
$739$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $738$hi;
|
|
i64toi32_i32$2 = $739$hi;
|
|
$2801 = i64toi32_i32$3;
|
|
i64toi32_i32$2 = $738$hi;
|
|
i64toi32_i32$3 = $739$hi;
|
|
btConvexHullInternal__Int128__mul_28long_20long_2c_20long_20long_29($6 + 432 | 0 | 0, $738 | 0, i64toi32_i32$2 | 0, $2801 | 0, i64toi32_i32$3 | 0);
|
|
btConvexHullInternal__Int128__operator__28btConvexHullInternal__Int128_20const__29_20const_2($6 + 528 | 0 | 0, $6 + 512 | 0 | 0, $6 + 432 | 0 | 0);
|
|
i64toi32_i32$2 = HEAP32[($6 + 1128 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = i64toi32_i32$2 >> 31 | 0;
|
|
btConvexHullInternal__Int128__operator__28long_20long_29_20const($6 + 416 | 0 | 0, $6 + 664 | 0 | 0, i64toi32_i32$2 | 0, i64toi32_i32$3 | 0);
|
|
btConvexHullInternal__Int128__operator__28btConvexHullInternal__Int128_20const__29_20const($6 + 544 | 0 | 0, $6 + 528 | 0 | 0, $6 + 416 | 0 | 0);
|
|
i64toi32_i32$2 = HEAP32[((HEAP32[($6 + 1236 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = i64toi32_i32$2 >> 31 | 0;
|
|
$773 = i64toi32_i32$2;
|
|
$773$hi = i64toi32_i32$3;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$3 = HEAP32[($6 + 720 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 724 | 0) >> 2] | 0;
|
|
$774$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $773$hi;
|
|
i64toi32_i32$2 = $774$hi;
|
|
$2858 = i64toi32_i32$3;
|
|
i64toi32_i32$2 = $773$hi;
|
|
i64toi32_i32$3 = $774$hi;
|
|
i64toi32_i32$3 = __wasm_i64_mul($773 | 0, i64toi32_i32$2 | 0, $2858 | 0, i64toi32_i32$3 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$HIGH_BITS;
|
|
$775 = i64toi32_i32$3;
|
|
$775$hi = i64toi32_i32$2;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$2 = HEAP32[($6 + 728 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($6 + 732 | 0) >> 2] | 0;
|
|
$776$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $775$hi;
|
|
i64toi32_i32$3 = $776$hi;
|
|
$2868 = i64toi32_i32$2;
|
|
i64toi32_i32$3 = $775$hi;
|
|
i64toi32_i32$2 = $776$hi;
|
|
btConvexHullInternal__Int128__mul_28long_20long_2c_20long_20long_29($6 + 336 | 0 | 0, $775 | 0, i64toi32_i32$3 | 0, $2868 | 0, i64toi32_i32$2 | 0);
|
|
i64toi32_i32$3 = HEAP32[((HEAP32[($6 + 1236 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$3 >> 31 | 0;
|
|
$783 = i64toi32_i32$3;
|
|
$783$hi = i64toi32_i32$2;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$2 = HEAP32[($6 + 696 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($6 + 700 | 0) >> 2] | 0;
|
|
$784$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $783$hi;
|
|
i64toi32_i32$3 = $784$hi;
|
|
$2879 = i64toi32_i32$2;
|
|
i64toi32_i32$3 = $783$hi;
|
|
i64toi32_i32$2 = $784$hi;
|
|
i64toi32_i32$2 = __wasm_i64_mul($783 | 0, i64toi32_i32$3 | 0, $2879 | 0, i64toi32_i32$2 | 0) | 0;
|
|
i64toi32_i32$3 = i64toi32_i32$HIGH_BITS;
|
|
$785 = i64toi32_i32$2;
|
|
$785$hi = i64toi32_i32$3;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$3 = HEAP32[($6 + 744 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 748 | 0) >> 2] | 0;
|
|
$786$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $785$hi;
|
|
i64toi32_i32$2 = $786$hi;
|
|
$2889 = i64toi32_i32$3;
|
|
i64toi32_i32$2 = $785$hi;
|
|
i64toi32_i32$3 = $786$hi;
|
|
btConvexHullInternal__Int128__mul_28long_20long_2c_20long_20long_29($6 + 320 | 0 | 0, $785 | 0, i64toi32_i32$2 | 0, $2889 | 0, i64toi32_i32$3 | 0);
|
|
btConvexHullInternal__Int128__operator__28btConvexHullInternal__Int128_20const__29_20const_2($6 + 352 | 0 | 0, $6 + 336 | 0 | 0, $6 + 320 | 0 | 0);
|
|
i64toi32_i32$2 = HEAP32[((HEAP32[($6 + 1236 | 0) >> 2] | 0) + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = i64toi32_i32$2 >> 31 | 0;
|
|
$802 = i64toi32_i32$2;
|
|
$802$hi = i64toi32_i32$3;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$3 = HEAP32[($6 + 696 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 700 | 0) >> 2] | 0;
|
|
$803$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $802$hi;
|
|
i64toi32_i32$2 = $803$hi;
|
|
$2915 = i64toi32_i32$3;
|
|
i64toi32_i32$2 = $802$hi;
|
|
i64toi32_i32$3 = $803$hi;
|
|
i64toi32_i32$3 = __wasm_i64_mul($802 | 0, i64toi32_i32$2 | 0, $2915 | 0, i64toi32_i32$3 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$HIGH_BITS;
|
|
$804 = i64toi32_i32$3;
|
|
$804$hi = i64toi32_i32$2;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$2 = HEAP32[($6 + 752 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($6 + 756 | 0) >> 2] | 0;
|
|
$805$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $804$hi;
|
|
i64toi32_i32$3 = $805$hi;
|
|
$2925 = i64toi32_i32$2;
|
|
i64toi32_i32$3 = $804$hi;
|
|
i64toi32_i32$2 = $805$hi;
|
|
btConvexHullInternal__Int128__mul_28long_20long_2c_20long_20long_29($6 + 304 | 0 | 0, $804 | 0, i64toi32_i32$3 | 0, $2925 | 0, i64toi32_i32$2 | 0);
|
|
btConvexHullInternal__Int128__operator__28btConvexHullInternal__Int128_20const__29_20const($6 + 368 | 0 | 0, $6 + 352 | 0 | 0, $6 + 304 | 0 | 0);
|
|
i64toi32_i32$3 = HEAP32[((HEAP32[($6 + 1236 | 0) >> 2] | 0) + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$3 >> 31 | 0;
|
|
$821 = i64toi32_i32$3;
|
|
$821$hi = i64toi32_i32$2;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$2 = HEAP32[($6 + 720 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($6 + 724 | 0) >> 2] | 0;
|
|
$822$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $821$hi;
|
|
i64toi32_i32$3 = $822$hi;
|
|
$2951 = i64toi32_i32$2;
|
|
i64toi32_i32$3 = $821$hi;
|
|
i64toi32_i32$2 = $822$hi;
|
|
i64toi32_i32$2 = __wasm_i64_mul($821 | 0, i64toi32_i32$3 | 0, $2951 | 0, i64toi32_i32$2 | 0) | 0;
|
|
i64toi32_i32$3 = i64toi32_i32$HIGH_BITS;
|
|
$823 = i64toi32_i32$2;
|
|
$823$hi = i64toi32_i32$3;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$3 = HEAP32[($6 + 736 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 740 | 0) >> 2] | 0;
|
|
$824$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $823$hi;
|
|
i64toi32_i32$2 = $824$hi;
|
|
$2961 = i64toi32_i32$3;
|
|
i64toi32_i32$2 = $823$hi;
|
|
i64toi32_i32$3 = $824$hi;
|
|
btConvexHullInternal__Int128__mul_28long_20long_2c_20long_20long_29($6 + 288 | 0 | 0, $823 | 0, i64toi32_i32$2 | 0, $2961 | 0, i64toi32_i32$3 | 0);
|
|
btConvexHullInternal__Int128__operator__28btConvexHullInternal__Int128_20const__29_20const_2($6 + 384 | 0 | 0, $6 + 368 | 0 | 0, $6 + 288 | 0 | 0);
|
|
i64toi32_i32$2 = HEAP32[($6 + 1132 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = i64toi32_i32$2 >> 31 | 0;
|
|
btConvexHullInternal__Int128__operator__28long_20long_29_20const($6 + 272 | 0 | 0, $6 + 664 | 0 | 0, i64toi32_i32$2 | 0, i64toi32_i32$3 | 0);
|
|
btConvexHullInternal__Int128__operator__28btConvexHullInternal__Int128_20const__29_20const($6 + 400 | 0 | 0, $6 + 384 | 0 | 0, $6 + 272 | 0 | 0);
|
|
i64toi32_i32$2 = HEAP32[((HEAP32[($6 + 1236 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = i64toi32_i32$2 >> 31 | 0;
|
|
$858 = i64toi32_i32$2;
|
|
$858$hi = i64toi32_i32$3;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$3 = HEAP32[($6 + 720 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 724 | 0) >> 2] | 0;
|
|
$859$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $858$hi;
|
|
i64toi32_i32$2 = $859$hi;
|
|
$3018 = i64toi32_i32$3;
|
|
i64toi32_i32$2 = $858$hi;
|
|
i64toi32_i32$3 = $859$hi;
|
|
i64toi32_i32$3 = __wasm_i64_mul($858 | 0, i64toi32_i32$2 | 0, $3018 | 0, i64toi32_i32$3 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$HIGH_BITS;
|
|
$860 = i64toi32_i32$3;
|
|
$860$hi = i64toi32_i32$2;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$2 = HEAP32[($6 + 728 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($6 + 732 | 0) >> 2] | 0;
|
|
$861$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $860$hi;
|
|
i64toi32_i32$3 = $861$hi;
|
|
$3028 = i64toi32_i32$2;
|
|
i64toi32_i32$3 = $860$hi;
|
|
i64toi32_i32$2 = $861$hi;
|
|
btConvexHullInternal__Int128__mul_28long_20long_2c_20long_20long_29($6 + 192 | 0 | 0, $860 | 0, i64toi32_i32$3 | 0, $3028 | 0, i64toi32_i32$2 | 0);
|
|
i64toi32_i32$3 = HEAP32[((HEAP32[($6 + 1236 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$3 >> 31 | 0;
|
|
$868 = i64toi32_i32$3;
|
|
$868$hi = i64toi32_i32$2;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$2 = HEAP32[($6 + 696 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($6 + 700 | 0) >> 2] | 0;
|
|
$869$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $868$hi;
|
|
i64toi32_i32$3 = $869$hi;
|
|
$3039 = i64toi32_i32$2;
|
|
i64toi32_i32$3 = $868$hi;
|
|
i64toi32_i32$2 = $869$hi;
|
|
i64toi32_i32$2 = __wasm_i64_mul($868 | 0, i64toi32_i32$3 | 0, $3039 | 0, i64toi32_i32$2 | 0) | 0;
|
|
i64toi32_i32$3 = i64toi32_i32$HIGH_BITS;
|
|
$870 = i64toi32_i32$2;
|
|
$870$hi = i64toi32_i32$3;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$3 = HEAP32[($6 + 744 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 748 | 0) >> 2] | 0;
|
|
$871$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $870$hi;
|
|
i64toi32_i32$2 = $871$hi;
|
|
$3049 = i64toi32_i32$3;
|
|
i64toi32_i32$2 = $870$hi;
|
|
i64toi32_i32$3 = $871$hi;
|
|
btConvexHullInternal__Int128__mul_28long_20long_2c_20long_20long_29($6 + 176 | 0 | 0, $870 | 0, i64toi32_i32$2 | 0, $3049 | 0, i64toi32_i32$3 | 0);
|
|
btConvexHullInternal__Int128__operator__28btConvexHullInternal__Int128_20const__29_20const_2($6 + 208 | 0 | 0, $6 + 192 | 0 | 0, $6 + 176 | 0 | 0);
|
|
i64toi32_i32$2 = HEAP32[((HEAP32[($6 + 1236 | 0) >> 2] | 0) + 52 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = i64toi32_i32$2 >> 31 | 0;
|
|
$887 = i64toi32_i32$2;
|
|
$887$hi = i64toi32_i32$3;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$3 = HEAP32[($6 + 696 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 700 | 0) >> 2] | 0;
|
|
$888$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $887$hi;
|
|
i64toi32_i32$2 = $888$hi;
|
|
$3075 = i64toi32_i32$3;
|
|
i64toi32_i32$2 = $887$hi;
|
|
i64toi32_i32$3 = $888$hi;
|
|
i64toi32_i32$3 = __wasm_i64_mul($887 | 0, i64toi32_i32$2 | 0, $3075 | 0, i64toi32_i32$3 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$HIGH_BITS;
|
|
$889 = i64toi32_i32$3;
|
|
$889$hi = i64toi32_i32$2;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$2 = HEAP32[($6 + 752 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($6 + 756 | 0) >> 2] | 0;
|
|
$890$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $889$hi;
|
|
i64toi32_i32$3 = $890$hi;
|
|
$3085 = i64toi32_i32$2;
|
|
i64toi32_i32$3 = $889$hi;
|
|
i64toi32_i32$2 = $890$hi;
|
|
btConvexHullInternal__Int128__mul_28long_20long_2c_20long_20long_29($6 + 160 | 0 | 0, $889 | 0, i64toi32_i32$3 | 0, $3085 | 0, i64toi32_i32$2 | 0);
|
|
btConvexHullInternal__Int128__operator__28btConvexHullInternal__Int128_20const__29_20const($6 + 224 | 0 | 0, $6 + 208 | 0 | 0, $6 + 160 | 0 | 0);
|
|
i64toi32_i32$3 = HEAP32[((HEAP32[($6 + 1236 | 0) >> 2] | 0) + 52 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$3 >> 31 | 0;
|
|
$906 = i64toi32_i32$3;
|
|
$906$hi = i64toi32_i32$2;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$2 = HEAP32[($6 + 720 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($6 + 724 | 0) >> 2] | 0;
|
|
$907$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $906$hi;
|
|
i64toi32_i32$3 = $907$hi;
|
|
$3111 = i64toi32_i32$2;
|
|
i64toi32_i32$3 = $906$hi;
|
|
i64toi32_i32$2 = $907$hi;
|
|
i64toi32_i32$2 = __wasm_i64_mul($906 | 0, i64toi32_i32$3 | 0, $3111 | 0, i64toi32_i32$2 | 0) | 0;
|
|
i64toi32_i32$3 = i64toi32_i32$HIGH_BITS;
|
|
$908 = i64toi32_i32$2;
|
|
$908$hi = i64toi32_i32$3;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$3 = HEAP32[($6 + 736 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 740 | 0) >> 2] | 0;
|
|
$909$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $908$hi;
|
|
i64toi32_i32$2 = $909$hi;
|
|
$3121 = i64toi32_i32$3;
|
|
i64toi32_i32$2 = $908$hi;
|
|
i64toi32_i32$3 = $909$hi;
|
|
btConvexHullInternal__Int128__mul_28long_20long_2c_20long_20long_29($6 + 144 | 0 | 0, $908 | 0, i64toi32_i32$2 | 0, $3121 | 0, i64toi32_i32$3 | 0);
|
|
btConvexHullInternal__Int128__operator__28btConvexHullInternal__Int128_20const__29_20const_2($6 + 240 | 0 | 0, $6 + 224 | 0 | 0, $6 + 144 | 0 | 0);
|
|
i64toi32_i32$2 = HEAP32[($6 + 1136 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = i64toi32_i32$2 >> 31 | 0;
|
|
btConvexHullInternal__Int128__operator__28long_20long_29_20const($6 + 128 | 0 | 0, $6 + 664 | 0 | 0, i64toi32_i32$2 | 0, i64toi32_i32$3 | 0);
|
|
btConvexHullInternal__Int128__operator__28btConvexHullInternal__Int128_20const__29_20const($6 + 256 | 0 | 0, $6 + 240 | 0 | 0, $6 + 128 | 0 | 0);
|
|
$940 = 8;
|
|
i64toi32_i32$1 = ($6 + 664 | 0) + $940 | 0;
|
|
i64toi32_i32$3 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$3183 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = ($6 + 112 | 0) + $940 | 0;
|
|
HEAP32[i64toi32_i32$3 >> 2] = $3183;
|
|
HEAP32[(i64toi32_i32$3 + 4 | 0) >> 2] = i64toi32_i32$2;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$2 = HEAP32[($6 + 664 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($6 + 668 | 0) >> 2] | 0;
|
|
$3187 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $6;
|
|
HEAP32[($6 + 112 | 0) >> 2] = $3187;
|
|
HEAP32[($6 + 116 | 0) >> 2] = i64toi32_i32$3;
|
|
$951 = 8;
|
|
i64toi32_i32$1 = ($6 + 544 | 0) + $951 | 0;
|
|
i64toi32_i32$3 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$3207 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = ($6 + 48 | 0) + $951 | 0;
|
|
HEAP32[i64toi32_i32$3 >> 2] = $3207;
|
|
HEAP32[(i64toi32_i32$3 + 4 | 0) >> 2] = i64toi32_i32$2;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$2 = HEAP32[($6 + 544 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($6 + 548 | 0) >> 2] | 0;
|
|
$3211 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $6;
|
|
HEAP32[($6 + 48 | 0) >> 2] = $3211;
|
|
HEAP32[($6 + 52 | 0) >> 2] = i64toi32_i32$3;
|
|
i64toi32_i32$1 = ($6 + 400 | 0) + $951 | 0;
|
|
i64toi32_i32$3 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$3227 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = ($6 + 32 | 0) + $951 | 0;
|
|
HEAP32[i64toi32_i32$3 >> 2] = $3227;
|
|
HEAP32[(i64toi32_i32$3 + 4 | 0) >> 2] = i64toi32_i32$2;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$2 = HEAP32[($6 + 400 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($6 + 404 | 0) >> 2] | 0;
|
|
$3231 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $6;
|
|
HEAP32[($6 + 32 | 0) >> 2] = $3231;
|
|
HEAP32[($6 + 36 | 0) >> 2] = i64toi32_i32$3;
|
|
i64toi32_i32$1 = ($6 + 256 | 0) + $951 | 0;
|
|
i64toi32_i32$3 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$3247 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = ($6 + 16 | 0) + $951 | 0;
|
|
HEAP32[i64toi32_i32$3 >> 2] = $3247;
|
|
HEAP32[(i64toi32_i32$3 + 4 | 0) >> 2] = i64toi32_i32$2;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$2 = HEAP32[($6 + 256 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($6 + 260 | 0) >> 2] | 0;
|
|
$3251 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $6;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3251;
|
|
HEAP32[($6 + 20 | 0) >> 2] = i64toi32_i32$3;
|
|
i64toi32_i32$1 = ($6 + 112 | 0) + $951 | 0;
|
|
i64toi32_i32$3 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$3264 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $6 + $951 | 0;
|
|
HEAP32[i64toi32_i32$3 >> 2] = $3264;
|
|
HEAP32[(i64toi32_i32$3 + 4 | 0) >> 2] = i64toi32_i32$2;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$2 = HEAP32[($6 + 112 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($6 + 116 | 0) >> 2] | 0;
|
|
$3268 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $6;
|
|
HEAP32[$6 >> 2] = $3268;
|
|
HEAP32[($6 + 4 | 0) >> 2] = i64toi32_i32$3;
|
|
btConvexHullInternal__PointR128__PointR128_28btConvexHullInternal__Int128_2c_20btConvexHullInternal__Int128_2c_20btConvexHullInternal__Int128_2c_20btConvexHullInternal__Int128_29($6 + 560 | 0 | 0, $6 + 48 | 0 | 0, $6 + 32 | 0 | 0, $6 + 16 | 0 | 0, $6 | 0) | 0;
|
|
$992 = (HEAP32[($6 + 628 | 0) >> 2] | 0) + 24 | 0;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$3 = HEAP32[($6 + 560 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 564 | 0) >> 2] | 0;
|
|
$3295 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $992;
|
|
HEAP32[i64toi32_i32$3 >> 2] = $3295;
|
|
HEAP32[(i64toi32_i32$3 + 4 | 0) >> 2] = i64toi32_i32$2;
|
|
$994 = 56;
|
|
i64toi32_i32$1 = ($6 + 560 | 0) + $994 | 0;
|
|
i64toi32_i32$2 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$3308 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $992 + $994 | 0;
|
|
HEAP32[i64toi32_i32$2 >> 2] = $3308;
|
|
HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] = i64toi32_i32$3;
|
|
$1000 = 48;
|
|
i64toi32_i32$1 = ($6 + 560 | 0) + $1000 | 0;
|
|
i64toi32_i32$3 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$3321 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $992 + $1000 | 0;
|
|
HEAP32[i64toi32_i32$3 >> 2] = $3321;
|
|
HEAP32[(i64toi32_i32$3 + 4 | 0) >> 2] = i64toi32_i32$2;
|
|
$1006 = 40;
|
|
i64toi32_i32$1 = ($6 + 560 | 0) + $1006 | 0;
|
|
i64toi32_i32$2 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$3334 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $992 + $1006 | 0;
|
|
HEAP32[i64toi32_i32$2 >> 2] = $3334;
|
|
HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] = i64toi32_i32$3;
|
|
$1012 = 32;
|
|
i64toi32_i32$1 = ($6 + 560 | 0) + $1012 | 0;
|
|
i64toi32_i32$3 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$3347 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $992 + $1012 | 0;
|
|
HEAP32[i64toi32_i32$3 >> 2] = $3347;
|
|
HEAP32[(i64toi32_i32$3 + 4 | 0) >> 2] = i64toi32_i32$2;
|
|
$1018 = 24;
|
|
i64toi32_i32$1 = ($6 + 560 | 0) + $1018 | 0;
|
|
i64toi32_i32$2 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$3360 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $992 + $1018 | 0;
|
|
HEAP32[i64toi32_i32$2 >> 2] = $3360;
|
|
HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] = i64toi32_i32$3;
|
|
$1024 = 16;
|
|
i64toi32_i32$1 = ($6 + 560 | 0) + $1024 | 0;
|
|
i64toi32_i32$3 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$3373 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $992 + $1024 | 0;
|
|
HEAP32[i64toi32_i32$3 >> 2] = $3373;
|
|
HEAP32[(i64toi32_i32$3 + 4 | 0) >> 2] = i64toi32_i32$2;
|
|
$1030 = 8;
|
|
i64toi32_i32$1 = ($6 + 560 | 0) + $1030 | 0;
|
|
i64toi32_i32$2 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$3386 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $992 + $1030 | 0;
|
|
HEAP32[i64toi32_i32$2 >> 2] = $3386;
|
|
HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] = i64toi32_i32$3;
|
|
$1039 = Math_fround(btConvexHullInternal__PointR128__xvalue_28_29_20const((HEAP32[($6 + 628 | 0) >> 2] | 0) + 24 | 0 | 0));
|
|
label$50 : {
|
|
label$51 : {
|
|
if (!(Math_fround(Math_abs($1039)) < Math_fround(2147483648.0))) {
|
|
break label$51
|
|
}
|
|
$1045 = ~~$1039;
|
|
break label$50;
|
|
}
|
|
$1045 = -2147483648;
|
|
}
|
|
HEAP32[((HEAP32[($6 + 628 | 0) >> 2] | 0) + 88 | 0) >> 2] = $1045;
|
|
$1052 = Math_fround(btConvexHullInternal__PointR128__yvalue_28_29_20const((HEAP32[($6 + 628 | 0) >> 2] | 0) + 24 | 0 | 0));
|
|
label$52 : {
|
|
label$53 : {
|
|
if (!(Math_fround(Math_abs($1052)) < Math_fround(2147483648.0))) {
|
|
break label$53
|
|
}
|
|
$1058 = ~~$1052;
|
|
break label$52;
|
|
}
|
|
$1058 = -2147483648;
|
|
}
|
|
HEAP32[((HEAP32[($6 + 628 | 0) >> 2] | 0) + 92 | 0) >> 2] = $1058;
|
|
$1065 = Math_fround(btConvexHullInternal__PointR128__zvalue_28_29_20const((HEAP32[($6 + 628 | 0) >> 2] | 0) + 24 | 0 | 0));
|
|
label$54 : {
|
|
label$55 : {
|
|
if (!(Math_fround(Math_abs($1065)) < Math_fround(2147483648.0))) {
|
|
break label$55
|
|
}
|
|
$1071 = ~~$1065;
|
|
break label$54;
|
|
}
|
|
$1071 = -2147483648;
|
|
}
|
|
HEAP32[((HEAP32[($6 + 628 | 0) >> 2] | 0) + 96 | 0) >> 2] = $1071;
|
|
HEAP32[((HEAP32[($6 + 1116 | 0) >> 2] | 0) + 12 | 0) >> 2] = HEAP32[($6 + 628 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 628 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($6 + 856 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____push_back_28btConvexHullInternal__Vertex__20const__29($3 | 0, $6 + 628 | 0 | 0);
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____push_back_28btConvexHullInternal__Vertex__20const__29($3 | 0, $6 + 812 | 0 | 0);
|
|
HEAP32[($6 + 108 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____push_back_28btConvexHullInternal__Vertex__20const__29($3 | 0, $6 + 108 | 0 | 0);
|
|
}
|
|
label$56 : {
|
|
label$57 : {
|
|
label$58 : {
|
|
if (HEAP32[($6 + 1068 | 0) >> 2] | 0) {
|
|
break label$58
|
|
}
|
|
if (HEAP32[($6 + 868 | 0) >> 2] | 0) {
|
|
break label$58
|
|
}
|
|
if (!((HEAP32[((HEAP32[(HEAP32[((HEAP32[($6 + 864 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) != (HEAP32[((HEAP32[($6 + 1116 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$57
|
|
}
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btConvexHullInternal__newEdgePair_28btConvexHullInternal__Vertex__2c_20btConvexHullInternal__Vertex__29($7 | 0, HEAP32[((HEAP32[($6 + 864 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($6 + 1116 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 920 | 0) >> 2] = wasm2js_i32$1;
|
|
label$59 : {
|
|
if (HEAP32[($6 + 868 | 0) >> 2] | 0) {
|
|
break label$59
|
|
}
|
|
btConvexHullInternal__Edge__link_28btConvexHullInternal__Edge__29(HEAP32[($6 + 920 | 0) >> 2] | 0 | 0, HEAP32[(HEAP32[((HEAP32[($6 + 864 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) >> 2] | 0 | 0);
|
|
}
|
|
label$60 : {
|
|
label$61 : {
|
|
if (!(HEAP32[($6 + 868 | 0) >> 2] | 0)) {
|
|
break label$61
|
|
}
|
|
if (!((HEAP32[($6 + 860 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$60
|
|
}
|
|
}
|
|
btConvexHullInternal__Edge__link_28btConvexHullInternal__Edge__29(HEAP32[((HEAP32[($6 + 864 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0, HEAP32[($6 + 920 | 0) >> 2] | 0 | 0);
|
|
}
|
|
label$62 : {
|
|
if (HEAP32[($6 + 1068 | 0) >> 2] | 0) {
|
|
break label$62
|
|
}
|
|
btConvexHullInternal__Edge__link_28btConvexHullInternal__Edge__29(HEAP32[((HEAP32[((HEAP32[($6 + 1116 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($6 + 920 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0);
|
|
}
|
|
btConvexHullInternal__Edge__link_28btConvexHullInternal__Edge__29(HEAP32[((HEAP32[($6 + 920 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($6 + 1116 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0);
|
|
break label$56;
|
|
}
|
|
HEAP32[($6 + 920 | 0) >> 2] = HEAP32[(HEAP32[((HEAP32[($6 + 864 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
}
|
|
label$63 : {
|
|
if (!((HEAP32[($6 + 860 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$63
|
|
}
|
|
label$64 : {
|
|
label$65 : {
|
|
if (!((HEAP32[($6 + 868 | 0) >> 2] | 0 | 0) > (0 | 0) & 1 | 0)) {
|
|
break label$65
|
|
}
|
|
btConvexHullInternal__Edge__link_28btConvexHullInternal__Edge__29(HEAP32[($6 + 920 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($6 + 860 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0);
|
|
break label$64;
|
|
}
|
|
label$66 : {
|
|
if (!((HEAP32[($6 + 920 | 0) >> 2] | 0 | 0) != (HEAP32[((HEAP32[($6 + 860 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$66
|
|
}
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____push_back_28btConvexHullInternal__Vertex__20const__29($3 | 0, (HEAP32[($6 + 860 | 0) >> 2] | 0) + 12 | 0 | 0);
|
|
label$67 : {
|
|
label$68 : while (1) {
|
|
if (!((HEAP32[(HEAP32[($6 + 920 | 0) >> 2] | 0) >> 2] | 0 | 0) != (HEAP32[((HEAP32[($6 + 860 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$67
|
|
}
|
|
HEAP32[($6 + 104 | 0) >> 2] = HEAP32[((HEAP32[(HEAP32[($6 + 920 | 0) >> 2] | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
btConvexHullInternal__removeEdgePair_28btConvexHullInternal__Edge__29($7 | 0, HEAP32[(HEAP32[($6 + 920 | 0) >> 2] | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____push_back_28btConvexHullInternal__Vertex__20const__29($3 | 0, $6 + 104 | 0 | 0);
|
|
continue label$68;
|
|
};
|
|
}
|
|
HEAP32[($6 + 100 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____push_back_28btConvexHullInternal__Vertex__20const__29($3 | 0, $6 + 100 | 0 | 0);
|
|
}
|
|
}
|
|
}
|
|
HEAP32[((HEAP32[($6 + 920 | 0) >> 2] | 0) + 16 | 0) >> 2] = HEAP32[($6 + 1236 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[((HEAP32[($6 + 920 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 16 | 0) >> 2] = HEAP32[((HEAP32[($6 + 1116 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0;
|
|
label$69 : {
|
|
if ((HEAP32[($6 + 916 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$69
|
|
}
|
|
HEAP32[($6 + 916 | 0) >> 2] = HEAP32[($6 + 920 | 0) >> 2] | 0;
|
|
}
|
|
continue label$32;
|
|
}
|
|
break label$32;
|
|
};
|
|
label$70 : {
|
|
label$71 : {
|
|
if (!((HEAP32[($6 + 1068 | 0) >> 2] | 0 | 0) > (0 | 0) & 1 | 0)) {
|
|
break label$71
|
|
}
|
|
HEAP32[((HEAP32[((HEAP32[($6 + 916 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 12 | 0) >> 2] = HEAP32[((HEAP32[($6 + 920 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
btConvexHullInternal__Edge__link_28btConvexHullInternal__Edge__29(HEAP32[((HEAP32[($6 + 924 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0, HEAP32[($6 + 916 | 0) >> 2] | 0 | 0);
|
|
btConvexHullInternal__Edge__link_28btConvexHullInternal__Edge__29(HEAP32[($6 + 916 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($6 + 920 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0);
|
|
break label$70;
|
|
}
|
|
label$72 : {
|
|
if (!((HEAP32[($6 + 916 | 0) >> 2] | 0 | 0) != (HEAP32[((HEAP32[($6 + 920 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$72
|
|
}
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____push_back_28btConvexHullInternal__Vertex__20const__29($3 | 0, (HEAP32[($6 + 920 | 0) >> 2] | 0) + 12 | 0 | 0);
|
|
label$73 : {
|
|
label$74 : while (1) {
|
|
if (!((HEAP32[(HEAP32[($6 + 916 | 0) >> 2] | 0) >> 2] | 0 | 0) != (HEAP32[((HEAP32[($6 + 920 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$73
|
|
}
|
|
HEAP32[($6 + 96 | 0) >> 2] = HEAP32[((HEAP32[(HEAP32[($6 + 916 | 0) >> 2] | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
btConvexHullInternal__removeEdgePair_28btConvexHullInternal__Edge__29($7 | 0, HEAP32[(HEAP32[($6 + 916 | 0) >> 2] | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____push_back_28btConvexHullInternal__Vertex__20const__29($3 | 0, $6 + 96 | 0 | 0);
|
|
continue label$74;
|
|
};
|
|
}
|
|
HEAP32[($6 + 92 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____push_back_28btConvexHullInternal__Vertex__20const__29($3 | 0, $6 + 92 | 0 | 0);
|
|
}
|
|
}
|
|
label$75 : {
|
|
if ((btAlignedObjectArray_btConvexHullInternal__Vertex____size_28_29_20const($3 | 0) | 0 | 0) > (0 | 0) & 1 | 0) {
|
|
break label$75
|
|
}
|
|
__assert_fail(86063 | 0, 72732 | 0, 2588 | 0, 82177 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btConvexHullInternal__Vertex____operator_5b_5d_28int_29($3 | 0, 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 124 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($6 + 88 | 0) >> 2] = 0;
|
|
label$76 : {
|
|
label$77 : while (1) {
|
|
if (!((HEAP32[($6 + 88 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btConvexHullInternal__Vertex____size_28_29_20const($3 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$76
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btAlignedObjectArray_btConvexHullInternal__Vertex____size_28_29_20const($3 | 0) | 0), HEAP32[(wasm2js_i32$0 + 84 | 0) >> 2] = wasm2js_i32$1;
|
|
label$78 : {
|
|
label$79 : while (1) {
|
|
if (!((HEAP32[($6 + 88 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 84 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$78
|
|
}
|
|
$1278 = HEAP32[($6 + 88 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 88 | 0) >> 2] = $1278 + 1 | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btConvexHullInternal__Vertex____operator_5b_5d_28int_29($3 | 0, $1278 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 80 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP8[($6 + 79 | 0) >> 0] = 0;
|
|
label$80 : {
|
|
label$81 : while (1) {
|
|
$1284 = HEAP32[($6 + 88 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 88 | 0) >> 2] = $1284 + 1 | 0;
|
|
$1288 = HEAP32[(btAlignedObjectArray_btConvexHullInternal__Vertex____operator_5b_5d_28int_29($3 | 0, $1284 | 0) | 0) >> 2] | 0;
|
|
HEAP32[($6 + 72 | 0) >> 2] = $1288;
|
|
if (!(($1288 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$80
|
|
}
|
|
btConvexHullInternal__Vertex__receiveNearbyFaces_28btConvexHullInternal__Vertex__29(HEAP32[($6 + 80 | 0) >> 2] | 0 | 0, HEAP32[($6 + 72 | 0) >> 2] | 0 | 0);
|
|
label$82 : {
|
|
label$83 : while (1) {
|
|
if (!((HEAP32[((HEAP32[($6 + 72 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$82
|
|
}
|
|
label$84 : {
|
|
if ((HEAPU8[($6 + 79 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$84
|
|
}
|
|
HEAP8[($6 + 79 | 0) >> 0] = 1;
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____push_back_28btConvexHullInternal__Vertex__20const__29($3 | 0, $6 + 80 | 0 | 0);
|
|
}
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____push_back_28btConvexHullInternal__Vertex__20const__29($3 | 0, (HEAP32[((HEAP32[($6 + 72 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 12 | 0 | 0);
|
|
btConvexHullInternal__removeEdgePair_28btConvexHullInternal__Edge__29($7 | 0, HEAP32[((HEAP32[($6 + 72 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0);
|
|
continue label$83;
|
|
};
|
|
}
|
|
continue label$81;
|
|
};
|
|
}
|
|
label$85 : {
|
|
if (!((HEAPU8[($6 + 79 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$85
|
|
}
|
|
HEAP32[($6 + 68 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____push_back_28btConvexHullInternal__Vertex__20const__29($3 | 0, $6 + 68 | 0 | 0);
|
|
}
|
|
continue label$79;
|
|
};
|
|
}
|
|
continue label$77;
|
|
};
|
|
}
|
|
HEAP32[($6 + 64 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____resize_28int_2c_20btConvexHullInternal__Vertex__20const__29($3 | 0, 0 | 0, $6 + 64 | 0 | 0);
|
|
$1332 = (HEAP32[($6 + 1236 | 0) >> 2] | 0) + 12 | 0;
|
|
i64toi32_i32$1 = $6;
|
|
i64toi32_i32$3 = HEAP32[($6 + 1128 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 1132 | 0) >> 2] | 0;
|
|
$4019 = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $1332;
|
|
HEAP32[i64toi32_i32$3 >> 2] = $4019;
|
|
HEAP32[(i64toi32_i32$3 + 4 | 0) >> 2] = i64toi32_i32$2;
|
|
$1334 = 8;
|
|
i64toi32_i32$1 = ($6 + 1128 | 0) + $1334 | 0;
|
|
i64toi32_i32$2 = HEAP32[i64toi32_i32$1 >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] | 0;
|
|
$4032 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $1332 + $1334 | 0;
|
|
HEAP32[i64toi32_i32$2 >> 2] = $4032;
|
|
HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] = i64toi32_i32$3;
|
|
HEAP8[($6 + 1247 | 0) >> 0] = 1 & 1 | 0;
|
|
}
|
|
$1345 = (HEAPU8[($6 + 1247 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $6 + 1248 | 0;
|
|
return $1345 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Vertex_____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Face_____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Face____clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_btConvexHullInternal__Vertex__2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Vertex____init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Vertex____capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Vertex____allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_btConvexHullInternal__Face__2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Face____init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__PoolArray_btConvexHullInternal__Face___PoolArray_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(Math_imul(HEAP32[($4 + 8 | 0) >> 2] | 0, 60) | 0, 16 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__PoolArray_btConvexHullInternal__Face___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $26 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[$4 >> 2] | 0;
|
|
HEAP32[($3 + 4 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(((HEAP32[($3 + 4 | 0) >> 2] | 0) + 1 | 0 | 0) < (HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$26 = (HEAP32[($3 + 8 | 0) >> 2] | 0) + 60 | 0;
|
|
break label$3;
|
|
}
|
|
$26 = 0;
|
|
}
|
|
HEAP32[(HEAP32[($3 + 8 | 0) >> 2] | 0) >> 2] = $26;
|
|
HEAP32[($3 + 4 | 0) >> 2] = (HEAP32[($3 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = (HEAP32[($3 + 8 | 0) >> 2] | 0) + 60 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return HEAP32[$4 >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Face__Face_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
btConvexHullInternal__Point32__Point32_28_29($4 + 12 | 0 | 0) | 0;
|
|
btConvexHullInternal__Point32__Point32_28_29($4 + 28 | 0 | 0) | 0;
|
|
btConvexHullInternal__Point32__Point32_28_29($4 + 44 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Face____capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Face____allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Face____reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btConvexHullInternal__Face____capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btConvexHullInternal__Face____allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btConvexHullInternal__Face____copy_28int_2c_20int_2c_20btConvexHullInternal__Face___29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btConvexHullInternal__Face____size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btConvexHullInternal__Face____destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btConvexHullInternal__Face____size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btConvexHullInternal__Face____deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Point32__isZero_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $7 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$7 = 0;
|
|
label$1 : {
|
|
if (HEAP32[$4 >> 2] | 0) {
|
|
break label$1
|
|
}
|
|
$7 = 0;
|
|
if (HEAP32[($4 + 4 | 0) >> 2] | 0) {
|
|
break label$1
|
|
}
|
|
$7 = (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) == (0 | 0);
|
|
}
|
|
return $7 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Face__getNormal_28_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btConvexHullInternal__Point32__cross_28btConvexHullInternal__Point32_20const__29_20const($0 | 0, $5 + 28 | 0 | 0, $5 + 44 | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Vertex__dot_28btConvexHullInternal__Point64_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 96 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 92 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 88 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 92 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($6 + 100 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
i64toi32_i32$0 = btConvexHullInternal__Point32__dot_28btConvexHullInternal__Point64_20const__29_20const($6 + 88 | 0 | 0, HEAP32[($5 + 88 | 0) >> 2] | 0 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
btConvexHullInternal__Rational128__Rational128_28long_20long_29($0 | 0, i64toi32_i32$0 | 0, i64toi32_i32$1 | 0) | 0;
|
|
break label$1;
|
|
}
|
|
i64toi32_i32$2 = HEAP32[($5 + 88 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
btConvexHullInternal__Int128__operator__28long_20long_29_20const($5 + 40 | 0 | 0, $6 + 24 | 0 | 0, i64toi32_i32$1 | 0, i64toi32_i32$0 | 0);
|
|
i64toi32_i32$2 = HEAP32[($5 + 88 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 12 | 0) >> 2] | 0;
|
|
btConvexHullInternal__Int128__operator__28long_20long_29_20const($5 + 24 | 0 | 0, ($6 + 24 | 0) + 16 | 0 | 0, i64toi32_i32$0 | 0, i64toi32_i32$1 | 0);
|
|
btConvexHullInternal__Int128__operator__28btConvexHullInternal__Int128_20const__29_20const($5 + 56 | 0 | 0, $5 + 40 | 0 | 0, $5 + 24 | 0 | 0);
|
|
i64toi32_i32$2 = HEAP32[($5 + 88 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 20 | 0) >> 2] | 0;
|
|
btConvexHullInternal__Int128__operator__28long_20long_29_20const($5 + 8 | 0 | 0, ($6 + 24 | 0) + 32 | 0 | 0, i64toi32_i32$1 | 0, i64toi32_i32$0 | 0);
|
|
btConvexHullInternal__Int128__operator__28btConvexHullInternal__Int128_20const__29_20const($5 + 72 | 0 | 0, $5 + 56 | 0 | 0, $5 + 8 | 0 | 0);
|
|
btConvexHullInternal__Rational128__Rational128_28btConvexHullInternal__Int128_20const__2c_20btConvexHullInternal__Int128_20const__29($0 | 0, $5 + 72 | 0 | 0, ($6 + 24 | 0) + 48 | 0 | 0) | 0;
|
|
}
|
|
__stack_pointer = $5 + 96 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Int128__operator__28btConvexHullInternal__Int128_20const__29_20const_2($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
btConvexHullInternal__Int128__operator__28_29_20const($5 + 8 | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
btConvexHullInternal__Int128__operator__28btConvexHullInternal__Int128_20const__29_20const($0 | 0, $6 | 0, $5 + 8 | 0 | 0);
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__PointR128__PointR128_28btConvexHullInternal__Int128_2c_20btConvexHullInternal__Int128_2c_20btConvexHullInternal__Int128_2c_20btConvexHullInternal__Int128_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $8 = 0, $7 = 0, $10 = 0, $15 = 0, $17 = 0, $22 = 0, $24 = 0, $29 = 0, $31 = 0, $46 = 0, $56 = 0, $63 = 0, $73 = 0, $80 = 0, $90 = 0, $97 = 0, $107 = 0;
|
|
$7 = __stack_pointer - 16 | 0;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $0;
|
|
$8 = HEAP32[($7 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $1;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$46 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $8;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $46;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$10 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $10 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$56 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8 + $10 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $56;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$15 = $8 + 16 | 0;
|
|
i64toi32_i32$2 = $2;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$63 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $15;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $63;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$17 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $17 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$73 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $15 + $17 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $73;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$22 = $8 + 32 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$80 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $80;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$24 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $24 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$90 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $24 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $90;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$29 = $8 + 48 | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$97 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $29;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $97;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$31 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $31 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$107 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $29 + $31 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $107;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Vertex__receiveNearbyFaces_28btConvexHullInternal__Vertex__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
}
|
|
label$3 : {
|
|
if (!((HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 16 | 0) >> 2] = HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
label$6 : {
|
|
if ((HEAP32[((HEAP32[($4 + 4 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) == (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$6
|
|
}
|
|
__assert_fail(82799 | 0, 72732 | 0, 498 | 0, 70267 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[((HEAP32[($4 + 4 | 0) >> 2] | 0) + 4 | 0) >> 2] = $5;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[((HEAP32[($4 + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 12 | 0) >> 2] = 0;
|
|
HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 16 | 0) >> 2] = 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Vertex____copy_28int_2c_20int_2c_20btConvexHullInternal__Vertex___29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[((HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[((HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Vertex____clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btConvexHullInternal__Vertex____size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Face____clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Face____destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btConvexHullInternal__Face____size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btConvexHullInternal__Face____deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btConvexHullInternal__Face____init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__Rational128__Rational128_28long_20long_29($0, $1, $1$hi) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$1$hi = $1$hi | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$5 = 0, $4 = 0, $5 = 0, i64toi32_i32$3 = 0, $8$hi = 0, $9$hi = 0, $27$hi = 0, $28$hi = 0, $31 = 0, $32 = 0, $33 = 0, $21 = 0, $34 = 0, $35 = 0, $36 = 0, $35$hi = 0, $42 = 0, $54 = 0, $63 = 0, $65 = 0, $119 = 0, $132 = 0, $149$hi = 0, $150 = 0, $162 = 0, $175 = 0, $188 = 0, $201 = 0, $212 = 0, $222 = 0, $70 = 0;
|
|
$4 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 72 | 0) >> 2] = $0;
|
|
i64toi32_i32$0 = $1$hi;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[(i64toi32_i32$1 + 64 | 0) >> 2] = $1;
|
|
HEAP32[(i64toi32_i32$1 + 68 | 0) >> 2] = i64toi32_i32$0;
|
|
$5 = HEAP32[(i64toi32_i32$1 + 72 | 0) >> 2] | 0;
|
|
HEAP32[(i64toi32_i32$1 + 76 | 0) >> 2] = $5;
|
|
btConvexHullInternal__Int128__Int128_28_29($5 | 0) | 0;
|
|
btConvexHullInternal__Int128__Int128_28_29($5 + 16 | 0 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$1;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 64 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 68 | 0) >> 2] | 0;
|
|
$8$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$9$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8$hi;
|
|
i64toi32_i32$1 = $9$hi;
|
|
i64toi32_i32$1 = $8$hi;
|
|
i64toi32_i32$1 = $9$hi;
|
|
i64toi32_i32$1 = $8$hi;
|
|
i64toi32_i32$2 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $9$hi;
|
|
i64toi32_i32$3 = 0;
|
|
if ((i64toi32_i32$1 | 0) > (i64toi32_i32$0 | 0)) {
|
|
$31 = 1
|
|
} else {
|
|
if ((i64toi32_i32$1 | 0) >= (i64toi32_i32$0 | 0)) {
|
|
if (i64toi32_i32$2 >>> 0 <= i64toi32_i32$3 >>> 0) {
|
|
$32 = 0
|
|
} else {
|
|
$32 = 1
|
|
}
|
|
$33 = $32;
|
|
} else {
|
|
$33 = 0
|
|
}
|
|
$31 = $33;
|
|
}
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!($31 & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 32 | 0) >> 2] = 1;
|
|
i64toi32_i32$3 = $4;
|
|
i64toi32_i32$2 = HEAP32[($4 + 64 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($4 + 68 | 0) >> 2] | 0;
|
|
btConvexHullInternal__Int128__Int128_28long_20long_29($4 + 48 | 0 | 0, i64toi32_i32$2 | 0, i64toi32_i32$1 | 0) | 0;
|
|
i64toi32_i32$3 = $4;
|
|
i64toi32_i32$1 = HEAP32[($4 + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 52 | 0) >> 2] | 0;
|
|
$119 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $119;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$2;
|
|
$21 = 8;
|
|
i64toi32_i32$3 = ($4 + 48 | 0) + $21 | 0;
|
|
i64toi32_i32$2 = HEAP32[i64toi32_i32$3 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$3 + 4 | 0) >> 2] | 0;
|
|
$132 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $5 + $21 | 0;
|
|
HEAP32[i64toi32_i32$2 >> 2] = $132;
|
|
HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
break label$1;
|
|
}
|
|
i64toi32_i32$3 = $4;
|
|
i64toi32_i32$1 = HEAP32[($4 + 64 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 68 | 0) >> 2] | 0;
|
|
$27$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = 0;
|
|
$28$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $27$hi;
|
|
i64toi32_i32$2 = $28$hi;
|
|
i64toi32_i32$2 = $27$hi;
|
|
i64toi32_i32$2 = $28$hi;
|
|
i64toi32_i32$2 = $27$hi;
|
|
i64toi32_i32$3 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $28$hi;
|
|
i64toi32_i32$0 = 0;
|
|
if ((i64toi32_i32$2 | 0) < (i64toi32_i32$1 | 0)) {
|
|
$34 = 1
|
|
} else {
|
|
if ((i64toi32_i32$2 | 0) <= (i64toi32_i32$1 | 0)) {
|
|
if (i64toi32_i32$3 >>> 0 >= i64toi32_i32$0 >>> 0) {
|
|
$35 = 0
|
|
} else {
|
|
$35 = 1
|
|
}
|
|
$36 = $35;
|
|
} else {
|
|
$36 = 0
|
|
}
|
|
$34 = $36;
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!($34 & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP32[($5 + 32 | 0) >> 2] = -1;
|
|
i64toi32_i32$0 = $4;
|
|
i64toi32_i32$3 = HEAP32[(i64toi32_i32$0 + 64 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$0 + 68 | 0) >> 2] | 0;
|
|
$35$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = 0;
|
|
$149$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $35$hi;
|
|
$150 = i64toi32_i32$3;
|
|
i64toi32_i32$2 = $149$hi;
|
|
i64toi32_i32$0 = 0;
|
|
i64toi32_i32$3 = $35$hi;
|
|
i64toi32_i32$1 = $150;
|
|
i64toi32_i32$5 = (i64toi32_i32$0 >>> 0 < i64toi32_i32$1 >>> 0) + i64toi32_i32$3 | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$2 - i64toi32_i32$5 | 0;
|
|
btConvexHullInternal__Int128__Int128_28long_20long_29($4 + 32 | 0 | 0, i64toi32_i32$0 - i64toi32_i32$1 | 0 | 0, i64toi32_i32$5 | 0) | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$2 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 36 | 0) >> 2] | 0;
|
|
$162 = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $5;
|
|
HEAP32[i64toi32_i32$5 >> 2] = $162;
|
|
HEAP32[(i64toi32_i32$5 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$42 = 8;
|
|
i64toi32_i32$2 = (i64toi32_i32$2 + 32 | 0) + $42 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$175 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $5 + $42 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $175;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$5;
|
|
break label$3;
|
|
}
|
|
HEAP32[($5 + 32 | 0) >> 2] = 0;
|
|
i64toi32_i32$5 = 0;
|
|
btConvexHullInternal__Int128__Int128_28unsigned_20long_20long_29($4 + 16 | 0 | 0, 0 | 0, i64toi32_i32$5 | 0) | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$2 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 20 | 0) >> 2] | 0;
|
|
$188 = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $5;
|
|
HEAP32[i64toi32_i32$5 >> 2] = $188;
|
|
HEAP32[(i64toi32_i32$5 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$54 = 8;
|
|
i64toi32_i32$2 = (i64toi32_i32$2 + 16 | 0) + $54 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$201 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $5 + $54 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $201;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$5;
|
|
}
|
|
}
|
|
i64toi32_i32$5 = 0;
|
|
btConvexHullInternal__Int128__Int128_28unsigned_20long_20long_29($4 | 0, 1 | 0, i64toi32_i32$5 | 0) | 0;
|
|
$63 = $5 + 16 | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$5 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$212 = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $63;
|
|
HEAP32[i64toi32_i32$5 >> 2] = $212;
|
|
HEAP32[(i64toi32_i32$5 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$65 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $65 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$5 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$222 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $63 + $65 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $222;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$5;
|
|
HEAP8[($5 + 36 | 0) >> 0] = 1;
|
|
$70 = HEAP32[($4 + 76 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 80 | 0;
|
|
return $70 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Rational128__Rational128_28btConvexHullInternal__Int128_20const__2c_20btConvexHullInternal__Int128_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $5 = 0, i64toi32_i32$2 = 0, $6 = 0, $20 = 0, $29 = 0, $46 = 0, $48 = 0, $60 = 0, $62 = 0, $117 = 0, $127 = 0, $139 = 0, $152 = 0, $179 = 0, $189 = 0, $211 = 0, $224 = 0, $69 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 56 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 52 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 48 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 56 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 60 | 0) >> 2] = $6;
|
|
btConvexHullInternal__Int128__Int128_28_29($6 | 0) | 0;
|
|
btConvexHullInternal__Int128__Int128_28_29($6 + 16 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btConvexHullInternal__Int128__getSign_28_29_20const(HEAP32[($5 + 52 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($6 + 32 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
i64toi32_i32$2 = HEAP32[($5 + 52 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$117 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $117;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$20 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $20 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$127 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6 + $20 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $127;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$1;
|
|
}
|
|
btConvexHullInternal__Int128__operator__28_29_20const($5 + 32 | 0 | 0, HEAP32[($5 + 52 | 0) >> 2] | 0 | 0);
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
$139 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $139;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$29 = 8;
|
|
i64toi32_i32$2 = ($5 + 32 | 0) + $29 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$152 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6 + $29 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $152;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btConvexHullInternal__Int128__getSign_28_29_20const(HEAP32[($5 + 48 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$46 = $6 + 16 | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$179 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $46;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $179;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$48 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $48 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$189 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $46 + $48 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $189;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$3;
|
|
}
|
|
HEAP32[($6 + 32 | 0) >> 2] = 0 - (HEAP32[($6 + 32 | 0) >> 2] | 0) | 0;
|
|
btConvexHullInternal__Int128__operator__28_29_20const($5 + 8 | 0 | 0, HEAP32[($5 + 48 | 0) >> 2] | 0 | 0);
|
|
$60 = $6 + 16 | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
$211 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $60;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $211;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$62 = 8;
|
|
i64toi32_i32$2 = ($5 + 8 | 0) + $62 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$224 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $60 + $62 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $224;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
HEAP8[($6 + 36 | 0) >> 0] = 0;
|
|
$69 = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 64 | 0;
|
|
return $69 | 0;
|
|
}
|
|
|
|
function btConvexHullComputer__compute_28void_20const__2c_20bool_2c_20int_2c_20int_2c_20float_2c_20float_29($0, $1, $2, $3, $4, $5, $6) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = Math_fround($5);
|
|
$6 = Math_fround($6);
|
|
var $9 = 0, $11 = 0, i64toi32_i32$0 = 0, $50 = Math_fround(0), $187 = 0, $201 = 0, $222 = 0, $300 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$9 = __stack_pointer - 336 | 0;
|
|
__stack_pointer = $9;
|
|
HEAP32[($9 + 328 | 0) >> 2] = $0;
|
|
HEAP32[($9 + 324 | 0) >> 2] = $1;
|
|
HEAP8[($9 + 323 | 0) >> 0] = $2;
|
|
HEAP32[($9 + 316 | 0) >> 2] = $3;
|
|
HEAP32[($9 + 312 | 0) >> 2] = $4;
|
|
HEAPF32[($9 + 308 | 0) >> 2] = $5;
|
|
HEAPF32[($9 + 304 | 0) >> 2] = $6;
|
|
$11 = HEAP32[($9 + 328 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($9 + 312 | 0) >> 2] | 0 | 0) <= (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedObjectArray_btVector3___clear_28_29($11 | 0);
|
|
btAlignedObjectArray_btConvexHullComputer__Edge___clear_28_29($11 + 20 | 0 | 0);
|
|
btAlignedObjectArray_int___clear_28_29($11 + 40 | 0 | 0);
|
|
HEAPF32[($9 + 332 | 0) >> 2] = Math_fround(0 | 0);
|
|
break label$1;
|
|
}
|
|
btConvexHullInternal__btConvexHullInternal_28_29($9 + 176 | 0 | 0) | 0;
|
|
btConvexHullInternal__compute_28void_20const__2c_20bool_2c_20int_2c_20int_29($9 + 176 | 0 | 0, HEAP32[($9 + 324 | 0) >> 2] | 0 | 0, (HEAPU8[($9 + 323 | 0) >> 0] | 0) & 1 | 0 | 0, HEAP32[($9 + 316 | 0) >> 2] | 0 | 0, HEAP32[($9 + 312 | 0) >> 2] | 0 | 0);
|
|
HEAPF32[($9 + 172 | 0) >> 2] = Math_fround(0 | 0);
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[($9 + 308 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$50 = Math_fround(btConvexHullInternal__shrink_28float_2c_20float_29($9 + 176 | 0 | 0, Math_fround(Math_fround(HEAPF32[($9 + 308 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($9 + 304 | 0) >> 2]))));
|
|
HEAPF32[($9 + 172 | 0) >> 2] = $50;
|
|
if (!($50 < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
btAlignedObjectArray_btVector3___clear_28_29($11 | 0);
|
|
btAlignedObjectArray_btConvexHullComputer__Edge___clear_28_29($11 + 20 | 0 | 0);
|
|
btAlignedObjectArray_int___clear_28_29($11 + 40 | 0 | 0);
|
|
HEAPF32[($9 + 332 | 0) >> 2] = Math_fround(HEAPF32[($9 + 172 | 0) >> 2]);
|
|
HEAP32[($9 + 168 | 0) >> 2] = 1;
|
|
break label$3;
|
|
}
|
|
btVector3__btVector3_28_29($9 + 152 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3___resize_28int_2c_20btVector3_20const__29($11 | 0, 0 | 0, $9 + 152 | 0 | 0);
|
|
HEAP32[($9 + 144 | 0) >> 2] = 0;
|
|
i64toi32_i32$0 = 0;
|
|
HEAP32[($9 + 136 | 0) >> 2] = 0;
|
|
HEAP32[($9 + 140 | 0) >> 2] = i64toi32_i32$0;
|
|
btAlignedObjectArray_btConvexHullComputer__Edge___resize_28int_2c_20btConvexHullComputer__Edge_20const__29($11 + 20 | 0 | 0, 0 | 0, $9 + 136 | 0 | 0);
|
|
HEAP32[($9 + 132 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_int___resize_28int_2c_20int_20const__29($11 + 40 | 0 | 0, 0 | 0, $9 + 132 | 0 | 0);
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____btAlignedObjectArray_28_29($9 + 112 | 0 | 0) | 0;
|
|
getVertexCopy_28btConvexHullInternal__Vertex__2c_20btAlignedObjectArray_btConvexHullInternal__Vertex____29(HEAP32[($9 + 300 | 0) >> 2] | 0 | 0, $9 + 112 | 0 | 0) | 0;
|
|
HEAP32[($9 + 108 | 0) >> 2] = 0;
|
|
label$5 : {
|
|
label$6 : while (1) {
|
|
if (!((HEAP32[($9 + 108 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btConvexHullInternal__Vertex____size_28_29_20const($9 + 112 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
(wasm2js_i32$0 = $9, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btConvexHullInternal__Vertex____operator_5b_5d_28int_29($9 + 112 | 0 | 0, HEAP32[($9 + 108 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 104 | 0) >> 2] = wasm2js_i32$1;
|
|
btConvexHullInternal__getCoordinates_28btConvexHullInternal__Vertex_20const__29($9 + 88 | 0 | 0, $9 + 176 | 0 | 0, HEAP32[($9 + 104 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btVector3___push_back_28btVector3_20const__29($11 | 0, $9 + 88 | 0 | 0);
|
|
HEAP32[($9 + 84 | 0) >> 2] = HEAP32[((HEAP32[($9 + 104 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
label$7 : {
|
|
if (!((HEAP32[($9 + 84 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAP32[($9 + 80 | 0) >> 2] = -1;
|
|
HEAP32[($9 + 76 | 0) >> 2] = -1;
|
|
HEAP32[($9 + 72 | 0) >> 2] = HEAP32[($9 + 84 | 0) >> 2] | 0;
|
|
label$8 : while (1) {
|
|
label$9 : {
|
|
if (!((HEAP32[((HEAP32[($9 + 72 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) < (0 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
(wasm2js_i32$0 = $9, wasm2js_i32$1 = btAlignedObjectArray_btConvexHullComputer__Edge___size_28_29_20const($11 + 20 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 68 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($9 + 64 | 0) >> 2] = 0;
|
|
i64toi32_i32$0 = 0;
|
|
HEAP32[($9 + 56 | 0) >> 2] = 0;
|
|
HEAP32[($9 + 60 | 0) >> 2] = i64toi32_i32$0;
|
|
btAlignedObjectArray_btConvexHullComputer__Edge___push_back_28btConvexHullComputer__Edge_20const__29($11 + 20 | 0 | 0, $9 + 56 | 0 | 0);
|
|
HEAP32[($9 + 48 | 0) >> 2] = 0;
|
|
i64toi32_i32$0 = 0;
|
|
HEAP32[($9 + 40 | 0) >> 2] = 0;
|
|
HEAP32[($9 + 44 | 0) >> 2] = i64toi32_i32$0;
|
|
btAlignedObjectArray_btConvexHullComputer__Edge___push_back_28btConvexHullComputer__Edge_20const__29($11 + 20 | 0 | 0, $9 + 40 | 0 | 0);
|
|
(wasm2js_i32$0 = $9, wasm2js_i32$1 = btAlignedObjectArray_btConvexHullComputer__Edge___operator_5b_5d_28int_29($11 + 20 | 0 | 0, HEAP32[($9 + 68 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $9, wasm2js_i32$1 = btAlignedObjectArray_btConvexHullComputer__Edge___operator_5b_5d_28int_29($11 + 20 | 0 | 0, (HEAP32[($9 + 68 | 0) >> 2] | 0) + 1 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[((HEAP32[($9 + 72 | 0) >> 2] | 0) + 20 | 0) >> 2] = HEAP32[($9 + 68 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[((HEAP32[($9 + 72 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 20 | 0) >> 2] = (HEAP32[($9 + 68 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[((HEAP32[($9 + 36 | 0) >> 2] | 0) + 4 | 0) >> 2] = 1;
|
|
HEAP32[((HEAP32[($9 + 32 | 0) >> 2] | 0) + 4 | 0) >> 2] = -1;
|
|
$187 = getVertexCopy_28btConvexHullInternal__Vertex__2c_20btAlignedObjectArray_btConvexHullInternal__Vertex____29(HEAP32[((HEAP32[($9 + 72 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0, $9 + 112 | 0 | 0) | 0;
|
|
HEAP32[((HEAP32[($9 + 36 | 0) >> 2] | 0) + 8 | 0) >> 2] = $187;
|
|
HEAP32[((HEAP32[($9 + 32 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($9 + 108 | 0) >> 2] | 0;
|
|
}
|
|
label$10 : {
|
|
label$11 : {
|
|
if (!((HEAP32[($9 + 76 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
$201 = (HEAP32[($9 + 76 | 0) >> 2] | 0) - (HEAP32[((HEAP32[($9 + 72 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btConvexHullComputer__Edge___operator_5b_5d_28int_29($11 + 20 | 0 | 0, HEAP32[((HEAP32[($9 + 72 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $201), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
break label$10;
|
|
}
|
|
HEAP32[($9 + 80 | 0) >> 2] = HEAP32[((HEAP32[($9 + 72 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($9 + 76 | 0) >> 2] = HEAP32[((HEAP32[($9 + 72 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0;
|
|
HEAP32[($9 + 72 | 0) >> 2] = HEAP32[(HEAP32[($9 + 72 | 0) >> 2] | 0) >> 2] | 0;
|
|
if ((HEAP32[($9 + 72 | 0) >> 2] | 0 | 0) != (HEAP32[($9 + 84 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
continue label$8
|
|
}
|
|
break label$8;
|
|
};
|
|
$222 = (HEAP32[($9 + 76 | 0) >> 2] | 0) - (HEAP32[($9 + 80 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btConvexHullComputer__Edge___operator_5b_5d_28int_29($11 + 20 | 0 | 0, HEAP32[($9 + 80 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $222), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
}
|
|
HEAP32[($9 + 108 | 0) >> 2] = (HEAP32[($9 + 108 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$6;
|
|
};
|
|
}
|
|
HEAP32[($9 + 28 | 0) >> 2] = 0;
|
|
label$12 : {
|
|
label$13 : while (1) {
|
|
if (!((HEAP32[($9 + 28 | 0) >> 2] | 0 | 0) < (HEAP32[($9 + 108 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
(wasm2js_i32$0 = $9, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btConvexHullInternal__Vertex____operator_5b_5d_28int_29($9 + 112 | 0 | 0, HEAP32[($9 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($9 + 20 | 0) >> 2] = HEAP32[((HEAP32[($9 + 24 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
label$14 : {
|
|
if (!((HEAP32[($9 + 20 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
HEAP32[($9 + 16 | 0) >> 2] = HEAP32[($9 + 20 | 0) >> 2] | 0;
|
|
label$15 : while (1) {
|
|
label$16 : {
|
|
if (!((HEAP32[((HEAP32[($9 + 16 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
btAlignedObjectArray_int___push_back_28int_20const__29($11 + 40 | 0 | 0, (HEAP32[($9 + 16 | 0) >> 2] | 0) + 20 | 0 | 0);
|
|
HEAP32[($9 + 12 | 0) >> 2] = HEAP32[($9 + 16 | 0) >> 2] | 0;
|
|
label$17 : while (1) {
|
|
HEAP32[((HEAP32[($9 + 12 | 0) >> 2] | 0) + 20 | 0) >> 2] = -1;
|
|
HEAP32[($9 + 12 | 0) >> 2] = HEAP32[((HEAP32[((HEAP32[($9 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
if ((HEAP32[($9 + 12 | 0) >> 2] | 0 | 0) != (HEAP32[($9 + 16 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
continue label$17
|
|
}
|
|
break label$17;
|
|
};
|
|
}
|
|
HEAP32[($9 + 16 | 0) >> 2] = HEAP32[(HEAP32[($9 + 16 | 0) >> 2] | 0) >> 2] | 0;
|
|
if ((HEAP32[($9 + 16 | 0) >> 2] | 0 | 0) != (HEAP32[($9 + 20 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
continue label$15
|
|
}
|
|
break label$15;
|
|
};
|
|
}
|
|
HEAP32[($9 + 28 | 0) >> 2] = (HEAP32[($9 + 28 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$13;
|
|
};
|
|
}
|
|
HEAPF32[($9 + 332 | 0) >> 2] = Math_fround(HEAPF32[($9 + 172 | 0) >> 2]);
|
|
HEAP32[($9 + 168 | 0) >> 2] = 1;
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex_____btAlignedObjectArray_28_29($9 + 112 | 0 | 0) | 0;
|
|
}
|
|
btConvexHullInternal___btConvexHullInternal_28_29($9 + 176 | 0 | 0) | 0;
|
|
}
|
|
$300 = Math_fround(HEAPF32[($9 + 332 | 0) >> 2]);
|
|
__stack_pointer = $9 + 336 | 0;
|
|
return Math_fround($300);
|
|
}
|
|
|
|
function btConvexHullInternal__btConvexHullInternal_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($4 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 16 | 0 | 0) | 0;
|
|
btConvexHullInternal__Pool_btConvexHullInternal__Vertex___Pool_28_29($4 + 32 | 0 | 0) | 0;
|
|
btConvexHullInternal__Pool_btConvexHullInternal__Edge___Pool_28_29($4 + 48 | 0 | 0) | 0;
|
|
btConvexHullInternal__Pool_btConvexHullInternal__Face___Pool_28_29($4 + 64 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____btAlignedObjectArray_28_29($4 + 80 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullComputer__Edge___resize_28int_2c_20btConvexHullComputer__Edge_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, $6 = 0, $47 = 0, $49 = 0, i64toi32_i32$1 = 0, $166 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btConvexHullComputer__Edge___size_28_29_20const($6 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) > (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btAlignedObjectArray_btConvexHullComputer__Edge___reserve_28int_29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$47 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[$47 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($47 + 4 | 0) >> 2] | 0;
|
|
$166 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = (HEAP32[($6 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 8 | 0) >> 2] | 0, 12) | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $166;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$49 = 8;
|
|
HEAP32[(i64toi32_i32$0 + $49 | 0) >> 2] = HEAP32[($47 + $49 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function getVertexCopy_28btConvexHullInternal__Vertex__2c_20btAlignedObjectArray_btConvexHullInternal__Vertex____29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $22 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 104 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) < (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btConvexHullInternal__Vertex____size_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 104 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex____push_back_28btConvexHullInternal__Vertex__20const__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, $4 + 12 | 0 | 0);
|
|
}
|
|
$22 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $22 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullComputer__Edge___push_back_28btConvexHullComputer__Edge_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, i64toi32_i32$0 = 0, $21 = 0, $23 = 0, i64toi32_i32$1 = 0, $83 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btConvexHullComputer__Edge___size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btConvexHullComputer__Edge___capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btConvexHullComputer__Edge___reserve_28int_29($5 | 0, btAlignedObjectArray_btConvexHullComputer__Edge___allocSize_28int_29($5 | 0, btAlignedObjectArray_btConvexHullComputer__Edge___size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
$21 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[$21 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($21 + 4 | 0) >> 2] | 0;
|
|
$83 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 4 | 0) >> 2] | 0, 12) | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $83;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$23 = 8;
|
|
HEAP32[(i64toi32_i32$0 + $23 | 0) >> 2] = HEAP32[($21 + $23 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal___btConvexHullInternal_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btConvexHullInternal__Vertex_____btAlignedObjectArray_28_29($4 + 80 | 0 | 0) | 0;
|
|
btConvexHullInternal__Pool_btConvexHullInternal__Face____Pool_28_29($4 + 64 | 0 | 0) | 0;
|
|
btConvexHullInternal__Pool_btConvexHullInternal__Edge____Pool_28_29($4 + 48 | 0 | 0) | 0;
|
|
btConvexHullInternal__Pool_btConvexHullInternal__Vertex____Pool_28_29($4 + 32 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Pool_btConvexHullInternal__Vertex___Pool_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 256;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Pool_btConvexHullInternal__Edge___Pool_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 256;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Pool_btConvexHullInternal__Face___Pool_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 256;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullComputer__Edge___reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btConvexHullComputer__Edge___capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btConvexHullComputer__Edge___allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btConvexHullComputer__Edge___copy_28int_2c_20int_2c_20btConvexHullComputer__Edge__29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btConvexHullComputer__Edge___size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btConvexHullComputer__Edge___destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btConvexHullComputer__Edge___size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btConvexHullComputer__Edge___deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullComputer__Edge___capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullComputer__Edge___allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Pool_btConvexHullInternal__Face____Pool_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $17 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$4 >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($3 + 4 | 0) >> 2] = HEAP32[$4 >> 2] | 0;
|
|
HEAP32[$4 >> 2] = HEAP32[((HEAP32[($3 + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
btConvexHullInternal__PoolArray_btConvexHullInternal__Face____PoolArray_28_29(HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 4 | 0) >> 2] | 0 | 0);
|
|
continue label$2;
|
|
};
|
|
}
|
|
$17 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $17 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Pool_btConvexHullInternal__Edge____Pool_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $17 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$4 >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($3 + 4 | 0) >> 2] = HEAP32[$4 >> 2] | 0;
|
|
HEAP32[$4 >> 2] = HEAP32[((HEAP32[($3 + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
btConvexHullInternal__PoolArray_btConvexHullInternal__Edge____PoolArray_28_29(HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 4 | 0) >> 2] | 0 | 0);
|
|
continue label$2;
|
|
};
|
|
}
|
|
$17 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $17 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Pool_btConvexHullInternal__Vertex____Pool_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $17 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$4 >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($3 + 4 | 0) >> 2] = HEAP32[$4 >> 2] | 0;
|
|
HEAP32[$4 >> 2] = HEAP32[((HEAP32[($3 + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
btConvexHullInternal__PoolArray_btConvexHullInternal__Vertex____PoolArray_28_29(HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 4 | 0) >> 2] | 0 | 0);
|
|
continue label$2;
|
|
};
|
|
}
|
|
$17 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $17 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__Edge___Edge_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__PoolArray_btConvexHullInternal__Face____PoolArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[$4 >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__PoolArray_btConvexHullInternal__Edge____PoolArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[$4 >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexHullInternal__PoolArray_btConvexHullInternal__Vertex____PoolArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[$4 >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Point32___capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Point32___allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btConvexHullInternal__Point32_2c_2016u___allocate_28int_2c_20btConvexHullInternal__Point32_20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Point32___copy_28int_2c_20int_2c_20btConvexHullInternal__Point32__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $20 = 0, $27 = 0, $7 = 0, $89 = 0, $99 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$20 = (HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = (HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$89 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $20;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $89;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$27 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $27 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$99 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $20 + $27 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $99;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btConvexHullInternal__Point32_2c_2016u___allocate_28int_2c_20btConvexHullInternal__Point32_20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 4 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_btConvexHullInternal__Point32_2c_2016u___deallocate_28btConvexHullInternal__Point32__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function pointCmp__operator_28_29_28btConvexHullInternal__Point32_20const__2c_20btConvexHullInternal__Point32_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $16 = 0, $27 = 0, $38 = 0, $49 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$16 = 1;
|
|
label$1 : {
|
|
if ((HEAP32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) < (HEAP32[((HEAP32[($5 + 4 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
$27 = 0;
|
|
label$2 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) == (HEAP32[((HEAP32[($5 + 4 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$38 = 1;
|
|
label$3 : {
|
|
if ((HEAP32[(HEAP32[($5 + 8 | 0) >> 2] | 0) >> 2] | 0 | 0) < (HEAP32[(HEAP32[($5 + 4 | 0) >> 2] | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
$49 = 0;
|
|
label$4 : {
|
|
if (!((HEAP32[(HEAP32[($5 + 8 | 0) >> 2] | 0) >> 2] | 0 | 0) == (HEAP32[(HEAP32[($5 + 4 | 0) >> 2] | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$49 = (HEAP32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) < (HEAP32[((HEAP32[($5 + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0);
|
|
}
|
|
$38 = $49;
|
|
}
|
|
$27 = $38;
|
|
}
|
|
$16 = $27;
|
|
}
|
|
return $16 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Point32___swap_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, $5 = 0, $6 = 0, $11 = 0, $12 = 0, $26 = 0, $28 = 0, $36 = 0, $38 = 0, $73 = 0, $77 = 0, $101 = 0, $111 = 0, $125 = 0, $135 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
$11 = (HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 24 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
$12 = 8;
|
|
i64toi32_i32$2 = $11 + $12 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$73 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $5 + $12 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $73;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $11;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$77 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $77;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$26 = (HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[(i64toi32_i32$1 + 24 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = (HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[(i64toi32_i32$1 + 20 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$101 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $26;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $101;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$28 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $28 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$111 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $26 + $28 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $111;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$36 = (HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 20 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$125 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $36;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $125;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$38 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $38 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$135 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $36 + $38 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $135;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Vertex____allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btConvexHullInternal__Vertex__2c_2016u___allocate_28int_2c_20btConvexHullInternal__Vertex__20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Vertex____destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Vertex____deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btConvexHullInternal__Vertex__2c_2016u___deallocate_28btConvexHullInternal__Vertex___29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btConvexHullInternal__Vertex__2c_2016u___allocate_28int_2c_20btConvexHullInternal__Vertex__20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_btConvexHullInternal__Vertex__2c_2016u___deallocate_28btConvexHullInternal__Vertex___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexHullInternal__PointR128__PointR128_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConvexHullInternal__Int128__Int128_28_29($4 | 0) | 0;
|
|
btConvexHullInternal__Int128__Int128_28_29($4 + 16 | 0 | 0) | 0;
|
|
btConvexHullInternal__Int128__Int128_28_29($4 + 32 | 0 | 0) | 0;
|
|
btConvexHullInternal__Int128__Int128_28_29($4 + 48 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Face____destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Face____deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btConvexHullInternal__Face__2c_2016u___deallocate_28btConvexHullInternal__Face___29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btConvexHullInternal__Face__2c_2016u___deallocate_28btConvexHullInternal__Face___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Face____allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btConvexHullInternal__Face__2c_2016u___allocate_28int_2c_20btConvexHullInternal__Face__20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullInternal__Face____copy_28int_2c_20int_2c_20btConvexHullInternal__Face___29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[((HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[((HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btConvexHullInternal__Face__2c_2016u___allocate_28int_2c_20btConvexHullInternal__Face__20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullComputer__Edge___allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btConvexHullComputer__Edge_2c_2016u___allocate_28int_2c_20btConvexHullComputer__Edge_20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullComputer__Edge___copy_28int_2c_20int_2c_20btConvexHullComputer__Edge__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, $25 = 0, $27 = 0, $7 = 0, i64toi32_i32$1 = 0, $89 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$25 = (HEAP32[($7 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($6 + 12 | 0) >> 2] | 0, 12) | 0;
|
|
i64toi32_i32$0 = HEAP32[$25 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($25 + 4 | 0) >> 2] | 0;
|
|
$89 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = (HEAP32[($6 + 16 | 0) >> 2] | 0) + Math_imul(HEAP32[($6 + 12 | 0) >> 2] | 0, 12) | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $89;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$27 = 8;
|
|
HEAP32[(i64toi32_i32$0 + $27 | 0) >> 2] = HEAP32[($25 + $27 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btConvexHullComputer__Edge_2c_2016u___allocate_28int_2c_20btConvexHullComputer__Edge_20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(Math_imul(HEAP32[($5 + 8 | 0) >> 2] | 0, 12) | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btConvexHullComputer_cpp() {
|
|
__cxx_global_var_init_45();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_46() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114172 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btPolyhedralConvexShape__btPolyhedralConvexShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConvexInternalShape__btConvexInternalShape_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 99444 + 8 | 0;
|
|
HEAP32[($4 + 60 | 0) >> 2] = 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btPolyhedralConvexShape___btPolyhedralConvexShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $15 = 0, $19 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
HEAP32[$4 >> 2] = 99444 + 8 | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 60 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$15 = HEAP32[($4 + 60 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$15 >> 2] | 0) >> 2] | 0 | 0]($15) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 60 | 0) >> 2] | 0 | 0);
|
|
}
|
|
btConvexInternalShape___btConvexInternalShape_28_29($4 | 0) | 0;
|
|
$19 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $19 | 0;
|
|
}
|
|
|
|
function btPolyhedralConvexShape___btPolyhedralConvexShape_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btPolyhedralConvexShape__initializePolyhedralFeatures_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $5 = 0, $191 = 0, $13 = 0, $22 = 0, $84 = 0, $85 = 0, $98 = 0, $134 = Math_fround(0), $159 = Math_fround(0), $235 = 0, $237 = 0, $266 = 0, $269 = 0, $270 = 0, $272 = 0, $293 = 0, $294 = 0, $303 = 0, $304 = 0, $330 = 0, $338 = 0, $340 = 0, $378 = 0, $380 = 0, $717 = 0, $718 = 0, $1265 = 0, $1269 = 0, $94 = Math_fround(0), $169 = 0, $185 = 0, $212 = 0, $213 = 0, $230 = 0, $1554 = 0, $1564 = 0, $268 = 0, $1691 = 0, $1695 = 0, $1715 = 0, $1719 = 0, $1773 = 0, $1786 = 0, $1850 = 0, $1863 = 0, $397 = Math_fround(0), $409 = Math_fround(0), $421 = Math_fround(0), $427 = Math_fround(0), $478 = Math_fround(0), $2521 = 0, $2525 = 0, $797 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 848 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 844 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 840 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 844 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($5 + 60 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$13 = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$13 >> 2] | 0) >> 2] | 0 | 0]($13) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($5 + 60 | 0) >> 2] | 0 | 0);
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(132 | 0, 16 | 0) | 0), HEAP32[(wasm2js_i32$0 + 836 | 0) >> 2] = wasm2js_i32$1;
|
|
$22 = btConvexPolyhedron__operator_20new_28unsigned_20long_2c_20void__29(132 | 0, HEAP32[($4 + 836 | 0) >> 2] | 0 | 0) | 0;
|
|
btConvexPolyhedron__btConvexPolyhedron_28_29($22 | 0) | 0;
|
|
HEAP32[($5 + 60 | 0) >> 2] = $22;
|
|
btAlignedObjectArray_btVector3___btAlignedObjectArray_28_29($4 + 816 | 0 | 0) | 0;
|
|
HEAP32[($4 + 812 | 0) >> 2] = 0;
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($4 + 812 | 0) >> 2] | 0 | 0) < (FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 96 | 0) >> 2] | 0 | 0]($5) | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btVector3__btVector3_28_29($4 + 792 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btVector3___expand_28btVector3_20const__29($4 + 816 | 0 | 0, $4 + 792 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 808 | 0) >> 2] = wasm2js_i32$1;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 108 | 0) >> 2] | 0 | 0]($5, HEAP32[($4 + 812 | 0) >> 2] | 0, HEAP32[($4 + 808 | 0) >> 2] | 0);
|
|
HEAP32[($4 + 812 | 0) >> 2] = (HEAP32[($4 + 812 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
btConvexHullComputer__btConvexHullComputer_28_29($4 + 732 | 0 | 0) | 0;
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!(HEAP32[($4 + 840 | 0) >> 2] | 0)) {
|
|
break label$5
|
|
}
|
|
btAlignedObjectArray_btVector3___btAlignedObjectArray_28_29($4 + 712 | 0 | 0) | 0;
|
|
btGeometryUtil__getPlaneEquationsFromVertices_28btAlignedObjectArray_btVector3___2c_20btAlignedObjectArray_btVector3___29($4 + 816 | 0 | 0, $4 + 712 | 0 | 0);
|
|
btAlignedObjectArray_btVector3___btAlignedObjectArray_28_29($4 + 692 | 0 | 0) | 0;
|
|
HEAP32[($4 + 688 | 0) >> 2] = 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($4 + 688 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btVector3___size_28_29_20const($4 + 712 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$84 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29($4 + 712 | 0 | 0, HEAP32[($4 + 688 | 0) >> 2] | 0 | 0) | 0;
|
|
$85 = 8;
|
|
i64toi32_i32$2 = $84 + $85 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1265 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 672 | 0) + $85 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1265;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $84;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1269 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 672 | 0) >> 2] = $1269;
|
|
HEAP32[($4 + 676 | 0) >> 2] = i64toi32_i32$0;
|
|
$94 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($5));
|
|
$98 = btVector3__operator_20float__28_29($4 + 672 | 0 | 0) | 0;
|
|
HEAPF32[($98 + 12 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($98 + 12 | 0) >> 2]) - $94);
|
|
btAlignedObjectArray_btVector3___push_back_28btVector3_20const__29($4 + 692 | 0 | 0, $4 + 672 | 0 | 0);
|
|
HEAP32[($4 + 688 | 0) >> 2] = (HEAP32[($4 + 688 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
btAlignedObjectArray_btVector3___btAlignedObjectArray_28_29($4 + 652 | 0 | 0) | 0;
|
|
btGeometryUtil__getVerticesFromPlaneEquations_28btAlignedObjectArray_btVector3__20const__2c_20btAlignedObjectArray_btVector3___29($4 + 692 | 0 | 0, $4 + 652 | 0 | 0);
|
|
$134 = Math_fround(0 | 0);
|
|
Math_fround(btConvexHullComputer__compute_28float_20const__2c_20int_2c_20int_2c_20float_2c_20float_29($4 + 732 | 0 | 0, btVector3__getX_28_29_20const(btAlignedObjectArray_btVector3___operator_5b_5d_28int_29($4 + 652 | 0 | 0, 0 | 0) | 0 | 0) | 0 | 0, 16 | 0, btAlignedObjectArray_btVector3___size_28_29_20const($4 + 652 | 0 | 0) | 0 | 0, Math_fround($134), Math_fround($134)));
|
|
btAlignedObjectArray_btVector3____btAlignedObjectArray_28_29($4 + 652 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3____btAlignedObjectArray_28_29($4 + 692 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3____btAlignedObjectArray_28_29($4 + 712 | 0 | 0) | 0;
|
|
break label$4;
|
|
}
|
|
$159 = Math_fround(0 | 0);
|
|
Math_fround(btConvexHullComputer__compute_28float_20const__2c_20int_2c_20int_2c_20float_2c_20float_29($4 + 732 | 0 | 0, btVector3__getX_28_29_20const(btAlignedObjectArray_btVector3___operator_5b_5d_28int_29($4 + 816 | 0 | 0, 0 | 0) | 0 | 0) | 0 | 0, 16 | 0, btAlignedObjectArray_btVector3___size_28_29_20const($4 + 816 | 0 | 0) | 0 | 0, Math_fround($159), Math_fround($159)));
|
|
}
|
|
btAlignedObjectArray_btVector3___btAlignedObjectArray_28_29($4 + 632 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_int___size_28_29_20const(($4 + 732 | 0) + 40 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 628 | 0) >> 2] = wasm2js_i32$1;
|
|
$169 = HEAP32[($4 + 628 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($4 + 612 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3___resize_28int_2c_20btVector3_20const__29($4 + 632 | 0 | 0, $169 | 0, $4 + 612 | 0 | 0);
|
|
HEAP32[($4 + 608 | 0) >> 2] = $4 + 732 | 0;
|
|
btAlignedObjectArray_btFace___btAlignedObjectArray_28_29($4 + 588 | 0 | 0) | 0;
|
|
$185 = HEAP32[($4 + 628 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 584 | 0) >> 2] = 0;
|
|
i64toi32_i32$0 = 0;
|
|
$191 = 0;
|
|
i64toi32_i32$1 = $4 + 576 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $191;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $4 + 568 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $191;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $4 + 560 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $191;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 552 | 0) >> 2] = $191;
|
|
HEAP32[($4 + 556 | 0) >> 2] = i64toi32_i32$0;
|
|
btFace__btFace_28_29($4 + 552 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btFace___resize_28int_2c_20btFace_20const__29($4 + 588 | 0 | 0, $185 | 0, $4 + 552 | 0 | 0);
|
|
btFace___btFace_28_29($4 + 552 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btVector3___size_28_29_20const(HEAP32[($4 + 608 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 548 | 0) >> 2] = wasm2js_i32$1;
|
|
$212 = (HEAP32[($5 + 60 | 0) >> 2] | 0) + 4 | 0;
|
|
$213 = HEAP32[($4 + 548 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($4 + 532 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3___resize_28int_2c_20btVector3_20const__29($212 | 0, $213 | 0, $4 + 532 | 0 | 0);
|
|
HEAP32[($4 + 528 | 0) >> 2] = 0;
|
|
label$8 : {
|
|
label$9 : while (1) {
|
|
if (!((HEAP32[($4 + 528 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 548 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
$230 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29(HEAP32[($4 + 608 | 0) >> 2] | 0 | 0, HEAP32[($4 + 528 | 0) >> 2] | 0 | 0) | 0;
|
|
$235 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29((HEAP32[($5 + 60 | 0) >> 2] | 0) + 4 | 0 | 0, HEAP32[($4 + 528 | 0) >> 2] | 0 | 0) | 0;
|
|
i64toi32_i32$2 = $230;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1554 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $235;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1554;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$237 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $237 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1564 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $235 + $237 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1564;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($4 + 528 | 0) >> 2] = (HEAP32[($4 + 528 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$9;
|
|
};
|
|
}
|
|
HEAP32[($4 + 524 | 0) >> 2] = 0;
|
|
label$10 : {
|
|
label$11 : while (1) {
|
|
if (!((HEAP32[($4 + 524 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 628 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29((HEAP32[($4 + 608 | 0) >> 2] | 0) + 40 | 0 | 0, HEAP32[($4 + 524 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 520 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btConvexHullComputer__Edge___operator_5b_5d_28int_29((HEAP32[($4 + 608 | 0) >> 2] | 0) + 20 | 0 | 0, HEAP32[($4 + 520 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 516 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 512 | 0) >> 2] = HEAP32[($4 + 516 | 0) >> 2] | 0;
|
|
$266 = $4 + 464 | 0;
|
|
$268 = $266 + 48 | 0;
|
|
$269 = $266;
|
|
label$12 : while (1) {
|
|
$270 = $269;
|
|
btVector3__btVector3_28_29($270 | 0) | 0;
|
|
$272 = $270 + 16 | 0;
|
|
$269 = $272;
|
|
if (!(($272 | 0) == ($268 | 0) & 1 | 0)) {
|
|
continue label$12
|
|
}
|
|
break label$12;
|
|
};
|
|
HEAP32[($4 + 460 | 0) >> 2] = 0;
|
|
label$13 : while (1) {
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btConvexHullComputer__Edge__getSourceVertex_28_29_20const(HEAP32[($4 + 512 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 456 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_int___push_back_28int_20const__29(btAlignedObjectArray_btFace___operator_5b_5d_28int_29($4 + 588 | 0 | 0, HEAP32[($4 + 524 | 0) >> 2] | 0 | 0) | 0 | 0, $4 + 456 | 0 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btConvexHullComputer__Edge__getTargetVertex_28_29_20const(HEAP32[($4 + 512 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 452 | 0) >> 2] = wasm2js_i32$1;
|
|
$293 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29(HEAP32[($4 + 608 | 0) >> 2] | 0 | 0, HEAP32[($4 + 456 | 0) >> 2] | 0 | 0) | 0;
|
|
$294 = 8;
|
|
i64toi32_i32$2 = $293 + $294 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1691 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 432 | 0) + $294 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1691;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $293;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1695 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 432 | 0) >> 2] = $1695;
|
|
HEAP32[($4 + 436 | 0) >> 2] = i64toi32_i32$0;
|
|
$303 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29(HEAP32[($4 + 608 | 0) >> 2] | 0 | 0, HEAP32[($4 + 452 | 0) >> 2] | 0 | 0) | 0;
|
|
$304 = 8;
|
|
i64toi32_i32$2 = $303 + $304 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1715 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 416 | 0) + $304 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1715;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $303;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1719 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 416 | 0) >> 2] = $1719;
|
|
HEAP32[($4 + 420 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 400 | 0 | 0, $4 + 416 | 0 | 0, $4 + 432 | 0 | 0);
|
|
btVector3__normalize_28_29($4 + 400 | 0 | 0) | 0;
|
|
label$14 : {
|
|
if (!((HEAP32[($4 + 460 | 0) >> 2] | 0 | 0) < (2 | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
$330 = HEAP32[($4 + 460 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 460 | 0) >> 2] = $330 + 1 | 0;
|
|
$338 = ($4 + 464 | 0) + ($330 << 4 | 0) | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[($4 + 400 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($4 + 404 | 0) >> 2] | 0;
|
|
$1773 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $338;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1773;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$340 = 8;
|
|
i64toi32_i32$2 = ($4 + 400 | 0) + $340 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1786 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $338 + $340 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1786;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btConvexHullComputer__Edge__getNextEdgeOfFace_28_29_20const(HEAP32[($4 + 512 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 512 | 0) >> 2] = wasm2js_i32$1;
|
|
if ((HEAP32[($4 + 512 | 0) >> 2] | 0 | 0) != (HEAP32[($4 + 516 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
continue label$13
|
|
}
|
|
break label$13;
|
|
};
|
|
HEAPF32[($4 + 396 | 0) >> 2] = Math_fround(1000000015047466219876688.0e6);
|
|
label$15 : {
|
|
label$16 : {
|
|
if (!((HEAP32[($4 + 460 | 0) >> 2] | 0 | 0) == (2 | 0) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
btVector3__cross_28btVector3_20const__29_20const($4 + 380 | 0 | 0, $4 + 464 | 0 | 0, ($4 + 464 | 0) + 16 | 0 | 0);
|
|
$378 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29($4 + 632 | 0 | 0, HEAP32[($4 + 524 | 0) >> 2] | 0 | 0) | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[($4 + 380 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($4 + 384 | 0) >> 2] | 0;
|
|
$1850 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $378;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1850;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$380 = 8;
|
|
i64toi32_i32$2 = ($4 + 380 | 0) + $380 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1863 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $378 + $380 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1863;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__normalize_28_29(btAlignedObjectArray_btVector3___operator_5b_5d_28int_29($4 + 632 | 0 | 0, HEAP32[($4 + 524 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
$397 = Math_fround(HEAPF32[(btVector3__getX_28_29_20const(btAlignedObjectArray_btVector3___operator_5b_5d_28int_29($4 + 632 | 0 | 0, HEAP32[($4 + 524 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) >> 2]);
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btFace___operator_5b_5d_28int_29($4 + 588 | 0 | 0, HEAP32[($4 + 524 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $397), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
$409 = Math_fround(HEAPF32[(btVector3__getY_28_29_20const(btAlignedObjectArray_btVector3___operator_5b_5d_28int_29($4 + 632 | 0 | 0, HEAP32[($4 + 524 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) >> 2]);
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btFace___operator_5b_5d_28int_29($4 + 588 | 0 | 0, HEAP32[($4 + 524 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $409), HEAPF32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_f32$0;
|
|
$421 = Math_fround(HEAPF32[(btVector3__getZ_28_29_20const(btAlignedObjectArray_btVector3___operator_5b_5d_28int_29($4 + 632 | 0 | 0, HEAP32[($4 + 524 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) >> 2]);
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btFace___operator_5b_5d_28int_29($4 + 588 | 0 | 0, HEAP32[($4 + 524 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $421), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
$427 = Math_fround(HEAPF32[($4 + 396 | 0) >> 2]);
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btFace___operator_5b_5d_28int_29($4 + 588 | 0 | 0, HEAP32[($4 + 524 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $427), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
break label$15;
|
|
}
|
|
__assert_fail(86177 | 0, 74379 | 0, 152 | 0, 69994 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($4 + 376 | 0) >> 2] = 0;
|
|
label$17 : {
|
|
label$18 : while (1) {
|
|
if (!((HEAP32[($4 + 376 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_int___size_28_29_20const(btAlignedObjectArray_btFace___operator_5b_5d_28int_29($4 + 588 | 0 | 0, HEAP32[($4 + 524 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const(btAlignedObjectArray_btVector3___operator_5b_5d_28int_29((HEAP32[($5 + 60 | 0) >> 2] | 0) + 4 | 0 | 0, HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29(btAlignedObjectArray_btFace___operator_5b_5d_28int_29($4 + 588 | 0 | 0, HEAP32[($4 + 524 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($4 + 376 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) | 0 | 0, btAlignedObjectArray_btVector3___operator_5b_5d_28int_29($4 + 632 | 0 | 0, HEAP32[($4 + 524 | 0) >> 2] | 0 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 372 | 0) >> 2] = wasm2js_f32$0;
|
|
label$19 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 396 | 0) >> 2]) > Math_fround(HEAPF32[($4 + 372 | 0) >> 2]) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
HEAPF32[($4 + 396 | 0) >> 2] = Math_fround(HEAPF32[($4 + 372 | 0) >> 2]);
|
|
}
|
|
HEAP32[($4 + 376 | 0) >> 2] = (HEAP32[($4 + 376 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$18;
|
|
};
|
|
}
|
|
$478 = Math_fround(-Math_fround(HEAPF32[($4 + 396 | 0) >> 2]));
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btFace___operator_5b_5d_28int_29($4 + 588 | 0 | 0, HEAP32[($4 + 524 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $478), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP32[($4 + 524 | 0) >> 2] = (HEAP32[($4 + 524 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$11;
|
|
};
|
|
}
|
|
HEAPF32[($4 + 368 | 0) >> 2] = Math_fround(.9990000128746033);
|
|
btAlignedObjectArray_int___btAlignedObjectArray_28_29($4 + 348 | 0 | 0) | 0;
|
|
HEAP32[($4 + 344 | 0) >> 2] = 0;
|
|
label$20 : {
|
|
label$21 : while (1) {
|
|
if (!((HEAP32[($4 + 344 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btFace___size_28_29_20const($4 + 588 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$20
|
|
}
|
|
btAlignedObjectArray_int___push_back_28int_20const__29($4 + 348 | 0 | 0, $4 + 344 | 0 | 0);
|
|
HEAP32[($4 + 344 | 0) >> 2] = (HEAP32[($4 + 344 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$21;
|
|
};
|
|
}
|
|
label$22 : {
|
|
label$23 : while (1) {
|
|
if (!(btAlignedObjectArray_int___size_28_29_20const($4 + 348 | 0 | 0) | 0)) {
|
|
break label$22
|
|
}
|
|
btAlignedObjectArray_int___btAlignedObjectArray_28_29($4 + 324 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($4 + 348 | 0 | 0, (btAlignedObjectArray_int___size_28_29_20const($4 + 348 | 0 | 0) | 0) - 1 | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 320 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_int___push_back_28int_20const__29($4 + 324 | 0 | 0, $4 + 320 | 0 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btFace___operator_5b_5d_28int_29($4 + 588 | 0 | 0, HEAP32[($4 + 320 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 316 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_int___pop_back_28_29($4 + 348 | 0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 300 | 0 | 0, (HEAP32[($4 + 316 | 0) >> 2] | 0) + 20 | 0 | 0, ((HEAP32[($4 + 316 | 0) >> 2] | 0) + 20 | 0) + 4 | 0 | 0, ((HEAP32[($4 + 316 | 0) >> 2] | 0) + 20 | 0) + 8 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = (btAlignedObjectArray_int___size_28_29_20const($4 + 348 | 0 | 0) | 0) - 1 | 0), HEAP32[(wasm2js_i32$0 + 296 | 0) >> 2] = wasm2js_i32$1;
|
|
label$24 : {
|
|
label$25 : while (1) {
|
|
if (!((HEAP32[($4 + 296 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$24
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($4 + 348 | 0 | 0, HEAP32[($4 + 296 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 292 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btFace___operator_5b_5d_28int_29($4 + 588 | 0 | 0, HEAP32[($4 + 292 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 288 | 0) >> 2] = wasm2js_i32$1;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 272 | 0 | 0, (HEAP32[($4 + 288 | 0) >> 2] | 0) + 20 | 0 | 0, ((HEAP32[($4 + 288 | 0) >> 2] | 0) + 20 | 0) + 4 | 0 | 0, ((HEAP32[($4 + 288 | 0) >> 2] | 0) + 20 | 0) + 8 | 0 | 0) | 0;
|
|
label$26 : {
|
|
if (!(Math_fround(btVector3__dot_28btVector3_20const__29_20const($4 + 300 | 0 | 0, $4 + 272 | 0 | 0)) > Math_fround(HEAPF32[($4 + 368 | 0) >> 2]) & 1 | 0)) {
|
|
break label$26
|
|
}
|
|
btAlignedObjectArray_int___push_back_28int_20const__29($4 + 324 | 0 | 0, $4 + 292 | 0 | 0);
|
|
btAlignedObjectArray_int___remove_28int_20const__29($4 + 348 | 0 | 0, $4 + 292 | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 296 | 0) >> 2] = (HEAP32[($4 + 296 | 0) >> 2] | 0) + -1 | 0;
|
|
continue label$25;
|
|
};
|
|
}
|
|
HEAP8[($4 + 271 | 0) >> 0] = 0;
|
|
label$27 : {
|
|
if (!((btAlignedObjectArray_int___size_28_29_20const($4 + 324 | 0 | 0) | 0 | 0) > (1 | 0) & 1 | 0)) {
|
|
break label$27
|
|
}
|
|
btAlignedObjectArray_GrahamVector3___btAlignedObjectArray_28_29($4 + 248 | 0 | 0) | 0;
|
|
HEAPF32[($4 + 228 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 224 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 220 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 232 | 0 | 0, $4 + 228 | 0 | 0, $4 + 224 | 0 | 0, $4 + 220 | 0 | 0) | 0;
|
|
HEAP32[($4 + 216 | 0) >> 2] = 0;
|
|
label$28 : {
|
|
label$29 : while (1) {
|
|
if (!((HEAP32[($4 + 216 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_int___size_28_29_20const($4 + 324 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$28
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btFace___operator_5b_5d_28int_29($4 + 588 | 0 | 0, HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($4 + 324 | 0 | 0, HEAP32[($4 + 216 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 212 | 0) >> 2] = wasm2js_i32$1;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 196 | 0 | 0, (HEAP32[($4 + 212 | 0) >> 2] | 0) + 20 | 0 | 0, ((HEAP32[($4 + 212 | 0) >> 2] | 0) + 20 | 0) + 4 | 0 | 0, ((HEAP32[($4 + 212 | 0) >> 2] | 0) + 20 | 0) + 8 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($4 + 232 | 0 | 0, $4 + 196 | 0 | 0) | 0;
|
|
HEAP32[($4 + 192 | 0) >> 2] = 0;
|
|
label$30 : {
|
|
label$31 : while (1) {
|
|
if (!((HEAP32[($4 + 192 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_int___size_28_29_20const(HEAP32[($4 + 212 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$30
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29(HEAP32[($4 + 212 | 0) >> 2] | 0 | 0, HEAP32[($4 + 192 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 188 | 0) >> 2] = wasm2js_i32$1;
|
|
$717 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29((HEAP32[($5 + 60 | 0) >> 2] | 0) + 4 | 0 | 0, HEAP32[($4 + 188 | 0) >> 2] | 0 | 0) | 0;
|
|
$718 = 8;
|
|
i64toi32_i32$2 = $717 + $718 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2521 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 168 | 0) + $718 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2521;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $717;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2525 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 168 | 0) >> 2] = $2525;
|
|
HEAP32[($4 + 172 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP8[($4 + 167 | 0) >> 0] = 0;
|
|
HEAP32[($4 + 160 | 0) >> 2] = 0;
|
|
label$32 : {
|
|
label$33 : while (1) {
|
|
if (!((HEAP32[($4 + 160 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_GrahamVector3___size_28_29_20const($4 + 248 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$32
|
|
}
|
|
label$34 : {
|
|
if (!((HEAP32[((btAlignedObjectArray_GrahamVector3___operator_5b_5d_28int_29($4 + 248 | 0 | 0, HEAP32[($4 + 160 | 0) >> 2] | 0 | 0) | 0) + 20 | 0) >> 2] | 0 | 0) == (HEAP32[($4 + 188 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$34
|
|
}
|
|
HEAP8[($4 + 167 | 0) >> 0] = 1;
|
|
break label$32;
|
|
}
|
|
HEAP32[($4 + 160 | 0) >> 2] = (HEAP32[($4 + 160 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$33;
|
|
};
|
|
}
|
|
label$35 : {
|
|
if ((HEAPU8[($4 + 167 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$35
|
|
}
|
|
GrahamVector3__GrahamVector3_28btVector3_20const__2c_20int_29($4 + 136 | 0 | 0, $4 + 168 | 0 | 0, HEAP32[($4 + 188 | 0) >> 2] | 0 | 0) | 0;
|
|
btAlignedObjectArray_GrahamVector3___push_back_28GrahamVector3_20const__29($4 + 248 | 0 | 0, $4 + 136 | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 192 | 0) >> 2] = (HEAP32[($4 + 192 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$31;
|
|
};
|
|
}
|
|
HEAP32[($4 + 216 | 0) >> 2] = (HEAP32[($4 + 216 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$29;
|
|
};
|
|
}
|
|
btFace__btFace_28_29($4 + 100 | 0 | 0) | 0;
|
|
HEAP32[($4 + 96 | 0) >> 2] = 0;
|
|
label$36 : {
|
|
label$37 : while (1) {
|
|
if (!((HEAP32[($4 + 96 | 0) >> 2] | 0 | 0) < (4 | 0) & 1 | 0)) {
|
|
break label$36
|
|
}
|
|
$797 = (btAlignedObjectArray_btFace___operator_5b_5d_28int_29($4 + 588 | 0 | 0, HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($4 + 324 | 0 | 0, 0 | 0) | 0) >> 2] | 0 | 0) | 0) + 20 | 0;
|
|
HEAPF32[((($4 + 100 | 0) + 20 | 0) + ((HEAP32[($4 + 96 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($797 + ((HEAP32[($4 + 96 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
HEAP32[($4 + 96 | 0) >> 2] = (HEAP32[($4 + 96 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$37;
|
|
};
|
|
}
|
|
btAlignedObjectArray_GrahamVector3___btAlignedObjectArray_28_29($4 + 76 | 0 | 0) | 0;
|
|
btVector3__normalize_28_29($4 + 232 | 0 | 0) | 0;
|
|
GrahamScanConvexHull2D_28btAlignedObjectArray_GrahamVector3___2c_20btAlignedObjectArray_GrahamVector3___2c_20btVector3_20const__29($4 + 248 | 0 | 0, $4 + 76 | 0 | 0, $4 + 232 | 0 | 0);
|
|
HEAP32[($4 + 72 | 0) >> 2] = 0;
|
|
label$38 : {
|
|
label$39 : while (1) {
|
|
if (!((HEAP32[($4 + 72 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_GrahamVector3___size_28_29_20const($4 + 76 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$38
|
|
}
|
|
btAlignedObjectArray_int___push_back_28int_20const__29($4 + 100 | 0 | 0, (btAlignedObjectArray_GrahamVector3___operator_5b_5d_28int_29($4 + 76 | 0 | 0, HEAP32[($4 + 72 | 0) >> 2] | 0 | 0) | 0) + 20 | 0 | 0);
|
|
HEAP32[($4 + 68 | 0) >> 2] = 0;
|
|
label$40 : {
|
|
label$41 : while (1) {
|
|
if (!((HEAP32[($4 + 68 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_GrahamVector3___size_28_29_20const($4 + 248 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$40
|
|
}
|
|
label$42 : {
|
|
if (!((HEAP32[((btAlignedObjectArray_GrahamVector3___operator_5b_5d_28int_29($4 + 248 | 0 | 0, HEAP32[($4 + 68 | 0) >> 2] | 0 | 0) | 0) + 20 | 0) >> 2] | 0 | 0) == (HEAP32[((btAlignedObjectArray_GrahamVector3___operator_5b_5d_28int_29($4 + 76 | 0 | 0, HEAP32[($4 + 72 | 0) >> 2] | 0 | 0) | 0) + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$42
|
|
}
|
|
(wasm2js_i32$0 = btAlignedObjectArray_GrahamVector3___operator_5b_5d_28int_29($4 + 248 | 0 | 0, HEAP32[($4 + 68 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = -1), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$40;
|
|
}
|
|
HEAP32[($4 + 68 | 0) >> 2] = (HEAP32[($4 + 68 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$41;
|
|
};
|
|
}
|
|
HEAP32[($4 + 72 | 0) >> 2] = (HEAP32[($4 + 72 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$39;
|
|
};
|
|
}
|
|
HEAP8[($4 + 67 | 0) >> 0] = 0;
|
|
HEAP32[($4 + 60 | 0) >> 2] = 0;
|
|
label$43 : {
|
|
label$44 : while (1) {
|
|
if (!((HEAP32[($4 + 60 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_GrahamVector3___size_28_29_20const($4 + 248 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$43
|
|
}
|
|
label$45 : {
|
|
label$46 : {
|
|
if (!((HEAP32[((btAlignedObjectArray_GrahamVector3___operator_5b_5d_28int_29($4 + 248 | 0 | 0, HEAP32[($4 + 60 | 0) >> 2] | 0 | 0) | 0) + 20 | 0) >> 2] | 0 | 0) == (-1 | 0) & 1 | 0)) {
|
|
break label$46
|
|
}
|
|
break label$45;
|
|
}
|
|
HEAP32[($4 + 56 | 0) >> 2] = 0;
|
|
label$47 : {
|
|
label$48 : while (1) {
|
|
if (!((HEAP32[($4 + 56 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btFace___size_28_29_20const($4 + 588 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$47
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btFace___operator_5b_5d_28int_29($4 + 588 | 0 | 0, HEAP32[($4 + 56 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 52 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP8[($4 + 51 | 0) >> 0] = 0;
|
|
HEAP32[($4 + 44 | 0) >> 2] = 0;
|
|
label$49 : {
|
|
label$50 : while (1) {
|
|
if (!((HEAP32[($4 + 44 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_int___size_28_29_20const($4 + 324 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$49
|
|
}
|
|
label$51 : {
|
|
if (!((HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($4 + 324 | 0 | 0, HEAP32[($4 + 44 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) == (HEAP32[($4 + 56 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$51
|
|
}
|
|
HEAP8[($4 + 51 | 0) >> 0] = 1;
|
|
break label$49;
|
|
}
|
|
HEAP32[($4 + 44 | 0) >> 2] = (HEAP32[($4 + 44 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$50;
|
|
};
|
|
}
|
|
label$52 : {
|
|
label$53 : {
|
|
if (!((HEAPU8[($4 + 51 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$53
|
|
}
|
|
break label$52;
|
|
}
|
|
HEAP32[($4 + 40 | 0) >> 2] = 0;
|
|
label$54 : {
|
|
label$55 : while (1) {
|
|
if (!((HEAP32[($4 + 40 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_int___size_28_29_20const(HEAP32[($4 + 52 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$54
|
|
}
|
|
label$56 : {
|
|
if (!((HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29(HEAP32[($4 + 52 | 0) >> 2] | 0 | 0, HEAP32[($4 + 40 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) == (HEAP32[((btAlignedObjectArray_GrahamVector3___operator_5b_5d_28int_29($4 + 248 | 0 | 0, HEAP32[($4 + 60 | 0) >> 2] | 0 | 0) | 0) + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$56
|
|
}
|
|
HEAP8[($4 + 67 | 0) >> 0] = 1;
|
|
break label$54;
|
|
}
|
|
HEAP32[($4 + 40 | 0) >> 2] = (HEAP32[($4 + 40 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$55;
|
|
};
|
|
}
|
|
label$57 : {
|
|
if (!((HEAPU8[($4 + 67 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$57
|
|
}
|
|
break label$47;
|
|
}
|
|
}
|
|
HEAP32[($4 + 56 | 0) >> 2] = (HEAP32[($4 + 56 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$48;
|
|
};
|
|
}
|
|
label$58 : {
|
|
if (!((HEAPU8[($4 + 67 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$58
|
|
}
|
|
break label$43;
|
|
}
|
|
}
|
|
HEAP32[($4 + 60 | 0) >> 2] = (HEAP32[($4 + 60 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$44;
|
|
};
|
|
}
|
|
label$59 : {
|
|
if ((HEAPU8[($4 + 67 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$59
|
|
}
|
|
HEAP8[($4 + 271 | 0) >> 0] = 1;
|
|
btAlignedObjectArray_btFace___push_back_28btFace_20const__29((HEAP32[($5 + 60 | 0) >> 2] | 0) + 24 | 0 | 0, $4 + 100 | 0 | 0);
|
|
}
|
|
btAlignedObjectArray_GrahamVector3____btAlignedObjectArray_28_29($4 + 76 | 0 | 0) | 0;
|
|
btFace___btFace_28_29($4 + 100 | 0 | 0) | 0;
|
|
btAlignedObjectArray_GrahamVector3____btAlignedObjectArray_28_29($4 + 248 | 0 | 0) | 0;
|
|
}
|
|
label$60 : {
|
|
if ((HEAPU8[($4 + 271 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$60
|
|
}
|
|
HEAP32[($4 + 36 | 0) >> 2] = 0;
|
|
label$61 : {
|
|
label$62 : while (1) {
|
|
if (!((HEAP32[($4 + 36 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_int___size_28_29_20const($4 + 324 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$61
|
|
}
|
|
btFace__btFace_28btFace_20const__29($4 | 0, btAlignedObjectArray_btFace___operator_5b_5d_28int_29($4 + 588 | 0 | 0, HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($4 + 324 | 0 | 0, HEAP32[($4 + 36 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
btAlignedObjectArray_btFace___push_back_28btFace_20const__29((HEAP32[($5 + 60 | 0) >> 2] | 0) + 24 | 0 | 0, $4 | 0);
|
|
btFace___btFace_28_29($4 | 0) | 0;
|
|
HEAP32[($4 + 36 | 0) >> 2] = (HEAP32[($4 + 36 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$62;
|
|
};
|
|
}
|
|
}
|
|
btAlignedObjectArray_int____btAlignedObjectArray_28_29($4 + 324 | 0 | 0) | 0;
|
|
continue label$23;
|
|
};
|
|
}
|
|
btConvexPolyhedron__initialize_28_29(HEAP32[($5 + 60 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_int____btAlignedObjectArray_28_29($4 + 348 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btFace____btAlignedObjectArray_28_29($4 + 588 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3____btAlignedObjectArray_28_29($4 + 632 | 0 | 0) | 0;
|
|
btConvexHullComputer___btConvexHullComputer_28_29($4 + 732 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3____btAlignedObjectArray_28_29($4 + 816 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 848 | 0;
|
|
return 1 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btConvexPolyhedron__operator_20new_28unsigned_20long_2c_20void__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return HEAP32[($4 + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btVector3___expand_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $25 = 0, $28 = 0, $100 = 0, $110 = 0, $36 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btVector3___size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btVector3___capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btVector3___reserve_28int_29($5 | 0, btAlignedObjectArray_btVector3___allocSize_28int_29($5 | 0, btAlignedObjectArray_btVector3___size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
$25 = btVector3__operator_20new_28unsigned_20long_2c_20void__29(16 | 0, (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 4 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$100 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $25;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $100;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$28 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $28 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$110 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $25 + $28 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $110;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$36 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 4 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $36 | 0;
|
|
}
|
|
|
|
function btConvexHullComputer__btConvexHullComputer_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btVector3___btAlignedObjectArray_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btConvexHullComputer__Edge___btAlignedObjectArray_28_29($4 + 20 | 0 | 0) | 0;
|
|
btAlignedObjectArray_int___btAlignedObjectArray_28_29($4 + 40 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexHullComputer__compute_28float_20const__2c_20int_2c_20int_2c_20float_2c_20float_29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = Math_fround($4);
|
|
$5 = Math_fround($5);
|
|
var $8 = 0, $18 = Math_fround(0);
|
|
$8 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 16 | 0) >> 2] = $3;
|
|
HEAPF32[($8 + 12 | 0) >> 2] = $4;
|
|
HEAPF32[($8 + 8 | 0) >> 2] = $5;
|
|
$18 = Math_fround(btConvexHullComputer__compute_28void_20const__2c_20bool_2c_20int_2c_20int_2c_20float_2c_20float_29(HEAP32[($8 + 28 | 0) >> 2] | 0 | 0, HEAP32[($8 + 24 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0, HEAP32[($8 + 20 | 0) >> 2] | 0 | 0, HEAP32[($8 + 16 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($8 + 12 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($8 + 8 | 0) >> 2]))));
|
|
__stack_pointer = $8 + 32 | 0;
|
|
return Math_fround($18);
|
|
}
|
|
|
|
function btAlignedObjectArray_btFace___btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btFace_2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btFace___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btFace__btFace_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_int___btAlignedObjectArray_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btFace___resize_28int_2c_20btFace_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btFace___size_28_29_20const($6 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
btFace___btFace_28_29((HEAP32[($6 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 12 | 0) >> 2] | 0, 36) | 0 | 0) | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) > (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btAlignedObjectArray_btFace___reserve_28int_29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
btFace__btFace_28btFace_20const__29((HEAP32[($6 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 8 | 0) >> 2] | 0, 36) | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btFace___btFace_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_int____btAlignedObjectArray_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullComputer__Edge___operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btConvexHullComputer__Edge___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($4 + 8 | 0) >> 2] | 0, 12) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btConvexHullComputer__Edge__getSourceVertex_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
return HEAP32[(($4 + Math_imul(HEAP32[($4 + 4 | 0) >> 2] | 0, 12) | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btFace___operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btFace___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($4 + 8 | 0) >> 2] | 0, 36) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btConvexHullComputer__Edge__getTargetVertex_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btConvexHullComputer__Edge__getNextEdgeOfFace_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $9 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$9 = btConvexHullComputer__Edge__getNextEdgeOfVertex_28_29_20const($4 + Math_imul(HEAP32[($4 + 4 | 0) >> 2] | 0, 12) | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_int___pop_back_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) > (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85800 | 0, 78192 | 0, 201 | 0, 77711 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + -1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_int___remove_28int_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_int___findLinearSearch_28int_20const__29_20const($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_int___removeAtIndex_28int_29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_GrahamVector3___btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_GrahamVector3_2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_GrahamVector3___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_GrahamVector3___size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_GrahamVector3___operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_GrahamVector3___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($4 + 8 | 0) >> 2] | 0, 24) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function GrahamVector3__GrahamVector3_28btVector3_20const__2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, $9 = 0, $31 = 0, $41 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$31 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6;
|
|
HEAP32[$6 >> 2] = $31;
|
|
HEAP32[($6 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$9 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $9 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$41 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6 + $9 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $41;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($6 + 20 | 0) >> 2] = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_GrahamVector3___push_back_28GrahamVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$0 = 0, $5 = 0, i64toi32_i32$2 = 0, $4 = 0, i64toi32_i32$1 = 0, $22 = 0, $23 = 0, $25 = 0, $29 = 0, $92 = 0, $102 = 0, $112 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_GrahamVector3___size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_GrahamVector3___capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_GrahamVector3___reserve_28int_29($5 | 0, btAlignedObjectArray_GrahamVector3___allocSize_28int_29($5 | 0, btAlignedObjectArray_GrahamVector3___size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
$22 = btVector3__operator_20new_28unsigned_20long_2c_20void__29(24 | 0, (HEAP32[($5 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 4 | 0) >> 2] | 0, 24) | 0 | 0) | 0;
|
|
$23 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $23;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$92 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $92;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$25 = 16;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $25 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$102 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $25 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $102;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$29 = 8;
|
|
i64toi32_i32$2 = $23 + $29 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$112 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22 + $29 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $112;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function GrahamScanConvexHull2D_28btAlignedObjectArray_GrahamVector3___2c_20btAlignedObjectArray_GrahamVector3___2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $181 = 0, $131 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 176 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 172 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 168 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 164 | 0) >> 2] = $2;
|
|
btVector3__btVector3_28_29($5 + 148 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 132 | 0 | 0) | 0;
|
|
void_20btPlaneSpace1_btVector3__28btVector3_20const__2c_20btVector3__2c_20btVector3__29(HEAP32[($5 + 164 | 0) >> 2] | 0 | 0, $5 + 148 | 0 | 0, $5 + 132 | 0 | 0);
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((btAlignedObjectArray_GrahamVector3___size_28_29_20const(HEAP32[($5 + 172 | 0) >> 2] | 0 | 0) | 0 | 0) <= (1 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 128 | 0) >> 2] = 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 128 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_GrahamVector3___size_28_29_20const(HEAP32[($5 + 172 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
btAlignedObjectArray_GrahamVector3___push_back_28GrahamVector3_20const__29(HEAP32[($5 + 168 | 0) >> 2] | 0 | 0, btAlignedObjectArray_GrahamVector3___operator_5b_5d_28int_29(HEAP32[($5 + 172 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0);
|
|
HEAP32[($5 + 128 | 0) >> 2] = (HEAP32[($5 + 128 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
break label$1;
|
|
}
|
|
HEAP32[($5 + 124 | 0) >> 2] = 0;
|
|
label$5 : {
|
|
label$6 : while (1) {
|
|
if (!((HEAP32[($5 + 124 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_GrahamVector3___size_28_29_20const(HEAP32[($5 + 172 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const(btAlignedObjectArray_GrahamVector3___operator_5b_5d_28int_29(HEAP32[($5 + 172 | 0) >> 2] | 0 | 0, HEAP32[($5 + 124 | 0) >> 2] | 0 | 0) | 0 | 0, $5 + 148 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 120 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const(btAlignedObjectArray_GrahamVector3___operator_5b_5d_28int_29(HEAP32[($5 + 172 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0, $5 + 148 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 116 | 0) >> 2] = wasm2js_f32$0;
|
|
label$7 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 120 | 0) >> 2]) < Math_fround(HEAPF32[($5 + 116 | 0) >> 2]) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
btAlignedObjectArray_GrahamVector3___swap_28int_2c_20int_29(HEAP32[($5 + 172 | 0) >> 2] | 0 | 0, 0 | 0, HEAP32[($5 + 124 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 124 | 0) >> 2] = (HEAP32[($5 + 124 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$6;
|
|
};
|
|
}
|
|
(wasm2js_i32$0 = btAlignedObjectArray_GrahamVector3___operator_5b_5d_28int_29(HEAP32[($5 + 172 | 0) >> 2] | 0 | 0, 0 | 0) | 0, wasm2js_f32$0 = Math_fround(-1000000015047466219876688.0e6)), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP32[($5 + 112 | 0) >> 2] = 1;
|
|
label$8 : {
|
|
label$9 : while (1) {
|
|
if (!((HEAP32[($5 + 112 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_GrahamVector3___size_28_29_20const(HEAP32[($5 + 172 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 96 | 0 | 0, btAlignedObjectArray_GrahamVector3___operator_5b_5d_28int_29(HEAP32[($5 + 172 | 0) >> 2] | 0 | 0, HEAP32[($5 + 112 | 0) >> 2] | 0 | 0) | 0 | 0, btAlignedObjectArray_GrahamVector3___operator_5b_5d_28int_29(HEAP32[($5 + 172 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($5 + 132 | 0 | 0, $5 + 96 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 92 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($5 + 148 | 0 | 0, $5 + 96 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 88 | 0) >> 2] = wasm2js_f32$0;
|
|
label$10 : {
|
|
label$11 : {
|
|
if (!(Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 92 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 92 | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($5 + 88 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 88 | 0) >> 2]))) < Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
(wasm2js_i32$0 = btAlignedObjectArray_GrahamVector3___operator_5b_5d_28int_29(HEAP32[($5 + 172 | 0) >> 2] | 0 | 0, HEAP32[($5 + 112 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
break label$10;
|
|
}
|
|
$131 = Math_fround(btAtan2Fast_28float_2c_20float_29(Math_fround(Math_fround(HEAPF32[($5 + 92 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($5 + 88 | 0) >> 2]))));
|
|
(wasm2js_i32$0 = btAlignedObjectArray_GrahamVector3___operator_5b_5d_28int_29(HEAP32[($5 + 172 | 0) >> 2] | 0 | 0, HEAP32[($5 + 112 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $131), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
HEAP32[($5 + 112 | 0) >> 2] = (HEAP32[($5 + 112 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$9;
|
|
};
|
|
}
|
|
btAngleCompareFunc__btAngleCompareFunc_28btVector3_20const__29($5 + 72 | 0 | 0, btAlignedObjectArray_GrahamVector3___operator_5b_5d_28int_29(HEAP32[($5 + 172 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0) | 0;
|
|
void_20btAlignedObjectArray_GrahamVector3___quickSortInternal_btAngleCompareFunc__28btAngleCompareFunc_20const__2c_20int_2c_20int_29(HEAP32[($5 + 172 | 0) >> 2] | 0 | 0, $5 + 72 | 0 | 0, 1 | 0, (btAlignedObjectArray_GrahamVector3___size_28_29_20const(HEAP32[($5 + 172 | 0) >> 2] | 0 | 0) | 0) - 1 | 0 | 0);
|
|
HEAP32[($5 + 68 | 0) >> 2] = 0;
|
|
label$12 : {
|
|
label$13 : while (1) {
|
|
if (!((HEAP32[($5 + 68 | 0) >> 2] | 0 | 0) < (2 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
btAlignedObjectArray_GrahamVector3___push_back_28GrahamVector3_20const__29(HEAP32[($5 + 168 | 0) >> 2] | 0 | 0, btAlignedObjectArray_GrahamVector3___operator_5b_5d_28int_29(HEAP32[($5 + 172 | 0) >> 2] | 0 | 0, HEAP32[($5 + 68 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
HEAP32[($5 + 68 | 0) >> 2] = (HEAP32[($5 + 68 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$13;
|
|
};
|
|
}
|
|
label$14 : while (1) {
|
|
if (!((HEAP32[($5 + 68 | 0) >> 2] | 0 | 0) != (btAlignedObjectArray_GrahamVector3___size_28_29_20const(HEAP32[($5 + 172 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP8[($5 + 67 | 0) >> 0] = 0;
|
|
label$15 : while (1) {
|
|
$181 = 0;
|
|
label$16 : {
|
|
if ((HEAPU8[($5 + 67 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$16
|
|
}
|
|
$181 = (btAlignedObjectArray_GrahamVector3___size_28_29_20const(HEAP32[($5 + 168 | 0) >> 2] | 0 | 0) | 0 | 0) > (1 | 0);
|
|
}
|
|
label$17 : {
|
|
if (!($181 & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_GrahamVector3___operator_5b_5d_28int_29(HEAP32[($5 + 168 | 0) >> 2] | 0 | 0, (btAlignedObjectArray_GrahamVector3___size_28_29_20const(HEAP32[($5 + 168 | 0) >> 2] | 0 | 0) | 0) - 2 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 60 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_GrahamVector3___operator_5b_5d_28int_29(HEAP32[($5 + 168 | 0) >> 2] | 0 | 0, (btAlignedObjectArray_GrahamVector3___size_28_29_20const(HEAP32[($5 + 168 | 0) >> 2] | 0 | 0) | 0) - 1 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 56 | 0) >> 2] = wasm2js_i32$1;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 24 | 0 | 0, HEAP32[($5 + 60 | 0) >> 2] | 0 | 0, HEAP32[($5 + 56 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 8 | 0 | 0, HEAP32[($5 + 60 | 0) >> 2] | 0 | 0, btAlignedObjectArray_GrahamVector3___operator_5b_5d_28int_29(HEAP32[($5 + 172 | 0) >> 2] | 0 | 0, HEAP32[($5 + 68 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btCross_28btVector3_20const__2c_20btVector3_20const__29($5 + 40 | 0 | 0, $5 + 24 | 0 | 0, $5 + 8 | 0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($5 + 40 | 0 | 0, HEAP32[($5 + 164 | 0) >> 2] | 0 | 0)) > Math_fround(0 | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 67 | 0) >> 0] = wasm2js_i32$1;
|
|
label$18 : {
|
|
label$19 : {
|
|
if ((HEAPU8[($5 + 67 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$19
|
|
}
|
|
btAlignedObjectArray_GrahamVector3___pop_back_28_29(HEAP32[($5 + 168 | 0) >> 2] | 0 | 0);
|
|
break label$18;
|
|
}
|
|
btAlignedObjectArray_GrahamVector3___push_back_28GrahamVector3_20const__29(HEAP32[($5 + 168 | 0) >> 2] | 0 | 0, btAlignedObjectArray_GrahamVector3___operator_5b_5d_28int_29(HEAP32[($5 + 172 | 0) >> 2] | 0 | 0, HEAP32[($5 + 68 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
}
|
|
continue label$15;
|
|
}
|
|
break label$15;
|
|
};
|
|
label$20 : {
|
|
if (!((btAlignedObjectArray_GrahamVector3___size_28_29_20const(HEAP32[($5 + 168 | 0) >> 2] | 0 | 0) | 0 | 0) == (1 | 0) & 1 | 0)) {
|
|
break label$20
|
|
}
|
|
btAlignedObjectArray_GrahamVector3___push_back_28GrahamVector3_20const__29(HEAP32[($5 + 168 | 0) >> 2] | 0 | 0, btAlignedObjectArray_GrahamVector3___operator_5b_5d_28int_29(HEAP32[($5 + 172 | 0) >> 2] | 0 | 0, HEAP32[($5 + 68 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 68 | 0) >> 2] = (HEAP32[($5 + 68 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$14;
|
|
};
|
|
}
|
|
__stack_pointer = $5 + 176 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btFace___push_back_28btFace_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btFace___size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btFace___capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btFace___reserve_28int_29($5 | 0, btAlignedObjectArray_btFace___allocSize_28int_29($5 | 0, btAlignedObjectArray_btFace___size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
btFace__btFace_28btFace_20const__29((HEAP32[($5 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 4 | 0) >> 2] | 0, 36) | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_GrahamVector3____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_GrahamVector3___clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btFace__btFace_28btFace_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $5 = 0, $8 = 0, $13 = 0, $46 = 0, $56 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_int___btAlignedObjectArray_28btAlignedObjectArray_int__20const__29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
$8 = $5 + 20 | 0;
|
|
i64toi32_i32$2 = (HEAP32[($4 + 8 | 0) >> 2] | 0) + 20 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$46 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $8;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $46;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$13 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $13 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$56 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8 + $13 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $56;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btFace____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btFace___clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConvexHullComputer___btConvexHullComputer_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_int____btAlignedObjectArray_28_29($4 + 40 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btConvexHullComputer__Edge____btAlignedObjectArray_28_29($4 + 20 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3____btAlignedObjectArray_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullComputer__Edge___btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btConvexHullComputer__Edge_2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btConvexHullComputer__Edge___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_btFace_2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btFace___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btFace___reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btFace___capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btFace___allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btFace___copy_28int_2c_20int_2c_20btFace__29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btFace___size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btFace___destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btFace___size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btFace___deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullComputer__Edge___size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btConvexHullComputer__Edge__getNextEdgeOfVertex_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
return $4 + Math_imul(HEAP32[$4 >> 2] | 0, 12) | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_int___findLinearSearch_28int_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_int___size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[$4 >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$4 >> 2] | 0 | 0) < (btAlignedObjectArray_int___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$3 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[$4 >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0) == (HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[$4 >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[$4 >> 2] = (HEAP32[$4 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
$32 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_int___removeAtIndex_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_int___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_int___swap_28int_2c_20int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, (btAlignedObjectArray_int___size_28_29_20const($5 | 0) | 0) - 1 | 0 | 0);
|
|
btAlignedObjectArray_int___pop_back_28_29($5 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_GrahamVector3_2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_GrahamVector3___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_GrahamVector3___capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_GrahamVector3___allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_GrahamVector3___reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_GrahamVector3___capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_GrahamVector3___allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_GrahamVector3___copy_28int_2c_20int_2c_20GrahamVector3__29_20const($5 | 0, 0 | 0, btAlignedObjectArray_GrahamVector3___size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_GrahamVector3___destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_GrahamVector3___size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_GrahamVector3___deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_GrahamVector3___swap_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $5 = 0, $6 = 0, $11 = 0, $34 = 0, $48 = 0, $12 = 0, $18 = 0, $29 = 0, $36 = 0, $40 = 0, $50 = 0, $56 = 0, $96 = 0, $109 = 0, $113 = 0, $137 = 0, $147 = 0, $157 = 0, $171 = 0, $184 = 0, $197 = 0;
|
|
$5 = __stack_pointer - 48 | 0;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 36 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 44 | 0) >> 2] | 0;
|
|
$11 = (HEAP32[($6 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 40 | 0) >> 2] | 0, 24) | 0;
|
|
$12 = 16;
|
|
i64toi32_i32$2 = $11 + $12 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$96 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 8 | 0) + $12 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $96;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$18 = 8;
|
|
i64toi32_i32$2 = $11 + $18 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$109 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($5 + 8 | 0) + $18 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $109;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $11;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$113 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $5;
|
|
HEAP32[(i64toi32_i32$0 + 8 | 0) >> 2] = $113;
|
|
HEAP32[(i64toi32_i32$0 + 12 | 0) >> 2] = i64toi32_i32$1;
|
|
$29 = (HEAP32[($6 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[(i64toi32_i32$0 + 36 | 0) >> 2] | 0, 24) | 0;
|
|
$34 = (HEAP32[($6 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[(i64toi32_i32$0 + 40 | 0) >> 2] | 0, 24) | 0;
|
|
i64toi32_i32$2 = $29;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$137 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $34;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $137;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$36 = 16;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $36 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$147 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $34 + $36 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $147;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$40 = 8;
|
|
i64toi32_i32$2 = $29 + $40 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$157 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $34 + $40 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $157;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$48 = (HEAP32[($6 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 36 | 0) >> 2] | 0, 24) | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 12 | 0) >> 2] | 0;
|
|
$171 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $48;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $171;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$50 = 16;
|
|
i64toi32_i32$2 = (i64toi32_i32$2 + 8 | 0) + $50 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$184 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $48 + $50 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $184;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$56 = 8;
|
|
i64toi32_i32$2 = ($5 + 8 | 0) + $56 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$197 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $48 + $56 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $197;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
return;
|
|
}
|
|
|
|
function btAtan2Fast_28float_2c_20float_29($0, $1) {
|
|
$0 = Math_fround($0);
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $51 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAPF32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($4 + 20 | 0) >> 2] = Math_fround(.7853981852531433);
|
|
HEAPF32[($4 + 16 | 0) >> 2] = Math_fround(Math_fround(3.0) * Math_fround(HEAPF32[($4 + 20 | 0) >> 2]));
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[($4 + 28 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 24 | 0) >> 2]) >= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($4 + 4 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($4 + 24 | 0) >> 2]) - Math_fround(HEAPF32[($4 + 12 | 0) >> 2])) / Math_fround(Math_fround(HEAPF32[($4 + 24 | 0) >> 2]) + Math_fround(HEAPF32[($4 + 12 | 0) >> 2])));
|
|
HEAPF32[($4 + 8 | 0) >> 2] = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($4 + 20 | 0) >> 2])) * Math_fround(HEAPF32[($4 + 4 | 0) >> 2])) + Math_fround(HEAPF32[($4 + 20 | 0) >> 2]));
|
|
break label$1;
|
|
}
|
|
HEAPF32[$4 >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($4 + 24 | 0) >> 2]) + Math_fround(HEAPF32[($4 + 12 | 0) >> 2])) / Math_fround(Math_fround(HEAPF32[($4 + 12 | 0) >> 2]) - Math_fround(HEAPF32[($4 + 24 | 0) >> 2])));
|
|
HEAPF32[($4 + 8 | 0) >> 2] = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($4 + 20 | 0) >> 2])) * Math_fround(HEAPF32[$4 >> 2])) + Math_fround(HEAPF32[($4 + 16 | 0) >> 2]));
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 28 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$51 = Math_fround(-Math_fround(HEAPF32[($4 + 8 | 0) >> 2]));
|
|
break label$3;
|
|
}
|
|
$51 = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
}
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return Math_fround($51);
|
|
}
|
|
|
|
function btAngleCompareFunc__btAngleCompareFunc_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, $5 = 0, $8 = 0, $27 = 0, $37 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$27 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $5;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $27;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$8 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $8 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$37 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5 + $8 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $37;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function void_20btAlignedObjectArray_GrahamVector3___quickSortInternal_btAngleCompareFunc__28btAngleCompareFunc_20const__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $7 = 0, $18 = 0, $19 = 0, $23 = 0, $148 = 0, $158 = 0, $162 = 0;
|
|
$6 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 32 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = HEAP32[($6 + 36 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = HEAP32[($6 + 32 | 0) >> 2] | 0;
|
|
$18 = (HEAP32[($7 + 12 | 0) >> 2] | 0) + Math_imul(((HEAP32[($6 + 36 | 0) >> 2] | 0) + (HEAP32[($6 + 32 | 0) >> 2] | 0) | 0 | 0) / (2 | 0) | 0, 24) | 0;
|
|
$19 = 16;
|
|
i64toi32_i32$2 = $18 + $19 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$148 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6 + $19 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $148;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$23 = 8;
|
|
i64toi32_i32$2 = $18 + $23 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$158 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6 + $23 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $158;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $18;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$162 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $6;
|
|
HEAP32[$6 >> 2] = $162;
|
|
HEAP32[($6 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
label$1 : while (1) {
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((btAngleCompareFunc__operator_28_29_28GrahamVector3_20const__2c_20GrahamVector3_20const__29_20const(HEAP32[($6 + 40 | 0) >> 2] | 0 | 0, (HEAP32[($7 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($6 + 28 | 0) >> 2] | 0, 24) | 0 | 0, $6 | 0) | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($6 + 28 | 0) >> 2] = (HEAP32[($6 + 28 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((btAngleCompareFunc__operator_28_29_28GrahamVector3_20const__2c_20GrahamVector3_20const__29_20const(HEAP32[($6 + 40 | 0) >> 2] | 0 | 0, $6 | 0, (HEAP32[($7 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($6 + 24 | 0) >> 2] | 0, 24) | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP32[($6 + 24 | 0) >> 2] = (HEAP32[($6 + 24 | 0) >> 2] | 0) + -1 | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
label$6 : {
|
|
if (!((HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) <= (HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
btAlignedObjectArray_GrahamVector3___swap_28int_2c_20int_29($7 | 0, HEAP32[($6 + 28 | 0) >> 2] | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($6 + 28 | 0) >> 2] = (HEAP32[($6 + 28 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = (HEAP32[($6 + 24 | 0) >> 2] | 0) + -1 | 0;
|
|
}
|
|
if ((HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) <= (HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
label$7 : {
|
|
if (!((HEAP32[($6 + 36 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
void_20btAlignedObjectArray_GrahamVector3___quickSortInternal_btAngleCompareFunc__28btAngleCompareFunc_20const__2c_20int_2c_20int_29($7 | 0, HEAP32[($6 + 40 | 0) >> 2] | 0 | 0, HEAP32[($6 + 36 | 0) >> 2] | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0);
|
|
}
|
|
label$8 : {
|
|
if (!((HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 32 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
void_20btAlignedObjectArray_GrahamVector3___quickSortInternal_btAngleCompareFunc__28btAngleCompareFunc_20const__2c_20int_2c_20int_29($7 | 0, HEAP32[($6 + 40 | 0) >> 2] | 0 | 0, HEAP32[($6 + 28 | 0) >> 2] | 0 | 0, HEAP32[($6 + 32 | 0) >> 2] | 0 | 0);
|
|
}
|
|
__stack_pointer = $6 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCross_28btVector3_20const__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $2;
|
|
btVector3__cross_28btVector3_20const__29_20const($0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_GrahamVector3___pop_back_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) > (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85800 | 0, 78192 | 0, 201 | 0, 77711 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + -1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btFace___capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btFace___allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_GrahamVector3___clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_GrahamVector3___destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_GrahamVector3___size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_GrahamVector3___deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_GrahamVector3___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_int___btAlignedObjectArray_28btAlignedObjectArray_int__20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $8 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_int_2c_2016u___btAlignedAllocator_28_29($5 | 0) | 0;
|
|
btAlignedObjectArray_int___init_28_29($5 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_int___size_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
$8 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 0;
|
|
btAlignedObjectArray_int___resize_28int_2c_20int_20const__29($5 | 0, $8 | 0, $4 | 0);
|
|
btAlignedObjectArray_int___copy_28int_2c_20int_2c_20int__29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btFace___clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btFace___destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btFace___size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btFace___deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btFace___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullComputer__Edge____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btConvexHullComputer__Edge___clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btPolyhedralConvexShape__localGetSupportingVertexWithoutMargin_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $6 = 0, $23 = 0, $24 = 0, $82 = 0, $85 = 0, $86 = 0, $88 = 0, $110 = 0, $159 = 0, $224 = 0, $228 = 0, $84 = 0, $485 = 0, $495 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 2160 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 2156 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 2152 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 2156 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 2148 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 2144 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 2140 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $5 + 2148 | 0 | 0, $5 + 2144 | 0 | 0, $5 + 2140 | 0 | 0) | 0;
|
|
HEAPF32[($5 + 2132 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
$23 = HEAP32[($5 + 2152 | 0) >> 2] | 0;
|
|
$24 = 8;
|
|
i64toi32_i32$2 = $23 + $24 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$224 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 2112 | 0) + $24 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $224;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $23;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$228 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 2112 | 0) >> 2] = $228;
|
|
HEAP32[($5 + 2116 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($5 + 2112 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 2108 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 2108 | 0) >> 2]) < Math_fround(9.999999747378752e-05) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($5 + 2104 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($5 + 2100 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 2096 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 2112 | 0 | 0, $5 + 2104 | 0 | 0, $5 + 2100 | 0 | 0, $5 + 2096 | 0 | 0);
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(1.0) / Math_fround(btSqrt_28float_29(Math_fround(Math_fround(HEAPF32[($5 + 2108 | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 2092 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__operator___28float_20const__29_1($5 + 2112 | 0 | 0, $5 + 2092 | 0 | 0) | 0;
|
|
}
|
|
btVector3__btVector3_28_29($5 + 2076 | 0 | 0) | 0;
|
|
HEAP32[($5 + 2068 | 0) >> 2] = 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 2068 | 0) >> 2] | 0 | 0) < (FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 96 | 0) >> 2] | 0 | 0]($6) | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$82 = $5 + 16 | 0;
|
|
$84 = $82 + 2048 | 0;
|
|
$85 = $82;
|
|
label$5 : while (1) {
|
|
$86 = $85;
|
|
btVector3__btVector3_28_29($86 | 0) | 0;
|
|
$88 = $86 + 16 | 0;
|
|
$85 = $88;
|
|
if (!(($88 | 0) == ($84 | 0) & 1 | 0)) {
|
|
continue label$5
|
|
}
|
|
break label$5;
|
|
};
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!(((FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 96 | 0) >> 2] | 0 | 0]($6) | 0) - (HEAP32[($5 + 2068 | 0) >> 2] | 0) | 0 | 0) < (128 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
$110 = (FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 96 | 0) >> 2] | 0 | 0]($6) | 0) - (HEAP32[($5 + 2068 | 0) >> 2] | 0) | 0;
|
|
break label$6;
|
|
}
|
|
$110 = 128;
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = $110;
|
|
HEAP32[($5 + 2136 | 0) >> 2] = 0;
|
|
label$8 : {
|
|
label$9 : while (1) {
|
|
if (!((HEAP32[($5 + 2136 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 108 | 0) >> 2] | 0 | 0]($6, HEAP32[($5 + 2136 | 0) >> 2] | 0, ($5 + 16 | 0) + ((HEAP32[($5 + 2136 | 0) >> 2] | 0) << 4 | 0) | 0);
|
|
HEAP32[($5 + 2136 | 0) >> 2] = (HEAP32[($5 + 2136 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$9;
|
|
};
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btVector3__maxDot_28btVector3_20const__2c_20long_2c_20float__29_20const($5 + 2112 | 0 | 0, $5 + 16 | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0, $5 + 2072 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 2136 | 0) >> 2] = wasm2js_i32$1;
|
|
label$10 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 2072 | 0) >> 2]) > Math_fround(HEAPF32[($5 + 2132 | 0) >> 2]) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
HEAPF32[($5 + 2132 | 0) >> 2] = Math_fround(HEAPF32[($5 + 2072 | 0) >> 2]);
|
|
i64toi32_i32$2 = ($5 + 16 | 0) + ((HEAP32[($5 + 2136 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$485 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $485;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$159 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $159 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$495 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0 + $159 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $495;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
HEAP32[($5 + 2068 | 0) >> 2] = (HEAP32[($5 + 2068 | 0) >> 2] | 0) + 128 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
__stack_pointer = $5 + 2160 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPolyhedralConvexShape__batchedUnitVectorGetSupportingVertexWithoutMargin_28btVector3_20const__2c_20btVector3__2c_20int_29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $54 = 0, $57 = 0, $58 = 0, $60 = 0, $82 = 0, $137 = 0, $139 = 0, $56 = 0, $442 = 0, $452 = 0, $143 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 2128 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 2124 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 2120 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 2116 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 2112 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 2124 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($6 + 2092 | 0 | 0) | 0;
|
|
HEAP32[($6 + 2108 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 2108 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 2112 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29((HEAP32[($6 + 2116 | 0) >> 2] | 0) + ((HEAP32[($6 + 2108 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(-999999984306749440.0)), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP32[($6 + 2108 | 0) >> 2] = (HEAP32[($6 + 2108 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
HEAP32[($6 + 2084 | 0) >> 2] = 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($6 + 2084 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 2112 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($6 + 2080 | 0) >> 2] = (HEAP32[($6 + 2120 | 0) >> 2] | 0) + ((HEAP32[($6 + 2084 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
HEAP32[($6 + 2076 | 0) >> 2] = 0;
|
|
label$5 : {
|
|
label$6 : while (1) {
|
|
if (!((HEAP32[($6 + 2076 | 0) >> 2] | 0 | 0) < (FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 96 | 0) >> 2] | 0 | 0]($7) | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
$54 = $6 + 16 | 0;
|
|
$56 = $54 + 2048 | 0;
|
|
$57 = $54;
|
|
label$7 : while (1) {
|
|
$58 = $57;
|
|
btVector3__btVector3_28_29($58 | 0) | 0;
|
|
$60 = $58 + 16 | 0;
|
|
$57 = $60;
|
|
if (!(($60 | 0) == ($56 | 0) & 1 | 0)) {
|
|
continue label$7
|
|
}
|
|
break label$7;
|
|
};
|
|
label$8 : {
|
|
label$9 : {
|
|
if (!(((FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 96 | 0) >> 2] | 0 | 0]($7) | 0) - (HEAP32[($6 + 2076 | 0) >> 2] | 0) | 0 | 0) < (128 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
$82 = (FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 96 | 0) >> 2] | 0 | 0]($7) | 0) - (HEAP32[($6 + 2076 | 0) >> 2] | 0) | 0;
|
|
break label$8;
|
|
}
|
|
$82 = 128;
|
|
}
|
|
HEAP32[($6 + 12 | 0) >> 2] = $82;
|
|
HEAP32[($6 + 2108 | 0) >> 2] = 0;
|
|
label$10 : {
|
|
label$11 : while (1) {
|
|
if (!((HEAP32[($6 + 2108 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 108 | 0) >> 2] | 0 | 0]($7, HEAP32[($6 + 2108 | 0) >> 2] | 0, ($6 + 16 | 0) + ((HEAP32[($6 + 2108 | 0) >> 2] | 0) << 4 | 0) | 0);
|
|
HEAP32[($6 + 2108 | 0) >> 2] = (HEAP32[($6 + 2108 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$11;
|
|
};
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btVector3__maxDot_28btVector3_20const__2c_20long_2c_20float__29_20const(HEAP32[($6 + 2080 | 0) >> 2] | 0 | 0, $6 + 16 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0, $6 + 2088 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 2108 | 0) >> 2] = wasm2js_i32$1;
|
|
label$12 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 2088 | 0) >> 2]) > Math_fround(HEAPF32[((btVector3__operator_20float__28_29((HEAP32[($6 + 2116 | 0) >> 2] | 0) + ((HEAP32[($6 + 2084 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0) + 12 | 0) >> 2]) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
$137 = (HEAP32[($6 + 2116 | 0) >> 2] | 0) + ((HEAP32[($6 + 2084 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = ($6 + 16 | 0) + ((HEAP32[($6 + 2108 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$442 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $137;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $442;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$139 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $139 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$452 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $137 + $139 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $452;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$143 = Math_fround(HEAPF32[($6 + 2088 | 0) >> 2]);
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29((HEAP32[($6 + 2116 | 0) >> 2] | 0) + ((HEAP32[($6 + 2084 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0, wasm2js_f32$0 = $143), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
HEAP32[($6 + 2076 | 0) >> 2] = (HEAP32[($6 + 2076 | 0) >> 2] | 0) + 128 | 0;
|
|
continue label$6;
|
|
};
|
|
}
|
|
HEAP32[($6 + 2084 | 0) >> 2] = (HEAP32[($6 + 2084 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 2128 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPolyhedralConvexShape__calculateLocalInertia_28float_2c_20btVector3__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, i64toi32_i32$2 = 0, $121 = 0, $123 = 0, $385 = 0, $398 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 224 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 220 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 216 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 212 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 220 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($6))), HEAPF32[(wasm2js_i32$0 + 208 | 0) >> 2] = wasm2js_f32$0;
|
|
btTransform__btTransform_28_29($5 + 144 | 0 | 0) | 0;
|
|
btTransform__setIdentity_28_29($5 + 144 | 0 | 0);
|
|
btVector3__btVector3_28_29($5 + 128 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 112 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($6, $5 + 144 | 0, $5 + 128 | 0, $5 + 112 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 80 | 0 | 0, $5 + 112 | 0 | 0, $5 + 128 | 0 | 0);
|
|
HEAPF32[($5 + 76 | 0) >> 2] = Math_fround(.5);
|
|
operator__28btVector3_20const__2c_20float_20const__29($5 + 96 | 0 | 0, $5 + 80 | 0 | 0, $5 + 76 | 0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(2.0) * Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($5 + 96 | 0 | 0) | 0) >> 2]) + Math_fround(HEAPF32[($5 + 208 | 0) >> 2])))), HEAPF32[(wasm2js_i32$0 + 72 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(2.0) * Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($5 + 96 | 0 | 0) | 0) >> 2]) + Math_fround(HEAPF32[($5 + 208 | 0) >> 2])))), HEAPF32[(wasm2js_i32$0 + 68 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(2.0) * Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($5 + 96 | 0 | 0) | 0) >> 2]) + Math_fround(HEAPF32[($5 + 208 | 0) >> 2])))), HEAPF32[(wasm2js_i32$0 + 64 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($5 + 60 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 72 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 72 | 0) >> 2]));
|
|
HEAPF32[($5 + 56 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 68 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 68 | 0) >> 2]));
|
|
HEAPF32[($5 + 52 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 64 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 64 | 0) >> 2]));
|
|
HEAPF32[($5 + 48 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 216 | 0) >> 2]) * Math_fround(.0833333283662796));
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 56 | 0) >> 2]) + Math_fround(HEAPF32[($5 + 52 | 0) >> 2]));
|
|
HEAPF32[($5 + 8 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 60 | 0) >> 2]) + Math_fround(HEAPF32[($5 + 52 | 0) >> 2]));
|
|
HEAPF32[($5 + 4 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 60 | 0) >> 2]) + Math_fround(HEAPF32[($5 + 56 | 0) >> 2]));
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 16 | 0 | 0, $5 + 12 | 0 | 0, $5 + 8 | 0 | 0, $5 + 4 | 0 | 0) | 0;
|
|
operator__28float_20const__2c_20btVector3_20const__29($5 + 32 | 0 | 0, $5 + 48 | 0 | 0, $5 + 16 | 0 | 0);
|
|
$121 = HEAP32[($5 + 212 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
$385 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $121;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $385;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$123 = 8;
|
|
i64toi32_i32$2 = ($5 + 32 | 0) + $123 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$398 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $121 + $123 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $398;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $5 + 224 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPolyhedralConvexAabbCachingShape__setLocalScaling_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btConvexInternalShape__setLocalScaling_28btVector3_20const__29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
btPolyhedralConvexAabbCachingShape__recalcLocalAabb_28_29($5 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPolyhedralConvexAabbCachingShape__recalcLocalAabb_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $120 = 0, $137 = 0, $154 = 0, $171 = 0, $188 = 0, $250 = Math_fround(0), $274 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$3 = __stack_pointer - 256 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 252 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 252 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 96 | 0) >> 0] = 1;
|
|
label$1 : {
|
|
if (!(((HEAPU8[(0 + 114272 | 0) >> 0] | 0) & 255 | 0 | 0) == (0 & 255 | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[($3 + 248 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($3 + 244 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 240 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114176 | 0, $3 + 248 | 0 | 0, $3 + 244 | 0 | 0, $3 + 240 | 0 | 0) | 0;
|
|
HEAPF32[($3 + 236 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 232 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($3 + 228 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114176 + 16 | 0 | 0, $3 + 236 | 0 | 0, $3 + 232 | 0 | 0, $3 + 228 | 0 | 0) | 0;
|
|
HEAPF32[($3 + 224 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 220 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 216 | 0) >> 2] = Math_fround(1.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114176 + 32 | 0 | 0, $3 + 224 | 0 | 0, $3 + 220 | 0 | 0, $3 + 216 | 0 | 0) | 0;
|
|
HEAPF32[($3 + 212 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[($3 + 208 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 204 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114176 + 48 | 0 | 0, $3 + 212 | 0 | 0, $3 + 208 | 0 | 0, $3 + 204 | 0 | 0) | 0;
|
|
HEAPF32[($3 + 200 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 196 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[($3 + 192 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114176 + 64 | 0 | 0, $3 + 200 | 0 | 0, $3 + 196 | 0 | 0, $3 + 192 | 0 | 0) | 0;
|
|
HEAPF32[($3 + 188 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 184 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 180 | 0) >> 2] = Math_fround(-1.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114176 + 80 | 0 | 0, $3 + 188 | 0 | 0, $3 + 184 | 0 | 0, $3 + 180 | 0 | 0) | 0;
|
|
HEAP8[(0 + 114272 | 0) >> 0] = 1;
|
|
}
|
|
$120 = $3 + 80 | 0;
|
|
HEAPF32[($3 + 76 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 72 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 68 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($120 | 0, $3 + 76 | 0 | 0, $3 + 72 | 0 | 0, $3 + 68 | 0 | 0) | 0;
|
|
$137 = $120 + 16 | 0;
|
|
HEAPF32[($3 + 64 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 60 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 56 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($137 | 0, $3 + 64 | 0 | 0, $3 + 60 | 0 | 0, $3 + 56 | 0 | 0) | 0;
|
|
$154 = $137 + 16 | 0;
|
|
HEAPF32[($3 + 52 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 48 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 44 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($154 | 0, $3 + 52 | 0 | 0, $3 + 48 | 0 | 0, $3 + 44 | 0 | 0) | 0;
|
|
$171 = $154 + 16 | 0;
|
|
HEAPF32[($3 + 40 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 36 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 32 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($171 | 0, $3 + 40 | 0 | 0, $3 + 36 | 0 | 0, $3 + 32 | 0 | 0) | 0;
|
|
$188 = $171 + 16 | 0;
|
|
HEAPF32[($3 + 28 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 24 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($188 | 0, $3 + 28 | 0 | 0, $3 + 24 | 0 | 0, $3 + 20 | 0 | 0) | 0;
|
|
HEAPF32[($3 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($188 + 16 | 0 | 0, $3 + 16 | 0 | 0, $3 + 12 | 0 | 0, $3 + 8 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 76 | 0) >> 2] | 0 | 0]($4, 114176, $3 + 80 | 0, 6);
|
|
HEAP32[($3 + 4 | 0) >> 2] = 0;
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$250 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29(($3 + 80 | 0) + ((HEAP32[($3 + 4 | 0) >> 2] | 0) << 4 | 0) | 0 | 0) | 0) + ((HEAP32[($3 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) + Math_fround(HEAPF32[($4 + 52 | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($4 + 80 | 0 | 0) | 0) + ((HEAP32[($3 + 4 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $250), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$274 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29(($3 + 80 | 0) + (((HEAP32[($3 + 4 | 0) >> 2] | 0) + 3 | 0) << 4 | 0) | 0 | 0) | 0) + ((HEAP32[($3 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) - Math_fround(HEAPF32[($4 + 52 | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($4 + 64 | 0 | 0) | 0) + ((HEAP32[($3 + 4 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $274), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP32[($3 + 4 | 0) >> 2] = (HEAP32[($3 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
__stack_pointer = $3 + 256 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPolyhedralConvexAabbCachingShape__btPolyhedralConvexAabbCachingShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 28 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 28 | 0) >> 2] | 0;
|
|
btPolyhedralConvexShape__btPolyhedralConvexShape_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 99576 + 8 | 0;
|
|
HEAPF32[($3 + 24 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($3 + 20 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($3 + 16 | 0) >> 2] = Math_fround(1.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 64 | 0 | 0, $3 + 24 | 0 | 0, $3 + 20 | 0 | 0, $3 + 16 | 0 | 0) | 0;
|
|
HEAPF32[($3 + 12 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[($3 + 8 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[($3 + 4 | 0) >> 2] = Math_fround(-1.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 80 | 0 | 0, $3 + 12 | 0 | 0, $3 + 8 | 0 | 0, $3 + 4 | 0 | 0) | 0;
|
|
HEAP8[($4 + 96 | 0) >> 0] = 0;
|
|
__stack_pointer = $3 + 32 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btPolyhedralConvexAabbCachingShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btPolyhedralConvexAabbCachingShape__getNonvirtualAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__2c_20float_29_20const($7 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0, HEAP32[($6 + 4 | 0) >> 2] | 0 | 0, HEAP32[$6 >> 2] | 0 | 0, Math_fround(Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($7))));
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPolyhedralConvexAabbCachingShape___btPolyhedralConvexAabbCachingShape_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btAlignedAllocator_btConvexHullComputer__Edge_2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullComputer__Edge___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAngleCompareFunc__operator_28_29_28GrahamVector3_20const__2c_20GrahamVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $58 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 56 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 52 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 48 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 56 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 16 | 0) >> 2]) != Math_fround(HEAPF32[((HEAP32[($5 + 48 | 0) >> 2] | 0) + 16 | 0) >> 2]) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP8[($5 + 63 | 0) >> 0] = Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 16 | 0) >> 2]) < Math_fround(HEAPF32[((HEAP32[($5 + 48 | 0) >> 2] | 0) + 16 | 0) >> 2]) & 1 | 0;
|
|
break label$1;
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 28 | 0 | 0, HEAP32[($5 + 52 | 0) >> 2] | 0 | 0, $6 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($5 + 28 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 8 | 0 | 0, HEAP32[($5 + 48 | 0) >> 2] | 0 | 0, $6 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($5 + 8 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_f32$0;
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 44 | 0) >> 2]) != Math_fround(HEAPF32[($5 + 24 | 0) >> 2]) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP8[($5 + 63 | 0) >> 0] = Math_fround(HEAPF32[($5 + 44 | 0) >> 2]) < Math_fround(HEAPF32[($5 + 24 | 0) >> 2]) & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP8[($5 + 63 | 0) >> 0] = (HEAP32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) < (HEAP32[((HEAP32[($5 + 48 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) & 1 | 0;
|
|
}
|
|
$58 = (HEAPU8[($5 + 63 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $5 + 64 | 0;
|
|
return $58 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullComputer__Edge___clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btConvexHullComputer__Edge___destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btConvexHullComputer__Edge___size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btConvexHullComputer__Edge___deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btConvexHullComputer__Edge___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullComputer__Edge___destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btConvexHullComputer__Edge___deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btConvexHullComputer__Edge_2c_2016u___deallocate_28btConvexHullComputer__Edge__29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btConvexHullComputer__Edge_2c_2016u___deallocate_28btConvexHullComputer__Edge__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_GrahamVector3___allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_GrahamVector3_2c_2016u___allocate_28int_2c_20GrahamVector3_20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_GrahamVector3___copy_28int_2c_20int_2c_20GrahamVector3__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $22 = 0, $27 = 0, $29 = 0, $33 = 0, $7 = 0, $101 = 0, $111 = 0, $121 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$22 = btVector3__operator_20new_28unsigned_20long_2c_20void__29(24 | 0, (HEAP32[($6 + 16 | 0) >> 2] | 0) + Math_imul(HEAP32[($6 + 12 | 0) >> 2] | 0, 24) | 0 | 0) | 0;
|
|
$27 = (HEAP32[($7 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($6 + 12 | 0) >> 2] | 0, 24) | 0;
|
|
i64toi32_i32$2 = $27;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$101 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $101;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$29 = 16;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $29 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$111 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $29 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $111;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$33 = 8;
|
|
i64toi32_i32$2 = $27 + $33 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$121 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22 + $33 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $121;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_GrahamVector3___destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_GrahamVector3___deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_GrahamVector3_2c_2016u___deallocate_28GrahamVector3__29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_GrahamVector3_2c_2016u___allocate_28int_2c_20GrahamVector3_20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(Math_imul(HEAP32[($5 + 8 | 0) >> 2] | 0, 24) | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_GrahamVector3_2c_2016u___deallocate_28GrahamVector3__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btFace___destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btFace___btFace_28_29((HEAP32[($6 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[$5 >> 2] | 0, 36) | 0 | 0) | 0;
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btFace___deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btFace_2c_2016u___deallocate_28btFace__29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btFace_2c_2016u___deallocate_28btFace__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btFace___allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btFace_2c_2016u___allocate_28int_2c_20btFace_20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btFace___copy_28int_2c_20int_2c_20btFace__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btFace__btFace_28btFace_20const__29((HEAP32[($6 + 16 | 0) >> 2] | 0) + Math_imul(HEAP32[($6 + 12 | 0) >> 2] | 0, 36) | 0 | 0, (HEAP32[($7 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($6 + 12 | 0) >> 2] | 0, 36) | 0 | 0) | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btFace_2c_2016u___allocate_28int_2c_20btFace_20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(Math_imul(HEAP32[($5 + 8 | 0) >> 2] | 0, 36) | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_int___swap_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[$5 >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btPolyhedralConvexShape_cpp() {
|
|
__cxx_global_var_init_46();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_47() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114276 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btScaledBvhTriangleMeshShape__btScaledBvhTriangleMeshShape_28btBvhTriangleMeshShape__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $11 = 0, $14 = 0, $50 = 0, $60 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btConcaveShape__btConcaveShape_28_29($6 | 0) | 0;
|
|
HEAP32[$6 >> 2] = 99800 + 8 | 0;
|
|
$11 = $6 + 24 | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$50 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $11;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $50;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$14 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $14 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$60 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11 + $14 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $60;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($6 + 40 | 0) >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 4 | 0) >> 2] = 22;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btScaledBvhTriangleMeshShape___btScaledBvhTriangleMeshShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConcaveShape___btConcaveShape_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btScaledBvhTriangleMeshShape___btScaledBvhTriangleMeshShape_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[928 | 0]($4) | 0;
|
|
btScaledBvhTriangleMeshShape__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btScaledBvhTriangleMeshShape__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btScaledBvhTriangleMeshShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $10 = 0, $15 = Math_fround(0), $52 = Math_fround(0), $85 = Math_fround(0), $118 = Math_fround(0), $155 = Math_fround(0), $188 = Math_fround(0), $221 = Math_fround(0), $242 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 108 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 104 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 100 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 96 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 108 | 0) >> 2] | 0;
|
|
$10 = $7 + 24 | 0;
|
|
btScaledTriangleCallback__btScaledTriangleCallback_28btTriangleCallback__2c_20btVector3_20const__29($6 + 72 | 0 | 0, HEAP32[($6 + 104 | 0) >> 2] | 0 | 0, $10 | 0) | 0;
|
|
$15 = Math_fround(1.0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround($15 / Math_fround(HEAPF32[(btVector3__getX_28_29_20const($10 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 52 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround($15 / Math_fround(HEAPF32[(btVector3__getY_28_29_20const($10 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 48 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround($15 / Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($10 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 56 | 0 | 0, $6 + 52 | 0 | 0, $6 + 48 | 0 | 0, $6 + 44 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 28 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 12 | 0 | 0) | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(+Math_fround(HEAPF32[(btVector3__getX_28_29_20const($10 | 0) | 0) >> 2]) >= +(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$52 = Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 100 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__operator_20float__28_29($6 + 56 | 0 | 0) | 0) >> 2]));
|
|
break label$1;
|
|
}
|
|
$52 = Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 96 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__operator_20float__28_29($6 + 56 | 0 | 0) | 0) >> 2]));
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($6 + 28 | 0 | 0) | 0, wasm2js_f32$0 = $52), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(+Math_fround(HEAPF32[(btVector3__getY_28_29_20const($7 + 24 | 0 | 0) | 0) >> 2]) >= +(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$85 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 100 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 56 | 0 | 0) | 0) + 4 | 0) >> 2]));
|
|
break label$3;
|
|
}
|
|
$85 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 96 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 56 | 0 | 0) | 0) + 4 | 0) >> 2]));
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($6 + 28 | 0 | 0) | 0, wasm2js_f32$0 = $85), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!(+Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($7 + 24 | 0 | 0) | 0) >> 2]) >= +(0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$118 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 100 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 56 | 0 | 0) | 0) + 8 | 0) >> 2]));
|
|
break label$5;
|
|
}
|
|
$118 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 96 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 56 | 0 | 0) | 0) + 8 | 0) >> 2]));
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($6 + 28 | 0 | 0) | 0, wasm2js_f32$0 = $118), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($6 + 28 | 0 | 0) | 0, wasm2js_i32$1 = 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
label$7 : {
|
|
label$8 : {
|
|
if (!(+Math_fround(HEAPF32[(btVector3__getX_28_29_20const($7 + 24 | 0 | 0) | 0) >> 2]) <= +(0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
$155 = Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 100 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__operator_20float__28_29($6 + 56 | 0 | 0) | 0) >> 2]));
|
|
break label$7;
|
|
}
|
|
$155 = Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 96 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__operator_20float__28_29($6 + 56 | 0 | 0) | 0) >> 2]));
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($6 + 12 | 0 | 0) | 0, wasm2js_f32$0 = $155), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
label$9 : {
|
|
label$10 : {
|
|
if (!(+Math_fround(HEAPF32[(btVector3__getY_28_29_20const($7 + 24 | 0 | 0) | 0) >> 2]) <= +(0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
$188 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 100 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 56 | 0 | 0) | 0) + 4 | 0) >> 2]));
|
|
break label$9;
|
|
}
|
|
$188 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 96 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 56 | 0 | 0) | 0) + 4 | 0) >> 2]));
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($6 + 12 | 0 | 0) | 0, wasm2js_f32$0 = $188), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
label$11 : {
|
|
label$12 : {
|
|
if (!(+Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($7 + 24 | 0 | 0) | 0) >> 2]) <= +(0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
$221 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 100 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 56 | 0 | 0) | 0) + 8 | 0) >> 2]));
|
|
break label$11;
|
|
}
|
|
$221 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($6 + 96 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 56 | 0 | 0) | 0) + 8 | 0) >> 2]));
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($6 + 12 | 0 | 0) | 0, wasm2js_f32$0 = $221), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($6 + 12 | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
$242 = HEAP32[($7 + 40 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$242 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($242, $6 + 72 | 0, $6 + 28 | 0, $6 + 12 | 0);
|
|
btScaledTriangleCallback___btScaledTriangleCallback_28_29($6 + 72 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 112 | 0;
|
|
return;
|
|
}
|
|
|
|
function btScaledTriangleCallback__btScaledTriangleCallback_28btTriangleCallback__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, $12 = 0, $15 = 0, $53 = 0, $63 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btTriangleCallback__btTriangleCallback_28_29($6 | 0) | 0;
|
|
HEAP32[$6 >> 2] = 99920 + 8 | 0;
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
$12 = $6 + 8 | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$53 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $12;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $53;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$15 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $15 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$63 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $12 + $15 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $63;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btScaledTriangleCallback___btScaledTriangleCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btTriangleCallback___btTriangleCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btScaledBvhTriangleMeshShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $7 = 0, $10 = 0, $26 = 0, $212 = 0, $9 = 0, $18 = 0, $48 = Math_fround(0), $73 = Math_fround(0), $98 = Math_fround(0), $123 = Math_fround(0), $148 = Math_fround(0), $173 = Math_fround(0), $203 = 0, $280 = 0, $282 = 0, $297 = 0, $299 = 0, $338 = 0, $342 = 0, $359 = 0, $363 = 0, $829 = 0, $842 = 0, $863 = 0, $876 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 288 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 284 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 280 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 276 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 272 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 284 | 0) >> 2] | 0;
|
|
$9 = btTriangleMeshShape__getLocalAabbMin_28_29_20const(HEAP32[($7 + 40 | 0) >> 2] | 0 | 0) | 0;
|
|
$10 = 8;
|
|
i64toi32_i32$2 = $9 + $10 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$338 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 256 | 0) + $10 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $338;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$342 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 256 | 0) >> 2] = $342;
|
|
HEAP32[($6 + 260 | 0) >> 2] = i64toi32_i32$0;
|
|
$18 = btTriangleMeshShape__getLocalAabbMax_28_29_20const(HEAP32[($7 + 40 | 0) >> 2] | 0 | 0) | 0;
|
|
i64toi32_i32$2 = $18 + $10 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$359 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 240 | 0) + $10 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $359;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $18;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$363 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 240 | 0) >> 2] = $363;
|
|
HEAP32[($6 + 244 | 0) >> 2] = i64toi32_i32$0;
|
|
$26 = $7 + 24 | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($6 + 224 | 0 | 0, $6 + 256 | 0 | 0, $26 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($6 + 208 | 0 | 0, $6 + 240 | 0 | 0, $26 | 0);
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(+Math_fround(HEAPF32[(btVector3__getX_28_29_20const($26 | 0) | 0) >> 2]) >= +(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$48 = Math_fround(HEAPF32[(btVector3__operator_20float__28_29($6 + 224 | 0 | 0) | 0) >> 2]);
|
|
break label$1;
|
|
}
|
|
$48 = Math_fround(HEAPF32[(btVector3__operator_20float__28_29($6 + 208 | 0 | 0) | 0) >> 2]);
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($6 + 256 | 0 | 0) | 0, wasm2js_f32$0 = $48), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(+Math_fround(HEAPF32[(btVector3__getY_28_29_20const($7 + 24 | 0 | 0) | 0) >> 2]) >= +(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$73 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 224 | 0 | 0) | 0) + 4 | 0) >> 2]);
|
|
break label$3;
|
|
}
|
|
$73 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 208 | 0 | 0) | 0) + 4 | 0) >> 2]);
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($6 + 256 | 0 | 0) | 0, wasm2js_f32$0 = $73), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!(+Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($7 + 24 | 0 | 0) | 0) >> 2]) >= +(0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$98 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 224 | 0 | 0) | 0) + 8 | 0) >> 2]);
|
|
break label$5;
|
|
}
|
|
$98 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 208 | 0 | 0) | 0) + 8 | 0) >> 2]);
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($6 + 256 | 0 | 0) | 0, wasm2js_f32$0 = $98), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
label$7 : {
|
|
label$8 : {
|
|
if (!(+Math_fround(HEAPF32[(btVector3__getX_28_29_20const($7 + 24 | 0 | 0) | 0) >> 2]) <= +(0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
$123 = Math_fround(HEAPF32[(btVector3__operator_20float__28_29($6 + 224 | 0 | 0) | 0) >> 2]);
|
|
break label$7;
|
|
}
|
|
$123 = Math_fround(HEAPF32[(btVector3__operator_20float__28_29($6 + 208 | 0 | 0) | 0) >> 2]);
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($6 + 240 | 0 | 0) | 0, wasm2js_f32$0 = $123), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
label$9 : {
|
|
label$10 : {
|
|
if (!(+Math_fround(HEAPF32[(btVector3__getY_28_29_20const($7 + 24 | 0 | 0) | 0) >> 2]) <= +(0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
$148 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 224 | 0 | 0) | 0) + 4 | 0) >> 2]);
|
|
break label$9;
|
|
}
|
|
$148 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 208 | 0 | 0) | 0) + 4 | 0) >> 2]);
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($6 + 240 | 0 | 0) | 0, wasm2js_f32$0 = $148), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
label$11 : {
|
|
label$12 : {
|
|
if (!(+Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($7 + 24 | 0 | 0) | 0) >> 2]) <= +(0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
$173 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 224 | 0 | 0) | 0) + 8 | 0) >> 2]);
|
|
break label$11;
|
|
}
|
|
$173 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 208 | 0 | 0) | 0) + 8 | 0) >> 2]);
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($6 + 240 | 0 | 0) | 0, wasm2js_f32$0 = $173), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($6 + 188 | 0) >> 2] = Math_fround(.5);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 172 | 0 | 0, $6 + 240 | 0 | 0, $6 + 256 | 0 | 0);
|
|
operator__28float_20const__2c_20btVector3_20const__29($6 + 192 | 0 | 0, $6 + 188 | 0 | 0, $6 + 172 | 0 | 0);
|
|
$203 = HEAP32[($7 + 40 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$203 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($203))), HEAPF32[(wasm2js_i32$0 + 168 | 0) >> 2] = wasm2js_f32$0;
|
|
$212 = $6 + 168 | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 152 | 0 | 0, $212 | 0, $212 | 0, $212 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($6 + 192 | 0 | 0, $6 + 152 | 0 | 0) | 0;
|
|
HEAPF32[($6 + 132 | 0) >> 2] = Math_fround(.5);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 116 | 0 | 0, $6 + 240 | 0 | 0, $6 + 256 | 0 | 0);
|
|
operator__28float_20const__2c_20btVector3_20const__29($6 + 136 | 0 | 0, $6 + 132 | 0 | 0, $6 + 116 | 0 | 0);
|
|
btMatrix3x3__absolute_28_29_20const($6 + 68 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($6 + 280 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($6 + 52 | 0 | 0, HEAP32[($6 + 280 | 0) >> 2] | 0 | 0, $6 + 136 | 0 | 0);
|
|
btVector3__dot3_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29_20const($6 + 36 | 0 | 0, $6 + 192 | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($6 + 68 | 0 | 0, 0 | 0) | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($6 + 68 | 0 | 0, 1 | 0) | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($6 + 68 | 0 | 0, 2 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 20 | 0 | 0, $6 + 52 | 0 | 0, $6 + 36 | 0 | 0);
|
|
$280 = HEAP32[($6 + 276 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
$829 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $280;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $829;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$282 = 8;
|
|
i64toi32_i32$2 = ($6 + 20 | 0) + $282 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$842 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $280 + $282 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $842;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 4 | 0 | 0, $6 + 52 | 0 | 0, $6 + 36 | 0 | 0);
|
|
$297 = HEAP32[($6 + 272 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
$863 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $297;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $863;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$299 = 8;
|
|
i64toi32_i32$2 = ($6 + 4 | 0) + $299 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$876 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $297 + $299 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $876;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $6 + 288 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleMeshShape__getLocalAabbMin_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 24 | 0 | 0;
|
|
}
|
|
|
|
function btTriangleMeshShape__getLocalAabbMax_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 40 | 0 | 0;
|
|
}
|
|
|
|
function btScaledBvhTriangleMeshShape__setLocalScaling_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, $8 = 0, $10 = 0, $32 = 0, $42 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$8 = (HEAP32[($4 + 12 | 0) >> 2] | 0) + 24 | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$32 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $8;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $32;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$10 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $10 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$42 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8 + $10 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $42;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function btScaledBvhTriangleMeshShape__getLocalScaling_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 24 | 0 | 0;
|
|
}
|
|
|
|
function btScaledBvhTriangleMeshShape__calculateLocalInertia_28float_2c_20btVector3__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
return;
|
|
}
|
|
|
|
function btScaledBvhTriangleMeshShape__getName_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 84381 | 0;
|
|
}
|
|
|
|
function btScaledBvhTriangleMeshShape__calculateSerializeBufferSize_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 76 | 0;
|
|
}
|
|
|
|
function btScaledBvhTriangleMeshShape__serialize_28void__2c_20btSerializer__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $8 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
$8 = HEAP32[($6 + 40 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($8, HEAP32[$5 >> 2] | 0, HEAP32[($5 + 4 | 0) >> 2] | 0) | 0;
|
|
HEAP32[((HEAP32[$5 >> 2] | 0) + 4 | 0) >> 2] = 22;
|
|
btVector3__serializeFloat_28btVector3FloatData__29_20const($6 + 24 | 0 | 0, (HEAP32[$5 >> 2] | 0) + 60 | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return 83525 | 0;
|
|
}
|
|
|
|
function btScaledTriangleCallback___btScaledTriangleCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btScaledTriangleCallback___btScaledTriangleCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btScaledTriangleCallback__processTriangle_28btVector3__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $7 = 0, $10 = 0, $13 = 0, $14 = 0, $16 = 0, $30 = 0, $32 = 0, $50 = 0, $52 = 0, $68 = 0, $70 = 0, $74 = 0, $12 = 0, $143 = 0, $156 = 0, $182 = 0, $195 = 0, $218 = 0, $228 = 0;
|
|
$6 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 108 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 104 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 100 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 96 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 108 | 0) >> 2] | 0;
|
|
$10 = $6 + 48 | 0;
|
|
$12 = $10 + 48 | 0;
|
|
$13 = $10;
|
|
label$1 : while (1) {
|
|
$14 = $13;
|
|
btVector3__btVector3_28_29($14 | 0) | 0;
|
|
$16 = $14 + 16 | 0;
|
|
$13 = $16;
|
|
if (!(($16 | 0) == ($12 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($6 + 32 | 0 | 0, HEAP32[($6 + 104 | 0) >> 2] | 0 | 0, $7 + 8 | 0 | 0);
|
|
$30 = $6 + 48 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 36 | 0) >> 2] | 0;
|
|
$143 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $30;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $143;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$32 = 8;
|
|
i64toi32_i32$2 = ($6 + 32 | 0) + $32 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$156 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $30 + $32 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $156;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($6 + 16 | 0 | 0, (HEAP32[($6 + 104 | 0) >> 2] | 0) + 16 | 0 | 0, $7 + 8 | 0 | 0);
|
|
$50 = ($6 + 48 | 0) + 16 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 20 | 0) >> 2] | 0;
|
|
$182 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $50;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $182;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$52 = 8;
|
|
i64toi32_i32$2 = ($6 + 16 | 0) + $52 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$195 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $50 + $52 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $195;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($6 | 0, (HEAP32[($6 + 104 | 0) >> 2] | 0) + 32 | 0 | 0, $7 + 8 | 0 | 0);
|
|
$68 = ($6 + 48 | 0) + 32 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[$6 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
$218 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $68;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $218;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$70 = 8;
|
|
i64toi32_i32$2 = $6 + $70 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$228 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $68 + $70 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $228;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$74 = HEAP32[($7 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$74 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($74, $6 + 48 | 0, HEAP32[($6 + 100 | 0) >> 2] | 0, HEAP32[($6 + 96 | 0) >> 2] | 0);
|
|
__stack_pointer = $6 + 112 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btScaledBvhTriangleMeshShape_cpp() {
|
|
__cxx_global_var_init_47();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_48() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114280 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btSphereShape__localGetSupportingVertexWithoutMargin_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $2;
|
|
HEAPF32[($5 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $5 + 20 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSphereShape__batchedUnitVectorGetSupportingVertexWithoutMargin_28btVector3_20const__2c_20btVector3__2c_20int_29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $19 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 12 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$19 = (HEAP32[($6 + 20 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
HEAPF32[($6 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 4 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[$6 >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($19 | 0, $6 + 8 | 0 | 0, $6 + 4 | 0 | 0, $6 | 0);
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSphereShape__localGetSupportingVertex_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $6 = 0, $14 = 0, $20 = 0, $21 = 0, $101 = 0, $114 = 0, $129 = 0, $133 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 76 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 72 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 76 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 68 | 0) >> 2] | 0 | 0]($5 + 56 | 0, $6, HEAP32[($5 + 72 | 0) >> 2] | 0);
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 56 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
$101 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $101;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$14 = 8;
|
|
i64toi32_i32$2 = ($5 + 56 | 0) + $14 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$114 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0 + $14 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $114;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$20 = HEAP32[($5 + 72 | 0) >> 2] | 0;
|
|
$21 = 8;
|
|
i64toi32_i32$2 = $20 + $21 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$129 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 40 | 0) + $21 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $129;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $20;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$133 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $133;
|
|
HEAP32[($5 + 44 | 0) >> 2] = i64toi32_i32$0;
|
|
label$1 : {
|
|
if (!(Math_fround(btVector3__length2_28_29_20const($5 + 40 | 0 | 0)) < Math_fround(1.4210854715202004e-14) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[($5 + 36 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[($5 + 32 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[($5 + 28 | 0) >> 2] = Math_fround(-1.0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 40 | 0 | 0, $5 + 36 | 0 | 0, $5 + 32 | 0 | 0, $5 + 28 | 0 | 0);
|
|
}
|
|
btVector3__normalize_28_29($5 + 40 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($6))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28float_20const__2c_20btVector3_20const__29($5 + 12 | 0 | 0, $5 + 8 | 0 | 0, $5 + 40 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($0 | 0, $5 + 12 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 80 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSphereShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $7 = 0, $38 = 0, $40 = 0, $51 = 0, $53 = 0, $146 = 0, $159 = 0, $175 = 0, $185 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 76 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 72 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 68 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 64 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 76 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btTransform__getOrigin_28_29_20const(HEAP32[($6 + 72 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 60 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($7))), HEAPF32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($7))), HEAPF32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($7))), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 44 | 0 | 0, $6 + 40 | 0 | 0, $6 + 36 | 0 | 0, $6 + 32 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 16 | 0 | 0, HEAP32[($6 + 60 | 0) >> 2] | 0 | 0, $6 + 44 | 0 | 0);
|
|
$38 = HEAP32[($6 + 68 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 20 | 0) >> 2] | 0;
|
|
$146 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $38;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $146;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$40 = 8;
|
|
i64toi32_i32$2 = ($6 + 16 | 0) + $40 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$159 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $38 + $40 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $159;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 | 0, HEAP32[($6 + 60 | 0) >> 2] | 0 | 0, $6 + 44 | 0 | 0);
|
|
$51 = HEAP32[($6 + 64 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[$6 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
$175 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $51;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $175;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$53 = 8;
|
|
i64toi32_i32$2 = $6 + $53 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$185 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $51 + $53 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $185;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $6 + 80 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSphereShape__calculateLocalInertia_28float_2c_20btVector3__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(Math_fround(.4000000059604645) * Math_fround(HEAPF32[($5 + 8 | 0) >> 2])) * Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($6))) * Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($6)))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0, $5 | 0, $5 | 0, $5 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSphereShape___btSphereShape_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btSphereShape___btSphereShape_28_29($4 | 0) | 0;
|
|
btSphereShape__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSphereShape__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSphereShape__getName_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 84407 | 0;
|
|
}
|
|
|
|
function btSphereShape__getMargin_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = Math_fround(btSphereShape__getRadius_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0));
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($5);
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btSphereShape_cpp() {
|
|
__cxx_global_var_init_48();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_49() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114284 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btStaticPlaneShape__btStaticPlaneShape_28btVector3_20const__2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
btConcaveShape__btConcaveShape_28_29($6 | 0) | 0;
|
|
HEAP32[$6 >> 2] = 100108 + 8 | 0;
|
|
btVector3__btVector3_28_29($6 + 24 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 40 | 0 | 0) | 0;
|
|
btVector3__normalized_28_29_20const($6 + 56 | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
HEAPF32[($6 + 72 | 0) >> 2] = Math_fround(HEAPF32[($5 + 20 | 0) >> 2]);
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($5 + 8 | 0) >> 2] = Math_fround(1.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 76 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0, $5 + 8 | 0 | 0) | 0;
|
|
HEAP32[($6 + 4 | 0) >> 2] = 28;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btStaticPlaneShape___btStaticPlaneShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConcaveShape___btConcaveShape_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btStaticPlaneShape___btStaticPlaneShape_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[951 | 0]($4) | 0;
|
|
btStaticPlaneShape__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btStaticPlaneShape__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btStaticPlaneShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $20 = 0;
|
|
$6 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 32 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 36 | 0) >> 2] | 0;
|
|
HEAPF32[($6 + 28 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
HEAPF32[($6 + 24 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
HEAPF32[($6 + 20 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($7 | 0, $6 + 28 | 0 | 0, $6 + 24 | 0 | 0, $6 + 20 | 0 | 0);
|
|
$20 = HEAP32[($6 + 32 | 0) >> 2] | 0;
|
|
HEAPF32[($6 + 16 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAPF32[($6 + 12 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAPF32[($6 + 8 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($20 | 0, $6 + 16 | 0 | 0, $6 + 12 | 0 | 0, $6 + 8 | 0 | 0);
|
|
__stack_pointer = $6 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btStaticPlaneShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $7 = 0, $89 = 0, $92 = 0, $93 = 0, $95 = 0, $139 = 0, $141 = 0, $187 = 0, $189 = 0, $235 = 0, $237 = 0, $243 = 0, $249 = 0, $288 = 0, $290 = 0, $336 = 0, $338 = 0, $380 = 0, $382 = 0, $388 = 0, $91 = 0, $653 = 0, $666 = 0, $737 = 0, $750 = 0, $821 = 0, $834 = 0, $917 = 0, $930 = 0, $1001 = 0, $1014 = 0, $1079 = 0, $1092 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 624 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 620 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 616 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 612 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 608 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 620 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 576 | 0 | 0, HEAP32[($6 + 608 | 0) >> 2] | 0 | 0, HEAP32[($6 + 612 | 0) >> 2] | 0 | 0);
|
|
HEAPF32[($6 + 572 | 0) >> 2] = Math_fround(.5);
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 592 | 0 | 0, $6 + 576 | 0 | 0, $6 + 572 | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__length_28_29_20const($6 + 592 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 568 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 536 | 0 | 0, HEAP32[($6 + 608 | 0) >> 2] | 0 | 0, HEAP32[($6 + 612 | 0) >> 2] | 0 | 0);
|
|
HEAPF32[($6 + 532 | 0) >> 2] = Math_fround(.5);
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 552 | 0 | 0, $6 + 536 | 0 | 0, $6 + 532 | 0 | 0);
|
|
btVector3__btVector3_28_29($6 + 516 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 500 | 0 | 0) | 0;
|
|
void_20btPlaneSpace1_btVector3__28btVector3_20const__2c_20btVector3__2c_20btVector3__29($7 + 56 | 0 | 0, $6 + 516 | 0 | 0, $6 + 500 | 0 | 0);
|
|
btVector3__btVector3_28_29($6 + 484 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 468 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(btVector3__dot_28btVector3_20const__29_20const($7 + 56 | 0 | 0, $6 + 552 | 0 | 0)) - Math_fround(HEAPF32[($7 + 72 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 432 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28float_20const__2c_20btVector3_20const__29($6 + 436 | 0 | 0, $6 + 432 | 0 | 0, $7 + 56 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 452 | 0 | 0, $6 + 552 | 0 | 0, $6 + 436 | 0 | 0);
|
|
$89 = $6 + 384 | 0;
|
|
$91 = $89 + 48 | 0;
|
|
$92 = $89;
|
|
label$1 : while (1) {
|
|
$93 = $92;
|
|
btVector3__btVector3_28_29($93 | 0) | 0;
|
|
$95 = $93 + 16 | 0;
|
|
$92 = $95;
|
|
if (!(($95 | 0) == ($91 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 336 | 0 | 0, $6 + 516 | 0 | 0, $6 + 568 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 352 | 0 | 0, $6 + 452 | 0 | 0, $6 + 336 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 320 | 0 | 0, $6 + 500 | 0 | 0, $6 + 568 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 368 | 0 | 0, $6 + 352 | 0 | 0, $6 + 320 | 0 | 0);
|
|
$139 = $6 + 384 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 368 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 372 | 0) >> 2] | 0;
|
|
$653 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $139;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $653;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$141 = 8;
|
|
i64toi32_i32$2 = ($6 + 368 | 0) + $141 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$666 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $139 + $141 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $666;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 272 | 0 | 0, $6 + 516 | 0 | 0, $6 + 568 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 288 | 0 | 0, $6 + 452 | 0 | 0, $6 + 272 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 256 | 0 | 0, $6 + 500 | 0 | 0, $6 + 568 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 304 | 0 | 0, $6 + 288 | 0 | 0, $6 + 256 | 0 | 0);
|
|
$187 = ($6 + 384 | 0) + 16 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 304 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 308 | 0) >> 2] | 0;
|
|
$737 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $187;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $737;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$189 = 8;
|
|
i64toi32_i32$2 = ($6 + 304 | 0) + $189 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$750 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $187 + $189 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $750;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 208 | 0 | 0, $6 + 516 | 0 | 0, $6 + 568 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 224 | 0 | 0, $6 + 452 | 0 | 0, $6 + 208 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 192 | 0 | 0, $6 + 500 | 0 | 0, $6 + 568 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 240 | 0 | 0, $6 + 224 | 0 | 0, $6 + 192 | 0 | 0);
|
|
$235 = ($6 + 384 | 0) + 32 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 240 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 244 | 0) >> 2] | 0;
|
|
$821 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $235;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $821;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$237 = 8;
|
|
i64toi32_i32$2 = ($6 + 240 | 0) + $237 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$834 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $235 + $237 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $834;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$243 = HEAP32[($6 + 616 | 0) >> 2] | 0;
|
|
$249 = 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$243 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($243, $6 + 384 | 0, $249, $249);
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 144 | 0 | 0, $6 + 516 | 0 | 0, $6 + 568 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 160 | 0 | 0, $6 + 452 | 0 | 0, $6 + 144 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 128 | 0 | 0, $6 + 500 | 0 | 0, $6 + 568 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 176 | 0 | 0, $6 + 160 | 0 | 0, $6 + 128 | 0 | 0);
|
|
$288 = $6 + 384 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 176 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 180 | 0) >> 2] | 0;
|
|
$917 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $288;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $917;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$290 = 8;
|
|
i64toi32_i32$2 = ($6 + 176 | 0) + $290 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$930 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $288 + $290 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $930;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 80 | 0 | 0, $6 + 516 | 0 | 0, $6 + 568 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 96 | 0 | 0, $6 + 452 | 0 | 0, $6 + 80 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 64 | 0 | 0, $6 + 500 | 0 | 0, $6 + 568 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 112 | 0 | 0, $6 + 96 | 0 | 0, $6 + 64 | 0 | 0);
|
|
$336 = ($6 + 384 | 0) + 16 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 112 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 116 | 0) >> 2] | 0;
|
|
$1001 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $336;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1001;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$338 = 8;
|
|
i64toi32_i32$2 = ($6 + 112 | 0) + $338 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1014 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $336 + $338 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1014;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 16 | 0 | 0, $6 + 516 | 0 | 0, $6 + 568 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 32 | 0 | 0, $6 + 452 | 0 | 0, $6 + 16 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 | 0, $6 + 500 | 0 | 0, $6 + 568 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 48 | 0 | 0, $6 + 32 | 0 | 0, $6 | 0);
|
|
$380 = ($6 + 384 | 0) + 32 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 52 | 0) >> 2] | 0;
|
|
$1079 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $380;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1079;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$382 = 8;
|
|
i64toi32_i32$2 = ($6 + 48 | 0) + $382 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1092 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $380 + $382 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1092;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$388 = HEAP32[($6 + 616 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$388 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($388, $6 + 384 | 0, 0, 1);
|
|
__stack_pointer = $6 + 624 | 0;
|
|
return;
|
|
}
|
|
|
|
function btStaticPlaneShape__calculateLocalInertia_28float_2c_20btVector3__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($6 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0, $5 + 8 | 0 | 0);
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btStaticPlaneShape__setLocalScaling_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, $8 = 0, $10 = 0, $32 = 0, $42 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$8 = (HEAP32[($4 + 12 | 0) >> 2] | 0) + 76 | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$32 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $8;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $32;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$10 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $10 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$42 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8 + $10 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $42;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function btStaticPlaneShape__getLocalScaling_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 76 | 0 | 0;
|
|
}
|
|
|
|
function btStaticPlaneShape__getName_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 84414 | 0;
|
|
}
|
|
|
|
function btStaticPlaneShape__calculateSerializeBufferSize_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 52 | 0;
|
|
}
|
|
|
|
function btStaticPlaneShape__serialize_28void__2c_20btSerializer__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
btCollisionShape__serialize_28void__2c_20btSerializer__29_20const($6 | 0, HEAP32[$5 >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
btVector3__serializeFloat_28btVector3FloatData__29_20const($6 + 76 | 0 | 0, (HEAP32[$5 >> 2] | 0) + 12 | 0 | 0);
|
|
btVector3__serializeFloat_28btVector3FloatData__29_20const($6 + 56 | 0 | 0, (HEAP32[$5 >> 2] | 0) + 28 | 0 | 0);
|
|
HEAPF32[((HEAP32[$5 >> 2] | 0) + 44 | 0) >> 2] = Math_fround(HEAPF32[($6 + 72 | 0) >> 2]);
|
|
HEAP8[((HEAP32[$5 >> 2] | 0) + 48 | 0) >> 0] = 0;
|
|
HEAP8[((HEAP32[$5 >> 2] | 0) + 49 | 0) >> 0] = 0;
|
|
HEAP8[((HEAP32[$5 >> 2] | 0) + 50 | 0) >> 0] = 0;
|
|
HEAP8[((HEAP32[$5 >> 2] | 0) + 51 | 0) >> 0] = 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return 83571 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btStaticPlaneShape_cpp() {
|
|
__cxx_global_var_init_49();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_50() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114288 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btBU_Simplex1to4__btBU_Simplex1to4_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $10 = 0, $13 = 0, $14 = 0, $16 = 0, $12 = 0, $23 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
btPolyhedralConvexAabbCachingShape__btPolyhedralConvexAabbCachingShape_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 100220 + 8 | 0;
|
|
HEAP32[($4 + 100 | 0) >> 2] = 0;
|
|
$10 = $4 + 104 | 0;
|
|
$12 = $10 + 64 | 0;
|
|
$13 = $10;
|
|
label$1 : while (1) {
|
|
$14 = $13;
|
|
btVector3__btVector3_28_29($14 | 0) | 0;
|
|
$16 = $14 + 16 | 0;
|
|
$13 = $16;
|
|
if (!(($16 | 0) == ($12 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
HEAP32[($4 + 4 | 0) >> 2] = 2;
|
|
$23 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $23 | 0;
|
|
}
|
|
|
|
function btBU_Simplex1to4__addVertex_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $5 = 0, $9 = 0, $14 = 0, $16 = 0, $6 = 0, $54 = 0, $64 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$6 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
$9 = HEAP32[($5 + 100 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 100 | 0) >> 2] = $9 + 1 | 0;
|
|
$14 = ($5 + 104 | 0) + ($9 << 4 | 0) | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$54 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $14;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $54;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$16 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $16 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$64 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $14 + $16 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $64;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btPolyhedralConvexAabbCachingShape__recalcLocalAabb_28_29($5 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBU_Simplex1to4__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
btPolyhedralConvexAabbCachingShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const(HEAP32[($6 + 12 | 0) >> 2] | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0, HEAP32[($6 + 4 | 0) >> 2] | 0 | 0, HEAP32[$6 >> 2] | 0 | 0);
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBU_Simplex1to4__getNumVertices_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 100 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btBU_Simplex1to4__getNumEdges_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$5 = HEAP32[((HEAP32[($3 + 8 | 0) >> 2] | 0) + 100 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
switch ($5 | 0) {
|
|
case 0:
|
|
HEAP32[($3 + 12 | 0) >> 2] = 0;
|
|
break label$1;
|
|
case 1:
|
|
HEAP32[($3 + 12 | 0) >> 2] = 0;
|
|
break label$1;
|
|
case 2:
|
|
HEAP32[($3 + 12 | 0) >> 2] = 1;
|
|
break label$1;
|
|
case 3:
|
|
HEAP32[($3 + 12 | 0) >> 2] = 3;
|
|
break label$1;
|
|
case 4:
|
|
HEAP32[($3 + 12 | 0) >> 2] = 6;
|
|
break label$1;
|
|
default:
|
|
break label$2;
|
|
};
|
|
}
|
|
HEAP32[($3 + 12 | 0) >> 2] = 0;
|
|
}
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btBU_Simplex1to4__getEdge_28int_2c_20btVector3__2c_20btVector3__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, $7 = 0, $10 = 0, $14 = 0, $16 = 0, $24 = 0, $26 = 0, $30 = 0, $34 = 0, $36 = 0, $44 = 0, $46 = 0, $54 = 0, $56 = 0, $64 = 0, $66 = 0, $74 = 0, $76 = 0, $82 = 0, $84 = 0, $88 = 0, $92 = 0, $94 = 0, $102 = 0, $104 = 0, $112 = 0, $114 = 0, $122 = 0, $124 = 0, $132 = 0, $134 = 0, $140 = 0, $142 = 0, $148 = 0, $150 = 0, $158 = 0, $160 = 0, $168 = 0, $170 = 0, $178 = 0, $180 = 0, $188 = 0, $190 = 0, $198 = 0, $200 = 0, $235 = 0, $245 = 0, $257 = 0, $267 = 0, $282 = 0, $292 = 0, $304 = 0, $314 = 0, $326 = 0, $336 = 0, $348 = 0, $358 = 0, $370 = 0, $380 = 0, $389 = 0, $399 = 0, $414 = 0, $424 = 0, $436 = 0, $446 = 0, $458 = 0, $468 = 0, $480 = 0, $490 = 0, $502 = 0, $512 = 0, $521 = 0, $531 = 0, $540 = 0, $550 = 0, $562 = 0, $572 = 0, $584 = 0, $594 = 0, $606 = 0, $616 = 0, $628 = 0, $638 = 0, $650 = 0, $660 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
$10 = (HEAP32[($7 + 100 | 0) >> 2] | 0) + -2 | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
switch ($10 | 0) {
|
|
case 0:
|
|
$14 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $7 + 104 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$235 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $14;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $235;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$16 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $16 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$245 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $14 + $16 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $245;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$24 = HEAP32[$6 >> 2] | 0;
|
|
i64toi32_i32$2 = ($7 + 104 | 0) + 16 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$257 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $24;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $257;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$26 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $26 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$267 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $24 + $26 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $267;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$1;
|
|
case 1:
|
|
$30 = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
label$5 : {
|
|
label$6 : {
|
|
switch ($30 | 0) {
|
|
case 0:
|
|
$34 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $7 + 104 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$282 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $34;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $282;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$36 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $36 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$292 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $34 + $36 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $292;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$44 = HEAP32[$6 >> 2] | 0;
|
|
i64toi32_i32$2 = ($7 + 104 | 0) + 16 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$304 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $44;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $304;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$46 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $46 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$314 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $44 + $46 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $314;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$5;
|
|
case 1:
|
|
$54 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = ($7 + 104 | 0) + 16 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$326 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $54;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $326;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$56 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $56 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$336 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $54 + $56 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $336;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$64 = HEAP32[$6 >> 2] | 0;
|
|
i64toi32_i32$2 = ($7 + 104 | 0) + 32 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$348 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $64;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $348;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$66 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $66 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$358 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $64 + $66 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $358;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$5;
|
|
case 2:
|
|
break label$6;
|
|
default:
|
|
break label$5;
|
|
};
|
|
}
|
|
$74 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = ($7 + 104 | 0) + 32 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$370 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $74;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $370;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$76 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $76 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$380 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $74 + $76 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $380;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$82 = HEAP32[$6 >> 2] | 0;
|
|
i64toi32_i32$2 = $7 + 104 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$389 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $82;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $389;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$84 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $84 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$399 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $82 + $84 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $399;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
break label$1;
|
|
case 2:
|
|
break label$2;
|
|
default:
|
|
break label$1;
|
|
};
|
|
}
|
|
$88 = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
label$9 : {
|
|
label$10 : {
|
|
switch ($88 | 0) {
|
|
case 0:
|
|
$92 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $7 + 104 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$414 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $92;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $414;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$94 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $94 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$424 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $92 + $94 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $424;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$102 = HEAP32[$6 >> 2] | 0;
|
|
i64toi32_i32$2 = ($7 + 104 | 0) + 16 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$436 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $102;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $436;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$104 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $104 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$446 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $102 + $104 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $446;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$9;
|
|
case 1:
|
|
$112 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = ($7 + 104 | 0) + 16 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$458 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $112;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $458;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$114 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $114 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$468 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $112 + $114 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $468;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$122 = HEAP32[$6 >> 2] | 0;
|
|
i64toi32_i32$2 = ($7 + 104 | 0) + 32 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$480 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $122;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $480;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$124 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $124 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$490 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $122 + $124 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $490;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$9;
|
|
case 2:
|
|
$132 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = ($7 + 104 | 0) + 32 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$502 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $132;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $502;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$134 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $134 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$512 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $132 + $134 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $512;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$140 = HEAP32[$6 >> 2] | 0;
|
|
i64toi32_i32$2 = $7 + 104 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$521 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $140;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $521;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$142 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $142 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$531 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $140 + $142 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $531;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$9;
|
|
case 3:
|
|
$148 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $7 + 104 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$540 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $148;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $540;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$150 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $150 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$550 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $148 + $150 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $550;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$158 = HEAP32[$6 >> 2] | 0;
|
|
i64toi32_i32$2 = ($7 + 104 | 0) + 48 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$562 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $158;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $562;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$160 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $160 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$572 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $158 + $160 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $572;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$9;
|
|
case 4:
|
|
$168 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = ($7 + 104 | 0) + 16 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$584 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $168;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $584;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$170 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $170 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$594 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $168 + $170 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $594;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$178 = HEAP32[$6 >> 2] | 0;
|
|
i64toi32_i32$2 = ($7 + 104 | 0) + 48 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$606 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $178;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $606;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$180 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $180 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$616 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $178 + $180 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $616;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$9;
|
|
case 5:
|
|
break label$10;
|
|
default:
|
|
break label$9;
|
|
};
|
|
}
|
|
$188 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = ($7 + 104 | 0) + 32 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$628 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $188;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $628;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$190 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $190 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$638 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $188 + $190 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $638;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$198 = HEAP32[$6 >> 2] | 0;
|
|
i64toi32_i32$2 = ($7 + 104 | 0) + 48 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$650 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $198;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $650;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$200 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $200 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$660 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $198 + $200 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $660;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btBU_Simplex1to4__getVertex_28int_2c_20btVector3__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $13 = 0, $15 = 0, $47 = 0, $57 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$13 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = ((HEAP32[($5 + 12 | 0) >> 2] | 0) + 104 | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$47 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $13;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $47;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$15 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $15 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$57 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $13 + $15 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $57;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function btBU_Simplex1to4__getNumPlanes_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$5 = HEAP32[((HEAP32[($3 + 8 | 0) >> 2] | 0) + 100 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
switch ($5 | 0) {
|
|
case 0:
|
|
HEAP32[($3 + 12 | 0) >> 2] = 0;
|
|
break label$1;
|
|
case 1:
|
|
HEAP32[($3 + 12 | 0) >> 2] = 0;
|
|
break label$1;
|
|
case 2:
|
|
HEAP32[($3 + 12 | 0) >> 2] = 0;
|
|
break label$1;
|
|
case 3:
|
|
HEAP32[($3 + 12 | 0) >> 2] = 2;
|
|
break label$1;
|
|
case 4:
|
|
HEAP32[($3 + 12 | 0) >> 2] = 4;
|
|
break label$1;
|
|
default:
|
|
break label$2;
|
|
};
|
|
}
|
|
HEAP32[($3 + 12 | 0) >> 2] = 0;
|
|
}
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btBU_Simplex1to4__getPlane_28btVector3__2c_20btVector3__2c_20int_29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
return;
|
|
}
|
|
|
|
function btBU_Simplex1to4__getIndex_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return 0 | 0;
|
|
}
|
|
|
|
function btBU_Simplex1to4__isInside_28btVector3_20const__2c_20float_29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
return 0 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btBU_Simplex1to4___btBU_Simplex1to4_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btPolyhedralConvexAabbCachingShape___btPolyhedralConvexAabbCachingShape_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btBU_Simplex1to4___btBU_Simplex1to4_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btBU_Simplex1to4___btBU_Simplex1to4_28_29($4 | 0) | 0;
|
|
btBU_Simplex1to4__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBU_Simplex1to4__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBU_Simplex1to4__getName_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 85350 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btTetrahedronShape_cpp() {
|
|
__cxx_global_var_init_50();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_51() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114292 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleCallback___btTriangleCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btTriangleCallback___btTriangleCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btInternalTriangleIndexCallback___btInternalTriangleIndexCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btInternalTriangleIndexCallback___btInternalTriangleIndexCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btTriangleCallback_cpp() {
|
|
__cxx_global_var_init_51();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_52() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114296 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btStridingMeshInterface___btStridingMeshInterface_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btStridingMeshInterface___btStridingMeshInterface_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btStridingMeshInterface__InternalProcessAllTriangles_28btInternalTriangleIndexCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $14 = 0, $17 = 0, $18 = 0, $20 = 0, $26 = 0, $27 = 0, $66 = 0, $70 = 0, $215 = 0, $375 = 0, $535 = 0, $566 = 0, $699 = 0, $841 = 0, $983 = 0, $16 = 0, $1097 = 0, $1101 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 384 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 380 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 376 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 372 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 368 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 380 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 364 | 0) >> 2] = 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($7) | 0), HEAP32[(wasm2js_i32$0 + 356 | 0) >> 2] = wasm2js_i32$1;
|
|
$14 = $6 + 272 | 0;
|
|
$16 = $14 + 48 | 0;
|
|
$17 = $14;
|
|
label$1 : while (1) {
|
|
$18 = $17;
|
|
btVector3__btVector3_28_29($18 | 0) | 0;
|
|
$20 = $18 + 16 | 0;
|
|
$17 = $20;
|
|
if (!(($20 | 0) == ($16 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
$26 = btStridingMeshInterface__getScaling_28_29_20const($7 | 0) | 0;
|
|
$27 = 8;
|
|
i64toi32_i32$2 = $26 + $27 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1097 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 256 | 0) + $27 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1097;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $26;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1101 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 256 | 0) >> 2] = $1101;
|
|
HEAP32[($6 + 260 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($6 + 360 | 0) >> 2] = 0;
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($6 + 360 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 356 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($7, $6 + 352 | 0, $6 + 328 | 0, $6 + 340 | 0, $6 + 332 | 0, $6 + 348 | 0, $6 + 344 | 0, $6 + 324 | 0, $6 + 336 | 0, HEAP32[($6 + 360 | 0) >> 2] | 0);
|
|
HEAP32[($6 + 364 | 0) >> 2] = (HEAP32[($6 + 364 | 0) >> 2] | 0) + Math_imul(HEAP32[($6 + 324 | 0) >> 2] | 0, 3) | 0;
|
|
$66 = HEAP32[($6 + 340 | 0) >> 2] | 0;
|
|
label$4 : {
|
|
label$5 : {
|
|
switch ($66 | 0) {
|
|
case 0:
|
|
$70 = (HEAP32[($6 + 336 | 0) >> 2] | 0) + -2 | 0;
|
|
label$8 : {
|
|
label$9 : {
|
|
switch ($70 | 0) {
|
|
case 0:
|
|
HEAP32[($6 + 320 | 0) >> 2] = 0;
|
|
label$13 : {
|
|
label$14 : while (1) {
|
|
if (!((HEAP32[($6 + 320 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 324 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
HEAP32[($6 + 248 | 0) >> 2] = (HEAP32[($6 + 348 | 0) >> 2] | 0) + Math_imul(HEAP32[($6 + 320 | 0) >> 2] | 0, HEAP32[($6 + 344 | 0) >> 2] | 0) | 0;
|
|
HEAP32[($6 + 252 | 0) >> 2] = (HEAP32[($6 + 352 | 0) >> 2] | 0) + Math_imul(HEAP32[(HEAP32[($6 + 248 | 0) >> 2] | 0) >> 2] | 0, HEAP32[($6 + 332 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(HEAP32[($6 + 252 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 244 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((HEAP32[($6 + 252 | 0) >> 2] | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getY_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 240 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((HEAP32[($6 + 252 | 0) >> 2] | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 236 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 272 | 0 | 0, $6 + 244 | 0 | 0, $6 + 240 | 0 | 0, $6 + 236 | 0 | 0);
|
|
HEAP32[($6 + 252 | 0) >> 2] = (HEAP32[($6 + 352 | 0) >> 2] | 0) + Math_imul(HEAP32[((HEAP32[($6 + 248 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0, HEAP32[($6 + 332 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(HEAP32[($6 + 252 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 232 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((HEAP32[($6 + 252 | 0) >> 2] | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getY_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 228 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((HEAP32[($6 + 252 | 0) >> 2] | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 224 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29(($6 + 272 | 0) + 16 | 0 | 0, $6 + 232 | 0 | 0, $6 + 228 | 0 | 0, $6 + 224 | 0 | 0);
|
|
HEAP32[($6 + 252 | 0) >> 2] = (HEAP32[($6 + 352 | 0) >> 2] | 0) + Math_imul(HEAP32[((HEAP32[($6 + 248 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0, HEAP32[($6 + 332 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(HEAP32[($6 + 252 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 220 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((HEAP32[($6 + 252 | 0) >> 2] | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getY_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 216 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((HEAP32[($6 + 252 | 0) >> 2] | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 212 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29(($6 + 272 | 0) + 32 | 0 | 0, $6 + 220 | 0 | 0, $6 + 216 | 0 | 0, $6 + 212 | 0 | 0);
|
|
$215 = HEAP32[($6 + 376 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$215 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($215, $6 + 272 | 0, HEAP32[($6 + 360 | 0) >> 2] | 0, HEAP32[($6 + 320 | 0) >> 2] | 0);
|
|
HEAP32[($6 + 320 | 0) >> 2] = (HEAP32[($6 + 320 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$14;
|
|
};
|
|
}
|
|
break label$8;
|
|
case 1:
|
|
HEAP32[($6 + 320 | 0) >> 2] = 0;
|
|
label$15 : {
|
|
label$16 : while (1) {
|
|
if (!((HEAP32[($6 + 320 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 324 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
HEAP32[($6 + 208 | 0) >> 2] = (HEAP32[($6 + 348 | 0) >> 2] | 0) + Math_imul(HEAP32[($6 + 320 | 0) >> 2] | 0, HEAP32[($6 + 344 | 0) >> 2] | 0) | 0;
|
|
HEAP32[($6 + 252 | 0) >> 2] = (HEAP32[($6 + 352 | 0) >> 2] | 0) + Math_imul((HEAPU16[(HEAP32[($6 + 208 | 0) >> 2] | 0) >> 1] | 0) & 65535 | 0, HEAP32[($6 + 332 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(HEAP32[($6 + 252 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 204 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((HEAP32[($6 + 252 | 0) >> 2] | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getY_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 200 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((HEAP32[($6 + 252 | 0) >> 2] | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 196 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 272 | 0 | 0, $6 + 204 | 0 | 0, $6 + 200 | 0 | 0, $6 + 196 | 0 | 0);
|
|
HEAP32[($6 + 252 | 0) >> 2] = (HEAP32[($6 + 352 | 0) >> 2] | 0) + Math_imul((HEAPU16[((HEAP32[($6 + 208 | 0) >> 2] | 0) + 2 | 0) >> 1] | 0) & 65535 | 0, HEAP32[($6 + 332 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(HEAP32[($6 + 252 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 192 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((HEAP32[($6 + 252 | 0) >> 2] | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getY_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 188 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((HEAP32[($6 + 252 | 0) >> 2] | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 184 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29(($6 + 272 | 0) + 16 | 0 | 0, $6 + 192 | 0 | 0, $6 + 188 | 0 | 0, $6 + 184 | 0 | 0);
|
|
HEAP32[($6 + 252 | 0) >> 2] = (HEAP32[($6 + 352 | 0) >> 2] | 0) + Math_imul((HEAPU16[((HEAP32[($6 + 208 | 0) >> 2] | 0) + 4 | 0) >> 1] | 0) & 65535 | 0, HEAP32[($6 + 332 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(HEAP32[($6 + 252 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 180 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((HEAP32[($6 + 252 | 0) >> 2] | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getY_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 176 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((HEAP32[($6 + 252 | 0) >> 2] | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 172 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29(($6 + 272 | 0) + 32 | 0 | 0, $6 + 180 | 0 | 0, $6 + 176 | 0 | 0, $6 + 172 | 0 | 0);
|
|
$375 = HEAP32[($6 + 376 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$375 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($375, $6 + 272 | 0, HEAP32[($6 + 360 | 0) >> 2] | 0, HEAP32[($6 + 320 | 0) >> 2] | 0);
|
|
HEAP32[($6 + 320 | 0) >> 2] = (HEAP32[($6 + 320 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$16;
|
|
};
|
|
}
|
|
break label$8;
|
|
case 3:
|
|
HEAP32[($6 + 320 | 0) >> 2] = 0;
|
|
label$17 : {
|
|
label$18 : while (1) {
|
|
if (!((HEAP32[($6 + 320 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 324 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
HEAP32[($6 + 168 | 0) >> 2] = (HEAP32[($6 + 348 | 0) >> 2] | 0) + Math_imul(HEAP32[($6 + 320 | 0) >> 2] | 0, HEAP32[($6 + 344 | 0) >> 2] | 0) | 0;
|
|
HEAP32[($6 + 252 | 0) >> 2] = (HEAP32[($6 + 352 | 0) >> 2] | 0) + Math_imul((HEAPU8[(HEAP32[($6 + 168 | 0) >> 2] | 0) >> 0] | 0) & 255 | 0, HEAP32[($6 + 332 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(HEAP32[($6 + 252 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 164 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((HEAP32[($6 + 252 | 0) >> 2] | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getY_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 160 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((HEAP32[($6 + 252 | 0) >> 2] | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 156 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 272 | 0 | 0, $6 + 164 | 0 | 0, $6 + 160 | 0 | 0, $6 + 156 | 0 | 0);
|
|
HEAP32[($6 + 252 | 0) >> 2] = (HEAP32[($6 + 352 | 0) >> 2] | 0) + Math_imul((HEAPU8[((HEAP32[($6 + 168 | 0) >> 2] | 0) + 1 | 0) >> 0] | 0) & 255 | 0, HEAP32[($6 + 332 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(HEAP32[($6 + 252 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 152 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((HEAP32[($6 + 252 | 0) >> 2] | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getY_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 148 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((HEAP32[($6 + 252 | 0) >> 2] | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 144 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29(($6 + 272 | 0) + 16 | 0 | 0, $6 + 152 | 0 | 0, $6 + 148 | 0 | 0, $6 + 144 | 0 | 0);
|
|
HEAP32[($6 + 252 | 0) >> 2] = (HEAP32[($6 + 352 | 0) >> 2] | 0) + Math_imul((HEAPU8[((HEAP32[($6 + 168 | 0) >> 2] | 0) + 2 | 0) >> 0] | 0) & 255 | 0, HEAP32[($6 + 332 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(HEAP32[($6 + 252 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 140 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((HEAP32[($6 + 252 | 0) >> 2] | 0) + 4 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getY_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 136 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((HEAP32[($6 + 252 | 0) >> 2] | 0) + 8 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 132 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29(($6 + 272 | 0) + 32 | 0 | 0, $6 + 140 | 0 | 0, $6 + 136 | 0 | 0, $6 + 132 | 0 | 0);
|
|
$535 = HEAP32[($6 + 376 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$535 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($535, $6 + 272 | 0, HEAP32[($6 + 360 | 0) >> 2] | 0, HEAP32[($6 + 320 | 0) >> 2] | 0);
|
|
HEAP32[($6 + 320 | 0) >> 2] = (HEAP32[($6 + 320 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$18;
|
|
};
|
|
}
|
|
break label$8;
|
|
default:
|
|
break label$9;
|
|
};
|
|
}
|
|
label$19 : {
|
|
if ((HEAP32[($6 + 336 | 0) >> 2] | 0 | 0) == (2 | 0) & 1 | 0) {
|
|
break label$19
|
|
}
|
|
if ((HEAP32[($6 + 336 | 0) >> 2] | 0 | 0) == (3 | 0) & 1 | 0) {
|
|
break label$19
|
|
}
|
|
__assert_fail(86334 | 0, 75524 | 0, 107 | 0, 70188 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
}
|
|
break label$4;
|
|
case 1:
|
|
$566 = (HEAP32[($6 + 336 | 0) >> 2] | 0) + -2 | 0;
|
|
label$20 : {
|
|
label$21 : {
|
|
switch ($566 | 0) {
|
|
case 0:
|
|
HEAP32[($6 + 320 | 0) >> 2] = 0;
|
|
label$25 : {
|
|
label$26 : while (1) {
|
|
if (!((HEAP32[($6 + 320 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 324 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$25
|
|
}
|
|
HEAP32[($6 + 124 | 0) >> 2] = (HEAP32[($6 + 348 | 0) >> 2] | 0) + Math_imul(HEAP32[($6 + 320 | 0) >> 2] | 0, HEAP32[($6 + 344 | 0) >> 2] | 0) | 0;
|
|
HEAP32[($6 + 128 | 0) >> 2] = (HEAP32[($6 + 352 | 0) >> 2] | 0) + Math_imul(HEAP32[(HEAP32[($6 + 124 | 0) >> 2] | 0) >> 2] | 0, HEAP32[($6 + 332 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[(HEAP32[($6 + 128 | 0) >> 2] | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 120 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[((HEAP32[($6 + 128 | 0) >> 2] | 0) + 8 | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getY_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 116 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[((HEAP32[($6 + 128 | 0) >> 2] | 0) + 16 | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 112 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 272 | 0 | 0, $6 + 120 | 0 | 0, $6 + 116 | 0 | 0, $6 + 112 | 0 | 0);
|
|
HEAP32[($6 + 128 | 0) >> 2] = (HEAP32[($6 + 352 | 0) >> 2] | 0) + Math_imul(HEAP32[((HEAP32[($6 + 124 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0, HEAP32[($6 + 332 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[(HEAP32[($6 + 128 | 0) >> 2] | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 108 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[((HEAP32[($6 + 128 | 0) >> 2] | 0) + 8 | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getY_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 104 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[((HEAP32[($6 + 128 | 0) >> 2] | 0) + 16 | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 100 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 288 | 0 | 0, $6 + 108 | 0 | 0, $6 + 104 | 0 | 0, $6 + 100 | 0 | 0);
|
|
HEAP32[($6 + 128 | 0) >> 2] = (HEAP32[($6 + 352 | 0) >> 2] | 0) + Math_imul(HEAP32[((HEAP32[($6 + 124 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0, HEAP32[($6 + 332 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[(HEAP32[($6 + 128 | 0) >> 2] | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 96 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[((HEAP32[($6 + 128 | 0) >> 2] | 0) + 8 | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getY_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 92 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[((HEAP32[($6 + 128 | 0) >> 2] | 0) + 16 | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 88 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 304 | 0 | 0, $6 + 96 | 0 | 0, $6 + 92 | 0 | 0, $6 + 88 | 0 | 0);
|
|
$699 = HEAP32[($6 + 376 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$699 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($699, $6 + 272 | 0, HEAP32[($6 + 360 | 0) >> 2] | 0, HEAP32[($6 + 320 | 0) >> 2] | 0);
|
|
HEAP32[($6 + 320 | 0) >> 2] = (HEAP32[($6 + 320 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$26;
|
|
};
|
|
}
|
|
break label$20;
|
|
case 1:
|
|
HEAP32[($6 + 320 | 0) >> 2] = 0;
|
|
label$27 : {
|
|
label$28 : while (1) {
|
|
if (!((HEAP32[($6 + 320 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 324 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$27
|
|
}
|
|
HEAP32[($6 + 84 | 0) >> 2] = (HEAP32[($6 + 348 | 0) >> 2] | 0) + Math_imul(HEAP32[($6 + 320 | 0) >> 2] | 0, HEAP32[($6 + 344 | 0) >> 2] | 0) | 0;
|
|
HEAP32[($6 + 128 | 0) >> 2] = (HEAP32[($6 + 352 | 0) >> 2] | 0) + Math_imul(HEAPU16[(HEAP32[($6 + 84 | 0) >> 2] | 0) >> 1] | 0, HEAP32[($6 + 332 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[(HEAP32[($6 + 128 | 0) >> 2] | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 80 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[((HEAP32[($6 + 128 | 0) >> 2] | 0) + 8 | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getY_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 76 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[((HEAP32[($6 + 128 | 0) >> 2] | 0) + 16 | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 72 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 272 | 0 | 0, $6 + 80 | 0 | 0, $6 + 76 | 0 | 0, $6 + 72 | 0 | 0);
|
|
HEAP32[($6 + 128 | 0) >> 2] = (HEAP32[($6 + 352 | 0) >> 2] | 0) + Math_imul(HEAPU16[((HEAP32[($6 + 84 | 0) >> 2] | 0) + 2 | 0) >> 1] | 0, HEAP32[($6 + 332 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[(HEAP32[($6 + 128 | 0) >> 2] | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 68 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[((HEAP32[($6 + 128 | 0) >> 2] | 0) + 8 | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getY_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 64 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[((HEAP32[($6 + 128 | 0) >> 2] | 0) + 16 | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 60 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 288 | 0 | 0, $6 + 68 | 0 | 0, $6 + 64 | 0 | 0, $6 + 60 | 0 | 0);
|
|
HEAP32[($6 + 128 | 0) >> 2] = (HEAP32[($6 + 352 | 0) >> 2] | 0) + Math_imul(HEAPU16[((HEAP32[($6 + 84 | 0) >> 2] | 0) + 4 | 0) >> 1] | 0, HEAP32[($6 + 332 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[(HEAP32[($6 + 128 | 0) >> 2] | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 56 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[((HEAP32[($6 + 128 | 0) >> 2] | 0) + 8 | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getY_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 52 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[((HEAP32[($6 + 128 | 0) >> 2] | 0) + 16 | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 48 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 304 | 0 | 0, $6 + 56 | 0 | 0, $6 + 52 | 0 | 0, $6 + 48 | 0 | 0);
|
|
$841 = HEAP32[($6 + 376 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$841 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($841, $6 + 272 | 0, HEAP32[($6 + 360 | 0) >> 2] | 0, HEAP32[($6 + 320 | 0) >> 2] | 0);
|
|
HEAP32[($6 + 320 | 0) >> 2] = (HEAP32[($6 + 320 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$28;
|
|
};
|
|
}
|
|
break label$20;
|
|
case 3:
|
|
HEAP32[($6 + 320 | 0) >> 2] = 0;
|
|
label$29 : {
|
|
label$30 : while (1) {
|
|
if (!((HEAP32[($6 + 320 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 324 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$29
|
|
}
|
|
HEAP32[($6 + 44 | 0) >> 2] = (HEAP32[($6 + 348 | 0) >> 2] | 0) + Math_imul(HEAP32[($6 + 320 | 0) >> 2] | 0, HEAP32[($6 + 344 | 0) >> 2] | 0) | 0;
|
|
HEAP32[($6 + 128 | 0) >> 2] = (HEAP32[($6 + 352 | 0) >> 2] | 0) + Math_imul(HEAPU8[(HEAP32[($6 + 44 | 0) >> 2] | 0) >> 0] | 0, HEAP32[($6 + 332 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[(HEAP32[($6 + 128 | 0) >> 2] | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[((HEAP32[($6 + 128 | 0) >> 2] | 0) + 8 | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getY_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[((HEAP32[($6 + 128 | 0) >> 2] | 0) + 16 | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 272 | 0 | 0, $6 + 40 | 0 | 0, $6 + 36 | 0 | 0, $6 + 32 | 0 | 0);
|
|
HEAP32[($6 + 128 | 0) >> 2] = (HEAP32[($6 + 352 | 0) >> 2] | 0) + Math_imul(HEAPU8[((HEAP32[($6 + 44 | 0) >> 2] | 0) + 1 | 0) >> 0] | 0, HEAP32[($6 + 332 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[(HEAP32[($6 + 128 | 0) >> 2] | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[((HEAP32[($6 + 128 | 0) >> 2] | 0) + 8 | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getY_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[((HEAP32[($6 + 128 | 0) >> 2] | 0) + 16 | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 288 | 0 | 0, $6 + 28 | 0 | 0, $6 + 24 | 0 | 0, $6 + 20 | 0 | 0);
|
|
HEAP32[($6 + 128 | 0) >> 2] = (HEAP32[($6 + 352 | 0) >> 2] | 0) + Math_imul(HEAPU8[((HEAP32[($6 + 44 | 0) >> 2] | 0) + 2 | 0) >> 0] | 0, HEAP32[($6 + 332 | 0) >> 2] | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[(HEAP32[($6 + 128 | 0) >> 2] | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getX_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[((HEAP32[($6 + 128 | 0) >> 2] | 0) + 8 | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getY_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(+HEAPF64[((HEAP32[($6 + 128 | 0) >> 2] | 0) + 16 | 0) >> 3]) * Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($6 + 256 | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 304 | 0 | 0, $6 + 16 | 0 | 0, $6 + 12 | 0 | 0, $6 + 8 | 0 | 0);
|
|
$983 = HEAP32[($6 + 376 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$983 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($983, $6 + 272 | 0, HEAP32[($6 + 360 | 0) >> 2] | 0, HEAP32[($6 + 320 | 0) >> 2] | 0);
|
|
HEAP32[($6 + 320 | 0) >> 2] = (HEAP32[($6 + 320 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$30;
|
|
};
|
|
}
|
|
break label$20;
|
|
default:
|
|
break label$21;
|
|
};
|
|
}
|
|
label$31 : {
|
|
if ((HEAP32[($6 + 336 | 0) >> 2] | 0 | 0) == (2 | 0) & 1 | 0) {
|
|
break label$31
|
|
}
|
|
if ((HEAP32[($6 + 336 | 0) >> 2] | 0 | 0) == (3 | 0) & 1 | 0) {
|
|
break label$31
|
|
}
|
|
__assert_fail(86334 | 0, 75524 | 0, 164 | 0, 70188 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
}
|
|
break label$4;
|
|
default:
|
|
break label$5;
|
|
};
|
|
}
|
|
label$32 : {
|
|
if (!(HEAP32[($6 + 340 | 0) >> 2] | 0)) {
|
|
break label$32
|
|
}
|
|
if ((HEAP32[($6 + 340 | 0) >> 2] | 0 | 0) == (1 | 0) & 1 | 0) {
|
|
break label$32
|
|
}
|
|
__assert_fail(86480 | 0, 75524 | 0, 169 | 0, 70188 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 24 | 0) >> 2] | 0 | 0]($7, HEAP32[($6 + 360 | 0) >> 2] | 0);
|
|
HEAP32[($6 + 360 | 0) >> 2] = (HEAP32[($6 + 360 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 384 | 0;
|
|
return;
|
|
}
|
|
|
|
function btStridingMeshInterface__serialize_28void__2c_20btSerializer__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $66 = 0, $16 = 0, $25 = 0, $74 = 0, $80 = 0, $88 = 0, $141 = 0, $150 = 0, $158 = 0, $213 = 0, $222 = 0, $230 = 0, $279 = 0, $291 = 0, $294 = 0, $302 = 0, $345 = 0, $354 = 0, $362 = 0, $405 = 0, $434 = 0, $10 = 0, $29 = 0, $92 = 0, $162 = 0, $234 = 0, $306 = 0, $366 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 144 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 140 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 136 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 132 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 140 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 128 | 0) >> 2] = HEAP32[($5 + 136 | 0) >> 2] | 0;
|
|
$10 = FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($6) | 0;
|
|
HEAP32[((HEAP32[($5 + 128 | 0) >> 2] | 0) + 20 | 0) >> 2] = $10;
|
|
HEAP32[(HEAP32[($5 + 128 | 0) >> 2] | 0) >> 2] = 0;
|
|
label$1 : {
|
|
if (!(HEAP32[((HEAP32[($5 + 128 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0)) {
|
|
break label$1
|
|
}
|
|
$16 = HEAP32[($5 + 132 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$16 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($16, 32, HEAP32[((HEAP32[($5 + 128 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 124 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($5 + 120 | 0) >> 2] = HEAP32[((HEAP32[($5 + 124 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
$25 = HEAP32[($5 + 132 | 0) >> 2] | 0;
|
|
$29 = FUNCTION_TABLE[HEAP32[((HEAP32[$25 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($25, HEAP32[($5 + 120 | 0) >> 2] | 0) | 0;
|
|
HEAP32[(HEAP32[($5 + 128 | 0) >> 2] | 0) >> 2] = $29;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($6) | 0), HEAP32[(wasm2js_i32$0 + 112 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($5 + 116 | 0) >> 2] = 0;
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($5 + 116 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 112 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($6, $5 + 108 | 0, $5 + 84 | 0, $5 + 96 | 0, $5 + 88 | 0, $5 + 104 | 0, $5 + 100 | 0, $5 + 80 | 0, $5 + 92 | 0, HEAP32[($5 + 116 | 0) >> 2] | 0);
|
|
HEAP32[((HEAP32[($5 + 120 | 0) >> 2] | 0) + 24 | 0) >> 2] = HEAP32[($5 + 80 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 120 | 0) >> 2] | 0) + 28 | 0) >> 2] = HEAP32[($5 + 84 | 0) >> 2] | 0;
|
|
$66 = 0;
|
|
HEAP32[((HEAP32[($5 + 120 | 0) >> 2] | 0) + 20 | 0) >> 2] = $66;
|
|
HEAP32[((HEAP32[($5 + 120 | 0) >> 2] | 0) + 8 | 0) >> 2] = $66;
|
|
HEAP32[((HEAP32[($5 + 120 | 0) >> 2] | 0) + 12 | 0) >> 2] = $66;
|
|
HEAP32[((HEAP32[($5 + 120 | 0) >> 2] | 0) + 16 | 0) >> 2] = $66;
|
|
HEAP32[(HEAP32[($5 + 120 | 0) >> 2] | 0) >> 2] = $66;
|
|
HEAP32[((HEAP32[($5 + 120 | 0) >> 2] | 0) + 4 | 0) >> 2] = $66;
|
|
$74 = (HEAP32[($5 + 92 | 0) >> 2] | 0) + -2 | 0;
|
|
label$4 : {
|
|
label$5 : {
|
|
switch ($74 | 0) {
|
|
case 0:
|
|
HEAP32[($5 + 72 | 0) >> 2] = Math_imul(HEAP32[($5 + 80 | 0) >> 2] | 0, 3);
|
|
label$9 : {
|
|
if (!(HEAP32[($5 + 72 | 0) >> 2] | 0)) {
|
|
break label$9
|
|
}
|
|
$80 = HEAP32[($5 + 132 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$80 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($80, 4, HEAP32[($5 + 72 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 68 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($5 + 64 | 0) >> 2] = HEAP32[((HEAP32[($5 + 68 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
$88 = HEAP32[($5 + 132 | 0) >> 2] | 0;
|
|
$92 = FUNCTION_TABLE[HEAP32[((HEAP32[$88 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($88, HEAP32[($5 + 64 | 0) >> 2] | 0) | 0;
|
|
HEAP32[((HEAP32[($5 + 120 | 0) >> 2] | 0) + 8 | 0) >> 2] = $92;
|
|
HEAP32[($5 + 76 | 0) >> 2] = 0;
|
|
label$10 : {
|
|
label$11 : while (1) {
|
|
if (!((HEAP32[($5 + 76 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 80 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
HEAP32[($5 + 60 | 0) >> 2] = (HEAP32[($5 + 104 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 76 | 0) >> 2] | 0, HEAP32[($5 + 100 | 0) >> 2] | 0) | 0;
|
|
HEAP32[((HEAP32[($5 + 64 | 0) >> 2] | 0) + (Math_imul(HEAP32[($5 + 76 | 0) >> 2] | 0, 3) << 2 | 0) | 0) >> 2] = HEAP32[(HEAP32[($5 + 60 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 64 | 0) >> 2] | 0) + ((Math_imul(HEAP32[($5 + 76 | 0) >> 2] | 0, 3) + 1 | 0) << 2 | 0) | 0) >> 2] = HEAP32[((HEAP32[($5 + 60 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 64 | 0) >> 2] | 0) + ((Math_imul(HEAP32[($5 + 76 | 0) >> 2] | 0, 3) + 2 | 0) << 2 | 0) | 0) >> 2] = HEAP32[((HEAP32[($5 + 60 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 76 | 0) >> 2] = (HEAP32[($5 + 76 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$11;
|
|
};
|
|
}
|
|
$141 = HEAP32[($5 + 132 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$141 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($141, HEAP32[($5 + 68 | 0) >> 2] | 0, 83095, 1497453121, HEAP32[((HEAP32[($5 + 68 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0);
|
|
}
|
|
break label$4;
|
|
case 1:
|
|
label$12 : {
|
|
if (!(HEAP32[($5 + 80 | 0) >> 2] | 0)) {
|
|
break label$12
|
|
}
|
|
$150 = HEAP32[($5 + 132 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$150 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($150, 8, HEAP32[($5 + 80 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 56 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($5 + 52 | 0) >> 2] = HEAP32[((HEAP32[($5 + 56 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
$158 = HEAP32[($5 + 132 | 0) >> 2] | 0;
|
|
$162 = FUNCTION_TABLE[HEAP32[((HEAP32[$158 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($158, HEAP32[($5 + 52 | 0) >> 2] | 0) | 0;
|
|
HEAP32[((HEAP32[($5 + 120 | 0) >> 2] | 0) + 12 | 0) >> 2] = $162;
|
|
HEAP32[($5 + 76 | 0) >> 2] = 0;
|
|
label$13 : {
|
|
label$14 : while (1) {
|
|
if (!((HEAP32[($5 + 76 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 80 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
HEAP32[($5 + 48 | 0) >> 2] = (HEAP32[($5 + 104 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 76 | 0) >> 2] | 0, HEAP32[($5 + 100 | 0) >> 2] | 0) | 0;
|
|
HEAP16[((HEAP32[($5 + 52 | 0) >> 2] | 0) + ((HEAP32[($5 + 76 | 0) >> 2] | 0) << 3 | 0) | 0) >> 1] = HEAPU16[(HEAP32[($5 + 48 | 0) >> 2] | 0) >> 1] | 0;
|
|
HEAP16[(((HEAP32[($5 + 52 | 0) >> 2] | 0) + ((HEAP32[($5 + 76 | 0) >> 2] | 0) << 3 | 0) | 0) + 2 | 0) >> 1] = HEAPU16[((HEAP32[($5 + 48 | 0) >> 2] | 0) + 2 | 0) >> 1] | 0;
|
|
HEAP16[(((HEAP32[($5 + 52 | 0) >> 2] | 0) + ((HEAP32[($5 + 76 | 0) >> 2] | 0) << 3 | 0) | 0) + 4 | 0) >> 1] = HEAPU16[((HEAP32[($5 + 48 | 0) >> 2] | 0) + 4 | 0) >> 1] | 0;
|
|
HEAP8[(((HEAP32[($5 + 52 | 0) >> 2] | 0) + ((HEAP32[($5 + 76 | 0) >> 2] | 0) << 3 | 0) | 0) + 6 | 0) >> 0] = 0;
|
|
HEAP8[(((HEAP32[($5 + 52 | 0) >> 2] | 0) + ((HEAP32[($5 + 76 | 0) >> 2] | 0) << 3 | 0) | 0) + 7 | 0) >> 0] = 0;
|
|
HEAP32[($5 + 76 | 0) >> 2] = (HEAP32[($5 + 76 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$14;
|
|
};
|
|
}
|
|
$213 = HEAP32[($5 + 132 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$213 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($213, HEAP32[($5 + 56 | 0) >> 2] | 0, 83160, 1497453121, HEAP32[((HEAP32[($5 + 56 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0);
|
|
}
|
|
break label$4;
|
|
case 3:
|
|
label$15 : {
|
|
if (!(HEAP32[($5 + 80 | 0) >> 2] | 0)) {
|
|
break label$15
|
|
}
|
|
$222 = HEAP32[($5 + 132 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$222 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($222, 4, HEAP32[($5 + 80 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($5 + 40 | 0) >> 2] = HEAP32[((HEAP32[($5 + 44 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
$230 = HEAP32[($5 + 132 | 0) >> 2] | 0;
|
|
$234 = FUNCTION_TABLE[HEAP32[((HEAP32[$230 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($230, HEAP32[($5 + 40 | 0) >> 2] | 0) | 0;
|
|
HEAP32[((HEAP32[($5 + 120 | 0) >> 2] | 0) + 16 | 0) >> 2] = $234;
|
|
HEAP32[($5 + 76 | 0) >> 2] = 0;
|
|
label$16 : {
|
|
label$17 : while (1) {
|
|
if (!((HEAP32[($5 + 76 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 80 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
HEAP32[($5 + 36 | 0) >> 2] = (HEAP32[($5 + 104 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 76 | 0) >> 2] | 0, HEAP32[($5 + 100 | 0) >> 2] | 0) | 0;
|
|
HEAP8[((HEAP32[($5 + 40 | 0) >> 2] | 0) + ((HEAP32[($5 + 76 | 0) >> 2] | 0) << 2 | 0) | 0) >> 0] = HEAPU8[(HEAP32[($5 + 36 | 0) >> 2] | 0) >> 0] | 0;
|
|
HEAP8[(((HEAP32[($5 + 40 | 0) >> 2] | 0) + ((HEAP32[($5 + 76 | 0) >> 2] | 0) << 2 | 0) | 0) + 1 | 0) >> 0] = HEAPU8[((HEAP32[($5 + 36 | 0) >> 2] | 0) + 1 | 0) >> 0] | 0;
|
|
HEAP8[(((HEAP32[($5 + 40 | 0) >> 2] | 0) + ((HEAP32[($5 + 76 | 0) >> 2] | 0) << 2 | 0) | 0) + 2 | 0) >> 0] = HEAPU8[((HEAP32[($5 + 36 | 0) >> 2] | 0) + 2 | 0) >> 0] | 0;
|
|
HEAP8[(((HEAP32[($5 + 40 | 0) >> 2] | 0) + ((HEAP32[($5 + 76 | 0) >> 2] | 0) << 2 | 0) | 0) + 3 | 0) >> 0] = 0;
|
|
HEAP32[($5 + 76 | 0) >> 2] = (HEAP32[($5 + 76 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$17;
|
|
};
|
|
}
|
|
$279 = HEAP32[($5 + 132 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$279 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($279, HEAP32[($5 + 44 | 0) >> 2] | 0, 83187, 1497453121, HEAP32[((HEAP32[($5 + 44 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0);
|
|
}
|
|
break label$4;
|
|
default:
|
|
break label$5;
|
|
};
|
|
}
|
|
__assert_fail(86177 | 0, 75524 | 0, 326 | 0, 80835 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$291 = HEAP32[($5 + 96 | 0) >> 2] | 0;
|
|
label$18 : {
|
|
label$19 : {
|
|
switch ($291 | 0) {
|
|
case 0:
|
|
label$22 : {
|
|
if (!(HEAP32[($5 + 84 | 0) >> 2] | 0)) {
|
|
break label$22
|
|
}
|
|
$294 = HEAP32[($5 + 132 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$294 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($294, 16, HEAP32[($5 + 84 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($5 + 24 | 0) >> 2] = HEAP32[((HEAP32[($5 + 28 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
$302 = HEAP32[($5 + 132 | 0) >> 2] | 0;
|
|
$306 = FUNCTION_TABLE[HEAP32[((HEAP32[$302 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($302, HEAP32[($5 + 24 | 0) >> 2] | 0) | 0;
|
|
HEAP32[(HEAP32[($5 + 120 | 0) >> 2] | 0) >> 2] = $306;
|
|
HEAP32[($5 + 20 | 0) >> 2] = 0;
|
|
label$23 : {
|
|
label$24 : while (1) {
|
|
if (!((HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 84 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$23
|
|
}
|
|
HEAP32[($5 + 32 | 0) >> 2] = (HEAP32[($5 + 108 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 20 | 0) >> 2] | 0, HEAP32[($5 + 88 | 0) >> 2] | 0) | 0;
|
|
HEAPF32[((HEAP32[($5 + 24 | 0) >> 2] | 0) + ((HEAP32[($5 + 20 | 0) >> 2] | 0) << 4 | 0) | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[($5 + 32 | 0) >> 2] | 0) >> 2]);
|
|
HEAPF32[(((HEAP32[($5 + 24 | 0) >> 2] | 0) + ((HEAP32[($5 + 20 | 0) >> 2] | 0) << 4 | 0) | 0) + 4 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($5 + 32 | 0) >> 2] | 0) + 4 | 0) >> 2]);
|
|
HEAPF32[(((HEAP32[($5 + 24 | 0) >> 2] | 0) + ((HEAP32[($5 + 20 | 0) >> 2] | 0) << 4 | 0) | 0) + 8 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($5 + 32 | 0) >> 2] | 0) + 8 | 0) >> 2]);
|
|
HEAP32[($5 + 20 | 0) >> 2] = (HEAP32[($5 + 20 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$24;
|
|
};
|
|
}
|
|
$345 = HEAP32[($5 + 132 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$345 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($345, HEAP32[($5 + 28 | 0) >> 2] | 0, 83394, 1497453121, HEAP32[((HEAP32[($5 + 28 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0);
|
|
}
|
|
break label$18;
|
|
case 1:
|
|
label$25 : {
|
|
if (!(HEAP32[($5 + 84 | 0) >> 2] | 0)) {
|
|
break label$25
|
|
}
|
|
$354 = HEAP32[($5 + 132 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$354 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($354, 32, HEAP32[($5 + 84 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
$362 = HEAP32[($5 + 132 | 0) >> 2] | 0;
|
|
$366 = FUNCTION_TABLE[HEAP32[((HEAP32[$362 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($362, HEAP32[($5 + 12 | 0) >> 2] | 0) | 0;
|
|
HEAP32[((HEAP32[($5 + 120 | 0) >> 2] | 0) + 4 | 0) >> 2] = $366;
|
|
HEAP32[($5 + 8 | 0) >> 2] = 0;
|
|
label$26 : {
|
|
label$27 : while (1) {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 84 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$26
|
|
}
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 108 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 8 | 0) >> 2] | 0, HEAP32[($5 + 88 | 0) >> 2] | 0) | 0;
|
|
HEAPF64[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 5 | 0) | 0) >> 3] = +HEAPF64[(HEAP32[($5 + 4 | 0) >> 2] | 0) >> 3];
|
|
HEAPF64[(((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 5 | 0) | 0) + 8 | 0) >> 3] = +HEAPF64[((HEAP32[($5 + 4 | 0) >> 2] | 0) + 8 | 0) >> 3];
|
|
HEAPF64[(((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 5 | 0) | 0) + 16 | 0) >> 3] = +HEAPF64[((HEAP32[($5 + 4 | 0) >> 2] | 0) + 16 | 0) >> 3];
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$27;
|
|
};
|
|
}
|
|
$405 = HEAP32[($5 + 132 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$405 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($405, HEAP32[($5 + 16 | 0) >> 2] | 0, 83633, 1497453121, HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0);
|
|
}
|
|
break label$18;
|
|
default:
|
|
break label$19;
|
|
};
|
|
}
|
|
label$28 : {
|
|
if (!(HEAP32[($5 + 96 | 0) >> 2] | 0)) {
|
|
break label$28
|
|
}
|
|
if ((HEAP32[($5 + 96 | 0) >> 2] | 0 | 0) == (1 | 0) & 1 | 0) {
|
|
break label$28
|
|
}
|
|
__assert_fail(86480 | 0, 75524 | 0, 374 | 0, 80835 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 24 | 0) >> 2] | 0 | 0]($6, HEAP32[($5 + 116 | 0) >> 2] | 0);
|
|
HEAP32[($5 + 116 | 0) >> 2] = (HEAP32[($5 + 116 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($5 + 120 | 0) >> 2] = (HEAP32[($5 + 120 | 0) >> 2] | 0) + 32 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
$434 = HEAP32[($5 + 132 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$434 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($434, HEAP32[($5 + 124 | 0) >> 2] | 0, 83110, 1497453121, HEAP32[((HEAP32[($5 + 124 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0);
|
|
}
|
|
HEAP32[((HEAP32[($5 + 128 | 0) >> 2] | 0) + 24 | 0) >> 2] = 0;
|
|
btVector3__serializeFloat_28btVector3FloatData__29_20const($6 + 4 | 0 | 0, (HEAP32[($5 + 128 | 0) >> 2] | 0) + 4 | 0 | 0);
|
|
__stack_pointer = $5 + 144 | 0;
|
|
return 83699 | 0;
|
|
}
|
|
|
|
function btStridingMeshInterface__hasPremadeAabb_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 0 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btStridingMeshInterface__setPremadeAabb_28btVector3_20const__2c_20btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
return;
|
|
}
|
|
|
|
function btStridingMeshInterface__getPremadeAabb_28btVector3__2c_20btVector3__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btStridingMeshInterface_cpp() {
|
|
__cxx_global_var_init_52();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_53() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114300 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleIndexVertexArray___btTriangleIndexVertexArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 100608 + 8 | 0;
|
|
btAlignedObjectArray_btIndexedMesh____btAlignedObjectArray_28_29($4 + 20 | 0 | 0) | 0;
|
|
btStridingMeshInterface___btStridingMeshInterface_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btIndexedMesh____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btIndexedMesh___clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btIndexedMesh___clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btIndexedMesh___destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btIndexedMesh___size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btIndexedMesh___deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btIndexedMesh___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleIndexVertexArray___btTriangleIndexVertexArray_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[985 | 0]($4) | 0;
|
|
btTriangleIndexVertexArray__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleIndexVertexArray__getLockedVertexIndexBase_28unsigned_20char___2c_20int__2c_20PHY_ScalarType__2c_20int__2c_20unsigned_20char___2c_20int__2c_20int__2c_20PHY_ScalarType__2c_20int_29($0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
$9 = $9 | 0;
|
|
var $12 = 0, $13 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$12 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $12;
|
|
HEAP32[($12 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($12 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($12 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($12 + 32 | 0) >> 2] = $3;
|
|
HEAP32[($12 + 28 | 0) >> 2] = $4;
|
|
HEAP32[($12 + 24 | 0) >> 2] = $5;
|
|
HEAP32[($12 + 20 | 0) >> 2] = $6;
|
|
HEAP32[($12 + 16 | 0) >> 2] = $7;
|
|
HEAP32[($12 + 12 | 0) >> 2] = $8;
|
|
HEAP32[($12 + 8 | 0) >> 2] = $9;
|
|
$13 = HEAP32[($12 + 44 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($12 + 8 | 0) >> 2] | 0 | 0) < (FUNCTION_TABLE[HEAP32[((HEAP32[$13 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($13) | 0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(87090 | 0, 71325 | 0, 41 | 0, 81493 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = btAlignedObjectArray_btIndexedMesh___operator_5b_5d_28int_29($13 + 20 | 0 | 0, HEAP32[($12 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[(HEAP32[($12 + 36 | 0) >> 2] | 0) >> 2] = HEAP32[((HEAP32[($12 + 4 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($12 + 40 | 0) >> 2] | 0) >> 2] = HEAP32[((HEAP32[($12 + 4 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($12 + 32 | 0) >> 2] | 0) >> 2] = HEAP32[((HEAP32[($12 + 4 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($12 + 28 | 0) >> 2] | 0) >> 2] = HEAP32[((HEAP32[($12 + 4 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($12 + 16 | 0) >> 2] | 0) >> 2] = HEAP32[(HEAP32[($12 + 4 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($12 + 24 | 0) >> 2] | 0) >> 2] = HEAP32[((HEAP32[($12 + 4 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($12 + 20 | 0) >> 2] | 0) >> 2] = HEAP32[((HEAP32[($12 + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($12 + 12 | 0) >> 2] | 0) >> 2] = HEAP32[((HEAP32[($12 + 4 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0;
|
|
__stack_pointer = $12 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleIndexVertexArray__getLockedReadOnlyVertexIndexBase_28unsigned_20char_20const___2c_20int__2c_20PHY_ScalarType__2c_20int__2c_20unsigned_20char_20const___2c_20int__2c_20int__2c_20PHY_ScalarType__2c_20int_29_20const($0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
$9 = $9 | 0;
|
|
var $12 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$12 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $12;
|
|
HEAP32[($12 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($12 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($12 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($12 + 32 | 0) >> 2] = $3;
|
|
HEAP32[($12 + 28 | 0) >> 2] = $4;
|
|
HEAP32[($12 + 24 | 0) >> 2] = $5;
|
|
HEAP32[($12 + 20 | 0) >> 2] = $6;
|
|
HEAP32[($12 + 16 | 0) >> 2] = $7;
|
|
HEAP32[($12 + 12 | 0) >> 2] = $8;
|
|
HEAP32[($12 + 8 | 0) >> 2] = $9;
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = btAlignedObjectArray_btIndexedMesh___operator_5b_5d_28int_29_20const((HEAP32[($12 + 44 | 0) >> 2] | 0) + 20 | 0 | 0, HEAP32[($12 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[(HEAP32[($12 + 36 | 0) >> 2] | 0) >> 2] = HEAP32[((HEAP32[($12 + 4 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($12 + 40 | 0) >> 2] | 0) >> 2] = HEAP32[((HEAP32[($12 + 4 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($12 + 32 | 0) >> 2] | 0) >> 2] = HEAP32[((HEAP32[($12 + 4 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($12 + 28 | 0) >> 2] | 0) >> 2] = HEAP32[((HEAP32[($12 + 4 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($12 + 16 | 0) >> 2] | 0) >> 2] = HEAP32[(HEAP32[($12 + 4 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($12 + 24 | 0) >> 2] | 0) >> 2] = HEAP32[((HEAP32[($12 + 4 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($12 + 20 | 0) >> 2] | 0) >> 2] = HEAP32[((HEAP32[($12 + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($12 + 12 | 0) >> 2] | 0) >> 2] = HEAP32[((HEAP32[($12 + 4 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0;
|
|
__stack_pointer = $12 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btIndexedMesh___operator_5b_5d_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 176 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btIndexedMesh___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 177 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 5 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btTriangleIndexVertexArray__hasPremadeAabb_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 48 | 0) >> 2] | 0 | 0) == (1 | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function btTriangleIndexVertexArray__setPremadeAabb_28btVector3_20const__2c_20btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $5 = 0, $6 = 0, $9 = 0, $11 = 0, $17 = 0, $19 = 0, $44 = 0, $54 = 0, $63 = 0, $73 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
$9 = $6 + 52 | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$44 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $9;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $44;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$11 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $11 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$54 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $9 + $11 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $54;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$17 = $6 + 68 | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$63 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $17;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $63;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$19 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $19 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$73 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $17 + $19 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $73;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($6 + 48 | 0) >> 2] = 1;
|
|
return;
|
|
}
|
|
|
|
function btTriangleIndexVertexArray__getPremadeAabb_28btVector3__2c_20btVector3__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $5 = 0, $6 = 0, $9 = 0, $11 = 0, $17 = 0, $19 = 0, $43 = 0, $53 = 0, $62 = 0, $72 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
$9 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6 + 52 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$43 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $9;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $43;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$11 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $11 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$53 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $9 + $11 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $53;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$17 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6 + 68 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$62 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $17;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $62;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$19 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $19 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$72 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $17 + $19 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $72;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleIndexVertexArray__preallocateVertices_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return;
|
|
}
|
|
|
|
function btTriangleIndexVertexArray__preallocateIndices_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btTriangleIndexVertexArray_cpp() {
|
|
__cxx_global_var_init_53();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_54() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114304 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleMesh__btTriangleMesh_28bool_2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $8 = 0, $5 = 0, $50 = 0, $74 = 0, $99 = 0, $118 = 0, $133 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $0;
|
|
HEAP8[($5 + 39 | 0) >> 0] = $1;
|
|
HEAP8[($5 + 38 | 0) >> 0] = $2;
|
|
$8 = HEAP32[($5 + 40 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $8;
|
|
btTriangleIndexVertexArray__btTriangleIndexVertexArray_28_29($8 | 0) | 0;
|
|
HEAP32[$8 >> 2] = 100720 + 8 | 0;
|
|
btAlignedObjectArray_btVector3___btAlignedObjectArray_28_29($8 + 84 | 0 | 0) | 0;
|
|
btAlignedObjectArray_float___btAlignedObjectArray_28_29($8 + 104 | 0 | 0) | 0;
|
|
btAlignedObjectArray_unsigned_20int___btAlignedObjectArray_28_29($8 + 124 | 0 | 0) | 0;
|
|
btAlignedObjectArray_unsigned_20short___btAlignedObjectArray_28_29($8 + 144 | 0 | 0) | 0;
|
|
HEAP8[($8 + 164 | 0) >> 0] = (HEAPU8[($5 + 39 | 0) >> 0] | 0) & 1 | 0;
|
|
HEAP8[($8 + 165 | 0) >> 0] = (HEAPU8[($5 + 38 | 0) >> 0] | 0) & 1 | 0;
|
|
HEAPF32[($8 + 168 | 0) >> 2] = Math_fround(0 | 0);
|
|
btIndexedMesh__btIndexedMesh_28_29($5 + 4 | 0 | 0) | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 16 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 28 | 0) >> 2] = 2;
|
|
HEAP32[($5 + 8 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = 12;
|
|
HEAP32[($5 + 20 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = 16;
|
|
btAlignedObjectArray_btIndexedMesh___push_back_28btIndexedMesh_20const__29($8 + 20 | 0 | 0, $5 + 4 | 0 | 0);
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($8 + 164 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$50 = (btAlignedObjectArray_unsigned_20int___size_28_29_20const($8 + 124 | 0 | 0) | 0 | 0) / (3 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btIndexedMesh___operator_5b_5d_28int_29($8 + 20 | 0 | 0, 0 | 0) | 0, wasm2js_i32$1 = $50), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btIndexedMesh___operator_5b_5d_28int_29($8 + 20 | 0 | 0, 0 | 0) | 0, wasm2js_i32$1 = 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btIndexedMesh___operator_5b_5d_28int_29($8 + 20 | 0 | 0, 0 | 0) | 0, wasm2js_i32$1 = 2), HEAP32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btIndexedMesh___operator_5b_5d_28int_29($8 + 20 | 0 | 0, 0 | 0) | 0, wasm2js_i32$1 = 12), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
$74 = (btAlignedObjectArray_unsigned_20short___size_28_29_20const($8 + 144 | 0 | 0) | 0 | 0) / (3 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btIndexedMesh___operator_5b_5d_28int_29($8 + 20 | 0 | 0, 0 | 0) | 0, wasm2js_i32$1 = $74), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btIndexedMesh___operator_5b_5d_28int_29($8 + 20 | 0 | 0, 0 | 0) | 0, wasm2js_i32$1 = 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btIndexedMesh___operator_5b_5d_28int_29($8 + 20 | 0 | 0, 0 | 0) | 0, wasm2js_i32$1 = 3), HEAP32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btIndexedMesh___operator_5b_5d_28int_29($8 + 20 | 0 | 0, 0 | 0) | 0, wasm2js_i32$1 = 6), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAPU8[($8 + 165 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$99 = btAlignedObjectArray_btVector3___size_28_29_20const($8 + 84 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btIndexedMesh___operator_5b_5d_28int_29($8 + 20 | 0 | 0, 0 | 0) | 0, wasm2js_i32$1 = $99), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btIndexedMesh___operator_5b_5d_28int_29($8 + 20 | 0 | 0, 0 | 0) | 0, wasm2js_i32$1 = 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btIndexedMesh___operator_5b_5d_28int_29($8 + 20 | 0 | 0, 0 | 0) | 0, wasm2js_i32$1 = 16), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$3;
|
|
}
|
|
$118 = (btAlignedObjectArray_float___size_28_29_20const($8 + 104 | 0 | 0) | 0 | 0) / (3 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btIndexedMesh___operator_5b_5d_28int_29($8 + 20 | 0 | 0, 0 | 0) | 0, wasm2js_i32$1 = $118), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btIndexedMesh___operator_5b_5d_28int_29($8 + 20 | 0 | 0, 0 | 0) | 0, wasm2js_i32$1 = 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btIndexedMesh___operator_5b_5d_28int_29($8 + 20 | 0 | 0, 0 | 0) | 0, wasm2js_i32$1 = 12), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
$133 = HEAP32[($5 + 44 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return $133 | 0;
|
|
}
|
|
|
|
function btTriangleIndexVertexArray__btTriangleIndexVertexArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btStridingMeshInterface__btStridingMeshInterface_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 100608 + 8 | 0;
|
|
btAlignedObjectArray_btIndexedMesh___btAlignedObjectArray_28_29($4 + 20 | 0 | 0) | 0;
|
|
HEAP32[($4 + 48 | 0) >> 2] = 0;
|
|
btVector3__btVector3_28_29($4 + 52 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 68 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20int___btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_unsigned_20int_2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_unsigned_20int___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20short___btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_unsigned_20short_2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_unsigned_20short___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btIndexedMesh__btIndexedMesh_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = 2;
|
|
HEAP32[($4 + 28 | 0) >> 2] = 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btIndexedMesh___push_back_28btIndexedMesh_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $5 = 0, $4 = 0, $22 = 0, $23 = 0, $25 = 0, $29 = 0, $33 = 0, $96 = 0, $106 = 0, $116 = 0, $126 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btIndexedMesh___size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btIndexedMesh___capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btIndexedMesh___reserve_28int_29($5 | 0, btAlignedObjectArray_btIndexedMesh___allocSize_28int_29($5 | 0, btAlignedObjectArray_btIndexedMesh___size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
$22 = btIndexedMesh__operator_20new_28unsigned_20long_2c_20void__29(32 | 0, (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 5 | 0) | 0 | 0) | 0;
|
|
$23 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $23;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$96 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $96;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$25 = 24;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $25 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$106 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $25 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $106;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$29 = 16;
|
|
i64toi32_i32$2 = $23 + $29 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$116 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22 + $29 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $116;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$33 = 8;
|
|
i64toi32_i32$2 = $23 + $33 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$126 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $33 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $126;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20int___size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btIndexedMesh___operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btIndexedMesh___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 5 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20short___size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btStridingMeshInterface__btStridingMeshInterface_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 100504 + 8 | 0;
|
|
HEAPF32[($3 + 8 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($3 + 4 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[$3 >> 2] = Math_fround(1.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 4 | 0 | 0, $3 + 8 | 0 | 0, $3 + 4 | 0 | 0, $3 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btIndexedMesh___btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btIndexedMesh_2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btIndexedMesh___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_unsigned_20int_2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20int___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_unsigned_20short_2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20short___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btIndexedMesh___size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btIndexedMesh___capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btIndexedMesh___allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btIndexedMesh___reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btIndexedMesh___capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btIndexedMesh___allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btIndexedMesh___copy_28int_2c_20int_2c_20btIndexedMesh__29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btIndexedMesh___size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btIndexedMesh___destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btIndexedMesh___size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btIndexedMesh___deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btIndexedMesh__operator_20new_28unsigned_20long_2c_20void__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return HEAP32[($4 + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btTriangleMesh__addIndex_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $18 = 0, $32 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($5 + 164 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_unsigned_20int___push_back_28unsigned_20int_20const__29($5 + 124 | 0 | 0, $4 + 4 | 0 | 0);
|
|
$18 = btAlignedObjectArray_unsigned_20int___operator_5b_5d_28int_29($5 + 124 | 0 | 0, 0 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btIndexedMesh___operator_5b_5d_28int_29($5 + 20 | 0 | 0, 0 | 0) | 0, wasm2js_i32$1 = $18), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP16[($4 + 2 | 0) >> 1] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_unsigned_20short___push_back_28unsigned_20short_20const__29($5 + 144 | 0 | 0, $4 + 2 | 0 | 0);
|
|
$32 = btAlignedObjectArray_unsigned_20short___operator_5b_5d_28int_29($5 + 144 | 0 | 0, 0 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btIndexedMesh___operator_5b_5d_28int_29($5 + 20 | 0 | 0, 0 | 0) | 0, wasm2js_i32$1 = $32), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20int___push_back_28unsigned_20int_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_unsigned_20int___size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_unsigned_20int___capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_unsigned_20int___reserve_28int_29($5 | 0, btAlignedObjectArray_unsigned_20int___allocSize_28int_29($5 | 0, btAlignedObjectArray_unsigned_20int___size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20int___operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_unsigned_20int___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20short___push_back_28unsigned_20short_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_unsigned_20short___size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_unsigned_20short___capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_unsigned_20short___reserve_28int_29($5 | 0, btAlignedObjectArray_unsigned_20short___allocSize_28int_29($5 | 0, btAlignedObjectArray_unsigned_20short___size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
HEAP16[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 1 | 0) | 0) >> 1] = HEAPU16[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 1] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20short___operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_unsigned_20short___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20int___capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20int___allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20int___reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_unsigned_20int___capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_unsigned_20int___allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_unsigned_20int___copy_28int_2c_20int_2c_20unsigned_20int__29_20const($5 | 0, 0 | 0, btAlignedObjectArray_unsigned_20int___size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_unsigned_20int___destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_unsigned_20int___size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_unsigned_20int___deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20short___capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20short___allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20short___reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_unsigned_20short___capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_unsigned_20short___allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_unsigned_20short___copy_28int_2c_20int_2c_20unsigned_20short__29_20const($5 | 0, 0 | 0, btAlignedObjectArray_unsigned_20short___size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_unsigned_20short___destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_unsigned_20short___size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_unsigned_20short___deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleMesh__findOrAddVertex_28btVector3_20const__2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $7 = 0, $47 = 0, $135 = 0, $57 = 0, $142 = 0, $154 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 72 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 68 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 67 | 0) >> 0] = $2;
|
|
$7 = HEAP32[($5 + 72 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($7 + 165 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
label$3 : {
|
|
if (!((HEAPU8[($5 + 67 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 60 | 0) >> 2] = 0;
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((HEAP32[($5 + 60 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btVector3___size_28_29_20const($7 + 84 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 44 | 0 | 0, btAlignedObjectArray_btVector3___operator_5b_5d_28int_29($7 + 84 | 0 | 0, HEAP32[($5 + 60 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($5 + 68 | 0) >> 2] | 0 | 0);
|
|
label$6 : {
|
|
if (!(Math_fround(btVector3__length2_28_29_20const($5 + 44 | 0 | 0)) <= Math_fround(HEAPF32[($7 + 168 | 0) >> 2]) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAP32[($5 + 76 | 0) >> 2] = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[($5 + 60 | 0) >> 2] = (HEAP32[($5 + 60 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
}
|
|
$47 = btAlignedObjectArray_btIndexedMesh___operator_5b_5d_28int_29($7 + 20 | 0 | 0, 0 | 0) | 0;
|
|
HEAP32[($47 + 12 | 0) >> 2] = (HEAP32[($47 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
btAlignedObjectArray_btVector3___push_back_28btVector3_20const__29($7 + 84 | 0 | 0, HEAP32[($5 + 68 | 0) >> 2] | 0 | 0);
|
|
$57 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29($7 + 84 | 0 | 0, 0 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btIndexedMesh___operator_5b_5d_28int_29($7 + 20 | 0 | 0, 0 | 0) | 0, wasm2js_i32$1 = $57), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = (btAlignedObjectArray_btVector3___size_28_29_20const($7 + 84 | 0 | 0) | 0) - 1 | 0), HEAP32[(wasm2js_i32$0 + 76 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
label$7 : {
|
|
if (!((HEAPU8[($5 + 67 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAP32[($5 + 40 | 0) >> 2] = 0;
|
|
label$8 : {
|
|
label$9 : while (1) {
|
|
if (!((HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_float___size_28_29_20const($7 + 104 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 24 | 0 | 0, btAlignedObjectArray_float___operator_5b_5d_28int_29($7 + 104 | 0 | 0, HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0 | 0, btAlignedObjectArray_float___operator_5b_5d_28int_29($7 + 104 | 0 | 0, (HEAP32[($5 + 40 | 0) >> 2] | 0) + 1 | 0 | 0) | 0 | 0, btAlignedObjectArray_float___operator_5b_5d_28int_29($7 + 104 | 0 | 0, (HEAP32[($5 + 40 | 0) >> 2] | 0) + 2 | 0 | 0) | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 8 | 0 | 0, $5 + 24 | 0 | 0, HEAP32[($5 + 68 | 0) >> 2] | 0 | 0);
|
|
label$10 : {
|
|
if (!(Math_fround(btVector3__length2_28_29_20const($5 + 8 | 0 | 0)) <= Math_fround(HEAPF32[($7 + 168 | 0) >> 2]) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
HEAP32[($5 + 76 | 0) >> 2] = (HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) / (3 | 0) | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[($5 + 40 | 0) >> 2] = (HEAP32[($5 + 40 | 0) >> 2] | 0) + 3 | 0;
|
|
continue label$9;
|
|
};
|
|
}
|
|
}
|
|
btAlignedObjectArray_float___push_back_28float_20const__29($7 + 104 | 0 | 0, btVector3__getX_28_29_20const(HEAP32[($5 + 68 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btAlignedObjectArray_float___push_back_28float_20const__29($7 + 104 | 0 | 0, btVector3__getY_28_29_20const(HEAP32[($5 + 68 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btAlignedObjectArray_float___push_back_28float_20const__29($7 + 104 | 0 | 0, btVector3__getZ_28_29_20const(HEAP32[($5 + 68 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$135 = btAlignedObjectArray_btIndexedMesh___operator_5b_5d_28int_29($7 + 20 | 0 | 0, 0 | 0) | 0;
|
|
HEAP32[($135 + 12 | 0) >> 2] = (HEAP32[($135 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
$142 = btAlignedObjectArray_float___operator_5b_5d_28int_29($7 + 104 | 0 | 0, 0 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btIndexedMesh___operator_5b_5d_28int_29($7 + 20 | 0 | 0, 0 | 0) | 0, wasm2js_i32$1 = $142), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = ((btAlignedObjectArray_float___size_28_29_20const($7 + 104 | 0 | 0) | 0 | 0) / (3 | 0) | 0) - 1 | 0), HEAP32[(wasm2js_i32$0 + 76 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
$154 = HEAP32[($5 + 76 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 80 | 0;
|
|
return $154 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_float___operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_float___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btTriangleMesh__addTriangle_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20bool_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $9 = 0, $13 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP8[($7 + 15 | 0) >> 0] = $4;
|
|
$9 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
$13 = btAlignedObjectArray_btIndexedMesh___operator_5b_5d_28int_29($9 + 20 | 0 | 0, 0 | 0) | 0;
|
|
HEAP32[$13 >> 2] = (HEAP32[$13 >> 2] | 0) + 1 | 0;
|
|
btTriangleMesh__addIndex_28int_29($9 | 0, btTriangleMesh__findOrAddVertex_28btVector3_20const__2c_20bool_29($9 | 0, HEAP32[($7 + 24 | 0) >> 2] | 0 | 0, (HEAPU8[($7 + 15 | 0) >> 0] | 0) & 1 | 0 | 0) | 0 | 0);
|
|
btTriangleMesh__addIndex_28int_29($9 | 0, btTriangleMesh__findOrAddVertex_28btVector3_20const__2c_20bool_29($9 | 0, HEAP32[($7 + 20 | 0) >> 2] | 0 | 0, (HEAPU8[($7 + 15 | 0) >> 0] | 0) & 1 | 0 | 0) | 0 | 0);
|
|
btTriangleMesh__addIndex_28int_29($9 | 0, btTriangleMesh__findOrAddVertex_28btVector3_20const__2c_20bool_29($9 | 0, HEAP32[($7 + 16 | 0) >> 2] | 0 | 0, (HEAPU8[($7 + 15 | 0) >> 0] | 0) & 1 | 0 | 0) | 0 | 0);
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleMesh__preallocateVertices_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($5 + 165 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedObjectArray_btVector3___reserve_28int_29($5 + 84 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
break label$1;
|
|
}
|
|
btAlignedObjectArray_float___reserve_28int_29($5 + 104 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleMesh__preallocateIndices_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($5 + 164 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedObjectArray_unsigned_20int___reserve_28int_29($5 + 124 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
break label$1;
|
|
}
|
|
btAlignedObjectArray_unsigned_20short___reserve_28int_29($5 + 144 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20int___allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_unsigned_20int_2c_2016u___allocate_28int_2c_20unsigned_20int_20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20int___copy_28int_2c_20int_2c_20unsigned_20int__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[((HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[((HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20int___destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20int___deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_unsigned_20int_2c_2016u___deallocate_28unsigned_20int__29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20short___allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_unsigned_20short_2c_2016u___allocate_28int_2c_20unsigned_20short_20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20short___copy_28int_2c_20int_2c_20unsigned_20short__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP16[((HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 1 | 0) | 0) >> 1] = HEAPU16[((HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 1 | 0) | 0) >> 1] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20short___destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20short___deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_unsigned_20short_2c_2016u___deallocate_28unsigned_20short__29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleMesh___btTriangleMesh_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 100720 + 8 | 0;
|
|
btAlignedObjectArray_unsigned_20short____btAlignedObjectArray_28_29($4 + 144 | 0 | 0) | 0;
|
|
btAlignedObjectArray_unsigned_20int____btAlignedObjectArray_28_29($4 + 124 | 0 | 0) | 0;
|
|
btAlignedObjectArray_float____btAlignedObjectArray_28_29($4 + 104 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3____btAlignedObjectArray_28_29($4 + 84 | 0 | 0) | 0;
|
|
btTriangleIndexVertexArray___btTriangleIndexVertexArray_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20short____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_unsigned_20short___clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20int____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_unsigned_20int___clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btTriangleMesh___btTriangleMesh_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btTriangleMesh___btTriangleMesh_28_29($4 | 0) | 0;
|
|
btTriangleIndexVertexArray__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleIndexVertexArray__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleIndexVertexArray__unLockVertexBase_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return;
|
|
}
|
|
|
|
function btTriangleIndexVertexArray__unLockReadOnlyVertexBase_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return;
|
|
}
|
|
|
|
function btTriangleIndexVertexArray__getNumSubParts_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $7 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$7 = btAlignedObjectArray_btIndexedMesh___size_28_29_20const((HEAP32[($3 + 12 | 0) >> 2] | 0) + 20 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btStridingMeshInterface__calculateSerializeBufferSize_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 28 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_btIndexedMesh_2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btIndexedMesh___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20short___clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_unsigned_20short___destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_unsigned_20short___size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_unsigned_20short___deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_unsigned_20short___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_unsigned_20int___clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_unsigned_20int___destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_unsigned_20int___size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_unsigned_20int___deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_unsigned_20int___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_unsigned_20short_2c_2016u___deallocate_28unsigned_20short__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_unsigned_20int_2c_2016u___deallocate_28unsigned_20int__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btIndexedMesh___allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btIndexedMesh_2c_2016u___allocate_28int_2c_20btIndexedMesh_20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btIndexedMesh___copy_28int_2c_20int_2c_20btIndexedMesh__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $22 = 0, $27 = 0, $29 = 0, $33 = 0, $37 = 0, $7 = 0, $105 = 0, $115 = 0, $125 = 0, $135 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$22 = btIndexedMesh__operator_20new_28unsigned_20long_2c_20void__29(32 | 0, (HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 5 | 0) | 0 | 0) | 0;
|
|
$27 = (HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 5 | 0) | 0;
|
|
i64toi32_i32$2 = $27;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$105 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $105;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$29 = 24;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $29 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$115 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $29 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $115;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$33 = 16;
|
|
i64toi32_i32$2 = $27 + $33 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$125 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22 + $33 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $125;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$37 = 8;
|
|
i64toi32_i32$2 = $27 + $37 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$135 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $37 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $135;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btIndexedMesh___destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btIndexedMesh___deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btIndexedMesh_2c_2016u___deallocate_28btIndexedMesh__29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btIndexedMesh_2c_2016u___allocate_28int_2c_20btIndexedMesh_20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 5 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_btIndexedMesh_2c_2016u___deallocate_28btIndexedMesh__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_unsigned_20int_2c_2016u___allocate_28int_2c_20unsigned_20int_20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_unsigned_20short_2c_2016u___allocate_28int_2c_20unsigned_20short_20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 1 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btTriangleMesh_cpp() {
|
|
__cxx_global_var_init_54();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_55() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114308 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleMeshShape__btTriangleMeshShape_28btStridingMeshInterface__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $15 = 0, $21 = 0, $28 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $5;
|
|
btConcaveShape__btConcaveShape_28_29($5 | 0) | 0;
|
|
HEAP32[$5 >> 2] = 100820 + 8 | 0;
|
|
btVector3__btVector3_28_29($5 + 24 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 40 | 0 | 0) | 0;
|
|
HEAP32[($5 + 56 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = 21;
|
|
$15 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$15 >> 2] | 0) + 40 | 0) >> 2] | 0 | 0]($15) | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$21 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$21 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($21, $5 + 24 | 0, $5 + 40 | 0);
|
|
break label$1;
|
|
}
|
|
btTriangleMeshShape__recalcLocalAabb_28_29($5 | 0);
|
|
}
|
|
$28 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $28 | 0;
|
|
}
|
|
|
|
function btTriangleMeshShape__recalcLocalAabb_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $83 = 0, $58 = Math_fround(0), $286 = 0, $290 = 0, $102 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$3 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 76 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 76 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 72 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($3 + 72 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[($3 + 52 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 48 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 44 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 56 | 0 | 0, $3 + 52 | 0 | 0, $3 + 48 | 0 | 0, $3 + 44 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($3 + 56 | 0 | 0) | 0) + ((HEAP32[($3 + 72 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = Math_fround(1.0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 68 | 0) >> 2] | 0 | 0]($3 + 24 | 0, $4, $3 + 56 | 0);
|
|
$58 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($3 + 24 | 0 | 0) | 0) + ((HEAP32[($3 + 72 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) + Math_fround(HEAPF32[($4 + 20 | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($4 + 40 | 0 | 0) | 0) + ((HEAP32[($3 + 72 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $58), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($3 + 56 | 0 | 0) | 0) + ((HEAP32[($3 + 72 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = Math_fround(-1.0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 68 | 0) >> 2] | 0 | 0]($3 + 8 | 0, $4, $3 + 56 | 0);
|
|
$83 = 8;
|
|
i64toi32_i32$2 = ($3 + 8 | 0) + $83 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$286 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($3 + 24 | 0) + $83 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $286;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$1 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$290 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $3;
|
|
HEAP32[($3 + 24 | 0) >> 2] = $290;
|
|
HEAP32[($3 + 28 | 0) >> 2] = i64toi32_i32$0;
|
|
$102 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($3 + 24 | 0 | 0) | 0) + ((HEAP32[($3 + 72 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) - Math_fround(HEAPF32[($4 + 20 | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($4 + 24 | 0 | 0) | 0) + ((HEAP32[($3 + 72 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $102), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP32[($3 + 72 | 0) >> 2] = (HEAP32[($3 + 72 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $3 + 80 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleMeshShape___btTriangleMeshShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConcaveShape___btConcaveShape_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btTriangleMeshShape___btTriangleMeshShape_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[1001 | 0]($4) | 0;
|
|
btTriangleMeshShape__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleMeshShape__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleMeshShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $7 = 0, i64toi32_i32$2 = 0, $111 = 0, $113 = 0, $128 = 0, $130 = 0, $349 = 0, $362 = 0, $383 = 0, $396 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 240 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 236 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 232 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 228 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 224 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 236 | 0) >> 2] | 0;
|
|
HEAPF32[($6 + 204 | 0) >> 2] = Math_fround(.5);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 188 | 0 | 0, $7 + 40 | 0 | 0, $7 + 24 | 0 | 0);
|
|
operator__28float_20const__2c_20btVector3_20const__29($6 + 208 | 0 | 0, $6 + 204 | 0 | 0, $6 + 188 | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($7))), HEAPF32[(wasm2js_i32$0 + 168 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($7))), HEAPF32[(wasm2js_i32$0 + 164 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($7))), HEAPF32[(wasm2js_i32$0 + 160 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 172 | 0 | 0, $6 + 168 | 0 | 0, $6 + 164 | 0 | 0, $6 + 160 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($6 + 208 | 0 | 0, $6 + 172 | 0 | 0) | 0;
|
|
HEAPF32[($6 + 140 | 0) >> 2] = Math_fround(.5);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 124 | 0 | 0, $7 + 40 | 0 | 0, $7 + 24 | 0 | 0);
|
|
operator__28float_20const__2c_20btVector3_20const__29($6 + 144 | 0 | 0, $6 + 140 | 0 | 0, $6 + 124 | 0 | 0);
|
|
btMatrix3x3__absolute_28_29_20const($6 + 76 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($6 + 232 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($6 + 60 | 0 | 0, HEAP32[($6 + 232 | 0) >> 2] | 0 | 0, $6 + 144 | 0 | 0);
|
|
btVector3__dot3_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29_20const($6 + 44 | 0 | 0, $6 + 208 | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($6 + 76 | 0 | 0, 0 | 0) | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($6 + 76 | 0 | 0, 1 | 0) | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($6 + 76 | 0 | 0, 2 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 28 | 0 | 0, $6 + 60 | 0 | 0, $6 + 44 | 0 | 0);
|
|
$111 = HEAP32[($6 + 228 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 32 | 0) >> 2] | 0;
|
|
$349 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $111;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $349;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$113 = 8;
|
|
i64toi32_i32$2 = ($6 + 28 | 0) + $113 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$362 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $111 + $113 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $362;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 12 | 0 | 0, $6 + 60 | 0 | 0, $6 + 44 | 0 | 0);
|
|
$128 = HEAP32[($6 + 224 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
$383 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $128;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $383;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$130 = 8;
|
|
i64toi32_i32$2 = ($6 + 12 | 0) + $130 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$396 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $128 + $130 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $396;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $6 + 240 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleMeshShape__setLocalScaling_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btStridingMeshInterface__setScaling_28btVector3_20const__29(HEAP32[($5 + 56 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
btTriangleMeshShape__recalcLocalAabb_28_29($5 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleMeshShape__getLocalScaling_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$6 = btStridingMeshInterface__getScaling_28_29_20const(HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 56 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btTriangleMeshShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $14 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 60 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 56 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 52 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 48 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 60 | 0) >> 2] | 0;
|
|
btTriangleMeshShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const__FilteredCallback__FilteredCallback_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29($6 + 8 | 0 | 0, HEAP32[($6 + 56 | 0) >> 2] | 0 | 0, HEAP32[($6 + 52 | 0) >> 2] | 0 | 0, HEAP32[($6 + 48 | 0) >> 2] | 0 | 0) | 0;
|
|
$14 = HEAP32[($7 + 56 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$14 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($14, $6 + 8 | 0, HEAP32[($6 + 52 | 0) >> 2] | 0, HEAP32[($6 + 48 | 0) >> 2] | 0);
|
|
btTriangleMeshShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const__FilteredCallback___FilteredCallback_28_29($6 + 8 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleMeshShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const__FilteredCallback__FilteredCallback_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, $7 = 0, $13 = 0, $16 = 0, $21 = 0, $24 = 0, $64 = 0, $74 = 0, $83 = 0, $93 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btInternalTriangleIndexCallback__btInternalTriangleIndexCallback_28_29($7 | 0) | 0;
|
|
HEAP32[$7 >> 2] = 100940 + 8 | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
$13 = $7 + 8 | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$64 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $13;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $64;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$16 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $16 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$74 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $13 + $16 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $74;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$21 = $7 + 24 | 0;
|
|
i64toi32_i32$2 = HEAP32[$6 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$83 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $21;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $83;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$24 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $24 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$93 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $21 + $24 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $93;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btTriangleMeshShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const__FilteredCallback___FilteredCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btInternalTriangleIndexCallback___btInternalTriangleIndexCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btTriangleMeshShape__calculateLocalInertia_28float_2c_20btVector3__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
__assert_fail(86177 | 0, 74770 | 0, 184 | 0, 83783 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btTriangleMeshShape__localGetSupportingVertex_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $6 = 0, $59 = 0, $179 = 0, $192 = 0;
|
|
$5 = __stack_pointer - 240 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 236 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 232 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 236 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($0 | 0) | 0;
|
|
btTransform__btTransform_28_29($5 + 168 | 0 | 0) | 0;
|
|
btTransform__setIdentity_28_29($5 + 168 | 0 | 0);
|
|
SupportVertexCallback__SupportVertexCallback_28btVector3_20const__2c_20btTransform_20const__29($5 + 64 | 0 | 0, HEAP32[($5 + 232 | 0) >> 2] | 0 | 0, $5 + 168 | 0 | 0) | 0;
|
|
HEAPF32[($5 + 44 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAPF32[($5 + 40 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAPF32[($5 + 36 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 48 | 0 | 0, $5 + 44 | 0 | 0, $5 + 40 | 0 | 0, $5 + 36 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__29($5 + 20 | 0 | 0, $5 + 48 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($6, $5 + 64 | 0, $5 + 20 | 0, $5 + 48 | 0);
|
|
SupportVertexCallback__GetSupportVertexLocal_28_29($5 + 4 | 0 | 0, $5 + 64 | 0 | 0);
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
$179 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $179;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$59 = 8;
|
|
i64toi32_i32$2 = ($5 + 4 | 0) + $59 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$192 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0 + $59 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $192;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
SupportVertexCallback___SupportVertexCallback_28_29($5 + 64 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 240 | 0;
|
|
return;
|
|
}
|
|
|
|
function SupportVertexCallback__SupportVertexCallback_28btVector3_20const__2c_20btTransform_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $41 = 0, $43 = 0, $138 = 0, $151 = 0;
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 36 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 44 | 0) >> 2] | 0;
|
|
btTriangleCallback__btTriangleCallback_28_29($6 | 0) | 0;
|
|
HEAP32[$6 >> 2] = 101076 + 8 | 0;
|
|
HEAPF32[($5 + 32 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 28 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 24 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 4 | 0 | 0, $5 + 32 | 0 | 0, $5 + 28 | 0 | 0, $5 + 24 | 0 | 0) | 0;
|
|
btTransform__btTransform_28btTransform_20const__29($6 + 20 | 0 | 0, HEAP32[($5 + 36 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($6 + 84 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
btVector3__btVector3_28_29($6 + 88 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btMatrix3x3_20const__29($5 + 8 | 0 | 0, HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, btTransform__getBasis_28_29($6 + 20 | 0 | 0) | 0 | 0);
|
|
$41 = $6 + 88 | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
$138 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $41;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $138;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$43 = 8;
|
|
i64toi32_i32$2 = ($5 + 8 | 0) + $43 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$151 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $41 + $43 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $151;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function SupportVertexCallback__GetSupportVertexLocal_28_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, $9 = 0, $27 = 0, $37 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $1;
|
|
i64toi32_i32$2 = (HEAP32[($4 + 12 | 0) >> 2] | 0) + 4 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$27 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $27;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$9 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $9 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$37 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0 + $9 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $37;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function SupportVertexCallback___SupportVertexCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btTriangleCallback___btTriangleCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btTriangleMeshShape__getName_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 84390 | 0;
|
|
}
|
|
|
|
function btTriangleMeshShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const__FilteredCallback___FilteredCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btTriangleMeshShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const__FilteredCallback___FilteredCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleMeshShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const__FilteredCallback__internalProcessTriangleIndex_28btVector3__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $16 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((TestTriangleAgainstAabb2_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29(HEAP32[($6 + 8 | 0) >> 2] | 0 | 0, $7 + 8 | 0 | 0, $7 + 24 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$16 = HEAP32[($7 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$16 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($16, HEAP32[($6 + 8 | 0) >> 2] | 0, HEAP32[($6 + 4 | 0) >> 2] | 0, HEAP32[$6 >> 2] | 0);
|
|
}
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function SupportVertexCallback___SupportVertexCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
SupportVertexCallback___SupportVertexCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function SupportVertexCallback__processTriangle_28btVector3__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $7 = 0, $36 = 0, $38 = 0, $126 = 0, $136 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($7 + 88 | 0 | 0, (HEAP32[($6 + 24 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 4 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 8 | 0) >> 2]) > Math_fround(HEAPF32[($7 + 84 | 0) >> 2]) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAPF32[($7 + 84 | 0) >> 2] = Math_fround(HEAPF32[($6 + 8 | 0) >> 2]);
|
|
$36 = $7 + 4 | 0;
|
|
i64toi32_i32$2 = (HEAP32[($6 + 24 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$126 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $36;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $126;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$38 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $38 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$136 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $36 + $38 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $136;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btTriangleMeshShape_cpp() {
|
|
__cxx_global_var_init_55();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_56() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114312 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btContinuousConvexCollision__btContinuousConvexCollision_28btConvexShape_20const__2c_20btConvexShape_20const__2c_20btVoronoiSimplexSolver__2c_20btConvexPenetrationDepthSolver__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
btConvexCast__btConvexCast_28_29($8 | 0) | 0;
|
|
HEAP32[$8 >> 2] = 101132 + 8 | 0;
|
|
HEAP32[($8 + 4 | 0) >> 2] = HEAP32[($7 + 16 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 8 | 0) >> 2] = HEAP32[($7 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 12 | 0) >> 2] = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 16 | 0) >> 2] = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 20 | 0) >> 2] = 0;
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btConvexCast__btConvexCast_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 101256 + 8 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btContinuousConvexCollision__btContinuousConvexCollision_28btConvexShape_20const__2c_20btStaticPlaneShape_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btConvexCast__btConvexCast_28_29($6 | 0) | 0;
|
|
HEAP32[$6 >> 2] = 101132 + 8 | 0;
|
|
HEAP32[($6 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 16 | 0) >> 2] = 0;
|
|
HEAP32[($6 + 20 | 0) >> 2] = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function btContinuousConvexCollision__computeClosestPoints_28btTransform_20const__2c_20btTransform_20const__2c_20btPointCollector__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $22 = 0, $26 = 0, $116 = 0, $185 = 0, $16 = 0, $17 = 0, $19 = 0, $21 = 0, $25 = Math_fround(0), $120 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 832 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 828 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 824 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 820 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 816 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 828 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($7 + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btVoronoiSimplexSolver__reset_28_29(HEAP32[($7 + 4 | 0) >> 2] | 0 | 0);
|
|
$16 = HEAP32[($7 + 12 | 0) >> 2] | 0;
|
|
$17 = HEAP32[($7 + 16 | 0) >> 2] | 0;
|
|
$19 = btCollisionShape__getShapeType_28_29_20const(HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
$21 = btCollisionShape__getShapeType_28_29_20const(HEAP32[($7 + 16 | 0) >> 2] | 0 | 0) | 0;
|
|
$22 = HEAP32[($7 + 12 | 0) >> 2] | 0;
|
|
$25 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$22 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($22));
|
|
$26 = HEAP32[($7 + 16 | 0) >> 2] | 0;
|
|
btGjkPairDetector__btGjkPairDetector_28btConvexShape_20const__2c_20btConvexShape_20const__2c_20int_2c_20int_2c_20float_2c_20float_2c_20btVoronoiSimplexSolver__2c_20btConvexPenetrationDepthSolver__29($6 + 736 | 0 | 0, $16 | 0, $17 | 0, $19 | 0, $21 | 0, Math_fround($25), Math_fround(Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$26 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($26))), HEAP32[($7 + 4 | 0) >> 2] | 0 | 0, HEAP32[($7 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
btDiscreteCollisionDetectorInterface__ClosestPointInput__ClosestPointInput_28_29($6 + 604 | 0 | 0) | 0;
|
|
btTransform__operator__28btTransform_20const__29($6 + 604 | 0 | 0, HEAP32[($6 + 824 | 0) >> 2] | 0 | 0) | 0;
|
|
btTransform__operator__28btTransform_20const__29(($6 + 604 | 0) + 64 | 0 | 0, HEAP32[($6 + 820 | 0) >> 2] | 0 | 0) | 0;
|
|
btGjkPairDetector__getClosestPoints_28btDiscreteCollisionDetectorInterface__ClosestPointInput_20const__2c_20btDiscreteCollisionDetectorInterface__Result__2c_20btIDebugDraw__2c_20bool_29($6 + 736 | 0 | 0, $6 + 604 | 0 | 0, HEAP32[($6 + 816 | 0) >> 2] | 0 | 0, 0 | 0, 0 & 1 | 0 | 0);
|
|
btGjkPairDetector___btGjkPairDetector_28_29($6 + 736 | 0 | 0) | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[($6 + 600 | 0) >> 2] = HEAP32[($7 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 596 | 0) >> 2] = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btStaticPlaneShape__getPlaneNormal_28_29_20const(HEAP32[($6 + 596 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 592 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btStaticPlaneShape__getPlaneConstant_28_29_20const(HEAP32[($6 + 596 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 588 | 0) >> 2] = wasm2js_i32$1;
|
|
btTransform__btTransform_28btTransform_20const__29($6 + 524 | 0 | 0, HEAP32[($6 + 824 | 0) >> 2] | 0 | 0) | 0;
|
|
btTransform__btTransform_28_29($6 + 460 | 0 | 0) | 0;
|
|
btTransform__inverse_28_29_20const($6 + 332 | 0 | 0, HEAP32[($6 + 820 | 0) >> 2] | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29_20const($6 + 396 | 0 | 0, $6 + 332 | 0 | 0, $6 + 524 | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29($6 + 460 | 0 | 0, $6 + 396 | 0 | 0) | 0;
|
|
btTransform__btTransform_28_29($6 + 268 | 0 | 0) | 0;
|
|
btTransform__inverse_28_29_20const($6 + 140 | 0 | 0, $6 + 524 | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29_20const($6 + 204 | 0 | 0, $6 + 140 | 0 | 0, HEAP32[($6 + 820 | 0) >> 2] | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29($6 + 268 | 0 | 0, $6 + 204 | 0 | 0) | 0;
|
|
$116 = HEAP32[($6 + 600 | 0) >> 2] | 0;
|
|
$120 = btTransform__getBasis_28_29($6 + 268 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__29($6 + 92 | 0 | 0, HEAP32[($6 + 592 | 0) >> 2] | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($6 + 108 | 0 | 0, $120 | 0, $6 + 92 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$116 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($6 + 124 | 0, $116, $6 + 108 | 0);
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($6 + 76 | 0 | 0, $6 + 460 | 0 | 0, $6 + 124 | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($6 + 592 | 0) >> 2] | 0 | 0, $6 + 76 | 0 | 0)) - Math_fround(HEAPF32[(HEAP32[($6 + 588 | 0) >> 2] | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 72 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28float_20const__2c_20btVector3_20const__29($6 + 40 | 0 | 0, $6 + 72 | 0 | 0, HEAP32[($6 + 592 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 56 | 0 | 0, $6 + 76 | 0 | 0, $6 + 40 | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($6 + 24 | 0 | 0, HEAP32[($6 + 820 | 0) >> 2] | 0 | 0, $6 + 56 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($6 + 8 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($6 + 820 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($6 + 592 | 0) >> 2] | 0 | 0);
|
|
$185 = HEAP32[($6 + 816 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$185 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($185, $6 + 8 | 0, $6 + 24 | 0, Math_fround(HEAPF32[($6 + 72 | 0) >> 2]));
|
|
}
|
|
__stack_pointer = $6 + 832 | 0;
|
|
return;
|
|
}
|
|
|
|
function btContinuousConvexCollision__calcTimeOfImpact_28btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btConvexCast__CastResult__29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $9 = 0, $40 = 0, $51 = 0, $55 = Math_fround(0), $168 = 0, $169 = 0, $187 = 0, $188 = 0, $227 = 0, $364 = 0, $392 = 0, $419 = 0, $420 = 0, $431 = 0, $432 = 0, $439 = 0, $458 = 0, $475 = 0, $477 = 0, $485 = 0, $487 = 0, $847 = 0, $851 = 0, $889 = 0, $893 = 0, $368 = 0, $1348 = 0, $1352 = 0, $1372 = 0, $1376 = 0, $1460 = 0, $1473 = 0, $1482 = 0, $1495 = 0, $506 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$8 = __stack_pointer - 656 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 648 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 644 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 640 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 636 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 632 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 628 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 648 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($8 + 612 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 596 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 580 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 564 | 0 | 0) | 0;
|
|
btTransformUtil__calculateVelocity_28btTransform_20const__2c_20btTransform_20const__2c_20float_2c_20btVector3__2c_20btVector3__29(HEAP32[($8 + 644 | 0) >> 2] | 0 | 0, HEAP32[($8 + 640 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(1.0)), $8 + 612 | 0 | 0, $8 + 596 | 0 | 0);
|
|
btTransformUtil__calculateVelocity_28btTransform_20const__2c_20btTransform_20const__2c_20float_2c_20btVector3__2c_20btVector3__29(HEAP32[($8 + 636 | 0) >> 2] | 0 | 0, HEAP32[($8 + 632 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(1.0)), $8 + 580 | 0 | 0, $8 + 564 | 0 | 0);
|
|
$40 = HEAP32[($9 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$40 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($40))), HEAPF32[(wasm2js_i32$0 + 560 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($9 + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$51 = HEAP32[($9 + 16 | 0) >> 2] | 0;
|
|
$55 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$51 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($51));
|
|
break label$1;
|
|
}
|
|
$55 = Math_fround(0 | 0);
|
|
}
|
|
HEAPF32[($8 + 556 | 0) >> 2] = $55;
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(btVector3__length_28_29_20const($8 + 596 | 0 | 0)) * Math_fround(HEAPF32[($8 + 560 | 0) >> 2])) + Math_fround(Math_fround(btVector3__length_28_29_20const($8 + 564 | 0 | 0)) * Math_fround(HEAPF32[($8 + 556 | 0) >> 2])))), HEAPF32[(wasm2js_i32$0 + 552 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 536 | 0 | 0, $8 + 580 | 0 | 0, $8 + 612 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 516 | 0 | 0, $8 + 580 | 0 | 0, $8 + 612 | 0 | 0);
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btVector3__length_28_29_20const($8 + 516 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 532 | 0) >> 2] = wasm2js_f32$0;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(Math_fround(HEAPF32[($8 + 532 | 0) >> 2]) + Math_fround(HEAPF32[($8 + 552 | 0) >> 2])) == Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP8[($8 + 655 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$3;
|
|
}
|
|
HEAPF32[($8 + 512 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 492 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($8 + 488 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 484 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 496 | 0 | 0, $8 + 492 | 0 | 0, $8 + 488 | 0 | 0, $8 + 484 | 0 | 0) | 0;
|
|
HEAP32[($8 + 480 | 0) >> 2] = 64;
|
|
btVector3__btVector3_28_29($8 + 464 | 0 | 0) | 0;
|
|
HEAPF32[($8 + 460 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 456 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 452 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 464 | 0 | 0, $8 + 460 | 0 | 0, $8 + 456 | 0 | 0, $8 + 452 | 0 | 0);
|
|
HEAP8[($8 + 451 | 0) >> 0] = 0;
|
|
btVector3__btVector3_28_29($8 + 432 | 0 | 0) | 0;
|
|
HEAPF32[($8 + 428 | 0) >> 2] = Math_fround(HEAPF32[($8 + 512 | 0) >> 2]);
|
|
HEAP32[($8 + 424 | 0) >> 2] = 0;
|
|
HEAPF32[($8 + 420 | 0) >> 2] = Math_fround(1.0000000474974513e-03);
|
|
btPointCollector__btPointCollector_28_29($8 + 376 | 0 | 0) | 0;
|
|
btContinuousConvexCollision__computeClosestPoints_28btTransform_20const__2c_20btTransform_20const__2c_20btPointCollector__29($9 | 0, HEAP32[($8 + 644 | 0) >> 2] | 0 | 0, HEAP32[($8 + 636 | 0) >> 2] | 0 | 0, $8 + 376 | 0 | 0);
|
|
HEAP8[($8 + 451 | 0) >> 0] = (HEAPU8[($8 + 416 | 0) >> 0] | 0) & 1 | 0;
|
|
$168 = ($8 + 376 | 0) + 20 | 0;
|
|
$169 = 8;
|
|
i64toi32_i32$2 = $168 + $169 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$847 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 432 | 0) + $169 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $847;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $168;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$851 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 432 | 0) >> 2] = $851;
|
|
HEAP32[($8 + 436 | 0) >> 2] = i64toi32_i32$0;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!((HEAPU8[($8 + 451 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAPF32[($8 + 372 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($8 + 412 | 0) >> 2]) + Math_fround(HEAPF32[((HEAP32[($8 + 628 | 0) >> 2] | 0) + 172 | 0) >> 2]));
|
|
$187 = ($8 + 376 | 0) + 4 | 0;
|
|
$188 = 8;
|
|
i64toi32_i32$2 = $187 + $188 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$889 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 464 | 0) + $188 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $889;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $187;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$893 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 464 | 0) >> 2] = $893;
|
|
HEAP32[($8 + 468 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 536 | 0 | 0, $8 + 464 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 368 | 0) >> 2] = wasm2js_f32$0;
|
|
label$7 : {
|
|
if (!(Math_fround(Math_fround(HEAPF32[($8 + 368 | 0) >> 2]) + Math_fround(HEAPF32[($8 + 552 | 0) >> 2])) <= Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAP8[($8 + 655 | 0) >> 0] = 0 & 1 | 0;
|
|
HEAP32[($8 + 364 | 0) >> 2] = 1;
|
|
break label$5;
|
|
}
|
|
label$8 : {
|
|
label$9 : while (1) {
|
|
if (!(Math_fround(HEAPF32[($8 + 372 | 0) >> 2]) > Math_fround(HEAPF32[($8 + 420 | 0) >> 2]) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
label$10 : {
|
|
if (!((HEAP32[((HEAP32[($8 + 628 | 0) >> 2] | 0) + 168 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
$227 = HEAP32[((HEAP32[($8 + 628 | 0) >> 2] | 0) + 168 | 0) >> 2] | 0;
|
|
HEAPF32[($8 + 344 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($8 + 340 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($8 + 336 | 0) >> 2] = Math_fround(1.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 348 | 0 | 0, $8 + 344 | 0 | 0, $8 + 340 | 0 | 0, $8 + 336 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$227 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($227, $8 + 432 | 0, Math_fround(.20000000298023224), $8 + 348 | 0);
|
|
}
|
|
HEAPF32[($8 + 332 | 0) >> 2] = Math_fround(0 | 0);
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 536 | 0 | 0, $8 + 464 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 368 | 0) >> 2] = wasm2js_f32$0;
|
|
label$11 : {
|
|
if (!(Math_fround(Math_fround(HEAPF32[($8 + 368 | 0) >> 2]) + Math_fround(HEAPF32[($8 + 552 | 0) >> 2])) <= Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
HEAP8[($8 + 655 | 0) >> 0] = 0 & 1 | 0;
|
|
HEAP32[($8 + 364 | 0) >> 2] = 1;
|
|
break label$5;
|
|
}
|
|
HEAPF32[($8 + 332 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($8 + 372 | 0) >> 2]) / Math_fround(Math_fround(HEAPF32[($8 + 368 | 0) >> 2]) + Math_fround(HEAPF32[($8 + 552 | 0) >> 2])));
|
|
HEAPF32[($8 + 512 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($8 + 512 | 0) >> 2]) + Math_fround(HEAPF32[($8 + 332 | 0) >> 2]));
|
|
label$12 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 512 | 0) >> 2]) > Math_fround(1.0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
HEAP8[($8 + 655 | 0) >> 0] = 0 & 1 | 0;
|
|
HEAP32[($8 + 364 | 0) >> 2] = 1;
|
|
break label$5;
|
|
}
|
|
label$13 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 512 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
HEAP8[($8 + 655 | 0) >> 0] = 0 & 1 | 0;
|
|
HEAP32[($8 + 364 | 0) >> 2] = 1;
|
|
break label$5;
|
|
}
|
|
label$14 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 512 | 0) >> 2]) <= Math_fround(HEAPF32[($8 + 428 | 0) >> 2]) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
HEAP8[($8 + 655 | 0) >> 0] = 0 & 1 | 0;
|
|
HEAP32[($8 + 364 | 0) >> 2] = 1;
|
|
break label$5;
|
|
}
|
|
HEAPF32[($8 + 428 | 0) >> 2] = Math_fround(HEAPF32[($8 + 512 | 0) >> 2]);
|
|
btTransform__btTransform_28_29($8 + 268 | 0 | 0) | 0;
|
|
btTransform__btTransform_28_29($8 + 204 | 0 | 0) | 0;
|
|
btTransform__btTransform_28_29($8 + 140 | 0 | 0) | 0;
|
|
btTransformUtil__integrateTransform_28btTransform_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20btTransform__29(HEAP32[($8 + 644 | 0) >> 2] | 0 | 0, $8 + 612 | 0 | 0, $8 + 596 | 0 | 0, Math_fround(Math_fround(HEAPF32[($8 + 512 | 0) >> 2])), $8 + 268 | 0 | 0);
|
|
btTransformUtil__integrateTransform_28btTransform_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20btTransform__29(HEAP32[($8 + 636 | 0) >> 2] | 0 | 0, $8 + 580 | 0 | 0, $8 + 564 | 0 | 0, Math_fround(Math_fround(HEAPF32[($8 + 512 | 0) >> 2])), $8 + 204 | 0 | 0);
|
|
btTransform__inverseTimes_28btTransform_20const__29_20const($8 + 76 | 0 | 0, $8 + 204 | 0 | 0, $8 + 268 | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29($8 + 140 | 0 | 0, $8 + 76 | 0 | 0) | 0;
|
|
label$15 : {
|
|
if (!((HEAP32[((HEAP32[($8 + 628 | 0) >> 2] | 0) + 168 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
$364 = HEAP32[((HEAP32[($8 + 628 | 0) >> 2] | 0) + 168 | 0) >> 2] | 0;
|
|
$368 = btTransform__getOrigin_28_29($8 + 268 | 0 | 0) | 0;
|
|
HEAPF32[($8 + 56 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($8 + 52 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 48 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 60 | 0 | 0, $8 + 56 | 0 | 0, $8 + 52 | 0 | 0, $8 + 48 | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$364 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($364, $368, Math_fround(.20000000298023224), $8 + 60 | 0);
|
|
}
|
|
$392 = HEAP32[($8 + 628 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$392 >> 2] | 0) >> 2] | 0 | 0]($392, Math_fround(HEAPF32[($8 + 512 | 0) >> 2]));
|
|
btPointCollector__btPointCollector_28_29($8 + 4 | 0 | 0) | 0;
|
|
btContinuousConvexCollision__computeClosestPoints_28btTransform_20const__2c_20btTransform_20const__2c_20btPointCollector__29($9 | 0, $8 + 268 | 0 | 0, $8 + 204 | 0 | 0, $8 + 4 | 0 | 0);
|
|
label$16 : {
|
|
label$17 : {
|
|
label$18 : {
|
|
if (!((HEAPU8[($8 + 44 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$18
|
|
}
|
|
HEAPF32[($8 + 372 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($8 + 40 | 0) >> 2]) + Math_fround(HEAPF32[((HEAP32[($8 + 628 | 0) >> 2] | 0) + 172 | 0) >> 2]));
|
|
$419 = ($8 + 4 | 0) + 20 | 0;
|
|
$420 = 8;
|
|
i64toi32_i32$2 = $419 + $420 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1348 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 432 | 0) + $420 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1348;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $419;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1352 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 432 | 0) >> 2] = $1352;
|
|
HEAP32[($8 + 436 | 0) >> 2] = i64toi32_i32$0;
|
|
$431 = ($8 + 4 | 0) + 4 | 0;
|
|
$432 = 8;
|
|
i64toi32_i32$2 = $431 + $432 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1372 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 464 | 0) + $432 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1372;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $431;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1376 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 464 | 0) >> 2] = $1376;
|
|
HEAP32[($8 + 468 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$17;
|
|
}
|
|
$439 = HEAP32[($8 + 628 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$439 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($439, -1, HEAP32[($8 + 424 | 0) >> 2] | 0);
|
|
HEAP8[($8 + 655 | 0) >> 0] = 0 & 1 | 0;
|
|
HEAP32[($8 + 364 | 0) >> 2] = 1;
|
|
break label$16;
|
|
}
|
|
HEAP32[($8 + 424 | 0) >> 2] = (HEAP32[($8 + 424 | 0) >> 2] | 0) + 1 | 0;
|
|
label$19 : {
|
|
if (!((HEAP32[($8 + 424 | 0) >> 2] | 0 | 0) > (HEAP32[($8 + 480 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
$458 = HEAP32[($8 + 628 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$458 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($458, -2, HEAP32[($8 + 424 | 0) >> 2] | 0);
|
|
HEAP8[($8 + 655 | 0) >> 0] = 0 & 1 | 0;
|
|
HEAP32[($8 + 364 | 0) >> 2] = 1;
|
|
break label$16;
|
|
}
|
|
HEAP32[($8 + 364 | 0) >> 2] = 0;
|
|
}
|
|
btPointCollector___btPointCollector_28_29($8 + 4 | 0 | 0) | 0;
|
|
if (HEAP32[($8 + 364 | 0) >> 2] | 0) {
|
|
break label$5
|
|
}
|
|
continue label$9;
|
|
};
|
|
}
|
|
HEAPF32[((HEAP32[($8 + 628 | 0) >> 2] | 0) + 164 | 0) >> 2] = Math_fround(HEAPF32[($8 + 512 | 0) >> 2]);
|
|
$475 = (HEAP32[($8 + 628 | 0) >> 2] | 0) + 132 | 0;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$0 = HEAP32[($8 + 464 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($8 + 468 | 0) >> 2] | 0;
|
|
$1460 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $475;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1460;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$477 = 8;
|
|
i64toi32_i32$2 = ($8 + 464 | 0) + $477 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1473 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $475 + $477 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1473;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$485 = (HEAP32[($8 + 628 | 0) >> 2] | 0) + 148 | 0;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$0 = HEAP32[($8 + 432 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($8 + 436 | 0) >> 2] | 0;
|
|
$1482 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $485;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1482;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$487 = 8;
|
|
i64toi32_i32$2 = ($8 + 432 | 0) + $487 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1495 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $485 + $487 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1495;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP8[($8 + 655 | 0) >> 0] = 1 & 1 | 0;
|
|
HEAP32[($8 + 364 | 0) >> 2] = 1;
|
|
break label$5;
|
|
}
|
|
HEAP8[($8 + 655 | 0) >> 0] = 0 & 1 | 0;
|
|
HEAP32[($8 + 364 | 0) >> 2] = 1;
|
|
}
|
|
btPointCollector___btPointCollector_28_29($8 + 376 | 0 | 0) | 0;
|
|
}
|
|
$506 = (HEAPU8[($8 + 655 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $8 + 656 | 0;
|
|
return $506 | 0;
|
|
}
|
|
|
|
function btPointCollector__btPointCollector_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btDiscreteCollisionDetectorInterface__Result__Result_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 101196 + 8 | 0;
|
|
btVector3__btVector3_28_29($4 + 4 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 20 | 0 | 0) | 0;
|
|
HEAPF32[($4 + 36 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAP8[($4 + 40 | 0) >> 0] = 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btTransformUtil__integrateTransform_28btTransform_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20btTransform__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
$4 = $4 | 0;
|
|
var $7 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $79 = 0, $103 = 0, $8 = 0, $10 = 0, $56 = 0, $349 = 0, $353 = 0, $88 = 0, $401 = 0, $405 = 0, $115 = 0, $119 = 0, $123 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$7 = __stack_pointer - 176 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 172 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 168 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 164 | 0) >> 2] = $2;
|
|
HEAPF32[($7 + 160 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 156 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 156 | 0) >> 2] | 0;
|
|
$10 = btTransform__getOrigin_28_29_20const(HEAP32[($7 + 172 | 0) >> 2] | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($7 + 124 | 0 | 0, HEAP32[($7 + 168 | 0) >> 2] | 0 | 0, $7 + 160 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($7 + 140 | 0 | 0, $10 | 0, $7 + 124 | 0 | 0);
|
|
btTransform__setOrigin_28btVector3_20const__29($8 | 0, $7 + 140 | 0 | 0);
|
|
btVector3__btVector3_28_29($7 + 104 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const(HEAP32[($7 + 164 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 100 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($7 + 96 | 0) >> 2] = Math_fround(0 | 0);
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 100 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btSqrt_28float_29(Math_fround(Math_fround(HEAPF32[($7 + 100 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 96 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
label$2 : {
|
|
if (!(Math_fround(Math_fround(HEAPF32[($7 + 96 | 0) >> 2]) * Math_fround(HEAPF32[($7 + 160 | 0) >> 2])) > Math_fround(.7853981852531433) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($7 + 96 | 0) >> 2] = Math_fround(Math_fround(.7853981852531433) / Math_fround(HEAPF32[($7 + 160 | 0) >> 2]));
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 96 | 0) >> 2]) < Math_fround(1.0000000474974513e-03) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$56 = HEAP32[($7 + 164 | 0) >> 2] | 0;
|
|
HEAPF32[($7 + 76 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($7 + 160 | 0) >> 2]) * Math_fround(.5)) + Math_fround(-Math_fround(Math_fround(Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[($7 + 160 | 0) >> 2]) * Math_fround(HEAPF32[($7 + 160 | 0) >> 2])) * Math_fround(HEAPF32[($7 + 160 | 0) >> 2])) * Math_fround(.02083333395421505)) * Math_fround(HEAPF32[($7 + 96 | 0) >> 2])) * Math_fround(HEAPF32[($7 + 96 | 0) >> 2]))));
|
|
operator__28btVector3_20const__2c_20float_20const__29($7 + 80 | 0 | 0, $56 | 0, $7 + 76 | 0 | 0);
|
|
$79 = 8;
|
|
i64toi32_i32$2 = ($7 + 80 | 0) + $79 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$349 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($7 + 104 | 0) + $79 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $349;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$1 = HEAP32[($7 + 80 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($7 + 84 | 0) >> 2] | 0;
|
|
$353 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $7;
|
|
HEAP32[($7 + 104 | 0) >> 2] = $353;
|
|
HEAP32[($7 + 108 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$3;
|
|
}
|
|
$88 = HEAP32[($7 + 164 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(Math_fround(btSin_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(.5) * Math_fround(HEAPF32[($7 + 96 | 0) >> 2])) * Math_fround(HEAPF32[($7 + 160 | 0) >> 2]))))) / Math_fround(HEAPF32[($7 + 96 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 56 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($7 + 60 | 0 | 0, $88 | 0, $7 + 56 | 0 | 0);
|
|
$103 = 8;
|
|
i64toi32_i32$2 = ($7 + 60 | 0) + $103 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$401 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($7 + 104 | 0) + $103 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $401;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$1 = HEAP32[($7 + 60 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($7 + 64 | 0) >> 2] | 0;
|
|
$405 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $7;
|
|
HEAP32[($7 + 104 | 0) >> 2] = $405;
|
|
HEAP32[($7 + 108 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
$115 = btVector3__x_28_29_20const($7 + 104 | 0 | 0) | 0;
|
|
$119 = btVector3__y_28_29_20const($7 + 104 | 0 | 0) | 0;
|
|
$123 = btVector3__z_28_29_20const($7 + 104 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btCos_28float_29(Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[($7 + 96 | 0) >> 2]) * Math_fround(HEAPF32[($7 + 160 | 0) >> 2])) * Math_fround(.5)))))), HEAPF32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_f32$0;
|
|
btQuaternion__btQuaternion_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($7 + 40 | 0 | 0, $115 | 0, $119 | 0, $123 | 0, $7 + 36 | 0 | 0) | 0;
|
|
btTransform__getRotation_28_29_20const($7 + 20 | 0 | 0, HEAP32[($7 + 172 | 0) >> 2] | 0 | 0);
|
|
operator__28btQuaternion_20const__2c_20btQuaternion_20const__29($7 + 4 | 0 | 0, $7 + 40 | 0 | 0, $7 + 20 | 0 | 0);
|
|
btQuaternion__safeNormalize_28_29($7 + 4 | 0 | 0) | 0;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!(Math_fround(btQuaternion__length2_28_29_20const($7 + 4 | 0 | 0)) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
btTransform__setRotation_28btQuaternion_20const__29(HEAP32[($7 + 156 | 0) >> 2] | 0 | 0, $7 + 4 | 0 | 0);
|
|
break label$5;
|
|
}
|
|
btTransform__setBasis_28btMatrix3x3_20const__29(HEAP32[($7 + 156 | 0) >> 2] | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($7 + 172 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
}
|
|
__stack_pointer = $7 + 176 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPointCollector___btPointCollector_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btDiscreteCollisionDetectorInterface__Result___Result_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btQuaternion__safeNormalize_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(btQuaternion__length2_28_29_20const($4 | 0))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[($3 + 8 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btQuaternion__normalize_28_29($4 | 0) | 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btContinuousConvexCollision___btContinuousConvexCollision_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btContinuousConvexCollision___btContinuousConvexCollision_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPointCollector___btPointCollector_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btPointCollector___btPointCollector_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPointCollector__setShapeIdentifiersA_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
return;
|
|
}
|
|
|
|
function btPointCollector__setShapeIdentifiersB_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
return;
|
|
}
|
|
|
|
function btPointCollector__addContactPoint_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, $7 = 0, $16 = 0, $18 = 0, $24 = 0, $26 = 0, $67 = 0, $77 = 0, $86 = 0, $96 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAPF32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[$6 >> 2]) < Math_fround(HEAPF32[($7 + 36 | 0) >> 2]) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP8[($7 + 40 | 0) >> 0] = 1;
|
|
$16 = $7 + 4 | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$67 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $16;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $67;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$18 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $18 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$77 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $16 + $18 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $77;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$24 = $7 + 20 | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$86 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $24;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $86;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$26 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $26 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$96 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $24 + $26 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $96;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($7 + 36 | 0) >> 2] = Math_fround(HEAPF32[$6 >> 2]);
|
|
}
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btContinuousConvexCollision_cpp() {
|
|
__cxx_global_var_init_56();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_57() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114316 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btConvexCast___btConvexCast_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btConvexCast___btConvexCast_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btConvexCast_cpp() {
|
|
__cxx_global_var_init_57();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_58() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114320 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btGjkConvexCast__btGjkConvexCast_28btConvexShape_20const__2c_20btConvexShape_20const__2c_20btVoronoiSimplexSolver__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btConvexCast__btConvexCast_28_29($7 | 0) | 0;
|
|
HEAP32[$7 >> 2] = 101300 + 8 | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = HEAP32[$6 >> 2] | 0;
|
|
HEAP32[($7 + 8 | 0) >> 2] = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 12 | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btGjkConvexCast__calcTimeOfImpact_28btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btConvexCast__CastResult__29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $9 = 0, $24 = 0, $40 = 0, $155 = 0, $156 = 0, $171 = 0, $172 = 0, $242 = 0, $294 = 0, $295 = 0, $304 = 0, $306 = 0, $319 = 0, $321 = 0, $333 = 0, $334 = 0, $345 = 0, $346 = 0, $379 = 0, $381 = 0, $389 = 0, $391 = 0, $480 = 0, $484 = 0, $515 = 0, $519 = 0, $732 = 0, $736 = 0, $767 = 0, $771 = 0, $1024 = 0, $1028 = 0, $1037 = 0, $1050 = 0, $1066 = 0, $1076 = 0, $1103 = 0, $1107 = 0, $1127 = 0, $1131 = 0, $1189 = 0, $1202 = 0, $1211 = 0, $1224 = 0, $413 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$8 = __stack_pointer - 544 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 536 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 532 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 528 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 524 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 520 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 516 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 536 | 0) >> 2] | 0;
|
|
btVoronoiSimplexSolver__reset_28_29(HEAP32[($9 + 4 | 0) >> 2] | 0 | 0);
|
|
btVector3__btVector3_28_29($8 + 496 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 480 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 464 | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($8 + 528 | 0) >> 2] | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($8 + 532 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$24 = 8;
|
|
i64toi32_i32$2 = ($8 + 464 | 0) + $24 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$480 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 496 | 0) + $24 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $480;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 464 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 468 | 0) >> 2] | 0;
|
|
$484 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 496 | 0) >> 2] = $484;
|
|
HEAP32[($8 + 500 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 448 | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($8 + 520 | 0) >> 2] | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($8 + 524 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$40 = 8;
|
|
i64toi32_i32$2 = ($8 + 448 | 0) + $40 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$515 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 480 | 0) + $40 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $515;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 448 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 452 | 0) >> 2] | 0;
|
|
$519 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 480 | 0) >> 2] = $519;
|
|
HEAP32[($8 + 484 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($8 + 444 | 0) >> 2] = Math_fround(1.0000000474974513e-03);
|
|
HEAPF32[($8 + 440 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 420 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($8 + 416 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 412 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 424 | 0 | 0, $8 + 420 | 0 | 0, $8 + 416 | 0 | 0, $8 + 412 | 0 | 0) | 0;
|
|
HEAP32[($8 + 408 | 0) >> 2] = 32;
|
|
btVector3__btVector3_28_29($8 + 392 | 0 | 0) | 0;
|
|
HEAPF32[($8 + 388 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 384 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 380 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 392 | 0 | 0, $8 + 388 | 0 | 0, $8 + 384 | 0 | 0, $8 + 380 | 0 | 0);
|
|
HEAP8[($8 + 379 | 0) >> 0] = 0;
|
|
btVector3__btVector3_28_29($8 + 360 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 344 | 0 | 0, $8 + 496 | 0 | 0, $8 + 480 | 0 | 0);
|
|
HEAPF32[($8 + 340 | 0) >> 2] = Math_fround(HEAPF32[($8 + 440 | 0) >> 2]);
|
|
HEAP32[($8 + 336 | 0) >> 2] = 0;
|
|
btTransform__btTransform_28_29($8 + 272 | 0 | 0) | 0;
|
|
btTransform__setIdentity_28_29($8 + 272 | 0 | 0);
|
|
btPointCollector__btPointCollector_28_29($8 + 228 | 0 | 0) | 0;
|
|
btGjkPairDetector__btGjkPairDetector_28btConvexShape_20const__2c_20btConvexShape_20const__2c_20btVoronoiSimplexSolver__2c_20btConvexPenetrationDepthSolver__29($8 + 148 | 0 | 0, HEAP32[($9 + 8 | 0) >> 2] | 0 | 0, HEAP32[($9 + 12 | 0) >> 2] | 0 | 0, HEAP32[($9 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0;
|
|
btDiscreteCollisionDetectorInterface__ClosestPointInput__ClosestPointInput_28_29($8 + 16 | 0 | 0) | 0;
|
|
btTransform__operator__28btTransform_20const__29($8 + 16 | 0 | 0, HEAP32[($8 + 532 | 0) >> 2] | 0 | 0) | 0;
|
|
btTransform__operator__28btTransform_20const__29(($8 + 16 | 0) + 64 | 0 | 0, HEAP32[($8 + 524 | 0) >> 2] | 0 | 0) | 0;
|
|
btGjkPairDetector__getClosestPoints_28btDiscreteCollisionDetectorInterface__ClosestPointInput_20const__2c_20btDiscreteCollisionDetectorInterface__Result__2c_20btIDebugDraw__2c_20bool_29($8 + 148 | 0 | 0, $8 + 16 | 0 | 0, $8 + 228 | 0 | 0, 0 | 0, 0 & 1 | 0 | 0);
|
|
HEAP8[($8 + 379 | 0) >> 0] = (HEAPU8[($8 + 268 | 0) >> 0] | 0) & 1 | 0;
|
|
$155 = ($8 + 228 | 0) + 20 | 0;
|
|
$156 = 8;
|
|
i64toi32_i32$2 = $155 + $156 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$732 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 360 | 0) + $156 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $732;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $155;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$736 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 360 | 0) >> 2] = $736;
|
|
HEAP32[($8 + 364 | 0) >> 2] = i64toi32_i32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($8 + 379 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($8 + 12 | 0) >> 2] = Math_fround(HEAPF32[($8 + 264 | 0) >> 2]);
|
|
$171 = ($8 + 228 | 0) + 4 | 0;
|
|
$172 = 8;
|
|
i64toi32_i32$2 = $171 + $172 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$767 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 392 | 0) + $172 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $767;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $171;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$771 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 392 | 0) >> 2] = $771;
|
|
HEAP32[($8 + 396 | 0) >> 2] = i64toi32_i32$0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!(Math_fround(HEAPF32[($8 + 12 | 0) >> 2]) > Math_fround(HEAPF32[($8 + 444 | 0) >> 2]) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($8 + 336 | 0) >> 2] = (HEAP32[($8 + 336 | 0) >> 2] | 0) + 1 | 0;
|
|
label$5 : {
|
|
if (!((HEAP32[($8 + 336 | 0) >> 2] | 0 | 0) > (HEAP32[($8 + 408 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAP8[($8 + 543 | 0) >> 0] = 0 & 1 | 0;
|
|
HEAP32[($8 + 8 | 0) >> 2] = 1;
|
|
break label$1;
|
|
}
|
|
HEAPF32[($8 + 4 | 0) >> 2] = Math_fround(0 | 0);
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 344 | 0 | 0, $8 + 392 | 0 | 0))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($8 + 4 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($8 + 12 | 0) >> 2]) / Math_fround(HEAPF32[$8 >> 2]));
|
|
HEAPF32[($8 + 440 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($8 + 440 | 0) >> 2]) - Math_fround(HEAPF32[($8 + 4 | 0) >> 2]));
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 440 | 0) >> 2]) > Math_fround(1.0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAP8[($8 + 543 | 0) >> 0] = 0 & 1 | 0;
|
|
HEAP32[($8 + 8 | 0) >> 2] = 1;
|
|
break label$1;
|
|
}
|
|
label$7 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 440 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAP8[($8 + 543 | 0) >> 0] = 0 & 1 | 0;
|
|
HEAP32[($8 + 8 | 0) >> 2] = 1;
|
|
break label$1;
|
|
}
|
|
label$8 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 440 | 0) >> 2]) <= Math_fround(HEAPF32[($8 + 340 | 0) >> 2]) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
HEAP8[($8 + 543 | 0) >> 0] = 0 & 1 | 0;
|
|
HEAP32[($8 + 8 | 0) >> 2] = 1;
|
|
break label$1;
|
|
}
|
|
HEAPF32[($8 + 340 | 0) >> 2] = Math_fround(HEAPF32[($8 + 440 | 0) >> 2]);
|
|
$242 = HEAP32[($8 + 516 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$242 >> 2] | 0) >> 2] | 0 | 0]($242, Math_fround(HEAPF32[($8 + 440 | 0) >> 2]));
|
|
btVector3__setInterpolate3_28btVector3_20const__2c_20btVector3_20const__2c_20float_29(btTransform__getOrigin_28_29($8 + 16 | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($8 + 532 | 0) >> 2] | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($8 + 528 | 0) >> 2] | 0 | 0) | 0 | 0, Math_fround(Math_fround(HEAPF32[($8 + 440 | 0) >> 2])));
|
|
btVector3__setInterpolate3_28btVector3_20const__2c_20btVector3_20const__2c_20float_29(btTransform__getOrigin_28_29(($8 + 16 | 0) + 64 | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($8 + 524 | 0) >> 2] | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($8 + 520 | 0) >> 2] | 0 | 0) | 0 | 0, Math_fround(Math_fround(HEAPF32[($8 + 440 | 0) >> 2])));
|
|
btGjkPairDetector__getClosestPoints_28btDiscreteCollisionDetectorInterface__ClosestPointInput_20const__2c_20btDiscreteCollisionDetectorInterface__Result__2c_20btIDebugDraw__2c_20bool_29($8 + 148 | 0 | 0, $8 + 16 | 0 | 0, $8 + 228 | 0 | 0, 0 | 0, 0 & 1 | 0 | 0);
|
|
label$9 : {
|
|
label$10 : {
|
|
if (!((HEAPU8[($8 + 268 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
label$11 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 264 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
HEAPF32[((HEAP32[($8 + 516 | 0) >> 2] | 0) + 164 | 0) >> 2] = Math_fround(HEAPF32[($8 + 340 | 0) >> 2]);
|
|
$294 = ($8 + 228 | 0) + 4 | 0;
|
|
$295 = 8;
|
|
i64toi32_i32$2 = $294 + $295 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1024 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 392 | 0) + $295 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1024;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $294;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1028 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 392 | 0) >> 2] = $1028;
|
|
HEAP32[($8 + 396 | 0) >> 2] = i64toi32_i32$0;
|
|
$304 = (HEAP32[($8 + 516 | 0) >> 2] | 0) + 132 | 0;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$0 = HEAP32[($8 + 392 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($8 + 396 | 0) >> 2] | 0;
|
|
$1037 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $304;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1037;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$306 = 8;
|
|
i64toi32_i32$2 = ($8 + 392 | 0) + $306 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1050 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $304 + $306 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1050;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$319 = (HEAP32[($8 + 516 | 0) >> 2] | 0) + 148 | 0;
|
|
i64toi32_i32$2 = ($8 + 228 | 0) + 20 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1066 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $319;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1066;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$321 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $321 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1076 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $319 + $321 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1076;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP8[($8 + 543 | 0) >> 0] = 1 & 1 | 0;
|
|
HEAP32[($8 + 8 | 0) >> 2] = 1;
|
|
break label$1;
|
|
}
|
|
$333 = ($8 + 228 | 0) + 20 | 0;
|
|
$334 = 8;
|
|
i64toi32_i32$2 = $333 + $334 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1103 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 360 | 0) + $334 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1103;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $333;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1107 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 360 | 0) >> 2] = $1107;
|
|
HEAP32[($8 + 364 | 0) >> 2] = i64toi32_i32$0;
|
|
$345 = ($8 + 228 | 0) + 4 | 0;
|
|
$346 = 8;
|
|
i64toi32_i32$2 = $345 + $346 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1127 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 392 | 0) + $346 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1127;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $345;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1131 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 392 | 0) >> 2] = $1131;
|
|
HEAP32[($8 + 396 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($8 + 12 | 0) >> 2] = Math_fround(HEAPF32[($8 + 264 | 0) >> 2]);
|
|
break label$9;
|
|
}
|
|
HEAP8[($8 + 543 | 0) >> 0] = 0 & 1 | 0;
|
|
HEAP32[($8 + 8 | 0) >> 2] = 1;
|
|
break label$1;
|
|
}
|
|
continue label$4;
|
|
};
|
|
}
|
|
label$12 : {
|
|
if (!(Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 392 | 0 | 0, $8 + 344 | 0 | 0)) >= Math_fround(-Math_fround(HEAPF32[((HEAP32[($8 + 516 | 0) >> 2] | 0) + 172 | 0) >> 2])) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
HEAP8[($8 + 543 | 0) >> 0] = 0 & 1 | 0;
|
|
HEAP32[($8 + 8 | 0) >> 2] = 1;
|
|
break label$1;
|
|
}
|
|
HEAPF32[((HEAP32[($8 + 516 | 0) >> 2] | 0) + 164 | 0) >> 2] = Math_fround(HEAPF32[($8 + 440 | 0) >> 2]);
|
|
$379 = (HEAP32[($8 + 516 | 0) >> 2] | 0) + 132 | 0;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$0 = HEAP32[($8 + 392 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($8 + 396 | 0) >> 2] | 0;
|
|
$1189 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $379;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1189;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$381 = 8;
|
|
i64toi32_i32$2 = ($8 + 392 | 0) + $381 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1202 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $379 + $381 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1202;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$389 = (HEAP32[($8 + 516 | 0) >> 2] | 0) + 148 | 0;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$0 = HEAP32[($8 + 360 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($8 + 364 | 0) >> 2] | 0;
|
|
$1211 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $389;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1211;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$391 = 8;
|
|
i64toi32_i32$2 = ($8 + 360 | 0) + $391 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1224 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $389 + $391 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1224;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP8[($8 + 543 | 0) >> 0] = 1 & 1 | 0;
|
|
HEAP32[($8 + 8 | 0) >> 2] = 1;
|
|
break label$1;
|
|
}
|
|
HEAP8[($8 + 543 | 0) >> 0] = 0 & 1 | 0;
|
|
HEAP32[($8 + 8 | 0) >> 2] = 1;
|
|
}
|
|
btGjkPairDetector___btGjkPairDetector_28_29($8 + 148 | 0 | 0) | 0;
|
|
btPointCollector___btPointCollector_28_29($8 + 228 | 0 | 0) | 0;
|
|
$413 = (HEAPU8[($8 + 543 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $8 + 544 | 0;
|
|
return $413 | 0;
|
|
}
|
|
|
|
function btGjkConvexCast___btGjkConvexCast_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btGjkConvexCast___btGjkConvexCast_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btGjkConvexCast_cpp() {
|
|
__cxx_global_var_init_58();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_59() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114324 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btGjkEpaSolver2__Distance_28btConvexShape_20const__2c_20btTransform_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btVector3_20const__2c_20btGjkEpaSolver2__sResults__29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $162 = 0, $164 = 0, $181 = 0, $183 = 0, $200 = 0, $202 = 0, $221 = Math_fround(0), $561 = 0, $574 = 0, $599 = 0, $612 = 0, $636 = 0, $649 = 0, $211 = Math_fround(0), $247 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$8 = __stack_pointer - 736 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 728 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 724 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 720 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 716 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 712 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 708 | 0) >> 2] = $5;
|
|
gjkepa2_impl__MinkowskiDiff__MinkowskiDiff_28_29($8 + 580 | 0 | 0) | 0;
|
|
gjkepa2_impl__Initialize_28btConvexShape_20const__2c_20btTransform_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btGjkEpaSolver2__sResults__2c_20gjkepa2_impl__MinkowskiDiff__2c_20bool_29(HEAP32[($8 + 728 | 0) >> 2] | 0 | 0, HEAP32[($8 + 724 | 0) >> 2] | 0 | 0, HEAP32[($8 + 720 | 0) >> 2] | 0 | 0, HEAP32[($8 + 716 | 0) >> 2] | 0 | 0, HEAP32[($8 + 708 | 0) >> 2] | 0 | 0, $8 + 580 | 0 | 0, 0 & 1 | 0 | 0);
|
|
gjkepa2_impl__GJK__GJK_28_29($8 + 200 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = gjkepa2_impl__GJK__Evaluate_28gjkepa2_impl__MinkowskiDiff_20const__2c_20btVector3_20const__29($8 + 200 | 0 | 0, $8 + 580 | 0 | 0, HEAP32[($8 + 712 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 196 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (HEAP32[($8 + 196 | 0) >> 2] | 0) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($8 + 176 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 172 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 168 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 180 | 0 | 0, $8 + 176 | 0 | 0, $8 + 172 | 0 | 0, $8 + 168 | 0 | 0) | 0;
|
|
HEAPF32[($8 + 148 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 144 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 140 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 152 | 0 | 0, $8 + 148 | 0 | 0, $8 + 144 | 0 | 0, $8 + 140 | 0 | 0) | 0;
|
|
HEAP32[($8 + 136 | 0) >> 2] = 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($8 + 136 | 0) >> 2] | 0) >>> 0 < (HEAP32[((HEAP32[($8 + 572 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) >>> 0 & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAPF32[($8 + 132 | 0) >> 2] = Math_fround(HEAPF32[(((HEAP32[($8 + 572 | 0) >> 2] | 0) + 16 | 0) + ((HEAP32[($8 + 136 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
gjkepa2_impl__MinkowskiDiff__Support_28btVector3_20const__2c_20unsigned_20int_29_20const($8 + 100 | 0 | 0, $8 + 580 | 0 | 0, HEAP32[((HEAP32[($8 + 572 | 0) >> 2] | 0) + ((HEAP32[($8 + 136 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0, 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($8 + 116 | 0 | 0, $8 + 100 | 0 | 0, $8 + 132 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($8 + 180 | 0 | 0, $8 + 116 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__29($8 + 52 | 0 | 0, HEAP32[((HEAP32[($8 + 572 | 0) >> 2] | 0) + ((HEAP32[($8 + 136 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0);
|
|
gjkepa2_impl__MinkowskiDiff__Support_28btVector3_20const__2c_20unsigned_20int_29_20const($8 + 68 | 0 | 0, $8 + 580 | 0 | 0, $8 + 52 | 0 | 0, 1 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($8 + 84 | 0 | 0, $8 + 68 | 0 | 0, $8 + 132 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($8 + 152 | 0 | 0, $8 + 84 | 0 | 0) | 0;
|
|
HEAP32[($8 + 136 | 0) >> 2] = (HEAP32[($8 + 136 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
btTransform__operator__28btVector3_20const__29_20const($8 + 36 | 0 | 0, HEAP32[($8 + 724 | 0) >> 2] | 0 | 0, $8 + 180 | 0 | 0);
|
|
$162 = (HEAP32[($8 + 708 | 0) >> 2] | 0) + 4 | 0;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$0 = HEAP32[($8 + 36 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($8 + 40 | 0) >> 2] | 0;
|
|
$561 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $162;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $561;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$164 = 8;
|
|
i64toi32_i32$2 = ($8 + 36 | 0) + $164 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$574 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $162 + $164 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $574;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btTransform__operator__28btVector3_20const__29_20const($8 + 20 | 0 | 0, HEAP32[($8 + 724 | 0) >> 2] | 0 | 0, $8 + 152 | 0 | 0);
|
|
$181 = ((HEAP32[($8 + 708 | 0) >> 2] | 0) + 4 | 0) + 16 | 0;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$0 = HEAP32[($8 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($8 + 24 | 0) >> 2] | 0;
|
|
$599 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $181;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $599;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$183 = 8;
|
|
i64toi32_i32$2 = ($8 + 20 | 0) + $183 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$612 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $181 + $183 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $612;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 4 | 0 | 0, $8 + 180 | 0 | 0, $8 + 152 | 0 | 0);
|
|
$200 = (HEAP32[($8 + 708 | 0) >> 2] | 0) + 36 | 0;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$0 = HEAP32[($8 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($8 + 8 | 0) >> 2] | 0;
|
|
$636 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $200;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $636;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$202 = 8;
|
|
i64toi32_i32$2 = ($8 + 4 | 0) + $202 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$649 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $200 + $202 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $649;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$211 = Math_fround(btVector3__length_28_29_20const((HEAP32[($8 + 708 | 0) >> 2] | 0) + 36 | 0 | 0));
|
|
HEAPF32[((HEAP32[($8 + 708 | 0) >> 2] | 0) + 52 | 0) >> 2] = $211;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[((HEAP32[($8 + 708 | 0) >> 2] | 0) + 52 | 0) >> 2]) > Math_fround(9.999999747378752e-05) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$221 = Math_fround(HEAPF32[((HEAP32[($8 + 708 | 0) >> 2] | 0) + 52 | 0) >> 2]);
|
|
break label$5;
|
|
}
|
|
$221 = Math_fround(1.0);
|
|
}
|
|
HEAPF32[$8 >> 2] = $221;
|
|
btVector3__operator___28float_20const__29((HEAP32[($8 + 708 | 0) >> 2] | 0) + 36 | 0 | 0, $8 | 0) | 0;
|
|
HEAP8[($8 + 735 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[(HEAP32[($8 + 708 | 0) >> 2] | 0) >> 2] = (HEAP32[($8 + 196 | 0) >> 2] | 0 | 0) == (1 | 0) & 1 | 0 ? 1 : 2;
|
|
HEAP8[($8 + 735 | 0) >> 0] = 0 & 1 | 0;
|
|
}
|
|
$247 = (HEAPU8[($8 + 735 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $8 + 736 | 0;
|
|
return $247 | 0;
|
|
}
|
|
|
|
function gjkepa2_impl__MinkowskiDiff__MinkowskiDiff_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btMatrix3x3__btMatrix3x3_28_29($4 + 8 | 0 | 0) | 0;
|
|
btTransform__btTransform_28_29($4 + 56 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function gjkepa2_impl__Initialize_28btConvexShape_20const__2c_20btTransform_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btGjkEpaSolver2__sResults__2c_20gjkepa2_impl__MinkowskiDiff__2c_20bool_29($0, $1, $2, $3, $4, $5, $6) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
var $9 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $33 = 0, $35 = 0, $43 = 0, $45 = 0, $149 = 0, $162 = 0, $171 = 0, $181 = 0;
|
|
$9 = __stack_pointer - 176 | 0;
|
|
__stack_pointer = $9;
|
|
HEAP32[($9 + 172 | 0) >> 2] = $0;
|
|
HEAP32[($9 + 168 | 0) >> 2] = $1;
|
|
HEAP32[($9 + 164 | 0) >> 2] = $2;
|
|
HEAP32[($9 + 160 | 0) >> 2] = $3;
|
|
HEAP32[($9 + 156 | 0) >> 2] = $4;
|
|
HEAP32[($9 + 152 | 0) >> 2] = $5;
|
|
HEAP8[($9 + 151 | 0) >> 0] = $6;
|
|
HEAPF32[($9 + 128 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($9 + 124 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($9 + 120 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($9 + 132 | 0 | 0, $9 + 128 | 0 | 0, $9 + 124 | 0 | 0, $9 + 120 | 0 | 0) | 0;
|
|
$33 = ((HEAP32[($9 + 156 | 0) >> 2] | 0) + 4 | 0) + 16 | 0;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$0 = HEAP32[($9 + 132 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 136 | 0) >> 2] | 0;
|
|
$149 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $33;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $149;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$35 = 8;
|
|
i64toi32_i32$2 = ($9 + 132 | 0) + $35 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$162 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $33 + $35 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $162;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$43 = (HEAP32[($9 + 156 | 0) >> 2] | 0) + 4 | 0;
|
|
i64toi32_i32$2 = $33;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$171 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $43;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $171;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$45 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $45 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$181 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $43 + $45 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $181;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[(HEAP32[($9 + 156 | 0) >> 2] | 0) >> 2] = 0;
|
|
HEAP32[(HEAP32[($9 + 152 | 0) >> 2] | 0) >> 2] = HEAP32[($9 + 172 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($9 + 152 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[($9 + 164 | 0) >> 2] | 0;
|
|
btMatrix3x3__transposeTimes_28btMatrix3x3_20const__29_20const($9 + 72 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($9 + 160 | 0) >> 2] | 0 | 0) | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($9 + 168 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btMatrix3x3__operator__28btMatrix3x3_20const__29((HEAP32[($9 + 152 | 0) >> 2] | 0) + 8 | 0 | 0, $9 + 72 | 0 | 0) | 0;
|
|
btTransform__inverseTimes_28btTransform_20const__29_20const($9 + 8 | 0 | 0, HEAP32[($9 + 168 | 0) >> 2] | 0 | 0, HEAP32[($9 + 160 | 0) >> 2] | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29((HEAP32[($9 + 152 | 0) >> 2] | 0) + 56 | 0 | 0, $9 + 8 | 0 | 0) | 0;
|
|
gjkepa2_impl__MinkowskiDiff__EnableMargin_28bool_29(HEAP32[($9 + 152 | 0) >> 2] | 0 | 0, (HEAPU8[($9 + 151 | 0) >> 0] | 0) & 1 | 0 | 0);
|
|
__stack_pointer = $9 + 176 | 0;
|
|
return;
|
|
}
|
|
|
|
function gjkepa2_impl__GJK__GJK_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $8 = 0, $11 = 0, $12 = 0, $14 = 0, $10 = 0, $20 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
gjkepa2_impl__MinkowskiDiff__MinkowskiDiff_28_29($4 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 128 | 0 | 0) | 0;
|
|
$8 = $4 + 220 | 0;
|
|
$10 = $8 + 128 | 0;
|
|
$11 = $8;
|
|
label$1 : while (1) {
|
|
$12 = $11;
|
|
gjkepa2_impl__GJK__sSV__sSV_28_29($12 | 0) | 0;
|
|
$14 = $12 + 32 | 0;
|
|
$11 = $14;
|
|
if (!(($14 | 0) == ($10 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
gjkepa2_impl__GJK__Initialize_28_29($4 | 0);
|
|
$20 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $20 | 0;
|
|
}
|
|
|
|
function gjkepa2_impl__GJK__Evaluate_28gjkepa2_impl__MinkowskiDiff_20const__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $110 = 0, $120 = 0, $130 = 0, $14 = 0, $17 = 0, $18 = 0, $20 = 0, $50 = 0, $52 = 0, $97 = 0, $99 = 0, $112 = 0, $122 = 0, $132 = 0, $138 = 0, $140 = 0, $234 = 0, $240 = 0, $242 = 0, $282 = 0, $368 = 0, $370 = 0, $415 = 0, $416 = 0, $453 = 0, $478 = 0, $486 = 0, $496 = 0, $16 = 0, $610 = 0, $620 = 0, $60 = 0, $703 = 0, $713 = 0, $731 = 0, $741 = 0, $752 = 0, $762 = 0, $773 = 0, $783 = 0, $791 = 0, $801 = 0, $168 = 0, $229 = 0, $999 = 0, $1009 = 0, $1257 = 0, $1270 = 0, $411 = Math_fround(0), $414 = 0, $450 = 0, $503 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 288 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 284 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 280 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 276 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 284 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 272 | 0) >> 2] = 0;
|
|
HEAPF32[($5 + 268 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 264 | 0) >> 2] = Math_fround(0 | 0);
|
|
$14 = $5 + 192 | 0;
|
|
$16 = $14 + 64 | 0;
|
|
$17 = $14;
|
|
label$1 : while (1) {
|
|
$18 = $17;
|
|
btVector3__btVector3_28_29($18 | 0) | 0;
|
|
$20 = $18 + 16 | 0;
|
|
$17 = $20;
|
|
if (!(($20 | 0) == ($16 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
HEAP32[($5 + 188 | 0) >> 2] = 0;
|
|
HEAP32[($6 + 348 | 0) >> 2] = $6 + 220 | 0;
|
|
HEAP32[($6 + 352 | 0) >> 2] = ($6 + 220 | 0) + 32 | 0;
|
|
HEAP32[($6 + 356 | 0) >> 2] = ($6 + 220 | 0) + 64 | 0;
|
|
HEAP32[($6 + 360 | 0) >> 2] = ($6 + 220 | 0) + 96 | 0;
|
|
HEAP32[($6 + 364 | 0) >> 2] = 4;
|
|
HEAP32[($6 + 368 | 0) >> 2] = 0;
|
|
HEAP32[($6 + 376 | 0) >> 2] = 0;
|
|
gjkepa2_impl__MinkowskiDiff__operator__28gjkepa2_impl__MinkowskiDiff_20const__29($6 | 0, HEAP32[($5 + 280 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($6 + 144 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP32[($6 + 180 | 0) >> 2] = 0;
|
|
$50 = $6 + 128 | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 276 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$610 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $50;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $610;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$52 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $52 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$620 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $50 + $52 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $620;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($6 + 128 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 184 | 0) >> 2] = wasm2js_f32$0;
|
|
$60 = $6 + 148 | 0;
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 184 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
operator__28btVector3_20const__29($5 + 168 | 0 | 0, $6 + 128 | 0 | 0);
|
|
break label$2;
|
|
}
|
|
HEAPF32[($5 + 164 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($5 + 160 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 156 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 168 | 0 | 0, $5 + 164 | 0 | 0, $5 + 160 | 0 | 0, $5 + 156 | 0 | 0) | 0;
|
|
}
|
|
gjkepa2_impl__GJK__appendvertice_28gjkepa2_impl__GJK__sSimplex__2c_20btVector3_20const__29($6 | 0, $60 | 0, $5 + 168 | 0 | 0);
|
|
HEAPF32[($6 + 164 | 0) >> 2] = Math_fround(1.0);
|
|
$97 = $6 + 128 | 0;
|
|
i64toi32_i32$2 = (HEAP32[($6 + 148 | 0) >> 2] | 0) + 16 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$703 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $97;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $703;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$99 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $99 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$713 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $97 + $99 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $713;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($5 + 268 | 0) >> 2] = Math_fround(HEAPF32[($5 + 184 | 0) >> 2]);
|
|
$110 = ($5 + 192 | 0) + 48 | 0;
|
|
i64toi32_i32$2 = $6 + 128 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$731 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $110;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $731;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$112 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $112 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$741 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $110 + $112 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $741;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$120 = ($5 + 192 | 0) + 32 | 0;
|
|
i64toi32_i32$2 = $110;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$752 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $120;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $752;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$122 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $122 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$762 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $120 + $122 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $762;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$130 = ($5 + 192 | 0) + 16 | 0;
|
|
i64toi32_i32$2 = $120;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$773 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $130;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $773;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$132 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $132 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$783 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $130 + $132 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $783;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$138 = $5 + 192 | 0;
|
|
i64toi32_i32$2 = $130;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$791 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $138;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $791;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$140 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $140 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$801 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $138 + $140 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $801;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
HEAP32[($5 + 152 | 0) >> 2] = 1 - (HEAP32[($6 + 368 | 0) >> 2] | 0) | 0;
|
|
HEAP32[($5 + 148 | 0) >> 2] = ($6 + 148 | 0) + Math_imul(HEAP32[($6 + 368 | 0) >> 2] | 0, 36) | 0;
|
|
HEAP32[($5 + 144 | 0) >> 2] = ($6 + 148 | 0) + Math_imul(HEAP32[($5 + 152 | 0) >> 2] | 0, 36) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__length_28_29_20const($6 + 128 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 140 | 0) >> 2] = wasm2js_f32$0;
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 140 | 0) >> 2]) < Math_fround(9.999999747378752e-05) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAP32[($6 + 376 | 0) >> 2] = 1;
|
|
break label$4;
|
|
}
|
|
$168 = HEAP32[($5 + 148 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__29($5 + 124 | 0 | 0, $6 + 128 | 0 | 0);
|
|
gjkepa2_impl__GJK__appendvertice_28gjkepa2_impl__GJK__sSimplex__2c_20btVector3_20const__29($6 | 0, $168 | 0, $5 + 124 | 0 | 0);
|
|
HEAP32[($5 + 120 | 0) >> 2] = (HEAP32[((HEAP32[($5 + 148 | 0) >> 2] | 0) + (((HEAP32[((HEAP32[($5 + 148 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) - 1 | 0) << 2 | 0) | 0) >> 2] | 0) + 16 | 0;
|
|
HEAP8[($5 + 119 | 0) >> 0] = 0;
|
|
HEAP32[($5 + 112 | 0) >> 2] = 0;
|
|
label$7 : {
|
|
label$8 : while (1) {
|
|
if (!((HEAP32[($5 + 112 | 0) >> 2] | 0) >>> 0 < 4 >>> 0 & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 96 | 0 | 0, HEAP32[($5 + 120 | 0) >> 2] | 0 | 0, ($5 + 192 | 0) + ((HEAP32[($5 + 112 | 0) >> 2] | 0) << 4 | 0) | 0 | 0);
|
|
label$9 : {
|
|
if (!(Math_fround(btVector3__length2_28_29_20const($5 + 96 | 0 | 0)) < Math_fround(9.999999747378752e-05) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
HEAP8[($5 + 119 | 0) >> 0] = 1;
|
|
break label$7;
|
|
}
|
|
HEAP32[($5 + 112 | 0) >> 2] = (HEAP32[($5 + 112 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$8;
|
|
};
|
|
}
|
|
label$10 : {
|
|
if (!((HEAPU8[($5 + 119 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
gjkepa2_impl__GJK__removevertice_28gjkepa2_impl__GJK__sSimplex__29($6 | 0, ($6 + 148 | 0) + Math_imul(HEAP32[($6 + 368 | 0) >> 2] | 0, 36) | 0 | 0);
|
|
break label$4;
|
|
}
|
|
$229 = HEAP32[($5 + 120 | 0) >> 2] | 0;
|
|
$234 = ((HEAP32[($5 + 188 | 0) >> 2] | 0) + 1 | 0) & 3 | 0;
|
|
HEAP32[($5 + 188 | 0) >> 2] = $234;
|
|
$240 = ($5 + 192 | 0) + ($234 << 4 | 0) | 0;
|
|
i64toi32_i32$2 = $229;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$999 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $240;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $999;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$242 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $242 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1009 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $240 + $242 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1009;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(btDot_28btVector3_20const__2c_20btVector3_20const__29($6 + 128 | 0 | 0, HEAP32[($5 + 120 | 0) >> 2] | 0 | 0)) / Math_fround(HEAPF32[($5 + 140 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 92 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(HEAPF32[(float_20const__20btMax_float__28float_20const__2c_20float_20const__29($5 + 92 | 0 | 0, $5 + 264 | 0 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 264 | 0) >> 2] = wasm2js_f32$0;
|
|
label$11 : {
|
|
if (!(Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 140 | 0) >> 2]) * Math_fround(-9.999999747378752e-05)) + Math_fround(Math_fround(HEAPF32[($5 + 140 | 0) >> 2]) - Math_fround(HEAPF32[($5 + 264 | 0) >> 2]))) <= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
gjkepa2_impl__GJK__removevertice_28gjkepa2_impl__GJK__sSimplex__29($6 | 0, ($6 + 148 | 0) + Math_imul(HEAP32[($6 + 368 | 0) >> 2] | 0, 36) | 0 | 0);
|
|
break label$4;
|
|
}
|
|
HEAP32[($5 + 60 | 0) >> 2] = 0;
|
|
$282 = (HEAP32[((HEAP32[($5 + 148 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) + -2 | 0;
|
|
label$12 : {
|
|
label$13 : {
|
|
switch ($282 | 0) {
|
|
case 0:
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(gjkepa2_impl__GJK__projectorigin_28btVector3_20const__2c_20btVector3_20const__2c_20float__2c_20unsigned_20int__29((HEAP32[(HEAP32[($5 + 148 | 0) >> 2] | 0) >> 2] | 0) + 16 | 0 | 0, (HEAP32[((HEAP32[($5 + 148 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 16 | 0 | 0, $5 + 64 | 0 | 0, $5 + 60 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 268 | 0) >> 2] = wasm2js_f32$0;
|
|
break label$12;
|
|
case 1:
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(gjkepa2_impl__GJK__projectorigin_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float__2c_20unsigned_20int__29((HEAP32[(HEAP32[($5 + 148 | 0) >> 2] | 0) >> 2] | 0) + 16 | 0 | 0, (HEAP32[((HEAP32[($5 + 148 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 16 | 0 | 0, (HEAP32[((HEAP32[($5 + 148 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 16 | 0 | 0, $5 + 64 | 0 | 0, $5 + 60 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 268 | 0) >> 2] = wasm2js_f32$0;
|
|
break label$12;
|
|
case 2:
|
|
break label$13;
|
|
default:
|
|
break label$12;
|
|
};
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(gjkepa2_impl__GJK__projectorigin_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float__2c_20unsigned_20int__29((HEAP32[(HEAP32[($5 + 148 | 0) >> 2] | 0) >> 2] | 0) + 16 | 0 | 0, (HEAP32[((HEAP32[($5 + 148 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 16 | 0 | 0, (HEAP32[((HEAP32[($5 + 148 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 16 | 0 | 0, (HEAP32[((HEAP32[($5 + 148 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 16 | 0 | 0, $5 + 64 | 0 | 0, $5 + 60 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 268 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
label$16 : {
|
|
label$17 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 268 | 0) >> 2]) >= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
HEAP32[((HEAP32[($5 + 144 | 0) >> 2] | 0) + 32 | 0) >> 2] = 0;
|
|
HEAPF32[($5 + 40 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 36 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 32 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 44 | 0 | 0, $5 + 40 | 0 | 0, $5 + 36 | 0 | 0, $5 + 32 | 0 | 0) | 0;
|
|
$368 = $6 + 128 | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 44 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 48 | 0) >> 2] | 0;
|
|
$1257 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $368;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1257;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$370 = 8;
|
|
i64toi32_i32$2 = ($5 + 44 | 0) + $370 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1270 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $368 + $370 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1270;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($6 + 368 | 0) >> 2] = HEAP32[($5 + 152 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 28 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = HEAP32[((HEAP32[($5 + 148 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0;
|
|
label$18 : {
|
|
label$19 : while (1) {
|
|
if (!((HEAP32[($5 + 28 | 0) >> 2] | 0) >>> 0 < (HEAP32[($5 + 24 | 0) >> 2] | 0) >>> 0 & 1 | 0)) {
|
|
break label$18
|
|
}
|
|
label$20 : {
|
|
label$21 : {
|
|
if (!((HEAP32[($5 + 60 | 0) >> 2] | 0) & (1 << (HEAP32[($5 + 28 | 0) >> 2] | 0) | 0) | 0)) {
|
|
break label$21
|
|
}
|
|
HEAP32[((HEAP32[($5 + 144 | 0) >> 2] | 0) + ((HEAP32[((HEAP32[($5 + 144 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[((HEAP32[($5 + 148 | 0) >> 2] | 0) + ((HEAP32[($5 + 28 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
$411 = Math_fround(HEAPF32[(($5 + 64 | 0) + ((HEAP32[($5 + 28 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
$414 = (HEAP32[($5 + 144 | 0) >> 2] | 0) + 16 | 0;
|
|
$415 = HEAP32[($5 + 144 | 0) >> 2] | 0;
|
|
$416 = HEAP32[($415 + 32 | 0) >> 2] | 0;
|
|
HEAP32[($415 + 32 | 0) >> 2] = $416 + 1 | 0;
|
|
HEAPF32[($414 + ($416 << 2 | 0) | 0) >> 2] = $411;
|
|
operator__28btVector3_20const__2c_20float_20const__29($5 + 8 | 0 | 0, (HEAP32[((HEAP32[($5 + 148 | 0) >> 2] | 0) + ((HEAP32[($5 + 28 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0) + 16 | 0 | 0, ($5 + 64 | 0) + ((HEAP32[($5 + 28 | 0) >> 2] | 0) << 2 | 0) | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($6 + 128 | 0 | 0, $5 + 8 | 0 | 0) | 0;
|
|
break label$20;
|
|
}
|
|
$450 = HEAP32[((HEAP32[($5 + 148 | 0) >> 2] | 0) + ((HEAP32[($5 + 28 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
$453 = HEAP32[($6 + 364 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 364 | 0) >> 2] = $453 + 1 | 0;
|
|
HEAP32[(($6 + 348 | 0) + ($453 << 2 | 0) | 0) >> 2] = $450;
|
|
}
|
|
HEAP32[($5 + 28 | 0) >> 2] = (HEAP32[($5 + 28 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$19;
|
|
};
|
|
}
|
|
label$22 : {
|
|
if (!((HEAP32[($5 + 60 | 0) >> 2] | 0 | 0) == (15 | 0) & 1 | 0)) {
|
|
break label$22
|
|
}
|
|
HEAP32[($6 + 376 | 0) >> 2] = 1;
|
|
}
|
|
break label$16;
|
|
}
|
|
gjkepa2_impl__GJK__removevertice_28gjkepa2_impl__GJK__sSimplex__29($6 | 0, ($6 + 148 | 0) + Math_imul(HEAP32[($6 + 368 | 0) >> 2] | 0, 36) | 0 | 0);
|
|
break label$4;
|
|
}
|
|
$478 = (HEAP32[($5 + 272 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($5 + 272 | 0) >> 2] = $478;
|
|
label$23 : {
|
|
label$24 : {
|
|
if (!($478 >>> 0 < 128 >>> 0 & 1 | 0)) {
|
|
break label$24
|
|
}
|
|
$486 = HEAP32[($6 + 376 | 0) >> 2] | 0;
|
|
break label$23;
|
|
}
|
|
$486 = 2;
|
|
}
|
|
HEAP32[($6 + 376 | 0) >> 2] = $486;
|
|
if (!(HEAP32[($6 + 376 | 0) >> 2] | 0)) {
|
|
continue label$5
|
|
}
|
|
break label$5;
|
|
};
|
|
}
|
|
HEAP32[($6 + 372 | 0) >> 2] = ($6 + Math_imul(HEAP32[($6 + 368 | 0) >> 2] | 0, 36) | 0) + 148 | 0;
|
|
$496 = HEAP32[($6 + 376 | 0) >> 2] | 0;
|
|
label$25 : {
|
|
label$26 : {
|
|
switch ($496 | 0) {
|
|
case 0:
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__length_28_29_20const($6 + 128 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 144 | 0) >> 2] = wasm2js_f32$0;
|
|
break label$25;
|
|
case 1:
|
|
HEAPF32[($6 + 144 | 0) >> 2] = Math_fround(0 | 0);
|
|
break label$25;
|
|
default:
|
|
break label$26;
|
|
};
|
|
}
|
|
}
|
|
$503 = HEAP32[($6 + 376 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 288 | 0;
|
|
return $503 | 0;
|
|
}
|
|
|
|
function gjkepa2_impl__MinkowskiDiff__Support_28btVector3_20const__2c_20unsigned_20int_29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($6 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
gjkepa2_impl__MinkowskiDiff__Support1_28btVector3_20const__29_20const($0 | 0, $7 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0);
|
|
break label$1;
|
|
}
|
|
gjkepa2_impl__MinkowskiDiff__Support0_28btVector3_20const__29_20const($0 | 0, $7 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0);
|
|
}
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function gjkepa2_impl__MinkowskiDiff__EnableMargin_28bool_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP8[($4 + 11 | 0) >> 0] = $1;
|
|
$6 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 11 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($6 + 120 | 0) >> 2] = 1025;
|
|
HEAP32[($6 + 124 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[($6 + 120 | 0) >> 2] = 1026;
|
|
HEAP32[($6 + 124 | 0) >> 2] = 0;
|
|
}
|
|
return;
|
|
}
|
|
|
|
function gjkepa2_impl__GJK__sSV__sSV_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($4 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 16 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function gjkepa2_impl__GJK__Initialize_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, i64toi32_i32$2 = 0, $22 = 0, $24 = 0, $82 = 0, $95 = 0;
|
|
$3 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 28 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 28 | 0) >> 2] | 0;
|
|
HEAPF32[($3 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 4 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[$3 >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 12 | 0 | 0, $3 + 8 | 0 | 0, $3 + 4 | 0 | 0, $3 | 0) | 0;
|
|
$22 = $4 + 128 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 16 | 0) >> 2] | 0;
|
|
$82 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $82;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$24 = 8;
|
|
i64toi32_i32$2 = ($3 + 12 | 0) + $24 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$95 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $24 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $95;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($4 + 364 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 376 | 0) >> 2] = 2;
|
|
HEAP32[($4 + 368 | 0) >> 2] = 0;
|
|
HEAPF32[($4 + 144 | 0) >> 2] = Math_fround(0 | 0);
|
|
__stack_pointer = $3 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function gjkepa2_impl__MinkowskiDiff__operator__28gjkepa2_impl__MinkowskiDiff_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, i64toi32_i32$2 = 0, $8 = 0, $12 = 0, $16 = 0, $17 = 0, i64toi32_i32$1 = 0, $20 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$8 = 8;
|
|
btMatrix3x3__operator__28btMatrix3x3_20const__29($5 + $8 | 0 | 0, (HEAP32[($4 + 8 | 0) >> 2] | 0) + $8 | 0 | 0) | 0;
|
|
$12 = 56;
|
|
btTransform__operator__28btTransform_20const__29($5 + $12 | 0 | 0, (HEAP32[($4 + 8 | 0) >> 2] | 0) + $12 | 0 | 0) | 0;
|
|
$16 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
$17 = 124;
|
|
$20 = HEAP32[($16 + 120 | 0) >> 2] | 0;
|
|
HEAP32[($5 + $17 | 0) >> 2] = HEAP32[($16 + $17 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 120 | 0) >> 2] = $20;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function gjkepa2_impl__GJK__appendvertice_28gjkepa2_impl__GJK__sSimplex__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $21 = 0, $34 = 0, $35 = 0, $32 = 0, $33 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[(((HEAP32[($5 + 8 | 0) >> 2] | 0) + 16 | 0) + ((HEAP32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(0 | 0);
|
|
$21 = (HEAP32[($6 + 364 | 0) >> 2] | 0) + -1 | 0;
|
|
HEAP32[($6 + 364 | 0) >> 2] = $21;
|
|
HEAP32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + ((HEAP32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[(($6 + 348 | 0) + ($21 << 2 | 0) | 0) >> 2] | 0;
|
|
$32 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
$33 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
$34 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
$35 = HEAP32[($34 + 32 | 0) >> 2] | 0;
|
|
HEAP32[($34 + 32 | 0) >> 2] = $35 + 1 | 0;
|
|
gjkepa2_impl__GJK__getsupport_28btVector3_20const__2c_20gjkepa2_impl__GJK__sSV__29_20const($6 | 0, $32 | 0, HEAP32[($33 + ($35 << 2 | 0) | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function gjkepa2_impl__GJK__removevertice_28gjkepa2_impl__GJK__sSimplex__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $7 = 0, $10 = 0, $17 = 0, $6 = 0, $14 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$6 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
$7 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
$10 = (HEAP32[($7 + 32 | 0) >> 2] | 0) + -1 | 0;
|
|
HEAP32[($7 + 32 | 0) >> 2] = $10;
|
|
$14 = HEAP32[($6 + ($10 << 2 | 0) | 0) >> 2] | 0;
|
|
$17 = HEAP32[($5 + 364 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 364 | 0) >> 2] = $17 + 1 | 0;
|
|
HEAP32[(($5 + 348 | 0) + ($17 << 2 | 0) | 0) >> 2] = $14;
|
|
return;
|
|
}
|
|
|
|
function gjkepa2_impl__GJK__projectorigin_28btVector3_20const__2c_20btVector3_20const__2c_20float__2c_20unsigned_20int__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $36 = Math_fround(0), $69 = Math_fround(0), $76 = 0, $97 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 72 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 68 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 64 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 60 | 0) >> 2] = $3;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 44 | 0 | 0, HEAP32[($6 + 68 | 0) >> 2] | 0 | 0, HEAP32[($6 + 72 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($6 + 44 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 40 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 40 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$36 = Math_fround(Math_fround(-Math_fround(btDot_28btVector3_20const__2c_20btVector3_20const__29(HEAP32[($6 + 72 | 0) >> 2] | 0 | 0, $6 + 44 | 0 | 0))) / Math_fround(HEAPF32[($6 + 40 | 0) >> 2]));
|
|
break label$3;
|
|
}
|
|
$36 = Math_fround(0 | 0);
|
|
}
|
|
HEAPF32[($6 + 36 | 0) >> 2] = $36;
|
|
label$5 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 36 | 0) >> 2]) >= Math_fround(1.0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAPF32[(HEAP32[($6 + 64 | 0) >> 2] | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[((HEAP32[($6 + 64 | 0) >> 2] | 0) + 4 | 0) >> 2] = Math_fround(1.0);
|
|
HEAP32[(HEAP32[($6 + 60 | 0) >> 2] | 0) >> 2] = 2;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const(HEAP32[($6 + 68 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 76 | 0) >> 2] = wasm2js_f32$0;
|
|
break label$1;
|
|
}
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 36 | 0) >> 2]) <= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAPF32[(HEAP32[($6 + 64 | 0) >> 2] | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[((HEAP32[($6 + 64 | 0) >> 2] | 0) + 4 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP32[(HEAP32[($6 + 60 | 0) >> 2] | 0) >> 2] = 1;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const(HEAP32[($6 + 72 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 76 | 0) >> 2] = wasm2js_f32$0;
|
|
break label$1;
|
|
}
|
|
$69 = Math_fround(HEAPF32[($6 + 36 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($6 + 64 | 0) >> 2] | 0) + 4 | 0) >> 2] = $69;
|
|
HEAPF32[(HEAP32[($6 + 64 | 0) >> 2] | 0) >> 2] = Math_fround(Math_fround(1.0) - $69);
|
|
HEAP32[(HEAP32[($6 + 60 | 0) >> 2] | 0) >> 2] = 3;
|
|
$76 = HEAP32[($6 + 72 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 4 | 0 | 0, $6 + 44 | 0 | 0, $6 + 36 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 20 | 0 | 0, $76 | 0, $6 + 4 | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($6 + 20 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 76 | 0) >> 2] = wasm2js_f32$0;
|
|
break label$1;
|
|
}
|
|
HEAPF32[($6 + 76 | 0) >> 2] = Math_fround(-1.0);
|
|
}
|
|
$97 = Math_fround(HEAPF32[($6 + 76 | 0) >> 2]);
|
|
__stack_pointer = $6 + 80 | 0;
|
|
return Math_fround($97);
|
|
}
|
|
|
|
function gjkepa2_impl__GJK__projectorigin_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float__2c_20unsigned_20int__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $13 = 0, $17 = 0, $133 = 0, $142 = 0, i64toi32_i32$0 = 0, $63 = 0, $135 = 0, $226 = Math_fround(0), $251 = Math_fround(0), $265 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$7 = __stack_pointer - 256 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 248 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 244 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 240 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 236 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 232 | 0) >> 2] = $4;
|
|
HEAP32[($7 + 220 | 0) >> 2] = HEAP32[($7 + 248 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 224 | 0) >> 2] = HEAP32[($7 + 244 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 228 | 0) >> 2] = HEAP32[($7 + 240 | 0) >> 2] | 0;
|
|
$13 = $7 + 160 | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($13 | 0, HEAP32[($7 + 248 | 0) >> 2] | 0 | 0, HEAP32[($7 + 244 | 0) >> 2] | 0 | 0);
|
|
$17 = $13 + 16 | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($17 | 0, HEAP32[($7 + 244 | 0) >> 2] | 0 | 0, HEAP32[($7 + 240 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($17 + 16 | 0 | 0, HEAP32[($7 + 240 | 0) >> 2] | 0 | 0, HEAP32[($7 + 248 | 0) >> 2] | 0 | 0);
|
|
btCross_28btVector3_20const__2c_20btVector3_20const__29($7 + 144 | 0 | 0, $7 + 160 | 0 | 0, ($7 + 160 | 0) + 16 | 0 | 0);
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($7 + 144 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 140 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 140 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($7 + 136 | 0) >> 2] = Math_fround(-1.0);
|
|
i64toi32_i32$0 = 0;
|
|
HEAP32[($7 + 128 | 0) >> 2] = 0;
|
|
HEAP32[($7 + 132 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($7 + 124 | 0) >> 2] = 0;
|
|
HEAP32[($7 + 120 | 0) >> 2] = 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($7 + 120 | 0) >> 2] | 0) >>> 0 < 3 >>> 0 & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$63 = HEAP32[(($7 + 220 | 0) + ((HEAP32[($7 + 120 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
btCross_28btVector3_20const__2c_20btVector3_20const__29($7 + 104 | 0 | 0, ($7 + 160 | 0) + ((HEAP32[($7 + 120 | 0) >> 2] | 0) << 4 | 0) | 0 | 0, $7 + 144 | 0 | 0);
|
|
label$5 : {
|
|
if (!(Math_fround(btDot_28btVector3_20const__2c_20btVector3_20const__29($63 | 0, $7 + 104 | 0 | 0)) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAP32[($7 + 100 | 0) >> 2] = HEAP32[(101352 + ((HEAP32[($7 + 120 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(gjkepa2_impl__GJK__projectorigin_28btVector3_20const__2c_20btVector3_20const__2c_20float__2c_20unsigned_20int__29(HEAP32[(($7 + 220 | 0) + ((HEAP32[($7 + 120 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0, HEAP32[(($7 + 220 | 0) + ((HEAP32[($7 + 100 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0, $7 + 128 | 0 | 0, $7 + 124 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 96 | 0) >> 2] = wasm2js_f32$0;
|
|
label$6 : {
|
|
label$7 : {
|
|
if (Math_fround(HEAPF32[($7 + 136 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0) {
|
|
break label$7
|
|
}
|
|
if (!(Math_fround(HEAPF32[($7 + 96 | 0) >> 2]) < Math_fround(HEAPF32[($7 + 136 | 0) >> 2]) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
}
|
|
HEAPF32[($7 + 136 | 0) >> 2] = Math_fround(HEAPF32[($7 + 96 | 0) >> 2]);
|
|
label$8 : {
|
|
label$9 : {
|
|
if (!((HEAP32[($7 + 124 | 0) >> 2] | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
$133 = 1 << (HEAP32[($7 + 120 | 0) >> 2] | 0) | 0;
|
|
break label$8;
|
|
}
|
|
$133 = 0;
|
|
}
|
|
$135 = $133;
|
|
label$10 : {
|
|
label$11 : {
|
|
if (!((HEAP32[($7 + 124 | 0) >> 2] | 0) & 2 | 0)) {
|
|
break label$11
|
|
}
|
|
$142 = 1 << (HEAP32[($7 + 100 | 0) >> 2] | 0) | 0;
|
|
break label$10;
|
|
}
|
|
$142 = 0;
|
|
}
|
|
HEAP32[(HEAP32[($7 + 232 | 0) >> 2] | 0) >> 2] = $135 + $142 | 0;
|
|
HEAPF32[((HEAP32[($7 + 236 | 0) >> 2] | 0) + ((HEAP32[($7 + 120 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($7 + 128 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($7 + 236 | 0) >> 2] | 0) + ((HEAP32[($7 + 100 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($7 + 132 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($7 + 236 | 0) >> 2] | 0) + ((HEAP32[(101352 + ((HEAP32[($7 + 100 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(0 | 0);
|
|
}
|
|
}
|
|
HEAP32[($7 + 120 | 0) >> 2] = (HEAP32[($7 + 120 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
label$12 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 136 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btDot_28btVector3_20const__2c_20btVector3_20const__29(HEAP32[($7 + 248 | 0) >> 2] | 0 | 0, $7 + 144 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 92 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btSqrt_28float_29(Math_fround(Math_fround(HEAPF32[($7 + 140 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 88 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($7 + 68 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($7 + 92 | 0) >> 2]) / Math_fround(HEAPF32[($7 + 140 | 0) >> 2]));
|
|
operator__28btVector3_20const__2c_20float_20const__29($7 + 72 | 0 | 0, $7 + 144 | 0 | 0, $7 + 68 | 0 | 0);
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($7 + 72 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 136 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP32[(HEAP32[($7 + 232 | 0) >> 2] | 0) >> 2] = 7;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($7 + 36 | 0 | 0, HEAP32[($7 + 244 | 0) >> 2] | 0 | 0, $7 + 72 | 0 | 0);
|
|
btCross_28btVector3_20const__2c_20btVector3_20const__29($7 + 52 | 0 | 0, ($7 + 160 | 0) + 16 | 0 | 0, $7 + 36 | 0 | 0);
|
|
$226 = Math_fround(btVector3__length_28_29_20const($7 + 52 | 0 | 0));
|
|
HEAPF32[(HEAP32[($7 + 236 | 0) >> 2] | 0) >> 2] = Math_fround($226 / Math_fround(HEAPF32[($7 + 88 | 0) >> 2]));
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($7 + 4 | 0 | 0, HEAP32[($7 + 240 | 0) >> 2] | 0 | 0, $7 + 72 | 0 | 0);
|
|
btCross_28btVector3_20const__2c_20btVector3_20const__29($7 + 20 | 0 | 0, ($7 + 160 | 0) + 32 | 0 | 0, $7 + 4 | 0 | 0);
|
|
$251 = Math_fround(btVector3__length_28_29_20const($7 + 20 | 0 | 0));
|
|
HEAPF32[((HEAP32[($7 + 236 | 0) >> 2] | 0) + 4 | 0) >> 2] = Math_fround($251 / Math_fround(HEAPF32[($7 + 88 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[($7 + 236 | 0) >> 2] | 0) + 8 | 0) >> 2] = Math_fround(Math_fround(1.0) - Math_fround(Math_fround(HEAPF32[(HEAP32[($7 + 236 | 0) >> 2] | 0) >> 2]) + Math_fround(HEAPF32[((HEAP32[($7 + 236 | 0) >> 2] | 0) + 4 | 0) >> 2])));
|
|
}
|
|
HEAPF32[($7 + 252 | 0) >> 2] = Math_fround(HEAPF32[($7 + 136 | 0) >> 2]);
|
|
break label$1;
|
|
}
|
|
HEAPF32[($7 + 252 | 0) >> 2] = Math_fround(-1.0);
|
|
}
|
|
$265 = Math_fround(HEAPF32[($7 + 252 | 0) >> 2]);
|
|
__stack_pointer = $7 + 256 | 0;
|
|
return Math_fround($265);
|
|
}
|
|
|
|
function gjkepa2_impl__GJK__projectorigin_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float__2c_20unsigned_20int__29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, $15 = 0, $19 = 0, $173 = 0, $182 = 0, $40 = Math_fround(0), $41 = 0, i64toi32_i32$0 = 0, $101 = Math_fround(0), $102 = 0, $175 = 0, $236 = Math_fround(0), $243 = Math_fround(0), $250 = Math_fround(0), $267 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$1 = 0;
|
|
$8 = __stack_pointer - 208 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 200 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 196 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 192 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 188 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 184 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 180 | 0) >> 2] = $5;
|
|
HEAP32[($8 + 160 | 0) >> 2] = HEAP32[($8 + 200 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 164 | 0) >> 2] = HEAP32[($8 + 196 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 168 | 0) >> 2] = HEAP32[($8 + 192 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 172 | 0) >> 2] = HEAP32[($8 + 188 | 0) >> 2] | 0;
|
|
$15 = $8 + 112 | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($15 | 0, HEAP32[($8 + 200 | 0) >> 2] | 0 | 0, HEAP32[($8 + 188 | 0) >> 2] | 0 | 0);
|
|
$19 = $15 + 16 | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($19 | 0, HEAP32[($8 + 196 | 0) >> 2] | 0 | 0, HEAP32[($8 + 188 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($19 + 16 | 0 | 0, HEAP32[($8 + 192 | 0) >> 2] | 0 | 0, HEAP32[($8 + 188 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(gjkepa2_impl__GJK__det_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($8 + 112 | 0 | 0, ($8 + 112 | 0) + 16 | 0 | 0, ($8 + 112 | 0) + 32 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 108 | 0) >> 2] = wasm2js_f32$0;
|
|
$40 = Math_fround(HEAPF32[($8 + 108 | 0) >> 2]);
|
|
$41 = HEAP32[($8 + 200 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 72 | 0 | 0, HEAP32[($8 + 196 | 0) >> 2] | 0 | 0, HEAP32[($8 + 192 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 56 | 0 | 0, HEAP32[($8 + 200 | 0) >> 2] | 0 | 0, HEAP32[($8 + 196 | 0) >> 2] | 0 | 0);
|
|
btCross_28btVector3_20const__2c_20btVector3_20const__29($8 + 88 | 0 | 0, $8 + 72 | 0 | 0, $8 + 56 | 0 | 0);
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = Math_fround($40 * Math_fround(btDot_28btVector3_20const__2c_20btVector3_20const__29($41 | 0, $8 + 88 | 0 | 0))) <= Math_fround(0 | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 107 | 0) >> 0] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($8 + 107 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if (!(Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[($8 + 108 | 0) >> 2])))) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($8 + 52 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAP32[($8 + 48 | 0) >> 2] = 0;
|
|
i64toi32_i32$0 = 0;
|
|
HEAP32[($8 + 40 | 0) >> 2] = 0;
|
|
HEAP32[($8 + 44 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($8 + 36 | 0) >> 2] = 0;
|
|
HEAP32[($8 + 32 | 0) >> 2] = 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($8 + 32 | 0) >> 2] | 0) >>> 0 < 3 >>> 0 & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($8 + 28 | 0) >> 2] = HEAP32[(101364 + ((HEAP32[($8 + 32 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
$101 = Math_fround(HEAPF32[($8 + 108 | 0) >> 2]);
|
|
$102 = HEAP32[($8 + 188 | 0) >> 2] | 0;
|
|
btCross_28btVector3_20const__2c_20btVector3_20const__29($8 + 8 | 0 | 0, ($8 + 112 | 0) + ((HEAP32[($8 + 32 | 0) >> 2] | 0) << 4 | 0) | 0 | 0, ($8 + 112 | 0) + ((HEAP32[($8 + 28 | 0) >> 2] | 0) << 4 | 0) | 0 | 0);
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround($101 * Math_fround(btDot_28btVector3_20const__2c_20btVector3_20const__29($102 | 0, $8 + 8 | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_f32$0;
|
|
label$5 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 24 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(gjkepa2_impl__GJK__projectorigin_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float__2c_20unsigned_20int__29(HEAP32[(($8 + 160 | 0) + ((HEAP32[($8 + 32 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0, HEAP32[(($8 + 160 | 0) + ((HEAP32[($8 + 28 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0, HEAP32[($8 + 188 | 0) >> 2] | 0 | 0, $8 + 40 | 0 | 0, $8 + 36 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
label$6 : {
|
|
label$7 : {
|
|
if (Math_fround(HEAPF32[($8 + 52 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0) {
|
|
break label$7
|
|
}
|
|
if (!(Math_fround(HEAPF32[($8 + 4 | 0) >> 2]) < Math_fround(HEAPF32[($8 + 52 | 0) >> 2]) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
}
|
|
HEAPF32[($8 + 52 | 0) >> 2] = Math_fround(HEAPF32[($8 + 4 | 0) >> 2]);
|
|
label$8 : {
|
|
label$9 : {
|
|
if (!((HEAP32[($8 + 36 | 0) >> 2] | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
$173 = 1 << (HEAP32[($8 + 32 | 0) >> 2] | 0) | 0;
|
|
break label$8;
|
|
}
|
|
$173 = 0;
|
|
}
|
|
$175 = $173;
|
|
label$10 : {
|
|
label$11 : {
|
|
if (!((HEAP32[($8 + 36 | 0) >> 2] | 0) & 2 | 0)) {
|
|
break label$11
|
|
}
|
|
$182 = 1 << (HEAP32[($8 + 28 | 0) >> 2] | 0) | 0;
|
|
break label$10;
|
|
}
|
|
$182 = 0;
|
|
}
|
|
HEAP32[(HEAP32[($8 + 180 | 0) >> 2] | 0) >> 2] = ($175 + $182 | 0) + ((HEAP32[($8 + 36 | 0) >> 2] | 0) & 4 | 0 ? 8 : 0) | 0;
|
|
HEAPF32[((HEAP32[($8 + 184 | 0) >> 2] | 0) + ((HEAP32[($8 + 32 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($8 + 40 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($8 + 184 | 0) >> 2] | 0) + ((HEAP32[($8 + 28 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($8 + 44 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($8 + 184 | 0) >> 2] | 0) + ((HEAP32[(101364 + ((HEAP32[($8 + 28 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[((HEAP32[($8 + 184 | 0) >> 2] | 0) + 12 | 0) >> 2] = Math_fround(HEAPF32[($8 + 48 | 0) >> 2]);
|
|
}
|
|
}
|
|
HEAP32[($8 + 32 | 0) >> 2] = (HEAP32[($8 + 32 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
label$12 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 52 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
HEAPF32[($8 + 52 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP32[(HEAP32[($8 + 180 | 0) >> 2] | 0) >> 2] = 15;
|
|
$236 = Math_fround(gjkepa2_impl__GJK__det_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29(HEAP32[($8 + 192 | 0) >> 2] | 0 | 0, HEAP32[($8 + 196 | 0) >> 2] | 0 | 0, HEAP32[($8 + 188 | 0) >> 2] | 0 | 0));
|
|
HEAPF32[(HEAP32[($8 + 184 | 0) >> 2] | 0) >> 2] = Math_fround($236 / Math_fround(HEAPF32[($8 + 108 | 0) >> 2]));
|
|
$243 = Math_fround(gjkepa2_impl__GJK__det_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29(HEAP32[($8 + 200 | 0) >> 2] | 0 | 0, HEAP32[($8 + 192 | 0) >> 2] | 0 | 0, HEAP32[($8 + 188 | 0) >> 2] | 0 | 0));
|
|
HEAPF32[((HEAP32[($8 + 184 | 0) >> 2] | 0) + 4 | 0) >> 2] = Math_fround($243 / Math_fround(HEAPF32[($8 + 108 | 0) >> 2]));
|
|
$250 = Math_fround(gjkepa2_impl__GJK__det_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29(HEAP32[($8 + 196 | 0) >> 2] | 0 | 0, HEAP32[($8 + 200 | 0) >> 2] | 0 | 0, HEAP32[($8 + 188 | 0) >> 2] | 0 | 0));
|
|
HEAPF32[((HEAP32[($8 + 184 | 0) >> 2] | 0) + 8 | 0) >> 2] = Math_fround($250 / Math_fround(HEAPF32[($8 + 108 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[($8 + 184 | 0) >> 2] | 0) + 12 | 0) >> 2] = Math_fround(Math_fround(1.0) - Math_fround(Math_fround(Math_fround(HEAPF32[(HEAP32[($8 + 184 | 0) >> 2] | 0) >> 2]) + Math_fround(HEAPF32[((HEAP32[($8 + 184 | 0) >> 2] | 0) + 4 | 0) >> 2])) + Math_fround(HEAPF32[((HEAP32[($8 + 184 | 0) >> 2] | 0) + 8 | 0) >> 2])));
|
|
}
|
|
HEAPF32[($8 + 204 | 0) >> 2] = Math_fround(HEAPF32[($8 + 52 | 0) >> 2]);
|
|
break label$1;
|
|
}
|
|
HEAPF32[($8 + 204 | 0) >> 2] = Math_fround(-1.0);
|
|
}
|
|
$267 = Math_fround(HEAPF32[($8 + 204 | 0) >> 2]);
|
|
__stack_pointer = $8 + 208 | 0;
|
|
return Math_fround($267);
|
|
}
|
|
|
|
function gjkepa2_impl__MinkowskiDiff__Support1_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $12 = 0, $13 = 0, $16 = 0, $22 = 0, $8 = 0;
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 44 | 0) >> 2] | 0;
|
|
$8 = $6 + 56 | 0;
|
|
$12 = HEAP32[($6 + 124 | 0) >> 2] | 0;
|
|
$13 = HEAP32[($6 + 120 | 0) >> 2] | 0;
|
|
$16 = (HEAP32[($6 + 4 | 0) >> 2] | 0) + ($12 >> 1 | 0) | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!($12 & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$22 = HEAP32[((HEAP32[$16 >> 2] | 0) + $13 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
$22 = $13;
|
|
}
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($5 + 8 | 0 | 0, $6 + 8 | 0 | 0, HEAP32[($5 + 40 | 0) >> 2] | 0 | 0);
|
|
FUNCTION_TABLE[$22 | 0]($5 + 24 | 0, $16, $5 + 8 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($0 | 0, $8 | 0, $5 + 24 | 0 | 0);
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function gjkepa2_impl__MinkowskiDiff__Support0_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $10 = 0, $11 = 0, $14 = 0, $20 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
$10 = HEAP32[($6 + 124 | 0) >> 2] | 0;
|
|
$11 = HEAP32[($6 + 120 | 0) >> 2] | 0;
|
|
$14 = (HEAP32[$6 >> 2] | 0) + ($10 >> 1 | 0) | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!($10 & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$20 = HEAP32[((HEAP32[$14 >> 2] | 0) + $11 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
$20 = $11;
|
|
}
|
|
FUNCTION_TABLE[$20 | 0]($0, $14, HEAP32[($5 + 8 | 0) >> 2] | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGjkEpaSolver2__Penetration_28btConvexShape_20const__2c_20btTransform_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btVector3_20const__2c_20btGjkEpaSolver2__sResults__2c_20bool_29($0, $1, $2, $3, $4, $5, $6) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
var $9 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $10 = 0, $37 = 0, $142 = 0, $144 = 0, $183 = 0, $185 = 0, $201 = 0, $203 = 0, $509 = 0, $522 = 0, $150 = 0, $583 = 0, $596 = 0, $618 = 0, $631 = 0, $224 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$9 = __stack_pointer - 19248 | 0;
|
|
__stack_pointer = $9;
|
|
HEAP32[($9 + 19240 | 0) >> 2] = $0;
|
|
HEAP32[($9 + 19236 | 0) >> 2] = $1;
|
|
HEAP32[($9 + 19232 | 0) >> 2] = $2;
|
|
HEAP32[($9 + 19228 | 0) >> 2] = $3;
|
|
HEAP32[($9 + 19224 | 0) >> 2] = $4;
|
|
HEAP32[($9 + 19220 | 0) >> 2] = $5;
|
|
$10 = 1;
|
|
HEAP8[($9 + 19219 | 0) >> 0] = $6 & $10 | 0;
|
|
gjkepa2_impl__MinkowskiDiff__MinkowskiDiff_28_29($9 + 19088 | 0 | 0) | 0;
|
|
gjkepa2_impl__Initialize_28btConvexShape_20const__2c_20btTransform_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btGjkEpaSolver2__sResults__2c_20gjkepa2_impl__MinkowskiDiff__2c_20bool_29(HEAP32[($9 + 19240 | 0) >> 2] | 0 | 0, HEAP32[($9 + 19236 | 0) >> 2] | 0 | 0, HEAP32[($9 + 19232 | 0) >> 2] | 0 | 0, HEAP32[($9 + 19228 | 0) >> 2] | 0 | 0, HEAP32[($9 + 19220 | 0) >> 2] | 0 | 0, $9 + 19088 | 0 | 0, (HEAPU8[($9 + 19219 | 0) >> 0] | 0) & $10 | 0 | 0);
|
|
gjkepa2_impl__GJK__GJK_28_29($9 + 18708 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__29($9 + 18688 | 0 | 0, HEAP32[($9 + 19224 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $9, wasm2js_i32$1 = gjkepa2_impl__GJK__Evaluate_28gjkepa2_impl__MinkowskiDiff_20const__2c_20btVector3_20const__29($9 + 18708 | 0 | 0, $9 + 19088 | 0 | 0, $9 + 18688 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 18704 | 0) >> 2] = wasm2js_i32$1;
|
|
$37 = (HEAP32[($9 + 18704 | 0) >> 2] | 0) + -1 | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : {
|
|
switch ($37 | 0) {
|
|
case 0:
|
|
gjkepa2_impl__EPA__EPA_28_29($9 + 176 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__29($9 + 156 | 0 | 0, HEAP32[($9 + 19224 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $9, wasm2js_i32$1 = gjkepa2_impl__EPA__Evaluate_28gjkepa2_impl__GJK__2c_20btVector3_20const__29($9 + 176 | 0 | 0, $9 + 18708 | 0 | 0, $9 + 156 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 172 | 0) >> 2] = wasm2js_i32$1;
|
|
label$6 : {
|
|
if (!((HEAP32[($9 + 172 | 0) >> 2] | 0 | 0) != (9 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAPF32[($9 + 136 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($9 + 132 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($9 + 128 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($9 + 140 | 0 | 0, $9 + 136 | 0 | 0, $9 + 132 | 0 | 0, $9 + 128 | 0 | 0) | 0;
|
|
HEAP32[($9 + 124 | 0) >> 2] = 0;
|
|
label$7 : {
|
|
label$8 : while (1) {
|
|
if (!((HEAP32[($9 + 124 | 0) >> 2] | 0) >>> 0 < (HEAP32[($9 + 212 | 0) >> 2] | 0) >>> 0 & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
gjkepa2_impl__MinkowskiDiff__Support_28btVector3_20const__2c_20unsigned_20int_29_20const($9 + 92 | 0 | 0, $9 + 19088 | 0 | 0, HEAP32[((($9 + 176 | 0) + 4 | 0) + ((HEAP32[($9 + 124 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0, 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($9 + 108 | 0 | 0, $9 + 92 | 0 | 0, ((($9 + 176 | 0) + 4 | 0) + 16 | 0) + ((HEAP32[($9 + 124 | 0) >> 2] | 0) << 2 | 0) | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($9 + 140 | 0 | 0, $9 + 108 | 0 | 0) | 0;
|
|
HEAP32[($9 + 124 | 0) >> 2] = (HEAP32[($9 + 124 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$8;
|
|
};
|
|
}
|
|
HEAP32[(HEAP32[($9 + 19220 | 0) >> 2] | 0) >> 2] = 1;
|
|
btTransform__operator__28btVector3_20const__29_20const($9 + 76 | 0 | 0, HEAP32[($9 + 19236 | 0) >> 2] | 0 | 0, $9 + 140 | 0 | 0);
|
|
$142 = (HEAP32[($9 + 19220 | 0) >> 2] | 0) + 4 | 0;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$0 = HEAP32[($9 + 76 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 80 | 0) >> 2] | 0;
|
|
$509 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $142;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $509;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$144 = 8;
|
|
i64toi32_i32$2 = ($9 + 76 | 0) + $144 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$522 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $142 + $144 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $522;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$150 = HEAP32[($9 + 19236 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($9 + 28 | 0 | 0, ($9 + 176 | 0) + 40 | 0 | 0, ($9 + 176 | 0) + 56 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($9 + 44 | 0 | 0, $9 + 140 | 0 | 0, $9 + 28 | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($9 + 60 | 0 | 0, $150 | 0, $9 + 44 | 0 | 0);
|
|
$183 = ((HEAP32[($9 + 19220 | 0) >> 2] | 0) + 4 | 0) + 16 | 0;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$0 = HEAP32[($9 + 60 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 64 | 0) >> 2] | 0;
|
|
$583 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $183;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $583;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$185 = 8;
|
|
i64toi32_i32$2 = ($9 + 60 | 0) + $185 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$596 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $183 + $185 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $596;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__29($9 + 12 | 0 | 0, ($9 + 176 | 0) + 40 | 0 | 0);
|
|
$201 = (HEAP32[($9 + 19220 | 0) >> 2] | 0) + 36 | 0;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$0 = HEAP32[($9 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($9 + 16 | 0) >> 2] | 0;
|
|
$618 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $201;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $618;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$203 = 8;
|
|
i64toi32_i32$2 = ($9 + 12 | 0) + $203 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$631 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $201 + $203 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $631;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[((HEAP32[($9 + 19220 | 0) >> 2] | 0) + 52 | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($9 + 232 | 0) >> 2]));
|
|
HEAP8[($9 + 19247 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[(HEAP32[($9 + 19220 | 0) >> 2] | 0) >> 2] = 3;
|
|
break label$2;
|
|
case 1:
|
|
HEAP32[(HEAP32[($9 + 19220 | 0) >> 2] | 0) >> 2] = 2;
|
|
break label$2;
|
|
default:
|
|
break label$3;
|
|
};
|
|
}
|
|
}
|
|
HEAP8[($9 + 19247 | 0) >> 0] = 0 & 1 | 0;
|
|
}
|
|
$224 = (HEAPU8[($9 + 19247 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $9 + 19248 | 0;
|
|
return $224 | 0;
|
|
}
|
|
|
|
function gjkepa2_impl__EPA__EPA_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0, $8 = 0, $11 = 0, $12 = 0, $14 = 0, $21 = 0, $24 = 0, $25 = 0, $27 = 0, $10 = 0, $23 = 0, $37 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
btVector3__btVector3_28_29($4 + 40 | 0 | 0) | 0;
|
|
$8 = $4 + 60 | 0;
|
|
$10 = $8 + 4096 | 0;
|
|
$11 = $8;
|
|
label$1 : while (1) {
|
|
$12 = $11;
|
|
gjkepa2_impl__GJK__sSV__sSV_28_29($12 | 0) | 0;
|
|
$14 = $12 + 32 | 0;
|
|
$11 = $14;
|
|
if (!(($14 | 0) == ($10 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
$21 = $4 + 4156 | 0;
|
|
$23 = $21 + 14336 | 0;
|
|
$24 = $21;
|
|
label$2 : while (1) {
|
|
$25 = $24;
|
|
gjkepa2_impl__EPA__sFace__sFace_28_29($25 | 0) | 0;
|
|
$27 = $25 + 56 | 0;
|
|
$24 = $27;
|
|
if (!(($27 | 0) == ($23 | 0) & 1 | 0)) {
|
|
continue label$2
|
|
}
|
|
break label$2;
|
|
};
|
|
gjkepa2_impl__EPA__sList__sList_28_29($4 + 18496 | 0 | 0) | 0;
|
|
gjkepa2_impl__EPA__sList__sList_28_29($4 + 18504 | 0 | 0) | 0;
|
|
gjkepa2_impl__EPA__Initialize_28_29($4 | 0);
|
|
$37 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $37 | 0;
|
|
}
|
|
|
|
function gjkepa2_impl__EPA__Evaluate_28gjkepa2_impl__GJK__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $6 = 0, $145 = 0, $327 = 0, $146 = 0, $152 = 0, $158 = 0, $164 = 0, $170 = 0, $176 = 0, $187 = 0, $228 = 0, $237 = 0, $264 = 0, $328 = 0, $334 = 0, $340 = 0, $346 = 0, $352 = 0, $358 = 0, $386 = 0, $388 = 0, $511 = 0, $513 = 0, $537 = 0, $539 = 0, $563 = 0, $565 = 0, $892 = 0, $905 = 0, $918 = 0, $931 = 0, $944 = 0, $957 = 0, $961 = 0, $292 = 0, $1271 = 0, $1284 = 0, $1297 = 0, $1310 = 0, $1323 = 0, $1336 = 0, $1340 = 0, $1382 = 0, $1392 = 0, $1637 = 0, $1650 = 0, $1690 = 0, $1703 = 0, $1741 = 0, $1754 = 0, $578 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 432 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 424 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 420 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 416 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 424 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 412 | 0) >> 2] = HEAP32[((HEAP32[($5 + 420 | 0) >> 2] | 0) + 372 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 412 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) >>> 0 > 1 >>> 0 & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if (!((gjkepa2_impl__GJK__EncloseOrigin_28_29(HEAP32[($5 + 420 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($6 + 18496 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 408 | 0) >> 2] = HEAP32[($6 + 18496 | 0) >> 2] | 0;
|
|
gjkepa2_impl__EPA__remove_28gjkepa2_impl__EPA__sList__2c_20gjkepa2_impl__EPA__sFace__29($6 + 18496 | 0 | 0, HEAP32[($5 + 408 | 0) >> 2] | 0 | 0);
|
|
gjkepa2_impl__EPA__append_28gjkepa2_impl__EPA__sList__2c_20gjkepa2_impl__EPA__sFace__29($6 + 18504 | 0 | 0, HEAP32[($5 + 408 | 0) >> 2] | 0 | 0);
|
|
continue label$4;
|
|
};
|
|
}
|
|
HEAP32[$6 >> 2] = 0;
|
|
HEAP32[($6 + 18492 | 0) >> 2] = 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 392 | 0 | 0, (HEAP32[(HEAP32[($5 + 412 | 0) >> 2] | 0) >> 2] | 0) + 16 | 0 | 0, (HEAP32[((HEAP32[($5 + 412 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 376 | 0 | 0, (HEAP32[((HEAP32[($5 + 412 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 16 | 0 | 0, (HEAP32[((HEAP32[($5 + 412 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 360 | 0 | 0, (HEAP32[((HEAP32[($5 + 412 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 16 | 0 | 0, (HEAP32[((HEAP32[($5 + 412 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
label$5 : {
|
|
if (!(Math_fround(gjkepa2_impl__GJK__det_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($5 + 392 | 0 | 0, $5 + 376 | 0 | 0, $5 + 360 | 0 | 0)) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
void_20btSwap_gjkepa2_impl__GJK__sSV___28gjkepa2_impl__GJK__sSV___2c_20gjkepa2_impl__GJK__sSV___29(HEAP32[($5 + 412 | 0) >> 2] | 0 | 0, (HEAP32[($5 + 412 | 0) >> 2] | 0) + 4 | 0 | 0);
|
|
void_20btSwap_float__28float__2c_20float__29((HEAP32[($5 + 412 | 0) >> 2] | 0) + 16 | 0 | 0, ((HEAP32[($5 + 412 | 0) >> 2] | 0) + 16 | 0) + 4 | 0 | 0);
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = gjkepa2_impl__EPA__newface_28gjkepa2_impl__GJK__sSV__2c_20gjkepa2_impl__GJK__sSV__2c_20gjkepa2_impl__GJK__sSV__2c_20bool_29($6 | 0, HEAP32[(HEAP32[($5 + 412 | 0) >> 2] | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5 + 412 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5 + 412 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0, 1 & 1 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 336 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = gjkepa2_impl__EPA__newface_28gjkepa2_impl__GJK__sSV__2c_20gjkepa2_impl__GJK__sSV__2c_20gjkepa2_impl__GJK__sSV__2c_20bool_29($6 | 0, HEAP32[((HEAP32[($5 + 412 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0, HEAP32[(HEAP32[($5 + 412 | 0) >> 2] | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5 + 412 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0, 1 & 1 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 340 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = gjkepa2_impl__EPA__newface_28gjkepa2_impl__GJK__sSV__2c_20gjkepa2_impl__GJK__sSV__2c_20gjkepa2_impl__GJK__sSV__2c_20bool_29($6 | 0, HEAP32[((HEAP32[($5 + 412 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5 + 412 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5 + 412 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0, 1 & 1 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 344 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = gjkepa2_impl__EPA__newface_28gjkepa2_impl__GJK__sSV__2c_20gjkepa2_impl__GJK__sSV__2c_20gjkepa2_impl__GJK__sSV__2c_20bool_29($6 | 0, HEAP32[(HEAP32[($5 + 412 | 0) >> 2] | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5 + 412 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($5 + 412 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0 | 0, 1 & 1 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 348 | 0) >> 2] = wasm2js_i32$1;
|
|
label$6 : {
|
|
if (!((HEAP32[($6 + 18500 | 0) >> 2] | 0 | 0) == (4 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = gjkepa2_impl__EPA__findbest_28_29($6 | 0) | 0), HEAP32[(wasm2js_i32$0 + 332 | 0) >> 2] = wasm2js_i32$1;
|
|
$145 = HEAP32[($5 + 332 | 0) >> 2] | 0;
|
|
$146 = 48;
|
|
i64toi32_i32$2 = $145 + $146 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$892 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 272 | 0) + $146 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $892;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$152 = 40;
|
|
i64toi32_i32$2 = $145 + $152 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$905 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($5 + 272 | 0) + $152 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $905;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$158 = 32;
|
|
i64toi32_i32$2 = $145 + $158 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$918 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 272 | 0) + $158 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $918;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$164 = 24;
|
|
i64toi32_i32$2 = $145 + $164 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$931 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($5 + 272 | 0) + $164 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $931;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$170 = 16;
|
|
i64toi32_i32$2 = $145 + $170 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$944 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 272 | 0) + $170 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $944;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$176 = 8;
|
|
i64toi32_i32$2 = $145 + $176 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$957 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($5 + 272 | 0) + $176 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $957;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $145;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$961 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $5;
|
|
HEAP32[($5 + 272 | 0) >> 2] = $961;
|
|
HEAP32[($5 + 276 | 0) >> 2] = i64toi32_i32$1;
|
|
HEAP32[($5 + 268 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 264 | 0) >> 2] = 0;
|
|
$187 = 0;
|
|
gjkepa2_impl__EPA__bind_28gjkepa2_impl__EPA__sFace__2c_20unsigned_20int_2c_20gjkepa2_impl__EPA__sFace__2c_20unsigned_20int_29(HEAP32[($5 + 336 | 0) >> 2] | 0 | 0, $187 | 0, HEAP32[($5 + 340 | 0) >> 2] | 0 | 0, $187 | 0);
|
|
gjkepa2_impl__EPA__bind_28gjkepa2_impl__EPA__sFace__2c_20unsigned_20int_2c_20gjkepa2_impl__EPA__sFace__2c_20unsigned_20int_29(HEAP32[($5 + 336 | 0) >> 2] | 0 | 0, 1 | 0, HEAP32[($5 + 344 | 0) >> 2] | 0 | 0, 0 | 0);
|
|
gjkepa2_impl__EPA__bind_28gjkepa2_impl__EPA__sFace__2c_20unsigned_20int_2c_20gjkepa2_impl__EPA__sFace__2c_20unsigned_20int_29(HEAP32[($5 + 336 | 0) >> 2] | 0 | 0, 2 | 0, HEAP32[($5 + 348 | 0) >> 2] | 0 | 0, 0 | 0);
|
|
gjkepa2_impl__EPA__bind_28gjkepa2_impl__EPA__sFace__2c_20unsigned_20int_2c_20gjkepa2_impl__EPA__sFace__2c_20unsigned_20int_29(HEAP32[($5 + 340 | 0) >> 2] | 0 | 0, 1 | 0, HEAP32[($5 + 348 | 0) >> 2] | 0 | 0, 2 | 0);
|
|
gjkepa2_impl__EPA__bind_28gjkepa2_impl__EPA__sFace__2c_20unsigned_20int_2c_20gjkepa2_impl__EPA__sFace__2c_20unsigned_20int_29(HEAP32[($5 + 340 | 0) >> 2] | 0 | 0, 2 | 0, HEAP32[($5 + 344 | 0) >> 2] | 0 | 0, 1 | 0);
|
|
gjkepa2_impl__EPA__bind_28gjkepa2_impl__EPA__sFace__2c_20unsigned_20int_2c_20gjkepa2_impl__EPA__sFace__2c_20unsigned_20int_29(HEAP32[($5 + 344 | 0) >> 2] | 0 | 0, 2 | 0, HEAP32[($5 + 348 | 0) >> 2] | 0 | 0, 1 | 0);
|
|
HEAP32[$6 >> 2] = 0;
|
|
label$7 : {
|
|
label$8 : while (1) {
|
|
if (!((HEAP32[($5 + 264 | 0) >> 2] | 0) >>> 0 < 255 >>> 0 & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
label$9 : {
|
|
label$10 : {
|
|
if (!((HEAP32[($6 + 18492 | 0) >> 2] | 0) >>> 0 < 128 >>> 0 & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
gjkepa2_impl__EPA__sHorizon__sHorizon_28_29($5 + 252 | 0 | 0) | 0;
|
|
$228 = HEAP32[($6 + 18492 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 18492 | 0) >> 2] = $228 + 1 | 0;
|
|
HEAP32[($5 + 248 | 0) >> 2] = ($6 + 60 | 0) + ($228 << 5 | 0) | 0;
|
|
HEAP8[($5 + 247 | 0) >> 0] = 1;
|
|
$237 = (HEAP32[($5 + 268 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($5 + 268 | 0) >> 2] = $237;
|
|
HEAP8[((HEAP32[($5 + 332 | 0) >> 2] | 0) + 55 | 0) >> 0] = $237;
|
|
gjkepa2_impl__GJK__getsupport_28btVector3_20const__2c_20gjkepa2_impl__GJK__sSV__29_20const(HEAP32[($5 + 420 | 0) >> 2] | 0 | 0, HEAP32[($5 + 332 | 0) >> 2] | 0 | 0, HEAP32[($5 + 248 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(btDot_28btVector3_20const__2c_20btVector3_20const__29(HEAP32[($5 + 332 | 0) >> 2] | 0 | 0, (HEAP32[($5 + 248 | 0) >> 2] | 0) + 16 | 0 | 0)) - Math_fround(HEAPF32[((HEAP32[($5 + 332 | 0) >> 2] | 0) + 16 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 240 | 0) >> 2] = wasm2js_f32$0;
|
|
label$11 : {
|
|
label$12 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 240 | 0) >> 2]) > Math_fround(9.999999747378752e-05) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
HEAP32[($5 + 236 | 0) >> 2] = 0;
|
|
label$13 : while (1) {
|
|
$264 = 0;
|
|
label$14 : {
|
|
if (!((HEAP32[($5 + 236 | 0) >> 2] | 0) >>> 0 < 3 >>> 0 & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
$264 = HEAPU8[($5 + 247 | 0) >> 0] | 0;
|
|
}
|
|
label$15 : {
|
|
if (!($264 & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
$292 = (gjkepa2_impl__EPA__expand_28unsigned_20int_2c_20gjkepa2_impl__GJK__sSV__2c_20gjkepa2_impl__EPA__sFace__2c_20unsigned_20int_2c_20gjkepa2_impl__EPA__sHorizon__29($6 | 0, HEAP32[($5 + 268 | 0) >> 2] | 0 | 0, HEAP32[($5 + 248 | 0) >> 2] | 0 | 0, HEAP32[(((HEAP32[($5 + 332 | 0) >> 2] | 0) + 32 | 0) + ((HEAP32[($5 + 236 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0, (HEAPU8[(((HEAP32[($5 + 332 | 0) >> 2] | 0) + 52 | 0) + (HEAP32[($5 + 236 | 0) >> 2] | 0) | 0) >> 0] | 0) & 255 | 0 | 0, $5 + 252 | 0 | 0) | 0) & 1 | 0;
|
|
HEAP8[($5 + 247 | 0) >> 0] = (((HEAPU8[($5 + 247 | 0) >> 0] | 0) & 1 | 0) & $292 | 0 | 0) != (0 | 0) & 1 | 0;
|
|
HEAP32[($5 + 236 | 0) >> 2] = (HEAP32[($5 + 236 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$13;
|
|
}
|
|
break label$13;
|
|
};
|
|
label$16 : {
|
|
label$17 : {
|
|
if (!((HEAPU8[($5 + 247 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
if (!((HEAP32[($5 + 260 | 0) >> 2] | 0) >>> 0 >= 3 >>> 0 & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
gjkepa2_impl__EPA__bind_28gjkepa2_impl__EPA__sFace__2c_20unsigned_20int_2c_20gjkepa2_impl__EPA__sFace__2c_20unsigned_20int_29(HEAP32[($5 + 252 | 0) >> 2] | 0 | 0, 1 | 0, HEAP32[($5 + 256 | 0) >> 2] | 0 | 0, 2 | 0);
|
|
gjkepa2_impl__EPA__remove_28gjkepa2_impl__EPA__sList__2c_20gjkepa2_impl__EPA__sFace__29($6 + 18496 | 0 | 0, HEAP32[($5 + 332 | 0) >> 2] | 0 | 0);
|
|
gjkepa2_impl__EPA__append_28gjkepa2_impl__EPA__sList__2c_20gjkepa2_impl__EPA__sFace__29($6 + 18504 | 0 | 0, HEAP32[($5 + 332 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = gjkepa2_impl__EPA__findbest_28_29($6 | 0) | 0), HEAP32[(wasm2js_i32$0 + 332 | 0) >> 2] = wasm2js_i32$1;
|
|
$327 = HEAP32[($5 + 332 | 0) >> 2] | 0;
|
|
$328 = 48;
|
|
i64toi32_i32$2 = $327 + $328 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1271 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($5 + 272 | 0) + $328 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1271;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$334 = 40;
|
|
i64toi32_i32$2 = $327 + $334 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1284 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 272 | 0) + $334 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1284;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$340 = 32;
|
|
i64toi32_i32$2 = $327 + $340 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1297 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($5 + 272 | 0) + $340 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1297;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$346 = 24;
|
|
i64toi32_i32$2 = $327 + $346 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1310 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 272 | 0) + $346 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1310;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$352 = 16;
|
|
i64toi32_i32$2 = $327 + $352 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1323 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = ($5 + 272 | 0) + $352 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1323;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$358 = 8;
|
|
i64toi32_i32$2 = $327 + $358 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1336 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 272 | 0) + $358 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1336;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $327;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1340 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 272 | 0) >> 2] = $1340;
|
|
HEAP32[($5 + 276 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$16;
|
|
}
|
|
HEAP32[$6 >> 2] = 4;
|
|
break label$7;
|
|
}
|
|
break label$11;
|
|
}
|
|
HEAP32[$6 >> 2] = 7;
|
|
break label$7;
|
|
}
|
|
break label$9;
|
|
}
|
|
HEAP32[$6 >> 2] = 6;
|
|
break label$7;
|
|
}
|
|
HEAP32[($5 + 264 | 0) >> 2] = (HEAP32[($5 + 264 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$8;
|
|
};
|
|
}
|
|
operator__28btVector3_20const__2c_20float_20const__29($5 + 220 | 0 | 0, $5 + 272 | 0 | 0, ($5 + 272 | 0) + 16 | 0 | 0);
|
|
$386 = $6 + 40 | 0;
|
|
i64toi32_i32$2 = $5 + 272 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1382 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $386;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1382;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$388 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $388 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1392 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $386 + $388 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1392;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($6 + 56 | 0) >> 2] = Math_fround(HEAPF32[($5 + 288 | 0) >> 2]);
|
|
HEAP32[($6 + 36 | 0) >> 2] = 3;
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 292 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = HEAP32[($5 + 296 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($5 + 300 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 188 | 0 | 0, (HEAP32[($5 + 296 | 0) >> 2] | 0) + 16 | 0 | 0, $5 + 220 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 172 | 0 | 0, (HEAP32[($5 + 300 | 0) >> 2] | 0) + 16 | 0 | 0, $5 + 220 | 0 | 0);
|
|
btCross_28btVector3_20const__2c_20btVector3_20const__29($5 + 204 | 0 | 0, $5 + 188 | 0 | 0, $5 + 172 | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__length_28_29_20const($5 + 204 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 140 | 0 | 0, (HEAP32[($5 + 300 | 0) >> 2] | 0) + 16 | 0 | 0, $5 + 220 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 124 | 0 | 0, (HEAP32[($5 + 292 | 0) >> 2] | 0) + 16 | 0 | 0, $5 + 220 | 0 | 0);
|
|
btCross_28btVector3_20const__2c_20btVector3_20const__29($5 + 156 | 0 | 0, $5 + 140 | 0 | 0, $5 + 124 | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__length_28_29_20const($5 + 156 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 92 | 0 | 0, (HEAP32[($5 + 292 | 0) >> 2] | 0) + 16 | 0 | 0, $5 + 220 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 76 | 0 | 0, (HEAP32[($5 + 296 | 0) >> 2] | 0) + 16 | 0 | 0, $5 + 220 | 0 | 0);
|
|
btCross_28btVector3_20const__2c_20btVector3_20const__29($5 + 108 | 0 | 0, $5 + 92 | 0 | 0, $5 + 76 | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__length_28_29_20const($5 + 108 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($5 + 72 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($6 + 20 | 0) >> 2]) + Math_fround(HEAPF32[($6 + 24 | 0) >> 2])) + Math_fround(HEAPF32[($6 + 28 | 0) >> 2]));
|
|
HEAPF32[($6 + 20 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($6 + 20 | 0) >> 2]) / Math_fround(HEAPF32[($5 + 72 | 0) >> 2]));
|
|
HEAPF32[($6 + 24 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($6 + 24 | 0) >> 2]) / Math_fround(HEAPF32[($5 + 72 | 0) >> 2]));
|
|
HEAPF32[($6 + 28 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($6 + 28 | 0) >> 2]) / Math_fround(HEAPF32[($5 + 72 | 0) >> 2]));
|
|
HEAP32[($5 + 428 | 0) >> 2] = HEAP32[$6 >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
}
|
|
HEAP32[$6 >> 2] = 8;
|
|
operator__28btVector3_20const__29($5 + 56 | 0 | 0, HEAP32[($5 + 416 | 0) >> 2] | 0 | 0);
|
|
$511 = $6 + 40 | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 56 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
$1637 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $511;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1637;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$513 = 8;
|
|
i64toi32_i32$2 = ($5 + 56 | 0) + $513 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1650 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $511 + $513 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1650;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__length_28_29_20const($6 + 40 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 52 | 0) >> 2] = wasm2js_f32$0;
|
|
label$18 : {
|
|
label$19 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 52 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
operator__28btVector3_20const__2c_20float_20const__29_1($5 + 36 | 0 | 0, $6 + 40 | 0 | 0, $5 + 52 | 0 | 0);
|
|
$537 = $6 + 40 | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 40 | 0) >> 2] | 0;
|
|
$1690 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $537;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1690;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$539 = 8;
|
|
i64toi32_i32$2 = ($5 + 36 | 0) + $539 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1703 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $537 + $539 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1703;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$18;
|
|
}
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 20 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0, $5 + 8 | 0 | 0) | 0;
|
|
$563 = $6 + 40 | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
$1741 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $563;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1741;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$565 = 8;
|
|
i64toi32_i32$2 = ($5 + 20 | 0) + $565 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1754 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $563 + $565 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1754;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
HEAPF32[($6 + 56 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP32[($6 + 36 | 0) >> 2] = 1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[(HEAP32[($5 + 412 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAPF32[($6 + 20 | 0) >> 2] = Math_fround(1.0);
|
|
HEAP32[($5 + 428 | 0) >> 2] = HEAP32[$6 >> 2] | 0;
|
|
}
|
|
$578 = HEAP32[($5 + 428 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 432 | 0;
|
|
return $578 | 0;
|
|
}
|
|
|
|
function gjkepa2_impl__EPA__sFace__sFace_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function gjkepa2_impl__EPA__sList__sList_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function gjkepa2_impl__EPA__Initialize_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $25 = 0, $27 = 0, $111 = 0, $124 = 0;
|
|
$3 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 44 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 44 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 9;
|
|
HEAPF32[($3 + 24 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 28 | 0 | 0, $3 + 24 | 0 | 0, $3 + 20 | 0 | 0, $3 + 16 | 0 | 0) | 0;
|
|
$25 = $4 + 40 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 28 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 32 | 0) >> 2] | 0;
|
|
$111 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $25;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $111;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$27 = 8;
|
|
i64toi32_i32$2 = ($3 + 28 | 0) + $27 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$124 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $25 + $27 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $124;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($4 + 56 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP32[($4 + 18492 | 0) >> 2] = 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($3 + 12 | 0) >> 2] | 0) >>> 0 < 256 >>> 0 & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
gjkepa2_impl__EPA__append_28gjkepa2_impl__EPA__sList__2c_20gjkepa2_impl__EPA__sFace__29($4 + 18504 | 0 | 0, ($4 + 4156 | 0) + Math_imul((256 - (HEAP32[($3 + 12 | 0) >> 2] | 0) | 0) - 1 | 0, 56) | 0 | 0);
|
|
HEAP32[($3 + 12 | 0) >> 2] = (HEAP32[($3 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $3 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function gjkepa2_impl__GJK__EncloseOrigin_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $8 = 0, $56 = 0, $151 = 0, $222 = 0, $296 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$3 = __stack_pointer - 256 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 248 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 248 | 0) >> 2] | 0;
|
|
$8 = (HEAP32[((HEAP32[($4 + 372 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) + -1 | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : {
|
|
switch ($8 | 0) {
|
|
case 0:
|
|
HEAP32[($3 + 244 | 0) >> 2] = 0;
|
|
label$7 : {
|
|
label$8 : while (1) {
|
|
if (!((HEAP32[($3 + 244 | 0) >> 2] | 0) >>> 0 < 3 >>> 0 & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAPF32[($3 + 224 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 220 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 216 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 228 | 0 | 0, $3 + 224 | 0 | 0, $3 + 220 | 0 | 0, $3 + 216 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($3 + 228 | 0 | 0) | 0) + ((HEAP32[($3 + 244 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = Math_fround(1.0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
gjkepa2_impl__GJK__appendvertice_28gjkepa2_impl__GJK__sSimplex__2c_20btVector3_20const__29($4 | 0, HEAP32[($4 + 372 | 0) >> 2] | 0 | 0, $3 + 228 | 0 | 0);
|
|
label$9 : {
|
|
if (!((gjkepa2_impl__GJK__EncloseOrigin_28_29($4 | 0) | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
HEAP8[($3 + 255 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
gjkepa2_impl__GJK__removevertice_28gjkepa2_impl__GJK__sSimplex__29($4 | 0, HEAP32[($4 + 372 | 0) >> 2] | 0 | 0);
|
|
$56 = HEAP32[($4 + 372 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__29($3 + 200 | 0 | 0, $3 + 228 | 0 | 0);
|
|
gjkepa2_impl__GJK__appendvertice_28gjkepa2_impl__GJK__sSimplex__2c_20btVector3_20const__29($4 | 0, $56 | 0, $3 + 200 | 0 | 0);
|
|
label$10 : {
|
|
if (!((gjkepa2_impl__GJK__EncloseOrigin_28_29($4 | 0) | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
HEAP8[($3 + 255 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
gjkepa2_impl__GJK__removevertice_28gjkepa2_impl__GJK__sSimplex__29($4 | 0, HEAP32[($4 + 372 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($3 + 244 | 0) >> 2] = (HEAP32[($3 + 244 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$8;
|
|
};
|
|
}
|
|
break label$2;
|
|
case 1:
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($3 + 184 | 0 | 0, (HEAP32[((HEAP32[($4 + 372 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 16 | 0 | 0, (HEAP32[(HEAP32[($4 + 372 | 0) >> 2] | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
HEAP32[($3 + 180 | 0) >> 2] = 0;
|
|
label$11 : {
|
|
label$12 : while (1) {
|
|
if (!((HEAP32[($3 + 180 | 0) >> 2] | 0) >>> 0 < 3 >>> 0 & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
HEAPF32[($3 + 160 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 156 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 152 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 164 | 0 | 0, $3 + 160 | 0 | 0, $3 + 156 | 0 | 0, $3 + 152 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($3 + 164 | 0 | 0) | 0) + ((HEAP32[($3 + 180 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = Math_fround(1.0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
btCross_28btVector3_20const__2c_20btVector3_20const__29($3 + 136 | 0 | 0, $3 + 184 | 0 | 0, $3 + 164 | 0 | 0);
|
|
label$13 : {
|
|
if (!(Math_fround(btVector3__length2_28_29_20const($3 + 136 | 0 | 0)) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
gjkepa2_impl__GJK__appendvertice_28gjkepa2_impl__GJK__sSimplex__2c_20btVector3_20const__29($4 | 0, HEAP32[($4 + 372 | 0) >> 2] | 0 | 0, $3 + 136 | 0 | 0);
|
|
label$14 : {
|
|
if (!((gjkepa2_impl__GJK__EncloseOrigin_28_29($4 | 0) | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
HEAP8[($3 + 255 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
gjkepa2_impl__GJK__removevertice_28gjkepa2_impl__GJK__sSimplex__29($4 | 0, HEAP32[($4 + 372 | 0) >> 2] | 0 | 0);
|
|
$151 = HEAP32[($4 + 372 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__29($3 + 120 | 0 | 0, $3 + 136 | 0 | 0);
|
|
gjkepa2_impl__GJK__appendvertice_28gjkepa2_impl__GJK__sSimplex__2c_20btVector3_20const__29($4 | 0, $151 | 0, $3 + 120 | 0 | 0);
|
|
label$15 : {
|
|
if (!((gjkepa2_impl__GJK__EncloseOrigin_28_29($4 | 0) | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
HEAP8[($3 + 255 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
gjkepa2_impl__GJK__removevertice_28gjkepa2_impl__GJK__sSimplex__29($4 | 0, HEAP32[($4 + 372 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($3 + 180 | 0) >> 2] = (HEAP32[($3 + 180 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$12;
|
|
};
|
|
}
|
|
break label$2;
|
|
case 2:
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($3 + 88 | 0 | 0, (HEAP32[((HEAP32[($4 + 372 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 16 | 0 | 0, (HEAP32[(HEAP32[($4 + 372 | 0) >> 2] | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($3 + 72 | 0 | 0, (HEAP32[((HEAP32[($4 + 372 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 16 | 0 | 0, (HEAP32[(HEAP32[($4 + 372 | 0) >> 2] | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
btCross_28btVector3_20const__2c_20btVector3_20const__29($3 + 104 | 0 | 0, $3 + 88 | 0 | 0, $3 + 72 | 0 | 0);
|
|
label$16 : {
|
|
if (!(Math_fround(btVector3__length2_28_29_20const($3 + 104 | 0 | 0)) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
gjkepa2_impl__GJK__appendvertice_28gjkepa2_impl__GJK__sSimplex__2c_20btVector3_20const__29($4 | 0, HEAP32[($4 + 372 | 0) >> 2] | 0 | 0, $3 + 104 | 0 | 0);
|
|
label$17 : {
|
|
if (!((gjkepa2_impl__GJK__EncloseOrigin_28_29($4 | 0) | 0) & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
HEAP8[($3 + 255 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
gjkepa2_impl__GJK__removevertice_28gjkepa2_impl__GJK__sSimplex__29($4 | 0, HEAP32[($4 + 372 | 0) >> 2] | 0 | 0);
|
|
$222 = HEAP32[($4 + 372 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__29($3 + 56 | 0 | 0, $3 + 104 | 0 | 0);
|
|
gjkepa2_impl__GJK__appendvertice_28gjkepa2_impl__GJK__sSimplex__2c_20btVector3_20const__29($4 | 0, $222 | 0, $3 + 56 | 0 | 0);
|
|
label$18 : {
|
|
if (!((gjkepa2_impl__GJK__EncloseOrigin_28_29($4 | 0) | 0) & 1 | 0)) {
|
|
break label$18
|
|
}
|
|
HEAP8[($3 + 255 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
gjkepa2_impl__GJK__removevertice_28gjkepa2_impl__GJK__sSimplex__29($4 | 0, HEAP32[($4 + 372 | 0) >> 2] | 0 | 0);
|
|
}
|
|
break label$2;
|
|
case 3:
|
|
break label$3;
|
|
default:
|
|
break label$2;
|
|
};
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($3 + 40 | 0 | 0, (HEAP32[(HEAP32[($4 + 372 | 0) >> 2] | 0) >> 2] | 0) + 16 | 0 | 0, (HEAP32[((HEAP32[($4 + 372 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($3 + 24 | 0 | 0, (HEAP32[((HEAP32[($4 + 372 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 16 | 0 | 0, (HEAP32[((HEAP32[($4 + 372 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($3 + 8 | 0 | 0, (HEAP32[((HEAP32[($4 + 372 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + 16 | 0 | 0, (HEAP32[((HEAP32[($4 + 372 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
label$19 : {
|
|
if (!(Math_fround(btFabs_28float_29(Math_fround(Math_fround(gjkepa2_impl__GJK__det_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($3 + 40 | 0 | 0, $3 + 24 | 0 | 0, $3 + 8 | 0 | 0))))) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
HEAP8[($3 + 255 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
}
|
|
HEAP8[($3 + 255 | 0) >> 0] = 0 & 1 | 0;
|
|
}
|
|
$296 = (HEAPU8[($3 + 255 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $3 + 256 | 0;
|
|
return $296 | 0;
|
|
}
|
|
|
|
function gjkepa2_impl__EPA__remove_28gjkepa2_impl__EPA__sList__2c_20gjkepa2_impl__EPA__sFace__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $40 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
if (!((HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 48 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[((HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 48 | 0) >> 2] | 0) + 44 | 0) >> 2] = HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 44 | 0) >> 2] | 0;
|
|
}
|
|
label$2 : {
|
|
if (!((HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 44 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[((HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 44 | 0) >> 2] | 0) + 48 | 0) >> 2] = HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 48 | 0) >> 2] | 0;
|
|
}
|
|
label$3 : {
|
|
if (!((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) == (HEAP32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] = HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 48 | 0) >> 2] | 0;
|
|
}
|
|
$40 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($40 + 4 | 0) >> 2] = (HEAP32[($40 + 4 | 0) >> 2] | 0) + -1 | 0;
|
|
return;
|
|
}
|
|
|
|
function gjkepa2_impl__EPA__append_28gjkepa2_impl__EPA__sList__2c_20gjkepa2_impl__EPA__sFace__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $23 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 44 | 0) >> 2] = 0;
|
|
HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 48 | 0) >> 2] = HEAP32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[((HEAP32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] | 0) + 44 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
$23 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($23 + 4 | 0) >> 2] = (HEAP32[($23 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
return;
|
|
}
|
|
|
|
function gjkepa2_impl__GJK__det_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $28 = Math_fround(0), $41 = Math_fround(0), $54 = Math_fround(0), $66 = Math_fround(0), $79 = Math_fround(0);
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$28 = Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2])) * Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2])) * Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) >> 2])));
|
|
$41 = Math_fround(Math_fround(Math_fround(-Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2]))) * Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $28);
|
|
$54 = Math_fround(Math_fround(Math_fround(-Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2]))) * Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $41);
|
|
$66 = Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2])) * Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $54);
|
|
$79 = Math_fround(Math_fround(Math_fround(-Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2]))) * Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $66);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return Math_fround($79);
|
|
}
|
|
|
|
function void_20btSwap_gjkepa2_impl__GJK__sSV___28gjkepa2_impl__GJK__sSV___2c_20gjkepa2_impl__GJK__sSV___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] = HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function gjkepa2_impl__EPA__newface_28gjkepa2_impl__GJK__sSV__2c_20gjkepa2_impl__GJK__sSV__2c_20gjkepa2_impl__GJK__sSV__2c_20bool_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $9 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $59 = 0, $61 = 0, $273 = 0, $286 = 0, $108 = Math_fround(0), $146 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$7 = __stack_pointer - 96 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 88 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 84 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 80 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 76 | 0) >> 2] = $3;
|
|
HEAP8[($7 + 75 | 0) >> 0] = $4;
|
|
$9 = HEAP32[($7 + 88 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($9 + 18504 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($7 + 68 | 0) >> 2] = HEAP32[($9 + 18504 | 0) >> 2] | 0;
|
|
gjkepa2_impl__EPA__remove_28gjkepa2_impl__EPA__sList__2c_20gjkepa2_impl__EPA__sFace__29($9 + 18504 | 0 | 0, HEAP32[($7 + 68 | 0) >> 2] | 0 | 0);
|
|
gjkepa2_impl__EPA__append_28gjkepa2_impl__EPA__sList__2c_20gjkepa2_impl__EPA__sFace__29($9 + 18496 | 0 | 0, HEAP32[($7 + 68 | 0) >> 2] | 0 | 0);
|
|
HEAP8[((HEAP32[($7 + 68 | 0) >> 2] | 0) + 55 | 0) >> 0] = 0;
|
|
HEAP32[((HEAP32[($7 + 68 | 0) >> 2] | 0) + 20 | 0) >> 2] = HEAP32[($7 + 84 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($7 + 68 | 0) >> 2] | 0) + 24 | 0) >> 2] = HEAP32[($7 + 80 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($7 + 68 | 0) >> 2] | 0) + 28 | 0) >> 2] = HEAP32[($7 + 76 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($7 + 36 | 0 | 0, (HEAP32[($7 + 80 | 0) >> 2] | 0) + 16 | 0 | 0, (HEAP32[($7 + 84 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($7 + 20 | 0 | 0, (HEAP32[($7 + 76 | 0) >> 2] | 0) + 16 | 0 | 0, (HEAP32[($7 + 84 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
btCross_28btVector3_20const__2c_20btVector3_20const__29($7 + 52 | 0 | 0, $7 + 36 | 0 | 0, $7 + 20 | 0 | 0);
|
|
$59 = HEAP32[($7 + 68 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$0 = HEAP32[($7 + 52 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($7 + 56 | 0) >> 2] | 0;
|
|
$273 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $59;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $273;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$61 = 8;
|
|
i64toi32_i32$2 = ($7 + 52 | 0) + $61 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$286 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $59 + $61 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $286;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btVector3__length_28_29_20const(HEAP32[($7 + 68 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($7 + 15 | 0) >> 0] = Math_fround(HEAPF32[($7 + 16 | 0) >> 2]) > Math_fround(9.999999747378752e-05) & 1 | 0;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAPU8[($7 + 15 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
label$5 : {
|
|
if ((gjkepa2_impl__EPA__getedgedist_28gjkepa2_impl__EPA__sFace__2c_20gjkepa2_impl__GJK__sSV__2c_20gjkepa2_impl__GJK__sSV__2c_20float__29($9 | 0, HEAP32[($7 + 68 | 0) >> 2] | 0 | 0, HEAP32[($7 + 84 | 0) >> 2] | 0 | 0, HEAP32[($7 + 80 | 0) >> 2] | 0 | 0, (HEAP32[($7 + 68 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) & 1 | 0) {
|
|
break label$5
|
|
}
|
|
if ((gjkepa2_impl__EPA__getedgedist_28gjkepa2_impl__EPA__sFace__2c_20gjkepa2_impl__GJK__sSV__2c_20gjkepa2_impl__GJK__sSV__2c_20float__29($9 | 0, HEAP32[($7 + 68 | 0) >> 2] | 0 | 0, HEAP32[($7 + 80 | 0) >> 2] | 0 | 0, HEAP32[($7 + 76 | 0) >> 2] | 0 | 0, (HEAP32[($7 + 68 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) & 1 | 0) {
|
|
break label$5
|
|
}
|
|
if ((gjkepa2_impl__EPA__getedgedist_28gjkepa2_impl__EPA__sFace__2c_20gjkepa2_impl__GJK__sSV__2c_20gjkepa2_impl__GJK__sSV__2c_20float__29($9 | 0, HEAP32[($7 + 68 | 0) >> 2] | 0 | 0, HEAP32[($7 + 76 | 0) >> 2] | 0 | 0, HEAP32[($7 + 84 | 0) >> 2] | 0 | 0, (HEAP32[($7 + 68 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) & 1 | 0) {
|
|
break label$5
|
|
}
|
|
$108 = Math_fround(btDot_28btVector3_20const__2c_20btVector3_20const__29((HEAP32[($7 + 84 | 0) >> 2] | 0) + 16 | 0 | 0, HEAP32[($7 + 68 | 0) >> 2] | 0 | 0));
|
|
HEAPF32[((HEAP32[($7 + 68 | 0) >> 2] | 0) + 16 | 0) >> 2] = Math_fround($108 / Math_fround(HEAPF32[($7 + 16 | 0) >> 2]));
|
|
}
|
|
btVector3__operator___28float_20const__29(HEAP32[($7 + 68 | 0) >> 2] | 0 | 0, $7 + 16 | 0 | 0) | 0;
|
|
label$6 : {
|
|
label$7 : {
|
|
if ((HEAPU8[($7 + 75 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$7
|
|
}
|
|
if (!(Math_fround(HEAPF32[((HEAP32[($7 + 68 | 0) >> 2] | 0) + 16 | 0) >> 2]) >= Math_fround(-9.999999747378752e-06) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
}
|
|
HEAP32[($7 + 92 | 0) >> 2] = HEAP32[($7 + 68 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[$9 >> 2] = 3;
|
|
break label$3;
|
|
}
|
|
HEAP32[$9 >> 2] = 2;
|
|
}
|
|
gjkepa2_impl__EPA__remove_28gjkepa2_impl__EPA__sList__2c_20gjkepa2_impl__EPA__sFace__29($9 + 18496 | 0 | 0, HEAP32[($7 + 68 | 0) >> 2] | 0 | 0);
|
|
gjkepa2_impl__EPA__append_28gjkepa2_impl__EPA__sList__2c_20gjkepa2_impl__EPA__sFace__29($9 + 18504 | 0 | 0, HEAP32[($7 + 68 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($7 + 92 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[$9 >> 2] = (HEAP32[($9 + 18504 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0 ? 6 : 5;
|
|
HEAP32[($7 + 92 | 0) >> 2] = 0;
|
|
}
|
|
$146 = HEAP32[($7 + 92 | 0) >> 2] | 0;
|
|
__stack_pointer = $7 + 96 | 0;
|
|
return $146 | 0;
|
|
}
|
|
|
|
function gjkepa2_impl__EPA__findbest_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 32 | 0;
|
|
HEAP32[($3 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 24 | 0) >> 2] = HEAP32[((HEAP32[($3 + 28 | 0) >> 2] | 0) + 18496 | 0) >> 2] | 0;
|
|
HEAPF32[($3 + 20 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 24 | 0) >> 2] | 0) + 16 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($3 + 24 | 0) >> 2] | 0) + 16 | 0) >> 2]));
|
|
HEAP32[($3 + 16 | 0) >> 2] = HEAP32[((HEAP32[($3 + 24 | 0) >> 2] | 0) + 48 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($3 + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[($3 + 12 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 16 | 0) >> 2] | 0) + 16 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($3 + 16 | 0) >> 2] | 0) + 16 | 0) >> 2]));
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($3 + 12 | 0) >> 2]) < Math_fround(HEAPF32[($3 + 20 | 0) >> 2]) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($3 + 24 | 0) >> 2] = HEAP32[($3 + 16 | 0) >> 2] | 0;
|
|
HEAPF32[($3 + 20 | 0) >> 2] = Math_fround(HEAPF32[($3 + 12 | 0) >> 2]);
|
|
}
|
|
HEAP32[($3 + 16 | 0) >> 2] = HEAP32[((HEAP32[($3 + 16 | 0) >> 2] | 0) + 48 | 0) >> 2] | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return HEAP32[($3 + 24 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function gjkepa2_impl__EPA__bind_28gjkepa2_impl__EPA__sFace__2c_20unsigned_20int_2c_20gjkepa2_impl__EPA__sFace__2c_20unsigned_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
HEAP8[(((HEAP32[($6 + 12 | 0) >> 2] | 0) + 52 | 0) + (HEAP32[($6 + 8 | 0) >> 2] | 0) | 0) >> 0] = HEAP32[$6 >> 2] | 0;
|
|
HEAP32[(((HEAP32[($6 + 12 | 0) >> 2] | 0) + 32 | 0) + ((HEAP32[($6 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
HEAP8[(((HEAP32[($6 + 4 | 0) >> 2] | 0) + 52 | 0) + (HEAP32[$6 >> 2] | 0) | 0) >> 0] = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
HEAP32[(((HEAP32[($6 + 4 | 0) >> 2] | 0) + 32 | 0) + ((HEAP32[$6 >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function gjkepa2_impl__EPA__sHorizon__sHorizon_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function gjkepa2_impl__GJK__getsupport_28btVector3_20const__2c_20gjkepa2_impl__GJK__sSV__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $16 = 0, $18 = 0, $28 = 0, $30 = 0, $6 = 0, $7 = 0, $73 = 0, $86 = 0, $101 = 0, $111 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 36 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 44 | 0) >> 2] | 0;
|
|
$7 = HEAP32[($5 + 40 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__length_28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29_1($5 + 20 | 0 | 0, $7 | 0, $5 + 16 | 0 | 0);
|
|
$16 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
$73 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $16;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $73;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$18 = 8;
|
|
i64toi32_i32$2 = ($5 + 20 | 0) + $18 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$86 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $16 + $18 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $86;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
gjkepa2_impl__MinkowskiDiff__Support_28btVector3_20const__29_20const($5 | 0, $6 | 0, HEAP32[($5 + 36 | 0) >> 2] | 0 | 0);
|
|
$28 = (HEAP32[($5 + 36 | 0) >> 2] | 0) + 16 | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[$5 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
$101 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $28;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $101;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$30 = 8;
|
|
i64toi32_i32$2 = $5 + $30 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$111 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $28 + $30 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $111;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function gjkepa2_impl__EPA__expand_28unsigned_20int_2c_20gjkepa2_impl__GJK__sSV__2c_20gjkepa2_impl__EPA__sFace__2c_20unsigned_20int_2c_20gjkepa2_impl__EPA__sHorizon__29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, $9 = 0, $87 = 0, $160 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$8 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 40 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 36 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 32 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 24 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 20 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 40 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(((HEAPU8[((HEAP32[($8 + 28 | 0) >> 2] | 0) + 55 | 0) >> 0] | 0) & 255 | 0 | 0) != (HEAP32[($8 + 36 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($8 + 16 | 0) >> 2] = HEAP32[(101376 + ((HEAP32[($8 + 24 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(Math_fround(btDot_28btVector3_20const__2c_20btVector3_20const__29(HEAP32[($8 + 28 | 0) >> 2] | 0 | 0, (HEAP32[($8 + 32 | 0) >> 2] | 0) + 16 | 0 | 0)) - Math_fround(HEAPF32[((HEAP32[($8 + 28 | 0) >> 2] | 0) + 16 | 0) >> 2])) < Math_fround(-9.999999747378752e-06) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = gjkepa2_impl__EPA__newface_28gjkepa2_impl__GJK__sSV__2c_20gjkepa2_impl__GJK__sSV__2c_20gjkepa2_impl__GJK__sSV__2c_20bool_29($9 | 0, HEAP32[(((HEAP32[($8 + 28 | 0) >> 2] | 0) + 20 | 0) + ((HEAP32[($8 + 16 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0, HEAP32[(((HEAP32[($8 + 28 | 0) >> 2] | 0) + 20 | 0) + ((HEAP32[($8 + 24 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0, HEAP32[($8 + 32 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
label$5 : {
|
|
if (!((HEAP32[($8 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
gjkepa2_impl__EPA__bind_28gjkepa2_impl__EPA__sFace__2c_20unsigned_20int_2c_20gjkepa2_impl__EPA__sFace__2c_20unsigned_20int_29(HEAP32[($8 + 12 | 0) >> 2] | 0 | 0, 0 | 0, HEAP32[($8 + 28 | 0) >> 2] | 0 | 0, HEAP32[($8 + 24 | 0) >> 2] | 0 | 0);
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!((HEAP32[(HEAP32[($8 + 20 | 0) >> 2] | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
gjkepa2_impl__EPA__bind_28gjkepa2_impl__EPA__sFace__2c_20unsigned_20int_2c_20gjkepa2_impl__EPA__sFace__2c_20unsigned_20int_29(HEAP32[(HEAP32[($8 + 20 | 0) >> 2] | 0) >> 2] | 0 | 0, 1 | 0, HEAP32[($8 + 12 | 0) >> 2] | 0 | 0, 2 | 0);
|
|
break label$6;
|
|
}
|
|
HEAP32[((HEAP32[($8 + 20 | 0) >> 2] | 0) + 4 | 0) >> 2] = HEAP32[($8 + 12 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[(HEAP32[($8 + 20 | 0) >> 2] | 0) >> 2] = HEAP32[($8 + 12 | 0) >> 2] | 0;
|
|
$87 = HEAP32[($8 + 20 | 0) >> 2] | 0;
|
|
HEAP32[($87 + 8 | 0) >> 2] = (HEAP32[($87 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP8[($8 + 47 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
break label$3;
|
|
}
|
|
HEAP32[($8 + 8 | 0) >> 2] = HEAP32[(101388 + ((HEAP32[($8 + 24 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP8[((HEAP32[($8 + 28 | 0) >> 2] | 0) + 55 | 0) >> 0] = HEAP32[($8 + 36 | 0) >> 2] | 0;
|
|
label$8 : {
|
|
if (!((gjkepa2_impl__EPA__expand_28unsigned_20int_2c_20gjkepa2_impl__GJK__sSV__2c_20gjkepa2_impl__EPA__sFace__2c_20unsigned_20int_2c_20gjkepa2_impl__EPA__sHorizon__29($9 | 0, HEAP32[($8 + 36 | 0) >> 2] | 0 | 0, HEAP32[($8 + 32 | 0) >> 2] | 0 | 0, HEAP32[(((HEAP32[($8 + 28 | 0) >> 2] | 0) + 32 | 0) + ((HEAP32[($8 + 16 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0, (HEAPU8[(((HEAP32[($8 + 28 | 0) >> 2] | 0) + 52 | 0) + (HEAP32[($8 + 16 | 0) >> 2] | 0) | 0) >> 0] | 0) & 255 | 0 | 0, HEAP32[($8 + 20 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
if (!((gjkepa2_impl__EPA__expand_28unsigned_20int_2c_20gjkepa2_impl__GJK__sSV__2c_20gjkepa2_impl__EPA__sFace__2c_20unsigned_20int_2c_20gjkepa2_impl__EPA__sHorizon__29($9 | 0, HEAP32[($8 + 36 | 0) >> 2] | 0 | 0, HEAP32[($8 + 32 | 0) >> 2] | 0 | 0, HEAP32[(((HEAP32[($8 + 28 | 0) >> 2] | 0) + 32 | 0) + ((HEAP32[($8 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0, (HEAPU8[(((HEAP32[($8 + 28 | 0) >> 2] | 0) + 52 | 0) + (HEAP32[($8 + 8 | 0) >> 2] | 0) | 0) >> 0] | 0) & 255 | 0 | 0, HEAP32[($8 + 20 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
gjkepa2_impl__EPA__remove_28gjkepa2_impl__EPA__sList__2c_20gjkepa2_impl__EPA__sFace__29($9 + 18496 | 0 | 0, HEAP32[($8 + 28 | 0) >> 2] | 0 | 0);
|
|
gjkepa2_impl__EPA__append_28gjkepa2_impl__EPA__sList__2c_20gjkepa2_impl__EPA__sFace__29($9 + 18504 | 0 | 0, HEAP32[($8 + 28 | 0) >> 2] | 0 | 0);
|
|
HEAP8[($8 + 47 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
}
|
|
}
|
|
HEAP8[($8 + 47 | 0) >> 0] = 0 & 1 | 0;
|
|
}
|
|
$160 = (HEAPU8[($8 + 47 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $8 + 48 | 0;
|
|
return $160 | 0;
|
|
}
|
|
|
|
function btTransform__btTransform_28btQuaternion_20const__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, $9 = 0, $12 = 0, $44 = 0, $54 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btMatrix3x3__btMatrix3x3_28btQuaternion_20const__29($6 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
$9 = $6 + 48 | 0;
|
|
i64toi32_i32$2 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$44 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $9;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $44;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$12 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $12 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$54 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $9 + $12 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $54;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $6 | 0;
|
|
}
|
|
|
|
function gjkepa2_impl__MinkowskiDiff__Support_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 60 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 56 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
gjkepa2_impl__MinkowskiDiff__Support0_28btVector3_20const__29_20const($5 + 40 | 0 | 0, $6 | 0, HEAP32[($5 + 56 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__29($5 + 8 | 0 | 0, HEAP32[($5 + 56 | 0) >> 2] | 0 | 0);
|
|
gjkepa2_impl__MinkowskiDiff__Support1_28btVector3_20const__29_20const($5 + 24 | 0 | 0, $6 | 0, $5 + 8 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($0 | 0, $5 + 40 | 0 | 0, $5 + 24 | 0 | 0);
|
|
__stack_pointer = $5 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function gjkepa2_impl__EPA__getedgedist_28gjkepa2_impl__EPA__sFace__2c_20gjkepa2_impl__GJK__sSV__2c_20gjkepa2_impl__GJK__sSV__2c_20float__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $64 = Math_fround(0), $75 = Math_fround(0), $110 = Math_fround(0), $120 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$7 = __stack_pointer - 96 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 88 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 84 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 80 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 76 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 72 | 0) >> 2] = $4;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($7 + 56 | 0 | 0, (HEAP32[($7 + 76 | 0) >> 2] | 0) + 16 | 0 | 0, (HEAP32[($7 + 80 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
btCross_28btVector3_20const__2c_20btVector3_20const__29($7 + 40 | 0 | 0, $7 + 56 | 0 | 0, HEAP32[($7 + 84 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btDot_28btVector3_20const__2c_20btVector3_20const__29((HEAP32[($7 + 80 | 0) >> 2] | 0) + 16 | 0 | 0, $7 + 40 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 36 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($7 + 56 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btDot_28btVector3_20const__2c_20btVector3_20const__29((HEAP32[($7 + 80 | 0) >> 2] | 0) + 16 | 0 | 0, $7 + 56 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btDot_28btVector3_20const__2c_20btVector3_20const__29((HEAP32[($7 + 76 | 0) >> 2] | 0) + 16 | 0 | 0, $7 + 56 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_f32$0;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 28 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$64 = Math_fround(btVector3__length_28_29_20const((HEAP32[($7 + 80 | 0) >> 2] | 0) + 16 | 0 | 0));
|
|
HEAPF32[(HEAP32[($7 + 72 | 0) >> 2] | 0) >> 2] = $64;
|
|
break label$3;
|
|
}
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 24 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$75 = Math_fround(btVector3__length_28_29_20const((HEAP32[($7 + 76 | 0) >> 2] | 0) + 16 | 0 | 0));
|
|
HEAPF32[(HEAP32[($7 + 72 | 0) >> 2] | 0) >> 2] = $75;
|
|
break label$5;
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btDot_28btVector3_20const__2c_20btVector3_20const__29((HEAP32[($7 + 80 | 0) >> 2] | 0) + 16 | 0 | 0, (HEAP32[($7 + 76 | 0) >> 2] | 0) + 16 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(Math_fround(btVector3__length2_28_29_20const((HEAP32[($7 + 80 | 0) >> 2] | 0) + 16 | 0 | 0)) * Math_fround(btVector3__length2_28_29_20const((HEAP32[($7 + 76 | 0) >> 2] | 0) + 16 | 0 | 0))) + Math_fround(-Math_fround(Math_fround(HEAPF32[($7 + 20 | 0) >> 2]) * Math_fround(HEAPF32[($7 + 20 | 0) >> 2])))) / Math_fround(HEAPF32[($7 + 32 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($7 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
$110 = Math_fround(btSqrt_28float_29(Math_fround(Math_fround(HEAPF32[(float_20const__20btMax_float__28float_20const__2c_20float_20const__29($7 + 16 | 0 | 0, $7 + 12 | 0 | 0) | 0) >> 2]))));
|
|
HEAPF32[(HEAP32[($7 + 72 | 0) >> 2] | 0) >> 2] = $110;
|
|
}
|
|
}
|
|
HEAP8[($7 + 95 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP8[($7 + 95 | 0) >> 0] = 0 & 1 | 0;
|
|
}
|
|
$120 = (HEAPU8[($7 + 95 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $7 + 96 | 0;
|
|
return $120 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btGjkEpa2_cpp() {
|
|
__cxx_global_var_init_59();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_60() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114328 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btGjkEpaPenetrationDepthSolver__calcPenDepth_28btVoronoiSimplexSolver__2c_20btConvexShape_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3__2c_20btVector3__2c_20btVector3__2c_20btIDebugDraw__29($0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
$9 = $9 | 0;
|
|
var $12 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $44 = 0, $46 = 0, $57 = 0, $59 = 0, $68 = 0, $70 = 0, $95 = 0, $97 = 0, $108 = 0, $110 = 0, $119 = 0, $121 = 0, $226 = 0, $236 = 0, $252 = 0, $262 = 0, $275 = 0, $285 = 0, $331 = 0, $341 = 0, $357 = 0, $367 = 0, $380 = 0, $390 = 0, $133 = 0;
|
|
$12 = __stack_pointer - 128 | 0;
|
|
__stack_pointer = $12;
|
|
HEAP32[($12 + 120 | 0) >> 2] = $0;
|
|
HEAP32[($12 + 116 | 0) >> 2] = $1;
|
|
HEAP32[($12 + 112 | 0) >> 2] = $2;
|
|
HEAP32[($12 + 108 | 0) >> 2] = $3;
|
|
HEAP32[($12 + 104 | 0) >> 2] = $4;
|
|
HEAP32[($12 + 100 | 0) >> 2] = $5;
|
|
HEAP32[($12 + 96 | 0) >> 2] = $6;
|
|
HEAP32[($12 + 92 | 0) >> 2] = $7;
|
|
HEAP32[($12 + 88 | 0) >> 2] = $8;
|
|
HEAP32[($12 + 84 | 0) >> 2] = $9;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($12 + 68 | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($12 + 100 | 0) >> 2] | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($12 + 104 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btGjkEpaSolver2__sResults__sResults_28_29($12 + 12 | 0 | 0) | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((btGjkEpaSolver2__Penetration_28btConvexShape_20const__2c_20btTransform_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btVector3_20const__2c_20btGjkEpaSolver2__sResults__2c_20bool_29(HEAP32[($12 + 112 | 0) >> 2] | 0 | 0, HEAP32[($12 + 104 | 0) >> 2] | 0 | 0, HEAP32[($12 + 108 | 0) >> 2] | 0 | 0, HEAP32[($12 + 100 | 0) >> 2] | 0 | 0, $12 + 68 | 0 | 0, $12 + 12 | 0 | 0, 1 & 1 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$44 = HEAP32[($12 + 92 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = ($12 + 12 | 0) + 4 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$226 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $44;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $226;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$46 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $46 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$236 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $44 + $46 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $236;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$57 = HEAP32[($12 + 88 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = (($12 + 12 | 0) + 4 | 0) + 16 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$252 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $57;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $252;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$59 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $59 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$262 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $57 + $59 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $262;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$68 = HEAP32[($12 + 96 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = ($12 + 12 | 0) + 36 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$275 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $68;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $275;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$70 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $70 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$285 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $68 + $70 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $285;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP8[($12 + 127 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
if (!((btGjkEpaSolver2__Distance_28btConvexShape_20const__2c_20btTransform_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btVector3_20const__2c_20btGjkEpaSolver2__sResults__29(HEAP32[($12 + 112 | 0) >> 2] | 0 | 0, HEAP32[($12 + 104 | 0) >> 2] | 0 | 0, HEAP32[($12 + 108 | 0) >> 2] | 0 | 0, HEAP32[($12 + 100 | 0) >> 2] | 0 | 0, $12 + 68 | 0 | 0, $12 + 12 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$95 = HEAP32[($12 + 92 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = ($12 + 12 | 0) + 4 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$331 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $95;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $331;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$97 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $97 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$341 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $95 + $97 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $341;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$108 = HEAP32[($12 + 88 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = (($12 + 12 | 0) + 4 | 0) + 16 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$357 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $108;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $357;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$110 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $110 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$367 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $108 + $110 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $367;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$119 = HEAP32[($12 + 96 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = ($12 + 12 | 0) + 36 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$380 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $119;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $380;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$121 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $121 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$390 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $119 + $121 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $390;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP8[($12 + 127 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP8[($12 + 127 | 0) >> 0] = 0 & 1 | 0;
|
|
}
|
|
$133 = (HEAPU8[($12 + 127 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $12 + 128 | 0;
|
|
return $133 | 0;
|
|
}
|
|
|
|
function btGjkEpaSolver2__sResults__sResults_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $6 = 0, $9 = 0, $10 = 0, $12 = 0, $8 = 0, $20 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
$6 = $4 + 4 | 0;
|
|
$8 = $6 + 32 | 0;
|
|
$9 = $6;
|
|
label$1 : while (1) {
|
|
$10 = $9;
|
|
btVector3__btVector3_28_29($10 | 0) | 0;
|
|
$12 = $10 + 16 | 0;
|
|
$9 = $12;
|
|
if (!(($12 | 0) == ($8 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
btVector3__btVector3_28_29($4 + 36 | 0 | 0) | 0;
|
|
$20 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $20 | 0;
|
|
}
|
|
|
|
function btGjkEpaPenetrationDepthSolver___btGjkEpaPenetrationDepthSolver_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btGjkEpaPenetrationDepthSolver___btGjkEpaPenetrationDepthSolver_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btGjkEpaPenetrationDepthSolver_cpp() {
|
|
__cxx_global_var_init_60();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_61() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114332 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btGjkPairDetector__btGjkPairDetector_28btConvexShape_20const__2c_20btConvexShape_20const__2c_20btVoronoiSimplexSolver__2c_20btConvexPenetrationDepthSolver__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0, $34 = 0, $38 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
btDiscreteCollisionDetectorInterface__btDiscreteCollisionDetectorInterface_28_29($8 | 0) | 0;
|
|
HEAP32[$8 >> 2] = 101468 + 8 | 0;
|
|
HEAPF32[($7 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($7 + 4 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[$7 >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 4 | 0 | 0, $7 + 8 | 0 | 0, $7 + 4 | 0 | 0, $7 | 0) | 0;
|
|
HEAP32[($8 + 20 | 0) >> 2] = HEAP32[($7 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 24 | 0) >> 2] = HEAP32[($7 + 16 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 28 | 0) >> 2] = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 32 | 0) >> 2] = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = btCollisionShape__getShapeType_28_29_20const(HEAP32[($7 + 24 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = btCollisionShape__getShapeType_28_29_20const(HEAP32[($7 + 20 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_i32$1;
|
|
$34 = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$34 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($34))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
$38 = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$38 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($38))), HEAPF32[(wasm2js_i32$0 + 48 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($8 + 52 | 0) >> 0] = 0;
|
|
HEAP32[($8 + 60 | 0) >> 2] = -1;
|
|
HEAP32[($8 + 72 | 0) >> 2] = 1;
|
|
HEAP32[($8 + 76 | 0) >> 2] = 1;
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btGjkPairDetector__btGjkPairDetector_28btConvexShape_20const__2c_20btConvexShape_20const__2c_20int_2c_20int_2c_20float_2c_20float_2c_20btVoronoiSimplexSolver__2c_20btConvexPenetrationDepthSolver__29($0, $1, $2, $3, $4, $5, $6, $7, $8) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = Math_fround($5);
|
|
$6 = Math_fround($6);
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
var $11 = 0, $12 = 0;
|
|
$11 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $11;
|
|
HEAP32[($11 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($11 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($11 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($11 + 32 | 0) >> 2] = $3;
|
|
HEAP32[($11 + 28 | 0) >> 2] = $4;
|
|
HEAPF32[($11 + 24 | 0) >> 2] = $5;
|
|
HEAPF32[($11 + 20 | 0) >> 2] = $6;
|
|
HEAP32[($11 + 16 | 0) >> 2] = $7;
|
|
HEAP32[($11 + 12 | 0) >> 2] = $8;
|
|
$12 = HEAP32[($11 + 44 | 0) >> 2] | 0;
|
|
btDiscreteCollisionDetectorInterface__btDiscreteCollisionDetectorInterface_28_29($12 | 0) | 0;
|
|
HEAP32[$12 >> 2] = 101468 + 8 | 0;
|
|
HEAPF32[($11 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 4 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[$11 >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($12 + 4 | 0 | 0, $11 + 8 | 0 | 0, $11 + 4 | 0 | 0, $11 | 0) | 0;
|
|
HEAP32[($12 + 20 | 0) >> 2] = HEAP32[($11 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($12 + 24 | 0) >> 2] = HEAP32[($11 + 16 | 0) >> 2] | 0;
|
|
HEAP32[($12 + 28 | 0) >> 2] = HEAP32[($11 + 40 | 0) >> 2] | 0;
|
|
HEAP32[($12 + 32 | 0) >> 2] = HEAP32[($11 + 36 | 0) >> 2] | 0;
|
|
HEAP32[($12 + 36 | 0) >> 2] = HEAP32[($11 + 32 | 0) >> 2] | 0;
|
|
HEAP32[($12 + 40 | 0) >> 2] = HEAP32[($11 + 28 | 0) >> 2] | 0;
|
|
HEAPF32[($12 + 44 | 0) >> 2] = Math_fround(HEAPF32[($11 + 24 | 0) >> 2]);
|
|
HEAPF32[($12 + 48 | 0) >> 2] = Math_fround(HEAPF32[($11 + 20 | 0) >> 2]);
|
|
HEAP8[($12 + 52 | 0) >> 0] = 0;
|
|
HEAP32[($12 + 60 | 0) >> 2] = -1;
|
|
HEAP32[($12 + 72 | 0) >> 2] = 1;
|
|
HEAP32[($12 + 76 | 0) >> 2] = 1;
|
|
__stack_pointer = $11 + 48 | 0;
|
|
return $12 | 0;
|
|
}
|
|
|
|
function btGjkPairDetector__getClosestPoints_28btDiscreteCollisionDetectorInterface__ClosestPointInput_20const__2c_20btDiscreteCollisionDetectorInterface__Result__2c_20btIDebugDraw__2c_20bool_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP8[($7 + 15 | 0) >> 0] = $4;
|
|
btGjkPairDetector__getClosestPointsNonVirtual_28btDiscreteCollisionDetectorInterface__ClosestPointInput_20const__2c_20btDiscreteCollisionDetectorInterface__Result__2c_20btIDebugDraw__29(HEAP32[($7 + 28 | 0) >> 2] | 0 | 0, HEAP32[($7 + 24 | 0) >> 2] | 0 | 0, HEAP32[($7 + 20 | 0) >> 2] | 0 | 0, HEAP32[($7 + 16 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGjkPairDetector__getClosestPointsNonVirtual_28btDiscreteCollisionDetectorInterface__ClosestPointInput_20const__2c_20btDiscreteCollisionDetectorInterface__Result__2c_20btIDebugDraw__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, $7 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $481 = 0, $345 = 0, $86 = 0, $298 = 0, $300 = 0, $325 = 0, $327 = 0, $333 = 0, $393 = 0, $394 = 0, $530 = 0, $576 = 0, $577 = 0, $624 = 0, $633 = 0, $642 = 0, $686 = 0, $695 = 0, $733 = 0, $734 = 0, $765 = 0, $767 = 0, $941 = 0, $1541 = 0, $1554 = 0, $1601 = 0, $1614 = 0, $348 = 0.0, $351 = 0.0, $354 = 0.0, $356 = 0.0, $358 = 0, $1759 = 0, $1763 = 0, $2123 = 0, $2127 = 0, $2227 = 0, $2231 = 0, $2247 = 0, $2251 = 0, $2267 = 0, $2271 = 0, $2359 = 0, $2363 = 0, $2379 = 0, $2383 = 0, $2449 = 0, $2453 = 0, $2509 = 0, $2522 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 1008 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 1004 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 1e3 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 996 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 992 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 1004 | 0) >> 2] | 0;
|
|
HEAPF32[($7 + 56 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 988 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 964 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 960 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 956 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 968 | 0 | 0, $6 + 964 | 0 | 0, $6 + 960 | 0 | 0, $6 + 956 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 936 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 920 | 0 | 0) | 0;
|
|
btTransform__btTransform_28btTransform_20const__29($6 + 856 | 0 | 0, HEAP32[($6 + 1e3 | 0) >> 2] | 0 | 0) | 0;
|
|
btTransform__btTransform_28btTransform_20const__29($6 + 792 | 0 | 0, (HEAP32[($6 + 1e3 | 0) >> 2] | 0) + 64 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 760 | 0 | 0, btTransform__getOrigin_28_29($6 + 856 | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29($6 + 792 | 0 | 0) | 0 | 0);
|
|
HEAPF32[($6 + 756 | 0) >> 2] = Math_fround(.5);
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 776 | 0 | 0, $6 + 760 | 0 | 0, $6 + 756 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29(btTransform__getOrigin_28_29($6 + 856 | 0 | 0) | 0 | 0, $6 + 776 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29(btTransform__getOrigin_28_29($6 + 792 | 0 | 0) | 0 | 0, $6 + 776 | 0 | 0) | 0;
|
|
$86 = 0;
|
|
label$1 : {
|
|
if (!((btCollisionShape__isConvex2d_28_29_20const(HEAP32[($7 + 28 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$86 = btCollisionShape__isConvex2d_28_29_20const(HEAP32[($7 + 32 | 0) >> 2] | 0 | 0) | 0;
|
|
}
|
|
HEAP8[($6 + 755 | 0) >> 0] = $86 & 1 | 0;
|
|
HEAPF32[($6 + 748 | 0) >> 2] = Math_fround(HEAPF32[($7 + 44 | 0) >> 2]);
|
|
HEAPF32[($6 + 744 | 0) >> 2] = Math_fround(HEAPF32[($7 + 48 | 0) >> 2]);
|
|
HEAP32[(0 + 114340 | 0) >> 2] = (HEAP32[(0 + 114340 | 0) >> 2] | 0) + 1 | 0;
|
|
label$2 : {
|
|
if (!((HEAPU8[($7 + 52 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($6 + 748 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 744 | 0) >> 2] = Math_fround(0 | 0);
|
|
}
|
|
HEAP32[($7 + 64 | 0) >> 2] = 0;
|
|
HEAP32[($6 + 740 | 0) >> 2] = 1e3;
|
|
HEAPF32[($6 + 736 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 732 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($6 + 728 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 4 | 0 | 0, $6 + 736 | 0 | 0, $6 + 732 | 0 | 0, $6 + 728 | 0 | 0);
|
|
HEAP8[($6 + 727 | 0) >> 0] = 0;
|
|
HEAP8[($6 + 726 | 0) >> 0] = 0;
|
|
HEAP8[($6 + 725 | 0) >> 0] = 1;
|
|
HEAP32[($7 + 68 | 0) >> 2] = 0;
|
|
HEAP32[($7 + 60 | 0) >> 2] = -1;
|
|
HEAPF32[($6 + 720 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAPF32[($6 + 716 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 712 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($6 + 748 | 0) >> 2]) + Math_fround(HEAPF32[($6 + 744 | 0) >> 2]));
|
|
btVoronoiSimplexSolver__reset_28_29(HEAP32[($7 + 24 | 0) >> 2] | 0 | 0);
|
|
label$3 : while (1) {
|
|
operator__28btVector3_20const__29($6 + 680 | 0 | 0, $7 + 4 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btMatrix3x3_20const__29($6 + 696 | 0 | 0, $6 + 680 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($6 + 1e3 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btMatrix3x3_20const__29($6 + 664 | 0 | 0, $7 + 4 | 0 | 0, btTransform__getBasis_28_29_20const((HEAP32[($6 + 1e3 | 0) >> 2] | 0) + 64 | 0 | 0) | 0 | 0);
|
|
btConvexShape__localGetSupportVertexWithoutMarginNonVirtual_28btVector3_20const__29_20const($6 + 648 | 0 | 0, HEAP32[($7 + 28 | 0) >> 2] | 0 | 0, $6 + 696 | 0 | 0);
|
|
btConvexShape__localGetSupportVertexWithoutMarginNonVirtual_28btVector3_20const__29_20const($6 + 632 | 0 | 0, HEAP32[($7 + 32 | 0) >> 2] | 0 | 0, $6 + 664 | 0 | 0);
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($6 + 616 | 0 | 0, $6 + 856 | 0 | 0, $6 + 648 | 0 | 0);
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($6 + 600 | 0 | 0, $6 + 792 | 0 | 0, $6 + 632 | 0 | 0);
|
|
label$4 : {
|
|
if (!((HEAPU8[($6 + 755 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($6 + 616 | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($6 + 600 | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 584 | 0 | 0, $6 + 616 | 0 | 0, $6 + 600 | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($7 + 4 | 0 | 0, $6 + 584 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 716 | 0) >> 2] = wasm2js_f32$0;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 716 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
if (!(Math_fround(Math_fround(HEAPF32[($6 + 716 | 0) >> 2]) * Math_fround(HEAPF32[($6 + 716 | 0) >> 2])) > Math_fround(Math_fround(HEAPF32[($6 + 720 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($6 + 1e3 | 0) >> 2] | 0) + 128 | 0) >> 2])) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAP32[($7 + 68 | 0) >> 2] = 10;
|
|
HEAP8[($6 + 726 | 0) >> 0] = 1;
|
|
break label$5;
|
|
}
|
|
label$7 : {
|
|
if (!((btVoronoiSimplexSolver__inSimplex_28btVector3_20const__29(HEAP32[($7 + 24 | 0) >> 2] | 0 | 0, $6 + 584 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAP32[($7 + 68 | 0) >> 2] = 1;
|
|
HEAP8[($6 + 726 | 0) >> 0] = 1;
|
|
break label$5;
|
|
}
|
|
HEAPF32[($6 + 580 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($6 + 720 | 0) >> 2]) - Math_fround(HEAPF32[($6 + 716 | 0) >> 2]));
|
|
HEAPF32[($6 + 576 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($6 + 720 | 0) >> 2]) * Math_fround(9.999999974752427e-07));
|
|
label$8 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 580 | 0) >> 2]) <= Math_fround(HEAPF32[($6 + 576 | 0) >> 2]) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
label$9 : {
|
|
label$10 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 580 | 0) >> 2]) <= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
HEAP32[($7 + 68 | 0) >> 2] = 2;
|
|
break label$9;
|
|
}
|
|
HEAP32[($7 + 68 | 0) >> 2] = 11;
|
|
}
|
|
HEAP8[($6 + 726 | 0) >> 0] = 1;
|
|
break label$5;
|
|
}
|
|
btVoronoiSimplexSolver__addVertex_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29(HEAP32[($7 + 24 | 0) >> 2] | 0 | 0, $6 + 584 | 0 | 0, $6 + 616 | 0 | 0, $6 + 600 | 0 | 0);
|
|
btVector3__btVector3_28_29($6 + 560 | 0 | 0) | 0;
|
|
label$11 : {
|
|
if ((btVoronoiSimplexSolver__closest_28btVector3__29(HEAP32[($7 + 24 | 0) >> 2] | 0 | 0, $6 + 560 | 0 | 0) | 0) & 1 | 0) {
|
|
break label$11
|
|
}
|
|
HEAP32[($7 + 68 | 0) >> 2] = 3;
|
|
HEAP8[($6 + 726 | 0) >> 0] = 1;
|
|
break label$5;
|
|
}
|
|
label$12 : {
|
|
if (!(Math_fround(btVector3__length2_28_29_20const($6 + 560 | 0 | 0)) < Math_fround(9.999999974752427e-07) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
$298 = $7 + 4 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 560 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 564 | 0) >> 2] | 0;
|
|
$1541 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $298;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1541;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$300 = 8;
|
|
i64toi32_i32$2 = ($6 + 560 | 0) + $300 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1554 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $298 + $300 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1554;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($7 + 68 | 0) >> 2] = 6;
|
|
HEAP8[($6 + 726 | 0) >> 0] = 1;
|
|
break label$5;
|
|
}
|
|
HEAPF32[($6 + 556 | 0) >> 2] = Math_fround(HEAPF32[($6 + 720 | 0) >> 2]);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($6 + 560 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 720 | 0) >> 2] = wasm2js_f32$0;
|
|
label$13 : {
|
|
if (!(Math_fround(Math_fround(HEAPF32[($6 + 556 | 0) >> 2]) - Math_fround(HEAPF32[($6 + 720 | 0) >> 2])) <= Math_fround(Math_fround(1.1920928955078125e-07) * Math_fround(HEAPF32[($6 + 556 | 0) >> 2])) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
HEAP8[($6 + 726 | 0) >> 0] = 1;
|
|
HEAP32[($7 + 68 | 0) >> 2] = 12;
|
|
break label$5;
|
|
}
|
|
$325 = $7 + 4 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 560 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 564 | 0) >> 2] | 0;
|
|
$1601 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $325;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1601;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$327 = 8;
|
|
i64toi32_i32$2 = ($6 + 560 | 0) + $327 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1614 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $325 + $327 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1614;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$333 = HEAP32[($7 + 64 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 64 | 0) >> 2] = $333 + 1 | 0;
|
|
label$14 : {
|
|
if (!(($333 | 0) > (HEAP32[($6 + 740 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
HEAP32[$6 >> 2] = HEAP32[($7 + 64 | 0) >> 2] | 0;
|
|
printf(88468 | 0, $6 | 0) | 0;
|
|
$345 = $7 + 4 | 0;
|
|
$348 = +Math_fround(HEAPF32[(btVector3__getX_28_29_20const($345 | 0) | 0) >> 2]);
|
|
$351 = +Math_fround(HEAPF32[(btVector3__getY_28_29_20const($345 | 0) | 0) >> 2]);
|
|
$354 = +Math_fround(HEAPF32[(btVector3__getZ_28_29_20const($345 | 0) | 0) >> 2]);
|
|
$356 = +Math_fround(HEAPF32[($6 + 720 | 0) >> 2]);
|
|
$358 = btCollisionShape__getShapeType_28_29_20const(HEAP32[($7 + 28 | 0) >> 2] | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $6 + 52 | 0, wasm2js_i32$1 = btCollisionShape__getShapeType_28_29_20const(HEAP32[($7 + 32 | 0) >> 2] | 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[($6 + 48 | 0) >> 2] = $358;
|
|
HEAPF64[($6 + 40 | 0) >> 3] = $356;
|
|
HEAPF64[($6 + 32 | 0) >> 3] = $354;
|
|
HEAPF64[($6 + 24 | 0) >> 3] = $351;
|
|
HEAPF64[($6 + 16 | 0) >> 3] = $348;
|
|
printf(88397 | 0, $6 + 16 | 0 | 0) | 0;
|
|
break label$5;
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = ((btVoronoiSimplexSolver__fullSimplex_28_29_20const(HEAP32[($7 + 24 | 0) >> 2] | 0 | 0) | 0) ^ -1 | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 555 | 0) >> 0] = wasm2js_i32$1;
|
|
label$15 : {
|
|
if ((HEAPU8[($6 + 555 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$15
|
|
}
|
|
HEAP32[($7 + 68 | 0) >> 2] = 13;
|
|
break label$5;
|
|
}
|
|
continue label$3;
|
|
}
|
|
break label$3;
|
|
};
|
|
label$16 : {
|
|
if (!((HEAPU8[($6 + 726 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
btVoronoiSimplexSolver__compute_points_28btVector3__2c_20btVector3__29(HEAP32[($7 + 24 | 0) >> 2] | 0 | 0, $6 + 936 | 0 | 0, $6 + 920 | 0 | 0);
|
|
$393 = $7 + 4 | 0;
|
|
$394 = 8;
|
|
i64toi32_i32$2 = $393 + $394 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1759 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 968 | 0) + $394 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1759;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $393;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1763 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 968 | 0) >> 2] = $1763;
|
|
HEAP32[($6 + 972 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($7 + 4 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 548 | 0) >> 2] = wasm2js_f32$0;
|
|
label$17 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 548 | 0) >> 2]) < Math_fround(9.999999974752427e-07) & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
HEAP32[($7 + 68 | 0) >> 2] = 5;
|
|
}
|
|
label$18 : {
|
|
label$19 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 548 | 0) >> 2]) > Math_fround(1.4210854715202004e-14) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(1.0) / Math_fround(btSqrt_28float_29(Math_fround(Math_fround(HEAPF32[($6 + 548 | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 544 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__operator___28float_20const__29_1($6 + 968 | 0 | 0, $6 + 544 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btSqrt_28float_29(Math_fround(Math_fround(HEAPF32[($6 + 720 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 540 | 0) >> 2] = wasm2js_f32$0;
|
|
label$20 : {
|
|
if (Math_fround(HEAPF32[($6 + 540 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0) {
|
|
break label$20
|
|
}
|
|
__assert_fail(86625 | 0, 72330 | 0, 295 | 0, 77310 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAPF32[($6 + 520 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($6 + 748 | 0) >> 2]) / Math_fround(HEAPF32[($6 + 540 | 0) >> 2]));
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 524 | 0 | 0, $7 + 4 | 0 | 0, $6 + 520 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29($6 + 936 | 0 | 0, $6 + 524 | 0 | 0) | 0;
|
|
HEAPF32[($6 + 500 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($6 + 744 | 0) >> 2]) / Math_fround(HEAPF32[($6 + 540 | 0) >> 2]));
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 504 | 0 | 0, $7 + 4 | 0 | 0, $6 + 500 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($6 + 920 | 0 | 0, $6 + 504 | 0 | 0) | 0;
|
|
HEAPF32[($6 + 988 | 0) >> 2] = Math_fround(Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[($6 + 544 | 0) >> 2])) - Math_fround(HEAPF32[($6 + 712 | 0) >> 2]));
|
|
HEAP8[($6 + 727 | 0) >> 0] = 1;
|
|
HEAP32[($7 + 60 | 0) >> 2] = 1;
|
|
break label$18;
|
|
}
|
|
HEAP32[($7 + 60 | 0) >> 2] = 2;
|
|
}
|
|
}
|
|
$481 = 0;
|
|
label$21 : {
|
|
if (!(HEAP32[($7 + 72 | 0) >> 2] | 0)) {
|
|
break label$21
|
|
}
|
|
$481 = 0;
|
|
if (!((HEAP32[($7 + 20 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$21
|
|
}
|
|
$481 = 0;
|
|
if (!(HEAP32[($7 + 68 | 0) >> 2] | 0)) {
|
|
break label$21
|
|
}
|
|
$481 = Math_fround(Math_fround(HEAPF32[($6 + 988 | 0) >> 2]) + Math_fround(HEAPF32[($6 + 712 | 0) >> 2])) < Math_fround(HEAPF32[(0 + 112836 | 0) >> 2]);
|
|
}
|
|
HEAP8[($6 + 499 | 0) >> 0] = $481 & 1 | 0;
|
|
label$22 : {
|
|
if (!((HEAPU8[($6 + 725 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$22
|
|
}
|
|
label$23 : {
|
|
if (!((HEAPU8[($6 + 727 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$23
|
|
}
|
|
if (!((HEAPU8[($6 + 499 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$22
|
|
}
|
|
}
|
|
label$24 : {
|
|
if (!((HEAP32[($7 + 20 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$24
|
|
}
|
|
btVector3__btVector3_28_29($6 + 480 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 464 | 0 | 0) | 0;
|
|
HEAP32[(0 + 114336 | 0) >> 2] = (HEAP32[(0 + 114336 | 0) >> 2] | 0) + 1 | 0;
|
|
btVector3__setZero_28_29($7 + 4 | 0 | 0);
|
|
$530 = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = (FUNCTION_TABLE[HEAP32[((HEAP32[$530 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($530, HEAP32[($7 + 24 | 0) >> 2] | 0, HEAP32[($7 + 28 | 0) >> 2] | 0, HEAP32[($7 + 32 | 0) >> 2] | 0, $6 + 856 | 0, $6 + 792 | 0, $7 + 4 | 0, $6 + 480 | 0, $6 + 464 | 0, HEAP32[($6 + 992 | 0) >> 2] | 0) | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 463 | 0) >> 0] = wasm2js_i32$1;
|
|
label$25 : {
|
|
label$26 : {
|
|
if (!((HEAPU8[($6 + 463 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$26
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 440 | 0 | 0, $6 + 464 | 0 | 0, $6 + 480 | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($6 + 440 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 436 | 0) >> 2] = wasm2js_f32$0;
|
|
label$27 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 436 | 0) >> 2]) <= Math_fround(1.4210854715202004e-14) & 1 | 0)) {
|
|
break label$27
|
|
}
|
|
$576 = $7 + 4 | 0;
|
|
$577 = 8;
|
|
i64toi32_i32$2 = $576 + $577 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2123 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 440 | 0) + $577 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2123;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $576;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2127 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 440 | 0) >> 2] = $2127;
|
|
HEAP32[($6 + 444 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($7 + 4 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 436 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
label$28 : {
|
|
label$29 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 436 | 0) >> 2]) > Math_fround(1.4210854715202004e-14) & 1 | 0)) {
|
|
break label$29
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btSqrt_28float_29(Math_fround(Math_fround(HEAPF32[($6 + 436 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 432 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__operator___28float_20const__29($6 + 440 | 0 | 0, $6 + 432 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 412 | 0 | 0, $6 + 480 | 0 | 0, $6 + 464 | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(-Math_fround(btVector3__length_28_29_20const($6 + 412 | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 428 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP32[($7 + 60 | 0) >> 2] = 3;
|
|
label$30 : {
|
|
label$31 : {
|
|
label$32 : {
|
|
if (!((HEAPU8[($6 + 727 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$32
|
|
}
|
|
if (!(Math_fround(HEAPF32[($6 + 428 | 0) >> 2]) < Math_fround(HEAPF32[($6 + 988 | 0) >> 2]) & 1 | 0)) {
|
|
break label$31
|
|
}
|
|
}
|
|
HEAPF32[($6 + 988 | 0) >> 2] = Math_fround(HEAPF32[($6 + 428 | 0) >> 2]);
|
|
$624 = 8;
|
|
i64toi32_i32$2 = ($6 + 480 | 0) + $624 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2227 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 936 | 0) + $624 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2227;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 480 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 484 | 0) >> 2] | 0;
|
|
$2231 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 936 | 0) >> 2] = $2231;
|
|
HEAP32[($6 + 940 | 0) >> 2] = i64toi32_i32$0;
|
|
$633 = 8;
|
|
i64toi32_i32$2 = ($6 + 464 | 0) + $633 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2247 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 920 | 0) + $633 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2247;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 464 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 468 | 0) >> 2] | 0;
|
|
$2251 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 920 | 0) >> 2] = $2251;
|
|
HEAP32[($6 + 924 | 0) >> 2] = i64toi32_i32$0;
|
|
$642 = 8;
|
|
i64toi32_i32$2 = ($6 + 440 | 0) + $642 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2267 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 968 | 0) + $642 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2267;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 440 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 444 | 0) >> 2] | 0;
|
|
$2271 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 968 | 0) >> 2] = $2271;
|
|
HEAP32[($6 + 972 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP8[($6 + 727 | 0) >> 0] = 1;
|
|
break label$30;
|
|
}
|
|
HEAP32[($7 + 60 | 0) >> 2] = 8;
|
|
}
|
|
break label$28;
|
|
}
|
|
HEAP32[($7 + 60 | 0) >> 2] = 9;
|
|
}
|
|
break label$25;
|
|
}
|
|
label$33 : {
|
|
if (!(Math_fround(btVector3__length2_28_29_20const($7 + 4 | 0 | 0)) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$33
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 392 | 0 | 0, $6 + 480 | 0 | 0, $6 + 464 | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(btVector3__length_28_29_20const($6 + 392 | 0 | 0)) - Math_fround(HEAPF32[($6 + 712 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 408 | 0) >> 2] = wasm2js_f32$0;
|
|
label$34 : {
|
|
label$35 : {
|
|
label$36 : {
|
|
if (!((HEAPU8[($6 + 727 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$36
|
|
}
|
|
if (!(Math_fround(HEAPF32[($6 + 408 | 0) >> 2]) < Math_fround(HEAPF32[($6 + 988 | 0) >> 2]) & 1 | 0)) {
|
|
break label$35
|
|
}
|
|
}
|
|
HEAPF32[($6 + 988 | 0) >> 2] = Math_fround(HEAPF32[($6 + 408 | 0) >> 2]);
|
|
$686 = 8;
|
|
i64toi32_i32$2 = ($6 + 480 | 0) + $686 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2359 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 936 | 0) + $686 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2359;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 480 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 484 | 0) >> 2] | 0;
|
|
$2363 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 936 | 0) >> 2] = $2363;
|
|
HEAP32[($6 + 940 | 0) >> 2] = i64toi32_i32$0;
|
|
$695 = 8;
|
|
i64toi32_i32$2 = ($6 + 464 | 0) + $695 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2379 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 920 | 0) + $695 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2379;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 464 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 468 | 0) >> 2] | 0;
|
|
$2383 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 920 | 0) >> 2] = $2383;
|
|
HEAP32[($6 + 924 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 376 | 0 | 0, $7 + 4 | 0 | 0, $6 + 748 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29($6 + 936 | 0 | 0, $6 + 376 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 360 | 0 | 0, $7 + 4 | 0 | 0, $6 + 744 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($6 + 920 | 0 | 0, $6 + 360 | 0 | 0) | 0;
|
|
$733 = $7 + 4 | 0;
|
|
$734 = 8;
|
|
i64toi32_i32$2 = $733 + $734 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2449 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 968 | 0) + $734 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2449;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $733;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2453 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 968 | 0) >> 2] = $2453;
|
|
HEAP32[($6 + 972 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__normalize_28_29($6 + 968 | 0 | 0) | 0;
|
|
HEAP8[($6 + 727 | 0) >> 0] = 1;
|
|
HEAP32[($7 + 60 | 0) >> 2] = 6;
|
|
break label$34;
|
|
}
|
|
HEAP32[($7 + 60 | 0) >> 2] = 5;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
label$37 : {
|
|
if (!((HEAPU8[($6 + 727 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$37
|
|
}
|
|
label$38 : {
|
|
if (Math_fround(HEAPF32[($6 + 988 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0) {
|
|
break label$38
|
|
}
|
|
if (!(Math_fround(Math_fround(HEAPF32[($6 + 988 | 0) >> 2]) * Math_fround(HEAPF32[($6 + 988 | 0) >> 2])) < Math_fround(HEAPF32[((HEAP32[($6 + 1e3 | 0) >> 2] | 0) + 128 | 0) >> 2]) & 1 | 0)) {
|
|
break label$37
|
|
}
|
|
}
|
|
$765 = $7 + 4 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 968 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 972 | 0) >> 2] | 0;
|
|
$2509 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $765;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2509;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$767 = 8;
|
|
i64toi32_i32$2 = ($6 + 968 | 0) + $767 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2522 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $765 + $767 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $2522;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($7 + 56 | 0) >> 2] = Math_fround(HEAPF32[($6 + 988 | 0) >> 2]);
|
|
HEAPF32[($6 + 356 | 0) >> 2] = Math_fround(0 | 0);
|
|
operator__28btVector3_20const__2c_20btMatrix3x3_20const__29($6 + 340 | 0 | 0, $6 + 968 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($6 + 1e3 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__29($6 + 308 | 0 | 0, $6 + 968 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btMatrix3x3_20const__29($6 + 324 | 0 | 0, $6 + 308 | 0 | 0, btTransform__getBasis_28_29_20const((HEAP32[($6 + 1e3 | 0) >> 2] | 0) + 64 | 0 | 0) | 0 | 0);
|
|
btConvexShape__localGetSupportVertexWithoutMarginNonVirtual_28btVector3_20const__29_20const($6 + 292 | 0 | 0, HEAP32[($7 + 28 | 0) >> 2] | 0 | 0, $6 + 340 | 0 | 0);
|
|
btConvexShape__localGetSupportVertexWithoutMarginNonVirtual_28btVector3_20const__29_20const($6 + 276 | 0 | 0, HEAP32[($7 + 32 | 0) >> 2] | 0 | 0, $6 + 324 | 0 | 0);
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($6 + 260 | 0 | 0, $6 + 856 | 0 | 0, $6 + 292 | 0 | 0);
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($6 + 244 | 0 | 0, $6 + 792 | 0 | 0, $6 + 276 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 228 | 0 | 0, $6 + 260 | 0 | 0, $6 + 244 | 0 | 0);
|
|
operator__28btVector3_20const__29($6 + 212 | 0 | 0, $6 + 968 | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($6 + 212 | 0 | 0, $6 + 228 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 356 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($6 + 208 | 0) >> 2] = Math_fround(0 | 0);
|
|
operator__28btVector3_20const__29($6 + 176 | 0 | 0, $6 + 968 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btMatrix3x3_20const__29($6 + 192 | 0 | 0, $6 + 176 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($6 + 1e3 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btMatrix3x3_20const__29($6 + 160 | 0 | 0, $6 + 968 | 0 | 0, btTransform__getBasis_28_29_20const((HEAP32[($6 + 1e3 | 0) >> 2] | 0) + 64 | 0 | 0) | 0 | 0);
|
|
btConvexShape__localGetSupportVertexWithoutMarginNonVirtual_28btVector3_20const__29_20const($6 + 144 | 0 | 0, HEAP32[($7 + 28 | 0) >> 2] | 0 | 0, $6 + 192 | 0 | 0);
|
|
btConvexShape__localGetSupportVertexWithoutMarginNonVirtual_28btVector3_20const__29_20const($6 + 128 | 0 | 0, HEAP32[($7 + 32 | 0) >> 2] | 0 | 0, $6 + 160 | 0 | 0);
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($6 + 112 | 0 | 0, $6 + 856 | 0 | 0, $6 + 144 | 0 | 0);
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($6 + 96 | 0 | 0, $6 + 792 | 0 | 0, $6 + 128 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 80 | 0 | 0, $6 + 112 | 0 | 0, $6 + 96 | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($6 + 968 | 0 | 0, $6 + 80 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 208 | 0) >> 2] = wasm2js_f32$0;
|
|
label$39 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 356 | 0) >> 2]) > Math_fround(HEAPF32[($6 + 208 | 0) >> 2]) & 1 | 0)) {
|
|
break label$39
|
|
}
|
|
HEAP32[($7 + 60 | 0) >> 2] = 10;
|
|
HEAPF32[($6 + 76 | 0) >> 2] = Math_fround(-1.0);
|
|
btVector3__operator___28float_20const__29_1($6 + 968 | 0 | 0, $6 + 76 | 0 | 0) | 0;
|
|
}
|
|
$941 = HEAP32[($6 + 996 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 60 | 0 | 0, $6 + 920 | 0 | 0, $6 + 776 | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$941 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($941, $6 + 968 | 0, $6 + 60 | 0, Math_fround(HEAPF32[($6 + 988 | 0) >> 2]));
|
|
}
|
|
__stack_pointer = $6 + 1008 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionShape__isConvex2d_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $8 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$8 = (btBroadphaseProxy__isConvex2d_28int_29(btCollisionShape__getShapeType_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) & 1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btVoronoiSimplexSolver__fullSimplex_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[(HEAP32[($3 + 12 | 0) >> 2] | 0) >> 2] | 0 | 0) == (4 | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function btBroadphaseProxy__isConvex2d_28int_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $12 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$12 = 1;
|
|
label$1 : {
|
|
if ((HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) == (17 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
$12 = (HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) == (18 | 0);
|
|
}
|
|
return $12 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btGjkPairDetector___btGjkPairDetector_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btGjkPairDetector___btGjkPairDetector_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btGjkPairDetector_cpp() {
|
|
__cxx_global_var_init_61();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_62() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(114344 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btMinkowskiPenetrationDepthSolver__calcPenDepth_28btVoronoiSimplexSolver__2c_20btConvexShape_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3__2c_20btVector3__2c_20btVector3__2c_20btIDebugDraw__29($0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
$9 = $9 | 0;
|
|
var $12 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $18 = 0, $72 = 0, $75 = 0, $76 = 0, $78 = 0, $86 = 0, $89 = 0, $90 = 0, $92 = 0, $100 = 0, $103 = 0, $104 = 0, $106 = 0, $114 = 0, $117 = 0, $118 = 0, $120 = 0, $139 = 0, $140 = 0, $167 = 0, $169 = 0, $189 = 0, $191 = 0, $200 = 0, $216 = 0, $231 = 0, $244 = 0, $246 = 0, $272 = 0, $274 = 0, $294 = 0, $296 = 0, $308 = 0, $324 = 0, $339 = 0, $352 = 0, $354 = 0, $380 = 0, $382 = 0, $402 = 0, $404 = 0, $416 = 0, $426 = 0, $448 = 0, $449 = 0, $479 = 0, $480 = 0, $493 = 0, $494 = 0, $507 = 0, $508 = 0, $521 = 0, $522 = 0, $536 = 0, $552 = 0, $585 = 0, $607 = 0, $616 = 0, $625 = 0, $802 = 0, $804 = 0, $815 = 0, $817 = 0, $821 = 0, $823 = 0, $74 = 0, $88 = 0, $102 = 0, $116 = 0, $1117 = 0, $1121 = 0, $1162 = 0, $1175 = 0, $1206 = 0, $1219 = 0, $1310 = 0, $1314 = 0, $1327 = 0, $1340 = 0, $1381 = 0, $1394 = 0, $1425 = 0, $1438 = 0, $1536 = 0, $1540 = 0, $1553 = 0, $1566 = 0, $1607 = 0, $1620 = 0, $1651 = 0, $1664 = 0, $1758 = 0, $1762 = 0, $1819 = 0, $1823 = 0, $1848 = 0, $1852 = 0, $1877 = 0, $1881 = 0, $1906 = 0, $1910 = 0, $1939 = 0, $1943 = 0, $1972 = 0, $1976 = 0, $2034 = 0, $2038 = 0, $2083 = 0, $2087 = 0, $2103 = 0, $2107 = 0, $2123 = 0, $2127 = 0, $687 = Math_fround(0), $2456 = 0, $2469 = 0, $2482 = 0, $2492 = 0, $2498 = 0, $2511 = 0, $840 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$12 = __stack_pointer - 4992 | 0;
|
|
__stack_pointer = $12;
|
|
HEAP32[($12 + 4984 | 0) >> 2] = $0;
|
|
HEAP32[($12 + 4980 | 0) >> 2] = $1;
|
|
HEAP32[($12 + 4976 | 0) >> 2] = $2;
|
|
HEAP32[($12 + 4972 | 0) >> 2] = $3;
|
|
HEAP32[($12 + 4968 | 0) >> 2] = $4;
|
|
HEAP32[($12 + 4964 | 0) >> 2] = $5;
|
|
HEAP32[($12 + 4960 | 0) >> 2] = $6;
|
|
HEAP32[($12 + 4956 | 0) >> 2] = $7;
|
|
HEAP32[($12 + 4952 | 0) >> 2] = $8;
|
|
HEAP32[($12 + 4948 | 0) >> 2] = $9;
|
|
$18 = 0;
|
|
label$1 : {
|
|
if (!((btCollisionShape__isConvex2d_28_29_20const(HEAP32[($12 + 4976 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$18 = btCollisionShape__isConvex2d_28_29_20const(HEAP32[($12 + 4972 | 0) >> 2] | 0 | 0) | 0;
|
|
}
|
|
HEAP8[($12 + 4947 | 0) >> 0] = $18 & 1 | 0;
|
|
HEAPF32[($12 + 4940 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAPF32[($12 + 4916 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($12 + 4912 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($12 + 4908 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($12 + 4920 | 0 | 0, $12 + 4916 | 0 | 0, $12 + 4912 | 0 | 0, $12 + 4908 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($12 + 4888 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($12 + 4872 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($12 + 4856 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($12 + 4840 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($12 + 4824 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($12 + 4808 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($12 + 4792 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($12 + 4776 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($12 + 4760 | 0 | 0) | 0;
|
|
$72 = $12 + 3760 | 0;
|
|
$74 = $72 + 992 | 0;
|
|
$75 = $72;
|
|
label$2 : while (1) {
|
|
$76 = $75;
|
|
btVector3__btVector3_28_29($76 | 0) | 0;
|
|
$78 = $76 + 16 | 0;
|
|
$75 = $78;
|
|
if (!(($78 | 0) == ($74 | 0) & 1 | 0)) {
|
|
continue label$2
|
|
}
|
|
break label$2;
|
|
};
|
|
$86 = $12 + 2768 | 0;
|
|
$88 = $86 + 992 | 0;
|
|
$89 = $86;
|
|
label$3 : while (1) {
|
|
$90 = $89;
|
|
btVector3__btVector3_28_29($90 | 0) | 0;
|
|
$92 = $90 + 16 | 0;
|
|
$89 = $92;
|
|
if (!(($92 | 0) == ($88 | 0) & 1 | 0)) {
|
|
continue label$3
|
|
}
|
|
break label$3;
|
|
};
|
|
$100 = $12 + 1776 | 0;
|
|
$102 = $100 + 992 | 0;
|
|
$103 = $100;
|
|
label$4 : while (1) {
|
|
$104 = $103;
|
|
btVector3__btVector3_28_29($104 | 0) | 0;
|
|
$106 = $104 + 16 | 0;
|
|
$103 = $106;
|
|
if (!(($106 | 0) == ($102 | 0) & 1 | 0)) {
|
|
continue label$4
|
|
}
|
|
break label$4;
|
|
};
|
|
$114 = $12 + 784 | 0;
|
|
$116 = $114 + 992 | 0;
|
|
$117 = $114;
|
|
label$5 : while (1) {
|
|
$118 = $117;
|
|
btVector3__btVector3_28_29($118 | 0) | 0;
|
|
$120 = $118 + 16 | 0;
|
|
$117 = $120;
|
|
if (!(($120 | 0) == ($116 | 0) & 1 | 0)) {
|
|
continue label$5
|
|
}
|
|
break label$5;
|
|
};
|
|
HEAP32[($12 + 776 | 0) >> 2] = 42;
|
|
HEAP32[($12 + 780 | 0) >> 2] = 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($12 + 780 | 0) >> 2] | 0 | 0) < (HEAP32[($12 + 776 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$139 = (btMinkowskiPenetrationDepthSolver__getPenetrationDirections_28_29() | 0) + ((HEAP32[($12 + 780 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
$140 = 8;
|
|
i64toi32_i32$2 = $139 + $140 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1117 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($12 + 760 | 0) + $140 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1117;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $139;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1121 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $12;
|
|
HEAP32[($12 + 760 | 0) >> 2] = $1121;
|
|
HEAP32[($12 + 764 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__29($12 + 728 | 0 | 0, $12 + 760 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btMatrix3x3_20const__29($12 + 744 | 0 | 0, $12 + 728 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($12 + 4968 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$167 = ($12 + 1776 | 0) + ((HEAP32[($12 + 780 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$0 = HEAP32[($12 + 744 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($12 + 748 | 0) >> 2] | 0;
|
|
$1162 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $167;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1162;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$169 = 8;
|
|
i64toi32_i32$2 = ($12 + 744 | 0) + $169 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1175 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $167 + $169 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1175;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btMatrix3x3_20const__29($12 + 712 | 0 | 0, $12 + 760 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($12 + 4964 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$189 = ($12 + 784 | 0) + ((HEAP32[($12 + 780 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$0 = HEAP32[($12 + 712 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($12 + 716 | 0) >> 2] | 0;
|
|
$1206 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $189;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1206;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$191 = 8;
|
|
i64toi32_i32$2 = ($12 + 712 | 0) + $191 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1219 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $189 + $191 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1219;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($12 + 780 | 0) >> 2] = (HEAP32[($12 + 780 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
$200 = HEAP32[($12 + 4976 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$200 >> 2] | 0) + 84 | 0) >> 2] | 0 | 0]($200) | 0), HEAP32[(wasm2js_i32$0 + 708 | 0) >> 2] = wasm2js_i32$1;
|
|
label$8 : {
|
|
if (!(HEAP32[($12 + 708 | 0) >> 2] | 0)) {
|
|
break label$8
|
|
}
|
|
HEAP32[($12 + 704 | 0) >> 2] = 0;
|
|
label$9 : {
|
|
label$10 : while (1) {
|
|
if (!((HEAP32[($12 + 704 | 0) >> 2] | 0 | 0) < (HEAP32[($12 + 708 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
btVector3__btVector3_28_29($12 + 688 | 0 | 0) | 0;
|
|
$216 = HEAP32[($12 + 4976 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$216 >> 2] | 0) + 88 | 0) >> 2] | 0 | 0]($216, HEAP32[($12 + 704 | 0) >> 2] | 0, $12 + 688 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($12 + 672 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($12 + 4968 | 0) >> 2] | 0 | 0) | 0 | 0, $12 + 688 | 0 | 0);
|
|
$231 = 8;
|
|
i64toi32_i32$2 = ($12 + 672 | 0) + $231 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1310 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($12 + 688 | 0) + $231 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1310;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$1 = HEAP32[($12 + 672 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($12 + 676 | 0) >> 2] | 0;
|
|
$1314 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $12;
|
|
HEAP32[($12 + 688 | 0) >> 2] = $1314;
|
|
HEAP32[($12 + 692 | 0) >> 2] = i64toi32_i32$0;
|
|
$244 = (btMinkowskiPenetrationDepthSolver__getPenetrationDirections_28_29() | 0) + ((HEAP32[($12 + 776 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$0 = HEAP32[($12 + 688 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($12 + 692 | 0) >> 2] | 0;
|
|
$1327 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $244;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1327;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$246 = 8;
|
|
i64toi32_i32$2 = ($12 + 688 | 0) + $246 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1340 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $244 + $246 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1340;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__29($12 + 640 | 0 | 0, $12 + 688 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btMatrix3x3_20const__29($12 + 656 | 0 | 0, $12 + 640 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($12 + 4968 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$272 = ($12 + 1776 | 0) + ((HEAP32[($12 + 776 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$0 = HEAP32[($12 + 656 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($12 + 660 | 0) >> 2] | 0;
|
|
$1381 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $272;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1381;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$274 = 8;
|
|
i64toi32_i32$2 = ($12 + 656 | 0) + $274 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1394 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $272 + $274 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1394;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btMatrix3x3_20const__29($12 + 624 | 0 | 0, $12 + 688 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($12 + 4964 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$294 = ($12 + 784 | 0) + ((HEAP32[($12 + 776 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$0 = HEAP32[($12 + 624 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($12 + 628 | 0) >> 2] | 0;
|
|
$1425 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $294;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1425;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$296 = 8;
|
|
i64toi32_i32$2 = ($12 + 624 | 0) + $296 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1438 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $294 + $296 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1438;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($12 + 776 | 0) >> 2] = (HEAP32[($12 + 776 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($12 + 704 | 0) >> 2] = (HEAP32[($12 + 704 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$10;
|
|
};
|
|
}
|
|
}
|
|
$308 = HEAP32[($12 + 4972 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$308 >> 2] | 0) + 84 | 0) >> 2] | 0 | 0]($308) | 0), HEAP32[(wasm2js_i32$0 + 620 | 0) >> 2] = wasm2js_i32$1;
|
|
label$11 : {
|
|
if (!(HEAP32[($12 + 620 | 0) >> 2] | 0)) {
|
|
break label$11
|
|
}
|
|
HEAP32[($12 + 616 | 0) >> 2] = 0;
|
|
label$12 : {
|
|
label$13 : while (1) {
|
|
if (!((HEAP32[($12 + 616 | 0) >> 2] | 0 | 0) < (HEAP32[($12 + 620 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
btVector3__btVector3_28_29($12 + 600 | 0 | 0) | 0;
|
|
$324 = HEAP32[($12 + 4972 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$324 >> 2] | 0) + 88 | 0) >> 2] | 0 | 0]($324, HEAP32[($12 + 616 | 0) >> 2] | 0, $12 + 600 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($12 + 584 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($12 + 4964 | 0) >> 2] | 0 | 0) | 0 | 0, $12 + 600 | 0 | 0);
|
|
$339 = 8;
|
|
i64toi32_i32$2 = ($12 + 584 | 0) + $339 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1536 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($12 + 600 | 0) + $339 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1536;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$1 = HEAP32[($12 + 584 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($12 + 588 | 0) >> 2] | 0;
|
|
$1540 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $12;
|
|
HEAP32[($12 + 600 | 0) >> 2] = $1540;
|
|
HEAP32[($12 + 604 | 0) >> 2] = i64toi32_i32$0;
|
|
$352 = (btMinkowskiPenetrationDepthSolver__getPenetrationDirections_28_29() | 0) + ((HEAP32[($12 + 776 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$0 = HEAP32[($12 + 600 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($12 + 604 | 0) >> 2] | 0;
|
|
$1553 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $352;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1553;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$354 = 8;
|
|
i64toi32_i32$2 = ($12 + 600 | 0) + $354 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1566 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $352 + $354 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1566;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__29($12 + 552 | 0 | 0, $12 + 600 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btMatrix3x3_20const__29($12 + 568 | 0 | 0, $12 + 552 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($12 + 4968 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$380 = ($12 + 1776 | 0) + ((HEAP32[($12 + 776 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$0 = HEAP32[($12 + 568 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($12 + 572 | 0) >> 2] | 0;
|
|
$1607 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $380;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1607;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$382 = 8;
|
|
i64toi32_i32$2 = ($12 + 568 | 0) + $382 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1620 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $380 + $382 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1620;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btMatrix3x3_20const__29($12 + 536 | 0 | 0, $12 + 600 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($12 + 4964 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$402 = ($12 + 784 | 0) + ((HEAP32[($12 + 776 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$0 = HEAP32[($12 + 536 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($12 + 540 | 0) >> 2] | 0;
|
|
$1651 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $402;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1651;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$404 = 8;
|
|
i64toi32_i32$2 = ($12 + 536 | 0) + $404 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1664 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $402 + $404 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1664;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($12 + 776 | 0) >> 2] = (HEAP32[($12 + 776 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($12 + 616 | 0) >> 2] = (HEAP32[($12 + 616 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$13;
|
|
};
|
|
}
|
|
}
|
|
$416 = HEAP32[($12 + 4976 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$416 >> 2] | 0) + 76 | 0) >> 2] | 0 | 0]($416, $12 + 1776 | 0, $12 + 3760 | 0, HEAP32[($12 + 776 | 0) >> 2] | 0);
|
|
$426 = HEAP32[($12 + 4972 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$426 >> 2] | 0) + 76 | 0) >> 2] | 0 | 0]($426, $12 + 784 | 0, $12 + 2768 | 0, HEAP32[($12 + 776 | 0) >> 2] | 0);
|
|
HEAP32[($12 + 780 | 0) >> 2] = 0;
|
|
label$14 : {
|
|
label$15 : while (1) {
|
|
if (!((HEAP32[($12 + 780 | 0) >> 2] | 0 | 0) < (HEAP32[($12 + 776 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
$448 = (btMinkowskiPenetrationDepthSolver__getPenetrationDirections_28_29() | 0) + ((HEAP32[($12 + 780 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
$449 = 8;
|
|
i64toi32_i32$2 = $448 + $449 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1758 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($12 + 520 | 0) + $449 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1758;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $448;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1762 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $12;
|
|
HEAP32[($12 + 520 | 0) >> 2] = $1762;
|
|
HEAP32[($12 + 524 | 0) >> 2] = i64toi32_i32$0;
|
|
label$16 : {
|
|
if (!((HEAPU8[($12 + 4947 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($12 + 520 | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
label$17 : {
|
|
if (!(+Math_fround(btVector3__length2_28_29_20const($12 + 520 | 0 | 0)) > .01 & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
$479 = ($12 + 1776 | 0) + ((HEAP32[($12 + 780 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
$480 = 8;
|
|
i64toi32_i32$2 = $479 + $480 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1819 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($12 + 4856 | 0) + $480 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1819;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $479;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1823 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $12;
|
|
HEAP32[($12 + 4856 | 0) >> 2] = $1823;
|
|
HEAP32[($12 + 4860 | 0) >> 2] = i64toi32_i32$0;
|
|
$493 = ($12 + 784 | 0) + ((HEAP32[($12 + 780 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
$494 = 8;
|
|
i64toi32_i32$2 = $493 + $494 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1848 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($12 + 4840 | 0) + $494 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1848;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $493;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1852 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $12;
|
|
HEAP32[($12 + 4840 | 0) >> 2] = $1852;
|
|
HEAP32[($12 + 4844 | 0) >> 2] = i64toi32_i32$0;
|
|
$507 = ($12 + 3760 | 0) + ((HEAP32[($12 + 780 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
$508 = 8;
|
|
i64toi32_i32$2 = $507 + $508 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1877 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($12 + 4824 | 0) + $508 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1877;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $507;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1881 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $12;
|
|
HEAP32[($12 + 4824 | 0) >> 2] = $1881;
|
|
HEAP32[($12 + 4828 | 0) >> 2] = i64toi32_i32$0;
|
|
$521 = ($12 + 2768 | 0) + ((HEAP32[($12 + 780 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
$522 = 8;
|
|
i64toi32_i32$2 = $521 + $522 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1906 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($12 + 4808 | 0) + $522 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1906;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $521;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1910 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $12;
|
|
HEAP32[($12 + 4808 | 0) >> 2] = $1910;
|
|
HEAP32[($12 + 4812 | 0) >> 2] = i64toi32_i32$0;
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($12 + 504 | 0 | 0, HEAP32[($12 + 4968 | 0) >> 2] | 0 | 0, $12 + 4824 | 0 | 0);
|
|
$536 = 8;
|
|
i64toi32_i32$2 = ($12 + 504 | 0) + $536 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1939 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($12 + 4792 | 0) + $536 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1939;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$1 = HEAP32[($12 + 504 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($12 + 508 | 0) >> 2] | 0;
|
|
$1943 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $12;
|
|
HEAP32[($12 + 4792 | 0) >> 2] = $1943;
|
|
HEAP32[($12 + 4796 | 0) >> 2] = i64toi32_i32$0;
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($12 + 488 | 0 | 0, HEAP32[($12 + 4964 | 0) >> 2] | 0 | 0, $12 + 4808 | 0 | 0);
|
|
$552 = 8;
|
|
i64toi32_i32$2 = ($12 + 488 | 0) + $552 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1972 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($12 + 4776 | 0) + $552 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1972;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$1 = HEAP32[($12 + 488 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($12 + 492 | 0) >> 2] | 0;
|
|
$1976 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $12;
|
|
HEAP32[($12 + 4776 | 0) >> 2] = $1976;
|
|
HEAP32[($12 + 4780 | 0) >> 2] = i64toi32_i32$0;
|
|
label$18 : {
|
|
if (!((HEAPU8[($12 + 4947 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$18
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($12 + 4792 | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($12 + 4776 | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($12 + 472 | 0 | 0, $12 + 4776 | 0 | 0, $12 + 4792 | 0 | 0);
|
|
$585 = 8;
|
|
i64toi32_i32$2 = ($12 + 472 | 0) + $585 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2034 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($12 + 4760 | 0) + $585 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2034;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$1 = HEAP32[($12 + 472 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($12 + 476 | 0) >> 2] | 0;
|
|
$2038 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $12;
|
|
HEAP32[($12 + 4760 | 0) >> 2] = $2038;
|
|
HEAP32[($12 + 4764 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $12, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($12 + 520 | 0 | 0, $12 + 4760 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 468 | 0) >> 2] = wasm2js_f32$0;
|
|
label$19 : {
|
|
if (!(Math_fround(HEAPF32[($12 + 468 | 0) >> 2]) < Math_fround(HEAPF32[($12 + 4940 | 0) >> 2]) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
HEAPF32[($12 + 4940 | 0) >> 2] = Math_fround(HEAPF32[($12 + 468 | 0) >> 2]);
|
|
$607 = 8;
|
|
i64toi32_i32$2 = ($12 + 520 | 0) + $607 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2083 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($12 + 4920 | 0) + $607 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2083;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$1 = HEAP32[($12 + 520 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($12 + 524 | 0) >> 2] | 0;
|
|
$2087 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $12;
|
|
HEAP32[($12 + 4920 | 0) >> 2] = $2087;
|
|
HEAP32[($12 + 4924 | 0) >> 2] = i64toi32_i32$0;
|
|
$616 = 8;
|
|
i64toi32_i32$2 = ($12 + 4792 | 0) + $616 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2103 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($12 + 4888 | 0) + $616 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2103;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$1 = HEAP32[($12 + 4792 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($12 + 4796 | 0) >> 2] | 0;
|
|
$2107 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $12;
|
|
HEAP32[($12 + 4888 | 0) >> 2] = $2107;
|
|
HEAP32[($12 + 4892 | 0) >> 2] = i64toi32_i32$0;
|
|
$625 = 8;
|
|
i64toi32_i32$2 = ($12 + 4776 | 0) + $625 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2123 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($12 + 4872 | 0) + $625 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2123;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$1 = HEAP32[($12 + 4776 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($12 + 4780 | 0) >> 2] | 0;
|
|
$2127 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $12;
|
|
HEAP32[($12 + 4872 | 0) >> 2] = $2127;
|
|
HEAP32[($12 + 4876 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
}
|
|
HEAP32[($12 + 780 | 0) >> 2] = (HEAP32[($12 + 780 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$15;
|
|
};
|
|
}
|
|
(wasm2js_i32$0 = $12, wasm2js_f32$0 = Math_fround(btConvexShape__getMarginNonVirtual_28_29_20const(HEAP32[($12 + 4976 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 448 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($12 + 452 | 0 | 0, $12 + 4920 | 0 | 0, $12 + 448 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($12 + 4888 | 0 | 0, $12 + 452 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $12, wasm2js_f32$0 = Math_fround(btConvexShape__getMarginNonVirtual_28_29_20const(HEAP32[($12 + 4972 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 428 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($12 + 432 | 0 | 0, $12 + 4920 | 0 | 0, $12 + 428 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29($12 + 4872 | 0 | 0, $12 + 432 | 0 | 0) | 0;
|
|
label$20 : {
|
|
label$21 : {
|
|
if (!(Math_fround(HEAPF32[($12 + 4940 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$21
|
|
}
|
|
HEAP8[($12 + 4991 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$20;
|
|
}
|
|
HEAPF32[($12 + 424 | 0) >> 2] = Math_fround(.5);
|
|
$687 = Math_fround(Math_fround(HEAPF32[($12 + 424 | 0) >> 2]) + Math_fround(Math_fround(btConvexShape__getMarginNonVirtual_28_29_20const(HEAP32[($12 + 4976 | 0) >> 2] | 0 | 0)) + Math_fround(btConvexShape__getMarginNonVirtual_28_29_20const(HEAP32[($12 + 4972 | 0) >> 2] | 0 | 0))));
|
|
HEAPF32[($12 + 4940 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($12 + 4940 | 0) >> 2]) + $687);
|
|
btGjkPairDetector__btGjkPairDetector_28btConvexShape_20const__2c_20btConvexShape_20const__2c_20btVoronoiSimplexSolver__2c_20btConvexPenetrationDepthSolver__29($12 + 344 | 0 | 0, HEAP32[($12 + 4976 | 0) >> 2] | 0 | 0, HEAP32[($12 + 4972 | 0) >> 2] | 0 | 0, HEAP32[($12 + 4980 | 0) >> 2] | 0 | 0, 0 | 0) | 0;
|
|
HEAPF32[($12 + 340 | 0) >> 2] = Math_fround(HEAPF32[($12 + 4940 | 0) >> 2]);
|
|
operator__28btVector3_20const__2c_20float_20const__29($12 + 324 | 0 | 0, $12 + 4920 | 0 | 0, $12 + 340 | 0 | 0);
|
|
btDiscreteCollisionDetectorInterface__ClosestPointInput__ClosestPointInput_28_29($12 + 192 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($12 + 176 | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($12 + 4968 | 0) >> 2] | 0 | 0) | 0 | 0, $12 + 324 | 0 | 0);
|
|
btTransform__btTransform_28btTransform_20const__29($12 + 112 | 0 | 0, HEAP32[($12 + 4968 | 0) >> 2] | 0 | 0) | 0;
|
|
btTransform__setOrigin_28btVector3_20const__29($12 + 112 | 0 | 0, $12 + 176 | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29($12 + 192 | 0 | 0, $12 + 112 | 0 | 0) | 0;
|
|
btTransform__operator__28btTransform_20const__29(($12 + 192 | 0) + 64 | 0 | 0, HEAP32[($12 + 4964 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($12 + 320 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
btMinkowskiPenetrationDepthSolver__calcPenDepth_28btVoronoiSimplexSolver__2c_20btConvexShape_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3__2c_20btVector3__2c_20btVector3__2c_20btIDebugDraw__29__btIntermediateResult__btIntermediateResult_28_29($12 + 68 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__29($12 + 52 | 0 | 0, $12 + 4920 | 0 | 0);
|
|
btGjkPairDetector__setCachedSeperatingAxis_28btVector3_20const__29($12 + 344 | 0 | 0, $12 + 52 | 0 | 0);
|
|
btGjkPairDetector__getClosestPoints_28btDiscreteCollisionDetectorInterface__ClosestPointInput_20const__2c_20btDiscreteCollisionDetectorInterface__Result__2c_20btIDebugDraw__2c_20bool_29($12 + 344 | 0 | 0, $12 + 192 | 0 | 0, $12 + 68 | 0 | 0, HEAP32[($12 + 4948 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
HEAPF32[($12 + 48 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($12 + 4940 | 0) >> 2]) - Math_fround(HEAPF32[($12 + 104 | 0) >> 2]));
|
|
HEAPF32[($12 + 44 | 0) >> 2] = Math_fround(1.0);
|
|
btVector3__operator___28float_20const__29_1($12 + 4920 | 0 | 0, $12 + 44 | 0 | 0) | 0;
|
|
label$22 : {
|
|
if (!((HEAPU8[($12 + 108 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$22
|
|
}
|
|
operator__28btVector3_20const__2c_20float_20const__29($12 + 12 | 0 | 0, $12 + 4920 | 0 | 0, $12 + 48 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($12 + 28 | 0 | 0, ($12 + 68 | 0) + 20 | 0 | 0, $12 + 12 | 0 | 0);
|
|
$802 = HEAP32[($12 + 4956 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$0 = HEAP32[($12 + 28 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($12 + 32 | 0) >> 2] | 0;
|
|
$2456 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $802;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2456;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$804 = 8;
|
|
i64toi32_i32$2 = ($12 + 28 | 0) + $804 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2469 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $802 + $804 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $2469;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$815 = HEAP32[($12 + 4952 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = ($12 + 68 | 0) + 20 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2482 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $815;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2482;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$817 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $817 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2492 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $815 + $817 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $2492;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$821 = HEAP32[($12 + 4960 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$0 = HEAP32[($12 + 4920 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($12 + 4924 | 0) >> 2] | 0;
|
|
$2498 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $821;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2498;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$823 = 8;
|
|
i64toi32_i32$2 = ($12 + 4920 | 0) + $823 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2511 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $821 + $823 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $2511;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
HEAP8[($12 + 4991 | 0) >> 0] = (HEAPU8[($12 + 108 | 0) >> 0] | 0) & 1 | 0;
|
|
btMinkowskiPenetrationDepthSolver__calcPenDepth_28btVoronoiSimplexSolver__2c_20btConvexShape_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3__2c_20btVector3__2c_20btVector3__2c_20btIDebugDraw__29__btIntermediateResult___btIntermediateResult_28_29($12 + 68 | 0 | 0) | 0;
|
|
btGjkPairDetector___btGjkPairDetector_28_29($12 + 344 | 0 | 0) | 0;
|
|
}
|
|
$840 = (HEAPU8[($12 + 4991 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $12 + 4992 | 0;
|
|
return $840 | 0;
|
|
}
|
|
|
|
function btMinkowskiPenetrationDepthSolver__getPenetrationDirections_28_29() {
|
|
var $2 = 0, $655 = 0, $656 = 0, $658 = 0;
|
|
$2 = __stack_pointer - 512 | 0;
|
|
__stack_pointer = $2;
|
|
label$1 : {
|
|
if (!(((HEAPU8[(0 + 115344 | 0) >> 0] | 0) & 255 | 0 | 0) == (0 & 255 | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[($2 + 508 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($2 + 504 | 0) >> 2] = Math_fround(-0.0);
|
|
HEAPF32[($2 + 500 | 0) >> 2] = Math_fround(-1.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 | 0, $2 + 508 | 0 | 0, $2 + 504 | 0 | 0, $2 + 500 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 496 | 0) >> 2] = Math_fround(.7236080169677734);
|
|
HEAPF32[($2 + 492 | 0) >> 2] = Math_fround(-.5257250070571899);
|
|
HEAPF32[($2 + 488 | 0) >> 2] = Math_fround(-.44721901416778564);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 16 | 0 | 0, $2 + 496 | 0 | 0, $2 + 492 | 0 | 0, $2 + 488 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 484 | 0) >> 2] = Math_fround(-.2763879895210266);
|
|
HEAPF32[($2 + 480 | 0) >> 2] = Math_fround(-.8506489992141724);
|
|
HEAPF32[($2 + 476 | 0) >> 2] = Math_fround(-.44721901416778564);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 32 | 0 | 0, $2 + 484 | 0 | 0, $2 + 480 | 0 | 0, $2 + 476 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 472 | 0) >> 2] = Math_fround(-.8944259881973267);
|
|
HEAPF32[($2 + 468 | 0) >> 2] = Math_fround(-0.0);
|
|
HEAPF32[($2 + 464 | 0) >> 2] = Math_fround(-.4472160041332245);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 48 | 0 | 0, $2 + 472 | 0 | 0, $2 + 468 | 0 | 0, $2 + 464 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 460 | 0) >> 2] = Math_fround(-.2763879895210266);
|
|
HEAPF32[($2 + 456 | 0) >> 2] = Math_fround(.8506489992141724);
|
|
HEAPF32[($2 + 452 | 0) >> 2] = Math_fround(-.44721999764442444);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 64 | 0 | 0, $2 + 460 | 0 | 0, $2 + 456 | 0 | 0, $2 + 452 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 448 | 0) >> 2] = Math_fround(.7236080169677734);
|
|
HEAPF32[($2 + 444 | 0) >> 2] = Math_fround(.5257250070571899);
|
|
HEAPF32[($2 + 440 | 0) >> 2] = Math_fround(-.44721901416778564);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 80 | 0 | 0, $2 + 448 | 0 | 0, $2 + 444 | 0 | 0, $2 + 440 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 436 | 0) >> 2] = Math_fround(.2763879895210266);
|
|
HEAPF32[($2 + 432 | 0) >> 2] = Math_fround(-.8506489992141724);
|
|
HEAPF32[($2 + 428 | 0) >> 2] = Math_fround(.44721999764442444);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 96 | 0 | 0, $2 + 436 | 0 | 0, $2 + 432 | 0 | 0, $2 + 428 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 424 | 0) >> 2] = Math_fround(-.7236080169677734);
|
|
HEAPF32[($2 + 420 | 0) >> 2] = Math_fround(-.5257250070571899);
|
|
HEAPF32[($2 + 416 | 0) >> 2] = Math_fround(.44721901416778564);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 112 | 0 | 0, $2 + 424 | 0 | 0, $2 + 420 | 0 | 0, $2 + 416 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 412 | 0) >> 2] = Math_fround(-.7236080169677734);
|
|
HEAPF32[($2 + 408 | 0) >> 2] = Math_fround(.5257250070571899);
|
|
HEAPF32[($2 + 404 | 0) >> 2] = Math_fround(.44721901416778564);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 128 | 0 | 0, $2 + 412 | 0 | 0, $2 + 408 | 0 | 0, $2 + 404 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 400 | 0) >> 2] = Math_fround(.2763879895210266);
|
|
HEAPF32[($2 + 396 | 0) >> 2] = Math_fround(.8506489992141724);
|
|
HEAPF32[($2 + 392 | 0) >> 2] = Math_fround(.44721901416778564);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 144 | 0 | 0, $2 + 400 | 0 | 0, $2 + 396 | 0 | 0, $2 + 392 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 388 | 0) >> 2] = Math_fround(.8944259881973267);
|
|
HEAPF32[($2 + 384 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($2 + 380 | 0) >> 2] = Math_fround(.4472160041332245);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 160 | 0 | 0, $2 + 388 | 0 | 0, $2 + 384 | 0 | 0, $2 + 380 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 376 | 0) >> 2] = Math_fround(-0.0);
|
|
HEAPF32[($2 + 372 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($2 + 368 | 0) >> 2] = Math_fround(1.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 176 | 0 | 0, $2 + 376 | 0 | 0, $2 + 372 | 0 | 0, $2 + 368 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 364 | 0) >> 2] = Math_fround(.4253230094909668);
|
|
HEAPF32[($2 + 360 | 0) >> 2] = Math_fround(-.3090110123157501);
|
|
HEAPF32[($2 + 356 | 0) >> 2] = Math_fround(-.8506540060043335);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 192 | 0 | 0, $2 + 364 | 0 | 0, $2 + 360 | 0 | 0, $2 + 356 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 352 | 0) >> 2] = Math_fround(-.16245600581169128);
|
|
HEAPF32[($2 + 348 | 0) >> 2] = Math_fround(-.49999499320983887);
|
|
HEAPF32[($2 + 344 | 0) >> 2] = Math_fround(-.8506540060043335);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 208 | 0 | 0, $2 + 352 | 0 | 0, $2 + 348 | 0 | 0, $2 + 344 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 340 | 0) >> 2] = Math_fround(.2628690004348755);
|
|
HEAPF32[($2 + 336 | 0) >> 2] = Math_fround(-.8090119957923889);
|
|
HEAPF32[($2 + 332 | 0) >> 2] = Math_fround(-.525738000869751);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 224 | 0 | 0, $2 + 340 | 0 | 0, $2 + 336 | 0 | 0, $2 + 332 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 328 | 0) >> 2] = Math_fround(.4253230094909668);
|
|
HEAPF32[($2 + 324 | 0) >> 2] = Math_fround(.3090110123157501);
|
|
HEAPF32[($2 + 320 | 0) >> 2] = Math_fround(-.8506540060043335);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 240 | 0 | 0, $2 + 328 | 0 | 0, $2 + 324 | 0 | 0, $2 + 320 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 316 | 0) >> 2] = Math_fround(.8506479859352112);
|
|
HEAPF32[($2 + 312 | 0) >> 2] = Math_fround(-0.0);
|
|
HEAPF32[($2 + 308 | 0) >> 2] = Math_fround(-.5257359743118286);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 256 | 0 | 0, $2 + 316 | 0 | 0, $2 + 312 | 0 | 0, $2 + 308 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 304 | 0) >> 2] = Math_fround(-.5257300138473511);
|
|
HEAPF32[($2 + 300 | 0) >> 2] = Math_fround(-0.0);
|
|
HEAPF32[($2 + 296 | 0) >> 2] = Math_fround(-.8506519794464111);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 272 | 0 | 0, $2 + 304 | 0 | 0, $2 + 300 | 0 | 0, $2 + 296 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 292 | 0) >> 2] = Math_fround(-.6881899833679199);
|
|
HEAPF32[($2 + 288 | 0) >> 2] = Math_fround(-.49999698996543884);
|
|
HEAPF32[($2 + 284 | 0) >> 2] = Math_fround(-.5257359743118286);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 288 | 0 | 0, $2 + 292 | 0 | 0, $2 + 288 | 0 | 0, $2 + 284 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 280 | 0) >> 2] = Math_fround(-.16245600581169128);
|
|
HEAPF32[($2 + 276 | 0) >> 2] = Math_fround(.49999499320983887);
|
|
HEAPF32[($2 + 272 | 0) >> 2] = Math_fround(-.8506540060043335);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 304 | 0 | 0, $2 + 280 | 0 | 0, $2 + 276 | 0 | 0, $2 + 272 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 268 | 0) >> 2] = Math_fround(-.6881899833679199);
|
|
HEAPF32[($2 + 264 | 0) >> 2] = Math_fround(.49999698996543884);
|
|
HEAPF32[($2 + 260 | 0) >> 2] = Math_fround(-.5257359743118286);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 320 | 0 | 0, $2 + 268 | 0 | 0, $2 + 264 | 0 | 0, $2 + 260 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 256 | 0) >> 2] = Math_fround(.2628690004348755);
|
|
HEAPF32[($2 + 252 | 0) >> 2] = Math_fround(.8090119957923889);
|
|
HEAPF32[($2 + 248 | 0) >> 2] = Math_fround(-.525738000869751);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 336 | 0 | 0, $2 + 256 | 0 | 0, $2 + 252 | 0 | 0, $2 + 248 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 244 | 0) >> 2] = Math_fround(.9510579705238342);
|
|
HEAPF32[($2 + 240 | 0) >> 2] = Math_fround(.3090130090713501);
|
|
HEAPF32[($2 + 236 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 352 | 0 | 0, $2 + 244 | 0 | 0, $2 + 240 | 0 | 0, $2 + 236 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 232 | 0) >> 2] = Math_fround(.9510579705238342);
|
|
HEAPF32[($2 + 228 | 0) >> 2] = Math_fround(-.3090130090713501);
|
|
HEAPF32[($2 + 224 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 368 | 0 | 0, $2 + 232 | 0 | 0, $2 + 228 | 0 | 0, $2 + 224 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 220 | 0) >> 2] = Math_fround(.5877860188484192);
|
|
HEAPF32[($2 + 216 | 0) >> 2] = Math_fround(-.80901700258255);
|
|
HEAPF32[($2 + 212 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 384 | 0 | 0, $2 + 220 | 0 | 0, $2 + 216 | 0 | 0, $2 + 212 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 208 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($2 + 204 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[($2 + 200 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 400 | 0 | 0, $2 + 208 | 0 | 0, $2 + 204 | 0 | 0, $2 + 200 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 196 | 0) >> 2] = Math_fround(-.5877860188484192);
|
|
HEAPF32[($2 + 192 | 0) >> 2] = Math_fround(-.80901700258255);
|
|
HEAPF32[($2 + 188 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 416 | 0 | 0, $2 + 196 | 0 | 0, $2 + 192 | 0 | 0, $2 + 188 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 184 | 0) >> 2] = Math_fround(-.9510579705238342);
|
|
HEAPF32[($2 + 180 | 0) >> 2] = Math_fround(-.3090130090713501);
|
|
HEAPF32[($2 + 176 | 0) >> 2] = Math_fround(-0.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 432 | 0 | 0, $2 + 184 | 0 | 0, $2 + 180 | 0 | 0, $2 + 176 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 172 | 0) >> 2] = Math_fround(-.9510579705238342);
|
|
HEAPF32[($2 + 168 | 0) >> 2] = Math_fround(.3090130090713501);
|
|
HEAPF32[($2 + 164 | 0) >> 2] = Math_fround(-0.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 448 | 0 | 0, $2 + 172 | 0 | 0, $2 + 168 | 0 | 0, $2 + 164 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 160 | 0) >> 2] = Math_fround(-.5877860188484192);
|
|
HEAPF32[($2 + 156 | 0) >> 2] = Math_fround(.80901700258255);
|
|
HEAPF32[($2 + 152 | 0) >> 2] = Math_fround(-0.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 464 | 0 | 0, $2 + 160 | 0 | 0, $2 + 156 | 0 | 0, $2 + 152 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 148 | 0) >> 2] = Math_fround(-0.0);
|
|
HEAPF32[($2 + 144 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($2 + 140 | 0) >> 2] = Math_fround(-0.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 480 | 0 | 0, $2 + 148 | 0 | 0, $2 + 144 | 0 | 0, $2 + 140 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 136 | 0) >> 2] = Math_fround(.5877860188484192);
|
|
HEAPF32[($2 + 132 | 0) >> 2] = Math_fround(.80901700258255);
|
|
HEAPF32[($2 + 128 | 0) >> 2] = Math_fround(-0.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 496 | 0 | 0, $2 + 136 | 0 | 0, $2 + 132 | 0 | 0, $2 + 128 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 124 | 0) >> 2] = Math_fround(.6881899833679199);
|
|
HEAPF32[($2 + 120 | 0) >> 2] = Math_fround(-.49999698996543884);
|
|
HEAPF32[($2 + 116 | 0) >> 2] = Math_fround(.5257359743118286);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 512 | 0 | 0, $2 + 124 | 0 | 0, $2 + 120 | 0 | 0, $2 + 116 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 112 | 0) >> 2] = Math_fround(-.2628690004348755);
|
|
HEAPF32[($2 + 108 | 0) >> 2] = Math_fround(-.8090119957923889);
|
|
HEAPF32[($2 + 104 | 0) >> 2] = Math_fround(.525738000869751);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 528 | 0 | 0, $2 + 112 | 0 | 0, $2 + 108 | 0 | 0, $2 + 104 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 100 | 0) >> 2] = Math_fround(-.8506479859352112);
|
|
HEAPF32[($2 + 96 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($2 + 92 | 0) >> 2] = Math_fround(.5257359743118286);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 544 | 0 | 0, $2 + 100 | 0 | 0, $2 + 96 | 0 | 0, $2 + 92 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 88 | 0) >> 2] = Math_fround(-.2628690004348755);
|
|
HEAPF32[($2 + 84 | 0) >> 2] = Math_fround(.8090119957923889);
|
|
HEAPF32[($2 + 80 | 0) >> 2] = Math_fround(.525738000869751);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 560 | 0 | 0, $2 + 88 | 0 | 0, $2 + 84 | 0 | 0, $2 + 80 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 76 | 0) >> 2] = Math_fround(.6881899833679199);
|
|
HEAPF32[($2 + 72 | 0) >> 2] = Math_fround(.49999698996543884);
|
|
HEAPF32[($2 + 68 | 0) >> 2] = Math_fround(.5257359743118286);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 576 | 0 | 0, $2 + 76 | 0 | 0, $2 + 72 | 0 | 0, $2 + 68 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 64 | 0) >> 2] = Math_fround(.5257300138473511);
|
|
HEAPF32[($2 + 60 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($2 + 56 | 0) >> 2] = Math_fround(.8506519794464111);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 592 | 0 | 0, $2 + 64 | 0 | 0, $2 + 60 | 0 | 0, $2 + 56 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 52 | 0) >> 2] = Math_fround(.16245600581169128);
|
|
HEAPF32[($2 + 48 | 0) >> 2] = Math_fround(-.49999499320983887);
|
|
HEAPF32[($2 + 44 | 0) >> 2] = Math_fround(.8506540060043335);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 608 | 0 | 0, $2 + 52 | 0 | 0, $2 + 48 | 0 | 0, $2 + 44 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 40 | 0) >> 2] = Math_fround(-.4253230094909668);
|
|
HEAPF32[($2 + 36 | 0) >> 2] = Math_fround(-.3090110123157501);
|
|
HEAPF32[($2 + 32 | 0) >> 2] = Math_fround(.8506540060043335);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 624 | 0 | 0, $2 + 40 | 0 | 0, $2 + 36 | 0 | 0, $2 + 32 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 28 | 0) >> 2] = Math_fround(-.4253230094909668);
|
|
HEAPF32[($2 + 24 | 0) >> 2] = Math_fround(.3090110123157501);
|
|
HEAPF32[($2 + 20 | 0) >> 2] = Math_fround(.8506540060043335);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 640 | 0 | 0, $2 + 28 | 0 | 0, $2 + 24 | 0 | 0, $2 + 20 | 0 | 0) | 0;
|
|
HEAPF32[($2 + 16 | 0) >> 2] = Math_fround(.16245600581169128);
|
|
HEAPF32[($2 + 12 | 0) >> 2] = Math_fround(.49999499320983887);
|
|
HEAPF32[($2 + 8 | 0) >> 2] = Math_fround(.8506540060043335);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(114352 + 656 | 0 | 0, $2 + 16 | 0 | 0, $2 + 12 | 0 | 0, $2 + 8 | 0 | 0) | 0;
|
|
$655 = 114352 + 672 | 0;
|
|
label$2 : while (1) {
|
|
$656 = $655;
|
|
btVector3__btVector3_28_29($656 | 0) | 0;
|
|
$658 = $656 + 16 | 0;
|
|
$655 = $658;
|
|
if (!(($658 | 0) == (114352 + 992 | 0 | 0) & 1 | 0)) {
|
|
continue label$2
|
|
}
|
|
break label$2;
|
|
};
|
|
HEAP8[(0 + 115344 | 0) >> 0] = 1;
|
|
}
|
|
__stack_pointer = $2 + 512 | 0;
|
|
return 114352 | 0;
|
|
}
|
|
|
|
function btMinkowskiPenetrationDepthSolver__calcPenDepth_28btVoronoiSimplexSolver__2c_20btConvexShape_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3__2c_20btVector3__2c_20btVector3__2c_20btIDebugDraw__29__btIntermediateResult__btIntermediateResult_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btDiscreteCollisionDetectorInterface__Result__Result_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 101588 + 8 | 0;
|
|
btVector3__btVector3_28_29($4 + 4 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 20 | 0 | 0) | 0;
|
|
HEAP8[($4 + 40 | 0) >> 0] = 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btGjkPairDetector__setCachedSeperatingAxis_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, $8 = 0, $10 = 0, $32 = 0, $42 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$8 = (HEAP32[($4 + 12 | 0) >> 2] | 0) + 4 | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$32 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $8;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $32;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$10 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $10 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$42 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8 + $10 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $42;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function btMinkowskiPenetrationDepthSolver__calcPenDepth_28btVoronoiSimplexSolver__2c_20btConvexShape_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3__2c_20btVector3__2c_20btVector3__2c_20btIDebugDraw__29__btIntermediateResult___btIntermediateResult_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btDiscreteCollisionDetectorInterface__Result___Result_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btMinkowskiPenetrationDepthSolver___btMinkowskiPenetrationDepthSolver_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConvexPenetrationDepthSolver___btConvexPenetrationDepthSolver_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btMinkowskiPenetrationDepthSolver___btMinkowskiPenetrationDepthSolver_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btMinkowskiPenetrationDepthSolver___btMinkowskiPenetrationDepthSolver_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btMinkowskiPenetrationDepthSolver__calcPenDepth_28btVoronoiSimplexSolver__2c_20btConvexShape_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3__2c_20btVector3__2c_20btVector3__2c_20btIDebugDraw__29__btIntermediateResult___btIntermediateResult_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btMinkowskiPenetrationDepthSolver__calcPenDepth_28btVoronoiSimplexSolver__2c_20btConvexShape_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3__2c_20btVector3__2c_20btVector3__2c_20btIDebugDraw__29__btIntermediateResult___btIntermediateResult_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btMinkowskiPenetrationDepthSolver__calcPenDepth_28btVoronoiSimplexSolver__2c_20btConvexShape_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3__2c_20btVector3__2c_20btVector3__2c_20btIDebugDraw__29__btIntermediateResult__setShapeIdentifiersA_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
return;
|
|
}
|
|
|
|
function btMinkowskiPenetrationDepthSolver__calcPenDepth_28btVoronoiSimplexSolver__2c_20btConvexShape_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3__2c_20btVector3__2c_20btVector3__2c_20btIDebugDraw__29__btIntermediateResult__setShapeIdentifiersB_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
return;
|
|
}
|
|
|
|
function btMinkowskiPenetrationDepthSolver__calcPenDepth_28btVoronoiSimplexSolver__2c_20btConvexShape_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3__2c_20btVector3__2c_20btVector3__2c_20btIDebugDraw__29__btIntermediateResult__addContactPoint_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, $7 = 0, $10 = 0, $12 = 0, $18 = 0, $20 = 0, $48 = 0, $58 = 0, $67 = 0, $77 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAPF32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
$10 = $7 + 4 | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$48 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $10;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $48;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$12 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $12 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$58 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $10 + $12 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $58;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$18 = $7 + 20 | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$67 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $18;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $67;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$20 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $20 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$77 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $18 + $20 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $77;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($7 + 36 | 0) >> 2] = Math_fround(HEAPF32[$6 >> 2]);
|
|
HEAP8[($7 + 40 | 0) >> 0] = 1;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btMinkowskiPenetrationDepthSolver_cpp() {
|
|
__cxx_global_var_init_62();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_63() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(115348 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btPersistentManifold__btPersistentManifold_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0, $7 = 0, $10 = 0, $11 = 0, $13 = 0, $9 = 0, $23 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
btTypedObject__btTypedObject_28int_29($4 | 0, 1025 | 0) | 0;
|
|
$7 = $4 + 4 | 0;
|
|
$9 = $7 + 832 | 0;
|
|
$10 = $7;
|
|
label$1 : while (1) {
|
|
$11 = $10;
|
|
btManifoldPoint__btManifoldPoint_28_29($11 | 0) | 0;
|
|
$13 = $11 + 208 | 0;
|
|
$10 = $13;
|
|
if (!(($13 | 0) == ($9 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
HEAP32[($4 + 836 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 840 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 844 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 864 | 0) >> 2] = 0;
|
|
$23 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $23 | 0;
|
|
}
|
|
|
|
function btPersistentManifold__clearUserCache_28btManifoldPoint__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 116 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 116 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if (!((HEAP32[(0 + 115352 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
FUNCTION_TABLE[HEAP32[(0 + 115352 | 0) >> 2] | 0 | 0](HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 116 | 0) >> 2] | 0) | 0;
|
|
HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 116 | 0) >> 2] = 0;
|
|
}
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPersistentManifold__sortCachedPoints_28btManifoldPoint_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $286 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 256 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 252 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 248 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 252 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 244 | 0) >> 2] = -1;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btManifoldPoint__getDistance_28_29_20const(HEAP32[($4 + 248 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 240 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP32[($4 + 236 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 236 | 0) >> 2] | 0 | 0) < (4 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$3 : {
|
|
if (!(Math_fround(btManifoldPoint__getDistance_28_29_20const(($5 + 4 | 0) + Math_imul(HEAP32[($4 + 236 | 0) >> 2] | 0, 208) | 0 | 0)) < Math_fround(HEAPF32[($4 + 240 | 0) >> 2]) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($4 + 244 | 0) >> 2] = HEAP32[($4 + 236 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btManifoldPoint__getDistance_28_29_20const(($5 + 4 | 0) + Math_imul(HEAP32[($4 + 236 | 0) >> 2] | 0, 208) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 240 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
HEAP32[($4 + 236 | 0) >> 2] = (HEAP32[($4 + 236 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
HEAPF32[($4 + 232 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 228 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 224 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 220 | 0) >> 2] = Math_fround(0 | 0);
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!((HEAPU8[(0 + 112844 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
label$6 : {
|
|
if (!(HEAP32[($4 + 244 | 0) >> 2] | 0)) {
|
|
break label$6
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 204 | 0 | 0, HEAP32[($4 + 248 | 0) >> 2] | 0 | 0, ($5 + 4 | 0) + 208 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 188 | 0 | 0, ($5 + 4 | 0) + 624 | 0 | 0, ($5 + 4 | 0) + 416 | 0 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($4 + 172 | 0 | 0, $4 + 204 | 0 | 0, $4 + 188 | 0 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($4 + 172 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 232 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
label$7 : {
|
|
if (!((HEAP32[($4 + 244 | 0) >> 2] | 0 | 0) != (1 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 156 | 0 | 0, HEAP32[($4 + 248 | 0) >> 2] | 0 | 0, $5 + 4 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 140 | 0 | 0, ($5 + 4 | 0) + 624 | 0 | 0, ($5 + 4 | 0) + 416 | 0 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($4 + 124 | 0 | 0, $4 + 156 | 0 | 0, $4 + 140 | 0 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($4 + 124 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 228 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
label$8 : {
|
|
if (!((HEAP32[($4 + 244 | 0) >> 2] | 0 | 0) != (2 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 108 | 0 | 0, HEAP32[($4 + 248 | 0) >> 2] | 0 | 0, $5 + 4 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 92 | 0 | 0, ($5 + 4 | 0) + 624 | 0 | 0, ($5 + 4 | 0) + 208 | 0 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($4 + 76 | 0 | 0, $4 + 108 | 0 | 0, $4 + 92 | 0 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($4 + 76 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 224 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
label$9 : {
|
|
if (!((HEAP32[($4 + 244 | 0) >> 2] | 0 | 0) != (3 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 60 | 0 | 0, HEAP32[($4 + 248 | 0) >> 2] | 0 | 0, $5 + 4 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 44 | 0 | 0, ($5 + 4 | 0) + 416 | 0 | 0, ($5 + 4 | 0) + 208 | 0 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($4 + 28 | 0 | 0, $4 + 60 | 0 | 0, $4 + 44 | 0 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($4 + 28 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 220 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
break label$4;
|
|
}
|
|
label$10 : {
|
|
if (!(HEAP32[($4 + 244 | 0) >> 2] | 0)) {
|
|
break label$10
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(calcArea4Points_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29(HEAP32[($4 + 248 | 0) >> 2] | 0 | 0, ($5 + 4 | 0) + 208 | 0 | 0, ($5 + 4 | 0) + 416 | 0 | 0, ($5 + 4 | 0) + 624 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 232 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
label$11 : {
|
|
if (!((HEAP32[($4 + 244 | 0) >> 2] | 0 | 0) != (1 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(calcArea4Points_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29(HEAP32[($4 + 248 | 0) >> 2] | 0 | 0, $5 + 4 | 0 | 0, ($5 + 4 | 0) + 416 | 0 | 0, ($5 + 4 | 0) + 624 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 228 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
label$12 : {
|
|
if (!((HEAP32[($4 + 244 | 0) >> 2] | 0 | 0) != (2 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(calcArea4Points_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29(HEAP32[($4 + 248 | 0) >> 2] | 0 | 0, $5 + 4 | 0 | 0, ($5 + 4 | 0) + 208 | 0 | 0, ($5 + 4 | 0) + 624 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 224 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
label$13 : {
|
|
if (!((HEAP32[($4 + 244 | 0) >> 2] | 0 | 0) != (3 | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(calcArea4Points_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29(HEAP32[($4 + 248 | 0) >> 2] | 0 | 0, $5 + 4 | 0 | 0, ($5 + 4 | 0) + 208 | 0 | 0, ($5 + 4 | 0) + 416 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 220 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
}
|
|
btVector4__btVector4_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($4 + 12 | 0 | 0, $4 + 232 | 0 | 0, $4 + 228 | 0 | 0, $4 + 224 | 0 | 0, $4 + 220 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btVector4__closestAxis4_28_29_20const($4 + 12 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
$286 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 256 | 0;
|
|
return $286 | 0;
|
|
}
|
|
|
|
function calcArea4Points_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $9 = 0, $12 = 0, $13 = 0, $15 = 0, $23 = 0, $26 = 0, $27 = 0, $29 = 0, $42 = 0, $44 = 0, $59 = 0, $61 = 0, $76 = 0, $78 = 0, $91 = 0, $93 = 0, $108 = 0, $110 = 0, $125 = 0, $127 = 0, $11 = 0, $25 = 0, $275 = 0, $288 = 0, $310 = 0, $323 = 0, $345 = 0, $358 = 0, $377 = 0, $390 = 0, $412 = 0, $425 = 0, $447 = 0, $460 = 0, $182 = 0, $191 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 272 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 268 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 264 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 260 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 256 | 0) >> 2] = $3;
|
|
$9 = $6 + 208 | 0;
|
|
$11 = $9 + 48 | 0;
|
|
$12 = $9;
|
|
label$1 : while (1) {
|
|
$13 = $12;
|
|
btVector3__btVector3_28_29($13 | 0) | 0;
|
|
$15 = $13 + 16 | 0;
|
|
$12 = $15;
|
|
if (!(($15 | 0) == ($11 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
$23 = $6 + 160 | 0;
|
|
$25 = $23 + 48 | 0;
|
|
$26 = $23;
|
|
label$2 : while (1) {
|
|
$27 = $26;
|
|
btVector3__btVector3_28_29($27 | 0) | 0;
|
|
$29 = $27 + 16 | 0;
|
|
$26 = $29;
|
|
if (!(($29 | 0) == ($25 | 0) & 1 | 0)) {
|
|
continue label$2
|
|
}
|
|
break label$2;
|
|
};
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 144 | 0 | 0, HEAP32[($6 + 268 | 0) >> 2] | 0 | 0, HEAP32[($6 + 264 | 0) >> 2] | 0 | 0);
|
|
$42 = $6 + 208 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 144 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 148 | 0) >> 2] | 0;
|
|
$275 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $42;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $275;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$44 = 8;
|
|
i64toi32_i32$2 = ($6 + 144 | 0) + $44 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$288 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $42 + $44 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $288;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 128 | 0 | 0, HEAP32[($6 + 268 | 0) >> 2] | 0 | 0, HEAP32[($6 + 260 | 0) >> 2] | 0 | 0);
|
|
$59 = ($6 + 208 | 0) + 16 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 128 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 132 | 0) >> 2] | 0;
|
|
$310 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $59;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $310;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$61 = 8;
|
|
i64toi32_i32$2 = ($6 + 128 | 0) + $61 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$323 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $59 + $61 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $323;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 112 | 0 | 0, HEAP32[($6 + 268 | 0) >> 2] | 0 | 0, HEAP32[($6 + 256 | 0) >> 2] | 0 | 0);
|
|
$76 = ($6 + 208 | 0) + 32 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 112 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 116 | 0) >> 2] | 0;
|
|
$345 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $76;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $345;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$78 = 8;
|
|
i64toi32_i32$2 = ($6 + 112 | 0) + $78 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$358 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $76 + $78 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $358;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 96 | 0 | 0, HEAP32[($6 + 260 | 0) >> 2] | 0 | 0, HEAP32[($6 + 256 | 0) >> 2] | 0 | 0);
|
|
$91 = $6 + 160 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 96 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 100 | 0) >> 2] | 0;
|
|
$377 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $91;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $377;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$93 = 8;
|
|
i64toi32_i32$2 = ($6 + 96 | 0) + $93 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$390 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $91 + $93 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $390;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 80 | 0 | 0, HEAP32[($6 + 264 | 0) >> 2] | 0 | 0, HEAP32[($6 + 256 | 0) >> 2] | 0 | 0);
|
|
$108 = ($6 + 160 | 0) + 16 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 80 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 84 | 0) >> 2] | 0;
|
|
$412 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $108;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $412;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$110 = 8;
|
|
i64toi32_i32$2 = ($6 + 80 | 0) + $110 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$425 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $108 + $110 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $425;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 64 | 0 | 0, HEAP32[($6 + 264 | 0) >> 2] | 0 | 0, HEAP32[($6 + 260 | 0) >> 2] | 0 | 0);
|
|
$125 = ($6 + 160 | 0) + 32 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 64 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 68 | 0) >> 2] | 0;
|
|
$447 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $125;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $447;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$127 = 8;
|
|
i64toi32_i32$2 = ($6 + 64 | 0) + $127 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$460 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $125 + $127 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $460;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__cross_28btVector3_20const__29_20const($6 + 48 | 0 | 0, $6 + 208 | 0 | 0, $6 + 160 | 0 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($6 + 32 | 0 | 0, ($6 + 208 | 0) + 16 | 0 | 0, ($6 + 160 | 0) + 16 | 0 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($6 + 16 | 0 | 0, ($6 + 208 | 0) + 32 | 0 | 0, ($6 + 160 | 0) + 32 | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($6 + 48 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($6 + 32 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
$182 = float_20const__20btMax_float__28float_20const__2c_20float_20const__29($6 + 12 | 0 | 0, $6 + 8 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($6 + 16 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$191 = Math_fround(HEAPF32[(float_20const__20btMax_float__28float_20const__2c_20float_20const__29($182 | 0, $6 + 4 | 0 | 0) | 0) >> 2]);
|
|
__stack_pointer = $6 + 272 | 0;
|
|
return Math_fround($191);
|
|
}
|
|
|
|
function btVector4__btVector4_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 | 0, HEAP32[($7 + 24 | 0) >> 2] | 0 | 0, HEAP32[($7 + 20 | 0) >> 2] | 0 | 0, HEAP32[($7 + 16 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($8 + 12 | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[($7 + 12 | 0) >> 2] | 0) >> 2]);
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btVector4__closestAxis4_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $11 = 0;
|
|
$3 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 28 | 0) >> 2] = $0;
|
|
btVector4__absolute4_28_29_20const($3 + 12 | 0 | 0, HEAP32[($3 + 28 | 0) >> 2] | 0 | 0);
|
|
$11 = btVector4__maxAxis4_28_29_20const($3 + 12 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 32 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btVector4__absolute4_28_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[$5 >> 2]))))), HEAPF32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[($5 + 8 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[($5 + 12 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector4__btVector4_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $4 + 24 | 0 | 0, $4 + 20 | 0 | 0, $4 + 16 | 0 | 0, $4 + 12 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btVector4__maxAxis4_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = -1;
|
|
HEAPF32[($3 + 4 | 0) >> 2] = Math_fround(-999999984306749440.0);
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[$4 >> 2]) > Math_fround(HEAPF32[($3 + 4 | 0) >> 2]) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($3 + 8 | 0) >> 2] = 0;
|
|
HEAPF32[($3 + 4 | 0) >> 2] = Math_fround(HEAPF32[$4 >> 2]);
|
|
}
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 4 | 0) >> 2]) > Math_fround(HEAPF32[($3 + 4 | 0) >> 2]) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($3 + 8 | 0) >> 2] = 1;
|
|
HEAPF32[($3 + 4 | 0) >> 2] = Math_fround(HEAPF32[($4 + 4 | 0) >> 2]);
|
|
}
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 8 | 0) >> 2]) > Math_fround(HEAPF32[($3 + 4 | 0) >> 2]) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($3 + 8 | 0) >> 2] = 2;
|
|
HEAPF32[($3 + 4 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
}
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 12 | 0) >> 2]) > Math_fround(HEAPF32[($3 + 4 | 0) >> 2]) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP32[($3 + 8 | 0) >> 2] = 3;
|
|
}
|
|
return HEAP32[($3 + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btPersistentManifold__getCacheEntry_28btManifoldPoint_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0, $44 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 40 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 44 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(btPersistentManifold__getContactBreakingThreshold_28_29_20const($5 | 0)) * Math_fround(btPersistentManifold__getContactBreakingThreshold_28_29_20const($5 | 0)))), HEAPF32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btPersistentManifold__getNumContacts_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 28 | 0) >> 2] = -1;
|
|
HEAP32[($4 + 24 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 32 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($4 + 20 | 0) >> 2] = ($5 + 4 | 0) + Math_imul(HEAP32[($4 + 24 | 0) >> 2] | 0, 208) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 4 | 0 | 0, HEAP32[($4 + 20 | 0) >> 2] | 0 | 0, HEAP32[($4 + 40 | 0) >> 2] | 0 | 0);
|
|
$32 = $4 + 4 | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($32 | 0, $32 | 0))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[$4 >> 2]) < Math_fround(HEAPF32[($4 + 36 | 0) >> 2]) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAPF32[($4 + 36 | 0) >> 2] = Math_fround(HEAPF32[$4 >> 2]);
|
|
HEAP32[($4 + 28 | 0) >> 2] = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($4 + 24 | 0) >> 2] = (HEAP32[($4 + 24 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
$44 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 48 | 0;
|
|
return $44 | 0;
|
|
}
|
|
|
|
function btPersistentManifold__getContactBreakingThreshold_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 848 | 0) >> 2]));
|
|
}
|
|
|
|
function btPersistentManifold__addManifoldPoint_28btManifoldPoint_20const__2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $7 = 0, $71 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 7 | 0) >> 0] = $2;
|
|
$7 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAPU8[($5 + 7 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if ((btPersistentManifold__validContactDistance_28btManifoldPoint_20const__29_20const($7 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(86236 | 0, 75898 | 0, 214 | 0, 67705 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btPersistentManifold__getNumContacts_28_29_20const($7 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) == (4 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btPersistentManifold__sortCachedPoints_28btManifoldPoint_20const__29($7 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
btPersistentManifold__clearUserCache_28btManifoldPoint__29($7 | 0, ($7 + 4 | 0) + Math_imul(HEAP32[$5 >> 2] | 0, 208) | 0 | 0);
|
|
break label$3;
|
|
}
|
|
HEAP32[($7 + 844 | 0) >> 2] = (HEAP32[($7 + 844 | 0) >> 2] | 0) + 1 | 0;
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAP32[$5 >> 2] = 0;
|
|
}
|
|
label$6 : {
|
|
if ((HEAP32[((($7 + 4 | 0) + Math_imul(HEAP32[$5 >> 2] | 0, 208) | 0) + 116 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) {
|
|
break label$6
|
|
}
|
|
__assert_fail(85893 | 0, 75898 | 0, 237 | 0, 67705 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
__memcpy(($7 + 4 | 0) + Math_imul(HEAP32[$5 >> 2] | 0, 208) | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, 208 | 0) | 0;
|
|
$71 = HEAP32[$5 >> 2] | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $71 | 0;
|
|
}
|
|
|
|
function btPersistentManifold__refreshContactPoints_28btTransform_20const__2c_20btTransform_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $6 = 0, $30 = 0, $32 = 0, $47 = 0, $49 = 0, $72 = 0, $124 = 0, $142 = 0, $153 = 0, $245 = 0, $258 = 0, $281 = 0, $294 = 0, $70 = Math_fround(0), $108 = 0, $449 = 0, $453 = 0, $485 = 0, $489 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 160 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 156 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 152 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 148 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 156 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = (btPersistentManifold__getNumContacts_28_29_20const($6 | 0) | 0) - 1 | 0), HEAP32[(wasm2js_i32$0 + 144 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($5 + 144 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($5 + 140 | 0) >> 2] = ($6 + 4 | 0) + Math_imul(HEAP32[($5 + 144 | 0) >> 2] | 0, 208) | 0;
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($5 + 124 | 0 | 0, HEAP32[($5 + 152 | 0) >> 2] | 0 | 0, HEAP32[($5 + 140 | 0) >> 2] | 0 | 0);
|
|
$30 = (HEAP32[($5 + 140 | 0) >> 2] | 0) + 48 | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 124 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 128 | 0) >> 2] | 0;
|
|
$245 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $30;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $245;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$32 = 8;
|
|
i64toi32_i32$2 = ($5 + 124 | 0) + $32 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$258 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $30 + $32 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $258;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($5 + 108 | 0 | 0, HEAP32[($5 + 148 | 0) >> 2] | 0 | 0, (HEAP32[($5 + 140 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
$47 = (HEAP32[($5 + 140 | 0) >> 2] | 0) + 32 | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 108 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 112 | 0) >> 2] | 0;
|
|
$281 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $47;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $281;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$49 = 8;
|
|
i64toi32_i32$2 = ($5 + 108 | 0) + $49 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$294 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $47 + $49 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $294;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 92 | 0 | 0, (HEAP32[($5 + 140 | 0) >> 2] | 0) + 48 | 0 | 0, (HEAP32[($5 + 140 | 0) >> 2] | 0) + 32 | 0 | 0);
|
|
$70 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($5 + 92 | 0 | 0, (HEAP32[($5 + 140 | 0) >> 2] | 0) + 64 | 0 | 0));
|
|
HEAPF32[((HEAP32[($5 + 140 | 0) >> 2] | 0) + 80 | 0) >> 2] = $70;
|
|
$72 = HEAP32[($5 + 140 | 0) >> 2] | 0;
|
|
HEAP32[($72 + 164 | 0) >> 2] = (HEAP32[($72 + 164 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($5 + 144 | 0) >> 2] = (HEAP32[($5 + 144 | 0) >> 2] | 0) + -1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
btVector3__btVector3_28_29($5 + 72 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 56 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = (btPersistentManifold__getNumContacts_28_29_20const($6 | 0) | 0) - 1 | 0), HEAP32[(wasm2js_i32$0 + 144 | 0) >> 2] = wasm2js_i32$1;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 144 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 52 | 0) >> 2] = ($6 + 4 | 0) + Math_imul(HEAP32[($5 + 144 | 0) >> 2] | 0, 208) | 0;
|
|
label$5 : {
|
|
label$6 : {
|
|
if ((btPersistentManifold__validContactDistance_28btManifoldPoint_20const__29_20const($6 | 0, HEAP32[($5 + 52 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$6
|
|
}
|
|
btPersistentManifold__removeContactPoint_28int_29($6 | 0, HEAP32[($5 + 144 | 0) >> 2] | 0 | 0);
|
|
break label$5;
|
|
}
|
|
$108 = (HEAP32[($5 + 52 | 0) >> 2] | 0) + 48 | 0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($5 + 20 | 0 | 0, (HEAP32[($5 + 52 | 0) >> 2] | 0) + 64 | 0 | 0, (HEAP32[($5 + 52 | 0) >> 2] | 0) + 80 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 36 | 0 | 0, $108 | 0, $5 + 20 | 0 | 0);
|
|
$124 = 8;
|
|
i64toi32_i32$2 = ($5 + 36 | 0) + $124 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$449 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 56 | 0) + $124 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $449;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 40 | 0) >> 2] | 0;
|
|
$453 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 56 | 0) >> 2] = $453;
|
|
HEAP32[($5 + 60 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 4 | 0 | 0, (HEAP32[($5 + 52 | 0) >> 2] | 0) + 32 | 0 | 0, $5 + 56 | 0 | 0);
|
|
$142 = 8;
|
|
i64toi32_i32$2 = ($5 + 4 | 0) + $142 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$485 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 72 | 0) + $142 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $485;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
$489 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 72 | 0) >> 2] = $489;
|
|
HEAP32[($5 + 76 | 0) >> 2] = i64toi32_i32$0;
|
|
$153 = $5 + 72 | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($153 | 0, $153 | 0))), HEAPF32[(wasm2js_i32$0 + 88 | 0) >> 2] = wasm2js_f32$0;
|
|
label$7 : {
|
|
label$8 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 88 | 0) >> 2]) > Math_fround(Math_fround(btPersistentManifold__getContactBreakingThreshold_28_29_20const($6 | 0)) * Math_fround(btPersistentManifold__getContactBreakingThreshold_28_29_20const($6 | 0))) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
btPersistentManifold__removeContactPoint_28int_29($6 | 0, HEAP32[($5 + 144 | 0) >> 2] | 0 | 0);
|
|
break label$7;
|
|
}
|
|
label$9 : {
|
|
if (!((HEAP32[(0 + 115356 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
FUNCTION_TABLE[HEAP32[(0 + 115356 | 0) >> 2] | 0 | 0](HEAP32[($5 + 52 | 0) >> 2] | 0, HEAP32[($6 + 836 | 0) >> 2] | 0, HEAP32[($6 + 840 | 0) >> 2] | 0) | 0;
|
|
}
|
|
}
|
|
}
|
|
HEAP32[($5 + 144 | 0) >> 2] = (HEAP32[($5 + 144 | 0) >> 2] | 0) + -1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
__stack_pointer = $5 + 160 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPersistentManifold__removeContactPoint_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $110 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btPersistentManifold__clearUserCache_28btManifoldPoint__29($5 | 0, ($5 + 4 | 0) + Math_imul(HEAP32[($4 + 8 | 0) >> 2] | 0, 208) | 0 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = (btPersistentManifold__getNumContacts_28_29_20const($5 | 0) | 0) - 1 | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) != (HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
__memcpy(($5 + 4 | 0) + Math_imul(HEAP32[($4 + 8 | 0) >> 2] | 0, 208) | 0 | 0, ($5 + 4 | 0) + Math_imul(HEAP32[($4 + 4 | 0) >> 2] | 0, 208) | 0 | 0, 208 | 0) | 0;
|
|
HEAP32[((($5 + 4 | 0) + Math_imul(HEAP32[($4 + 4 | 0) >> 2] | 0, 208) | 0) + 116 | 0) >> 2] = 0;
|
|
HEAPF32[((($5 + 4 | 0) + Math_imul(HEAP32[($4 + 4 | 0) >> 2] | 0, 208) | 0) + 132 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP32[((($5 + 4 | 0) + Math_imul(HEAP32[($4 + 4 | 0) >> 2] | 0, 208) | 0) + 128 | 0) >> 2] = 0;
|
|
HEAPF32[((($5 + 4 | 0) + Math_imul(HEAP32[($4 + 4 | 0) >> 2] | 0, 208) | 0) + 136 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[((($5 + 4 | 0) + Math_imul(HEAP32[($4 + 4 | 0) >> 2] | 0, 208) | 0) + 140 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP32[((($5 + 4 | 0) + Math_imul(HEAP32[($4 + 4 | 0) >> 2] | 0, 208) | 0) + 164 | 0) >> 2] = 0;
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[((($5 + 4 | 0) + Math_imul(HEAP32[($4 + 4 | 0) >> 2] | 0, 208) | 0) + 116 | 0) >> 2] | 0 | 0) == (0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(85943 | 0, 80072 | 0, 180 | 0, 67601 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($5 + 844 | 0) >> 2] = (HEAP32[($5 + 844 | 0) >> 2] | 0) + -1 | 0;
|
|
label$3 : {
|
|
if (!((HEAP32[(0 + 115364 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
if (HEAP32[($5 + 844 | 0) >> 2] | 0) {
|
|
break label$3
|
|
}
|
|
$110 = HEAP32[(0 + 115364 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = $5;
|
|
FUNCTION_TABLE[$110 | 0]($4);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btPersistentManifold_cpp() {
|
|
__cxx_global_var_init_63();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_64() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(115368 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleRaycastCallback__btTriangleRaycastCallback_28btVector3_20const__2c_20btVector3_20const__2c_20unsigned_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, $7 = 0, $12 = 0, $15 = 0, $20 = 0, $23 = 0, $61 = 0, $71 = 0, $80 = 0, $90 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btTriangleCallback__btTriangleCallback_28_29($7 | 0) | 0;
|
|
HEAP32[$7 >> 2] = 101800 + 8 | 0;
|
|
$12 = $7 + 4 | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$61 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $12;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $61;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$15 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $15 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$71 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $12 + $15 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $71;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$20 = $7 + 20 | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$80 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $20;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $80;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$23 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $23 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$90 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $20 + $23 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $90;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($7 + 36 | 0) >> 2] = HEAP32[$6 >> 2] | 0;
|
|
HEAPF32[($7 + 40 | 0) >> 2] = Math_fround(1.0);
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btTriangleRaycastCallback__processTriangle_28btVector3__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $7 = 0, $23 = 0, $40 = 0, $61 = 0, $149 = 0, $168 = 0, $189 = 0, $219 = 0, $240 = 0, $272 = 0, $395 = 0, $399 = 0, $432 = 0, $436 = 0, $473 = 0, $477 = 0, $668 = 0, $672 = 0, $707 = 0, $711 = 0, $748 = 0, $752 = 0, $808 = 0, $812 = 0, $849 = 0, $853 = 0, $911 = 0, $915 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 384 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 380 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 376 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 372 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 368 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 380 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 364 | 0) >> 2] = HEAP32[($6 + 376 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 360 | 0) >> 2] = (HEAP32[($6 + 376 | 0) >> 2] | 0) + 16 | 0;
|
|
HEAP32[($6 + 356 | 0) >> 2] = (HEAP32[($6 + 376 | 0) >> 2] | 0) + 32 | 0;
|
|
btVector3__btVector3_28_29($6 + 336 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 320 | 0 | 0, HEAP32[($6 + 360 | 0) >> 2] | 0 | 0, HEAP32[($6 + 364 | 0) >> 2] | 0 | 0);
|
|
$23 = 8;
|
|
i64toi32_i32$2 = ($6 + 320 | 0) + $23 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$395 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 336 | 0) + $23 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $395;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 320 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 324 | 0) >> 2] | 0;
|
|
$399 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 336 | 0) >> 2] = $399;
|
|
HEAP32[($6 + 340 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__btVector3_28_29($6 + 304 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 288 | 0 | 0, HEAP32[($6 + 356 | 0) >> 2] | 0 | 0, HEAP32[($6 + 364 | 0) >> 2] | 0 | 0);
|
|
$40 = 8;
|
|
i64toi32_i32$2 = ($6 + 288 | 0) + $40 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$432 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 304 | 0) + $40 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $432;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 288 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 292 | 0) >> 2] | 0;
|
|
$436 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 304 | 0) >> 2] = $436;
|
|
HEAP32[($6 + 308 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__btVector3_28_29($6 + 272 | 0 | 0) | 0;
|
|
btVector3__cross_28btVector3_20const__29_20const($6 + 256 | 0 | 0, $6 + 336 | 0 | 0, $6 + 304 | 0 | 0);
|
|
$61 = 8;
|
|
i64toi32_i32$2 = ($6 + 256 | 0) + $61 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$473 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 272 | 0) + $61 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $473;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 256 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 260 | 0) >> 2] | 0;
|
|
$477 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 272 | 0) >> 2] = $477;
|
|
HEAP32[($6 + 276 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($6 + 364 | 0) >> 2] | 0 | 0, $6 + 272 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 252 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($6 + 272 | 0 | 0, $7 + 4 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 248 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($6 + 248 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($6 + 248 | 0) >> 2]) - Math_fround(HEAPF32[($6 + 252 | 0) >> 2]));
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($6 + 272 | 0 | 0, $7 + 20 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 244 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($6 + 244 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($6 + 244 | 0) >> 2]) - Math_fround(HEAPF32[($6 + 252 | 0) >> 2]));
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(Math_fround(HEAPF32[($6 + 248 | 0) >> 2]) * Math_fround(HEAPF32[($6 + 244 | 0) >> 2])) >= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
if (!((HEAP32[($7 + 36 | 0) >> 2] | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
if (!(Math_fround(HEAPF32[($6 + 248 | 0) >> 2]) <= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
break label$1;
|
|
}
|
|
HEAPF32[($6 + 240 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($6 + 248 | 0) >> 2]) - Math_fround(HEAPF32[($6 + 244 | 0) >> 2]));
|
|
HEAPF32[($6 + 236 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($6 + 248 | 0) >> 2]) / Math_fround(HEAPF32[($6 + 240 | 0) >> 2]));
|
|
if (!(Math_fround(HEAPF32[($6 + 236 | 0) >> 2]) < Math_fround(HEAPF32[($7 + 40 | 0) >> 2]) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($6 + 272 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 232 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($6 + 232 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($6 + 232 | 0) >> 2]) * Math_fround(-9.999999747378752e-05));
|
|
btVector3__btVector3_28_29($6 + 216 | 0 | 0) | 0;
|
|
btVector3__setInterpolate3_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($6 + 216 | 0 | 0, $7 + 4 | 0 | 0, $7 + 20 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 236 | 0) >> 2])));
|
|
btVector3__btVector3_28_29($6 + 200 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 184 | 0 | 0, HEAP32[($6 + 364 | 0) >> 2] | 0 | 0, $6 + 216 | 0 | 0);
|
|
$149 = 8;
|
|
i64toi32_i32$2 = ($6 + 184 | 0) + $149 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$668 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 200 | 0) + $149 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $668;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 184 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 188 | 0) >> 2] | 0;
|
|
$672 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 200 | 0) >> 2] = $672;
|
|
HEAP32[($6 + 204 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__btVector3_28_29($6 + 168 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 152 | 0 | 0, HEAP32[($6 + 360 | 0) >> 2] | 0 | 0, $6 + 216 | 0 | 0);
|
|
$168 = 8;
|
|
i64toi32_i32$2 = ($6 + 152 | 0) + $168 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$707 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 168 | 0) + $168 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $707;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 152 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 156 | 0) >> 2] | 0;
|
|
$711 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 168 | 0) >> 2] = $711;
|
|
HEAP32[($6 + 172 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__btVector3_28_29($6 + 136 | 0 | 0) | 0;
|
|
btVector3__cross_28btVector3_20const__29_20const($6 + 120 | 0 | 0, $6 + 200 | 0 | 0, $6 + 168 | 0 | 0);
|
|
$189 = 8;
|
|
i64toi32_i32$2 = ($6 + 120 | 0) + $189 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$748 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 136 | 0) + $189 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $748;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 120 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 124 | 0) >> 2] | 0;
|
|
$752 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 136 | 0) >> 2] = $752;
|
|
HEAP32[($6 + 140 | 0) >> 2] = i64toi32_i32$0;
|
|
label$4 : {
|
|
if (!(Math_fround(btVector3__dot_28btVector3_20const__29_20const($6 + 136 | 0 | 0, $6 + 272 | 0 | 0)) >= Math_fround(HEAPF32[($6 + 232 | 0) >> 2]) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
btVector3__btVector3_28_29($6 + 104 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 88 | 0 | 0, HEAP32[($6 + 356 | 0) >> 2] | 0 | 0, $6 + 216 | 0 | 0);
|
|
$219 = 8;
|
|
i64toi32_i32$2 = ($6 + 88 | 0) + $219 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$808 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 104 | 0) + $219 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $808;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 88 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 92 | 0) >> 2] | 0;
|
|
$812 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 104 | 0) >> 2] = $812;
|
|
HEAP32[($6 + 108 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__btVector3_28_29($6 + 72 | 0 | 0) | 0;
|
|
btVector3__cross_28btVector3_20const__29_20const($6 + 56 | 0 | 0, $6 + 168 | 0 | 0, $6 + 104 | 0 | 0);
|
|
$240 = 8;
|
|
i64toi32_i32$2 = ($6 + 56 | 0) + $240 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$849 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 72 | 0) + $240 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $849;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 56 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 60 | 0) >> 2] | 0;
|
|
$853 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 72 | 0) >> 2] = $853;
|
|
HEAP32[($6 + 76 | 0) >> 2] = i64toi32_i32$0;
|
|
label$5 : {
|
|
if (!(Math_fround(btVector3__dot_28btVector3_20const__29_20const($6 + 72 | 0 | 0, $6 + 272 | 0 | 0)) >= Math_fround(HEAPF32[($6 + 232 | 0) >> 2]) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btVector3__btVector3_28_29($6 + 40 | 0 | 0) | 0;
|
|
btVector3__cross_28btVector3_20const__29_20const($6 + 24 | 0 | 0, $6 + 104 | 0 | 0, $6 + 200 | 0 | 0);
|
|
$272 = 8;
|
|
i64toi32_i32$2 = ($6 + 24 | 0) + $272 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$911 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 40 | 0) + $272 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $911;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
$915 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 40 | 0) >> 2] = $915;
|
|
HEAP32[($6 + 44 | 0) >> 2] = i64toi32_i32$0;
|
|
label$6 : {
|
|
if (!(Math_fround(btVector3__dot_28btVector3_20const__29_20const($6 + 40 | 0 | 0, $6 + 272 | 0 | 0)) >= Math_fround(HEAPF32[($6 + 232 | 0) >> 2]) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
btVector3__normalize_28_29($6 + 272 | 0 | 0) | 0;
|
|
label$7 : {
|
|
label$8 : {
|
|
if ((HEAP32[($7 + 36 | 0) >> 2] | 0) & 2 | 0) {
|
|
break label$8
|
|
}
|
|
if (!(Math_fround(HEAPF32[($6 + 248 | 0) >> 2]) <= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
operator__28btVector3_20const__29($6 + 8 | 0 | 0, $6 + 272 | 0 | 0);
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($7, $6 + 8 | 0, Math_fround(HEAPF32[($6 + 236 | 0) >> 2]), HEAP32[($6 + 372 | 0) >> 2] | 0, HEAP32[($6 + 368 | 0) >> 2] | 0))), HEAPF32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_f32$0;
|
|
break label$7;
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($7, $6 + 272 | 0, Math_fround(HEAPF32[($6 + 236 | 0) >> 2]), HEAP32[($6 + 372 | 0) >> 2] | 0, HEAP32[($6 + 368 | 0) >> 2] | 0))), HEAPF32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
__stack_pointer = $6 + 384 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleConvexcastCallback__btTriangleConvexcastCallback_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20float_29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = Math_fround($5);
|
|
var $8 = 0, $9 = 0;
|
|
$8 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 12 | 0) >> 2] = $4;
|
|
HEAPF32[($8 + 8 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 28 | 0) >> 2] | 0;
|
|
btTriangleCallback__btTriangleCallback_28_29($9 | 0) | 0;
|
|
HEAP32[$9 >> 2] = 101824 + 8 | 0;
|
|
btTransform__btTransform_28_29($9 + 8 | 0 | 0) | 0;
|
|
btTransform__btTransform_28_29($9 + 72 | 0 | 0) | 0;
|
|
btTransform__btTransform_28_29($9 + 136 | 0 | 0) | 0;
|
|
HEAP32[($9 + 4 | 0) >> 2] = HEAP32[($8 + 24 | 0) >> 2] | 0;
|
|
btTransform__operator__28btTransform_20const__29($9 + 8 | 0 | 0, HEAP32[($8 + 20 | 0) >> 2] | 0 | 0) | 0;
|
|
btTransform__operator__28btTransform_20const__29($9 + 72 | 0 | 0, HEAP32[($8 + 16 | 0) >> 2] | 0 | 0) | 0;
|
|
btTransform__operator__28btTransform_20const__29($9 + 136 | 0 | 0, HEAP32[($8 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($9 + 200 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($9 + 204 | 0) >> 2] = Math_fround(HEAPF32[($8 + 8 | 0) >> 2]);
|
|
HEAPF32[($9 + 208 | 0) >> 2] = Math_fround(0 | 0);
|
|
__stack_pointer = $8 + 32 | 0;
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btTriangleConvexcastCallback__processTriangle_28btVector3__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 704 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 700 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 696 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 692 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 688 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 700 | 0) >> 2] | 0;
|
|
btTriangleShape__btTriangleShape_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($6 + 576 | 0 | 0, HEAP32[($6 + 696 | 0) >> 2] | 0 | 0, (HEAP32[($6 + 696 | 0) >> 2] | 0) + 16 | 0 | 0, (HEAP32[($6 + 696 | 0) >> 2] | 0) + 32 | 0 | 0) | 0;
|
|
btConvexInternalShape__setMargin_28float_29($6 + 576 | 0 | 0, Math_fround(Math_fround(HEAPF32[($7 + 204 | 0) >> 2])));
|
|
btVoronoiSimplexSolver__btVoronoiSimplexSolver_28_29($6 + 216 | 0 | 0) | 0;
|
|
btGjkEpaPenetrationDepthSolver__btGjkEpaPenetrationDepthSolver_28_29($6 + 212 | 0 | 0) | 0;
|
|
btContinuousConvexCollision__btContinuousConvexCollision_28btConvexShape_20const__2c_20btConvexShape_20const__2c_20btVoronoiSimplexSolver__2c_20btConvexPenetrationDepthSolver__29($6 + 188 | 0 | 0, HEAP32[($7 + 4 | 0) >> 2] | 0 | 0, $6 + 576 | 0 | 0, $6 + 216 | 0 | 0, $6 + 212 | 0 | 0) | 0;
|
|
btConvexCast__CastResult__CastResult_28_29($6 + 12 | 0 | 0) | 0;
|
|
HEAPF32[($6 + 176 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($6 + 184 | 0) >> 2] = Math_fround(HEAPF32[($7 + 208 | 0) >> 2]);
|
|
label$1 : {
|
|
if (!((btContinuousConvexCollision__calcTimeOfImpact_28btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btConvexCast__CastResult__29($6 + 188 | 0 | 0, $7 + 8 | 0 | 0, $7 + 72 | 0 | 0, $7 + 136 | 0 | 0, $7 + 136 | 0 | 0, $6 + 12 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!(Math_fround(btVector3__length2_28_29_20const(($6 + 12 | 0) + 132 | 0 | 0)) > Math_fround(9.999999747378752e-05) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 176 | 0) >> 2]) < Math_fround(HEAPF32[($7 + 200 | 0) >> 2]) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
btVector3__normalize_28_29(($6 + 12 | 0) + 132 | 0 | 0) | 0;
|
|
Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($7, ($6 + 12 | 0) + 132 | 0, ($6 + 12 | 0) + 148 | 0, Math_fround(HEAPF32[($6 + 176 | 0) >> 2]), HEAP32[($6 + 692 | 0) >> 2] | 0, HEAP32[($6 + 688 | 0) >> 2] | 0));
|
|
}
|
|
}
|
|
}
|
|
btConvexCast__CastResult___CastResult_28_29($6 + 12 | 0 | 0) | 0;
|
|
btContinuousConvexCollision___btContinuousConvexCollision_28_29($6 + 188 | 0 | 0) | 0;
|
|
btGjkEpaPenetrationDepthSolver___btGjkEpaPenetrationDepthSolver_28_29($6 + 212 | 0 | 0) | 0;
|
|
btTriangleShape___btTriangleShape_28_29($6 + 576 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 704 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTriangleRaycastCallback___btTriangleRaycastCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btTriangleConvexcastCallback___btTriangleConvexcastCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btRaycastCallback_cpp() {
|
|
__cxx_global_var_init_64();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_65() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(115372 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btSubsimplexConvexCast__btSubsimplexConvexCast_28btConvexShape_20const__2c_20btConvexShape_20const__2c_20btVoronoiSimplexSolver__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btConvexCast__btConvexCast_28_29($7 | 0) | 0;
|
|
HEAP32[$7 >> 2] = 101932 + 8 | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = HEAP32[$6 >> 2] | 0;
|
|
HEAP32[($7 + 8 | 0) >> 2] = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 12 | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btSubsimplexConvexCast__calcTimeOfImpact_28btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btConvexCast__CastResult__29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $9 = 0, $24 = 0, $40 = 0, $72 = 0, $102 = 0, $134 = 0, $185 = 0, $186 = 0, $196 = 0, $230 = 0, $239 = 0, $267 = 0, $285 = 0, $362 = 0, $371 = 0, $428 = 0, $430 = 0, $456 = 0, $458 = 0, $495 = 0, $497 = 0, $575 = 0, $579 = 0, $610 = 0, $614 = 0, $71 = 0, $101 = 0, $790 = 0, $794 = 0, $970 = 0, $974 = 0, $1040 = 0, $1044 = 0, $1075 = 0, $1079 = 0, $1232 = 0, $1236 = 0, $1252 = 0, $1256 = 0, $1352 = 0, $1365 = 0, $1407 = 0, $1420 = 0, $1485 = 0, $1498 = 0, $508 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$8 = __stack_pointer - 720 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 712 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 708 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 704 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 700 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 696 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 692 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 712 | 0) >> 2] | 0;
|
|
btVoronoiSimplexSolver__reset_28_29(HEAP32[($9 + 4 | 0) >> 2] | 0 | 0);
|
|
btVector3__btVector3_28_29($8 + 672 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 656 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 640 | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($8 + 704 | 0) >> 2] | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($8 + 708 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$24 = 8;
|
|
i64toi32_i32$2 = ($8 + 640 | 0) + $24 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$575 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 672 | 0) + $24 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $575;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 640 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 644 | 0) >> 2] | 0;
|
|
$579 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 672 | 0) >> 2] = $579;
|
|
HEAP32[($8 + 676 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 624 | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($8 + 696 | 0) >> 2] | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($8 + 700 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$40 = 8;
|
|
i64toi32_i32$2 = ($8 + 624 | 0) + $40 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$610 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 656 | 0) + $40 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $610;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 624 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 628 | 0) >> 2] | 0;
|
|
$614 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 656 | 0) >> 2] = $614;
|
|
HEAP32[($8 + 660 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($8 + 620 | 0) >> 2] = Math_fround(0 | 0);
|
|
btTransform__btTransform_28btTransform_20const__29($8 + 556 | 0 | 0, HEAP32[($8 + 708 | 0) >> 2] | 0 | 0) | 0;
|
|
btTransform__btTransform_28btTransform_20const__29($8 + 492 | 0 | 0, HEAP32[($8 + 700 | 0) >> 2] | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 476 | 0 | 0, $8 + 672 | 0 | 0, $8 + 656 | 0 | 0);
|
|
btVector3__btVector3_28_29($8 + 456 | 0 | 0) | 0;
|
|
$71 = HEAP32[($8 + 708 | 0) >> 2] | 0;
|
|
$72 = HEAP32[($9 + 8 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__29($8 + 392 | 0 | 0, $8 + 476 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btMatrix3x3_20const__29($8 + 408 | 0 | 0, $8 + 392 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 708 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$72 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($8 + 424 | 0, $72, $8 + 408 | 0);
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($8 + 440 | 0 | 0, $71 | 0, $8 + 424 | 0 | 0);
|
|
$101 = HEAP32[($8 + 700 | 0) >> 2] | 0;
|
|
$102 = HEAP32[($9 + 12 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btMatrix3x3_20const__29($8 + 344 | 0 | 0, $8 + 476 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 700 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$102 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($8 + 360 | 0, $102, $8 + 344 | 0);
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($8 + 376 | 0 | 0, $101 | 0, $8 + 360 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 328 | 0 | 0, $8 + 440 | 0 | 0, $8 + 376 | 0 | 0);
|
|
$134 = 8;
|
|
i64toi32_i32$2 = ($8 + 328 | 0) + $134 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$790 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 456 | 0) + $134 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $790;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 328 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 332 | 0) >> 2] | 0;
|
|
$794 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 456 | 0) >> 2] = $794;
|
|
HEAP32[($8 + 460 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($8 + 324 | 0) >> 2] = 32;
|
|
btVector3__btVector3_28_29($8 + 304 | 0 | 0) | 0;
|
|
HEAPF32[($8 + 300 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 296 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 292 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 304 | 0 | 0, $8 + 300 | 0 | 0, $8 + 296 | 0 | 0, $8 + 292 | 0 | 0);
|
|
btVector3__btVector3_28_29($8 + 276 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($8 + 456 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 272 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($8 + 268 | 0) >> 2] = Math_fround(9.999999747378752e-05);
|
|
btVector3__btVector3_28_29($8 + 248 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 232 | 0 | 0) | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
$185 = 0;
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 272 | 0) >> 2]) > Math_fround(HEAPF32[($8 + 268 | 0) >> 2]) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$186 = HEAP32[($8 + 324 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 324 | 0) >> 2] = $186 + -1 | 0;
|
|
$185 = ($186 | 0) != (0 | 0);
|
|
}
|
|
label$4 : {
|
|
if (!($185 & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$196 = HEAP32[($9 + 8 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__29($8 + 164 | 0 | 0, $8 + 456 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btMatrix3x3_20const__29($8 + 180 | 0 | 0, $8 + 164 | 0 | 0, btTransform__getBasis_28_29($8 + 556 | 0 | 0) | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$196 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($8 + 196 | 0, $196, $8 + 180 | 0);
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($8 + 212 | 0 | 0, $8 + 556 | 0 | 0, $8 + 196 | 0 | 0);
|
|
$230 = 8;
|
|
i64toi32_i32$2 = ($8 + 212 | 0) + $230 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$970 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 440 | 0) + $230 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $970;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 212 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 216 | 0) >> 2] | 0;
|
|
$974 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 440 | 0) >> 2] = $974;
|
|
HEAP32[($8 + 444 | 0) >> 2] = i64toi32_i32$0;
|
|
$239 = HEAP32[($9 + 12 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btMatrix3x3_20const__29($8 + 116 | 0 | 0, $8 + 456 | 0 | 0, btTransform__getBasis_28_29($8 + 492 | 0 | 0) | 0 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$239 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($8 + 132 | 0, $239, $8 + 116 | 0);
|
|
btTransform__operator_28_29_28btVector3_20const__29_20const($8 + 148 | 0 | 0, $8 + 492 | 0 | 0, $8 + 132 | 0 | 0);
|
|
$267 = 8;
|
|
i64toi32_i32$2 = ($8 + 148 | 0) + $267 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1040 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 376 | 0) + $267 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1040;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 148 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 152 | 0) >> 2] | 0;
|
|
$1044 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 376 | 0) >> 2] = $1044;
|
|
HEAP32[($8 + 380 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 100 | 0 | 0, $8 + 440 | 0 | 0, $8 + 376 | 0 | 0);
|
|
$285 = 8;
|
|
i64toi32_i32$2 = ($8 + 100 | 0) + $285 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1075 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 248 | 0) + $285 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1075;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 100 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 104 | 0) >> 2] | 0;
|
|
$1079 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 248 | 0) >> 2] = $1079;
|
|
HEAP32[($8 + 252 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 456 | 0 | 0, $8 + 248 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 96 | 0) >> 2] = wasm2js_f32$0;
|
|
label$5 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 620 | 0) >> 2]) > Math_fround(1.0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAP8[($8 + 719 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 96 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 456 | 0 | 0, $8 + 476 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 228 | 0) >> 2] = wasm2js_f32$0;
|
|
label$7 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 228 | 0) >> 2]) >= Math_fround(-1.4210854715202004e-14) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAP8[($8 + 719 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAPF32[($8 + 620 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($8 + 620 | 0) >> 2]) - Math_fround(Math_fround(HEAPF32[($8 + 96 | 0) >> 2]) / Math_fround(HEAPF32[($8 + 228 | 0) >> 2])));
|
|
btVector3__setInterpolate3_28btVector3_20const__2c_20btVector3_20const__2c_20float_29(btTransform__getOrigin_28_29($8 + 556 | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($8 + 708 | 0) >> 2] | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($8 + 704 | 0) >> 2] | 0 | 0) | 0 | 0, Math_fround(Math_fround(HEAPF32[($8 + 620 | 0) >> 2])));
|
|
btVector3__setInterpolate3_28btVector3_20const__2c_20btVector3_20const__2c_20float_29(btTransform__getOrigin_28_29($8 + 492 | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($8 + 700 | 0) >> 2] | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($8 + 696 | 0) >> 2] | 0 | 0) | 0 | 0, Math_fround(Math_fround(HEAPF32[($8 + 620 | 0) >> 2])));
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 80 | 0 | 0, $8 + 440 | 0 | 0, $8 + 376 | 0 | 0);
|
|
$362 = 8;
|
|
i64toi32_i32$2 = ($8 + 80 | 0) + $362 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1232 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 248 | 0) + $362 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1232;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 80 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 84 | 0) >> 2] | 0;
|
|
$1236 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 248 | 0) >> 2] = $1236;
|
|
HEAP32[($8 + 252 | 0) >> 2] = i64toi32_i32$0;
|
|
$371 = 8;
|
|
i64toi32_i32$2 = ($8 + 456 | 0) + $371 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1252 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 304 | 0) + $371 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1252;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 456 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 460 | 0) >> 2] | 0;
|
|
$1256 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 304 | 0) >> 2] = $1256;
|
|
HEAP32[($8 + 308 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
label$8 : {
|
|
if ((btVoronoiSimplexSolver__inSimplex_28btVector3_20const__29(HEAP32[($9 + 4 | 0) >> 2] | 0 | 0, $8 + 248 | 0 | 0) | 0) & 1 | 0) {
|
|
break label$8
|
|
}
|
|
btVoronoiSimplexSolver__addVertex_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29(HEAP32[($9 + 4 | 0) >> 2] | 0 | 0, $8 + 248 | 0 | 0, $8 + 440 | 0 | 0, $8 + 376 | 0 | 0);
|
|
}
|
|
label$9 : {
|
|
label$10 : {
|
|
if (!((btVoronoiSimplexSolver__closest_28btVector3__29(HEAP32[($9 + 4 | 0) >> 2] | 0 | 0, $8 + 456 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($8 + 456 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 272 | 0) >> 2] = wasm2js_f32$0;
|
|
break label$9;
|
|
}
|
|
HEAPF32[($8 + 272 | 0) >> 2] = Math_fround(0 | 0);
|
|
}
|
|
continue label$2;
|
|
}
|
|
break label$2;
|
|
};
|
|
HEAPF32[((HEAP32[($8 + 692 | 0) >> 2] | 0) + 164 | 0) >> 2] = Math_fround(HEAPF32[($8 + 620 | 0) >> 2]);
|
|
label$11 : {
|
|
label$12 : {
|
|
if (!(Math_fround(btVector3__length2_28_29_20const($8 + 304 | 0 | 0)) >= Math_fround(1.4210854715202004e-14) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
btVector3__normalized_28_29_20const($8 + 64 | 0 | 0, $8 + 304 | 0 | 0);
|
|
$428 = (HEAP32[($8 + 692 | 0) >> 2] | 0) + 132 | 0;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$0 = HEAP32[($8 + 64 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($8 + 68 | 0) >> 2] | 0;
|
|
$1352 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $428;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1352;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$430 = 8;
|
|
i64toi32_i32$2 = ($8 + 64 | 0) + $430 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1365 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $428 + $430 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1365;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$11;
|
|
}
|
|
HEAPF32[($8 + 44 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 40 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 36 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 48 | 0 | 0, $8 + 44 | 0 | 0, $8 + 40 | 0 | 0, $8 + 36 | 0 | 0) | 0;
|
|
$456 = (HEAP32[($8 + 692 | 0) >> 2] | 0) + 132 | 0;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$0 = HEAP32[($8 + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($8 + 52 | 0) >> 2] | 0;
|
|
$1407 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $456;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1407;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$458 = 8;
|
|
i64toi32_i32$2 = ($8 + 48 | 0) + $458 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1420 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $456 + $458 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1420;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
label$13 : {
|
|
if (!(Math_fround(btVector3__dot_28btVector3_20const__29_20const((HEAP32[($8 + 692 | 0) >> 2] | 0) + 132 | 0 | 0, $8 + 476 | 0 | 0)) >= Math_fround(-Math_fround(HEAPF32[((HEAP32[($8 + 692 | 0) >> 2] | 0) + 172 | 0) >> 2])) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
HEAP8[($8 + 719 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
btVector3__btVector3_28_29($8 + 20 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 4 | 0 | 0) | 0;
|
|
btVoronoiSimplexSolver__compute_points_28btVector3__2c_20btVector3__29(HEAP32[($9 + 4 | 0) >> 2] | 0 | 0, $8 + 20 | 0 | 0, $8 + 4 | 0 | 0);
|
|
$495 = (HEAP32[($8 + 692 | 0) >> 2] | 0) + 148 | 0;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$0 = HEAP32[($8 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($8 + 8 | 0) >> 2] | 0;
|
|
$1485 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $495;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1485;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$497 = 8;
|
|
i64toi32_i32$2 = ($8 + 4 | 0) + $497 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1498 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $495 + $497 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1498;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP8[($8 + 719 | 0) >> 0] = 1 & 1 | 0;
|
|
}
|
|
$508 = (HEAPU8[($8 + 719 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $8 + 720 | 0;
|
|
return $508 | 0;
|
|
}
|
|
|
|
function btSubsimplexConvexCast___btSubsimplexConvexCast_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btSubsimplexConvexCast___btSubsimplexConvexCast_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btSubSimplexConvexCast_cpp() {
|
|
__cxx_global_var_init_65();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_66() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(115376 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btVoronoiSimplexSolver__removeVertex_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $5 = 0, $4 = 0, $31 = 0, $33 = 0, $48 = 0, $50 = 0, $65 = 0, $67 = 0, $131 = 0, $141 = 0, $167 = 0, $177 = 0, $203 = 0, $213 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[$5 >> 2] | 0 | 0) > (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85771 | 0, 72458 | 0, 38 | 0, 66276 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + -1 | 0;
|
|
$31 = ($5 + 4 | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = ($5 + 4 | 0) + ((HEAP32[$5 >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$131 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $31;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $131;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$33 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $33 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$141 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $31 + $33 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $141;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$48 = ($5 + 84 | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = ($5 + 84 | 0) + ((HEAP32[$5 >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$167 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $48;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $167;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$50 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $50 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$177 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $48 + $50 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $177;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$65 = ($5 + 164 | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = ($5 + 164 | 0) + ((HEAP32[$5 >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$203 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $65;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $203;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$67 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $67 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$213 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $65 + $67 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $213;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btVoronoiSimplexSolver__reduceVertices_28btUsageBitfield_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $63 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btVoronoiSimplexSolver__numVertices_28_29_20const($5 | 0) | 0 | 0) >= (4 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
if ((((((HEAPU8[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 0] | 0) >>> 3 | 0) & 1 | 0) & 255 | 0) & 65535 | 0 | 0) != (0 & 65535 | 0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
btVoronoiSimplexSolver__removeVertex_28int_29($5 | 0, 3 | 0);
|
|
}
|
|
label$2 : {
|
|
if (!((btVoronoiSimplexSolver__numVertices_28_29_20const($5 | 0) | 0 | 0) >= (3 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if ((((((HEAPU8[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 0] | 0) >>> 2 | 0) & 1 | 0) & 255 | 0) & 65535 | 0 | 0) != (0 & 65535 | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
btVoronoiSimplexSolver__removeVertex_28int_29($5 | 0, 2 | 0);
|
|
}
|
|
label$3 : {
|
|
if (!((btVoronoiSimplexSolver__numVertices_28_29_20const($5 | 0) | 0 | 0) >= (2 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$63 = 1;
|
|
if ((((((HEAPU8[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 0] | 0) >>> $63 | 0) & $63 | 0) & 255 | 0) & 65535 | 0 | 0) != (0 & 65535 | 0 | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
btVoronoiSimplexSolver__removeVertex_28int_29($5 | 0, 1 | 0);
|
|
}
|
|
label$4 : {
|
|
if (!((btVoronoiSimplexSolver__numVertices_28_29_20const($5 | 0) | 0 | 0) >= (1 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
if (((((HEAPU8[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 0] | 0) & 1 | 0) & 255 | 0) & 65535 | 0 | 0) != (0 & 65535 | 0 | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
btVoronoiSimplexSolver__removeVertex_28int_29($5 | 0, 0 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btVoronoiSimplexSolver__numVertices_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[(HEAP32[($3 + 12 | 0) >> 2] | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btVoronoiSimplexSolver__reset_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, i64toi32_i32$2 = 0, $22 = 0, $24 = 0, $79 = 0, $92 = 0;
|
|
$3 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 28 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 28 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 312 | 0) >> 0] = 0;
|
|
HEAP32[$4 >> 2] = 0;
|
|
HEAP8[($4 + 356 | 0) >> 0] = 1;
|
|
HEAPF32[($3 + 8 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAPF32[($3 + 4 | 0) >> 2] = Math_fround(999999984306749440.0);
|
|
HEAPF32[$3 >> 2] = Math_fround(999999984306749440.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 12 | 0 | 0, $3 + 8 | 0 | 0, $3 + 4 | 0 | 0, $3 | 0) | 0;
|
|
$22 = $4 + 292 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 16 | 0) >> 2] | 0;
|
|
$79 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $22;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $79;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$24 = 8;
|
|
i64toi32_i32$2 = ($3 + 12 | 0) + $24 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$92 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $22 + $24 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $92;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btSubSimplexClosestResult__reset_28_29($4 + 316 | 0 | 0);
|
|
__stack_pointer = $3 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSubSimplexClosestResult__reset_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $7 = Math_fround(0), $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 36 | 0) >> 0] = 0;
|
|
$7 = Math_fround(0 | 0);
|
|
btSubSimplexClosestResult__setBarycentricCoordinates_28float_2c_20float_2c_20float_2c_20float_29($4 | 0, Math_fround($7), Math_fround($7), Math_fround($7), Math_fround($7));
|
|
btUsageBitfield__reset_28_29($4 + 16 | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSubSimplexClosestResult__setBarycentricCoordinates_28float_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
$4 = Math_fround($4);
|
|
var $7 = 0, $8 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAPF32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAPF32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
HEAPF32[($8 + 20 | 0) >> 2] = Math_fround(HEAPF32[($7 + 24 | 0) >> 2]);
|
|
HEAPF32[($8 + 24 | 0) >> 2] = Math_fround(HEAPF32[($7 + 20 | 0) >> 2]);
|
|
HEAPF32[($8 + 28 | 0) >> 2] = Math_fround(HEAPF32[($7 + 16 | 0) >> 2]);
|
|
HEAPF32[($8 + 32 | 0) >> 2] = Math_fround(HEAPF32[($7 + 12 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function btVoronoiSimplexSolver__addVertex_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $7 = 0, $6 = 0, $10 = 0, $12 = 0, $23 = 0, $25 = 0, $35 = 0, $37 = 0, $47 = 0, $49 = 0, $78 = 0, $88 = 0, $107 = 0, $117 = 0, $134 = 0, $144 = 0, $161 = 0, $171 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
$10 = $7 + 292 | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$78 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $10;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $78;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$12 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $12 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$88 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $10 + $12 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $88;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP8[($7 + 356 | 0) >> 0] = 1;
|
|
$23 = ($7 + 4 | 0) + ((HEAP32[$7 >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$107 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $23;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $107;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$25 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $25 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$117 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $23 + $25 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $117;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$35 = ($7 + 84 | 0) + ((HEAP32[$7 >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$134 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $35;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $134;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$37 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $37 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$144 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $35 + $37 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $144;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$47 = ($7 + 164 | 0) + ((HEAP32[$7 >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$2 = HEAP32[$6 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$161 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $47;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $161;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$49 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $49 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$171 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $47 + $49 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $171;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[$7 >> 2] = (HEAP32[$7 >> 2] | 0) + 1 | 0;
|
|
return;
|
|
}
|
|
|
|
function btVoronoiSimplexSolver__updateClosestVectorAndPoints_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $54 = Math_fround(0), $135 = 0, $11 = 0, $17 = 0, $19 = 0, $26 = 0, $28 = 0, $40 = 0, $42 = 0, $114 = 0, $165 = Math_fround(0), $182 = 0, $218 = 0, $220 = 0, $253 = 0, $255 = 0, $269 = 0, $271 = 0, $376 = 0, $378 = 0, $438 = 0, $440 = 0, $454 = 0, $456 = 0, $594 = 0, $596 = 0, $678 = 0, $680 = 0, $694 = 0, $696 = 0, $778 = 0, $788 = 0, $798 = 0, $808 = 0, $828 = 0, $841 = 0, $166 = 0, $1128 = 0, $1132 = 0, $1184 = 0, $1197 = 0, $1249 = 0, $1262 = 0, $1282 = 0, $1295 = 0, $1484 = 0, $1497 = 0, $1594 = 0, $1607 = 0, $1627 = 0, $1640 = 0, $1889 = 0, $1902 = 0, $2036 = 0, $2049 = 0, $2069 = 0, $2082 = 0, $736 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$3 = __stack_pointer - 800 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 796 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 796 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($4 + 356 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btSubSimplexClosestResult__reset_28_29($4 + 316 | 0 | 0);
|
|
HEAP8[($4 + 356 | 0) >> 0] = 0;
|
|
$11 = btVoronoiSimplexSolver__numVertices_28_29_20const($4 | 0) | 0;
|
|
label$2 : {
|
|
label$3 : {
|
|
switch ($11 | 0) {
|
|
case 0:
|
|
HEAP8[($4 + 312 | 0) >> 0] = 0;
|
|
break label$2;
|
|
case 1:
|
|
$17 = $4 + 244 | 0;
|
|
i64toi32_i32$2 = $4 + 84 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$778 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $17;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $778;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$19 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $19 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$788 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $17 + $19 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $788;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$26 = $4 + 260 | 0;
|
|
i64toi32_i32$2 = $4 + 164 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$798 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $26;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $798;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$28 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $28 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$808 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $26 + $28 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $808;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($3 + 780 | 0 | 0, $4 + 244 | 0 | 0, $4 + 260 | 0 | 0);
|
|
$40 = $4 + 276 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 780 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 784 | 0) >> 2] | 0;
|
|
$828 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $40;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $828;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$42 = 8;
|
|
i64toi32_i32$2 = ($3 + 780 | 0) + $42 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$841 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $40 + $42 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $841;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btSubSimplexClosestResult__reset_28_29($4 + 316 | 0 | 0);
|
|
$54 = Math_fround(0 | 0);
|
|
btSubSimplexClosestResult__setBarycentricCoordinates_28float_2c_20float_2c_20float_2c_20float_29($4 + 316 | 0 | 0, Math_fround(Math_fround(1.0)), Math_fround($54), Math_fround($54), Math_fround($54));
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = (btSubSimplexClosestResult__isValid_28_29($4 + 316 | 0 | 0) | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 312 | 0) >> 0] = wasm2js_i32$1;
|
|
break label$2;
|
|
case 2:
|
|
HEAP32[($3 + 776 | 0) >> 2] = $4 + 4 | 0;
|
|
HEAP32[($3 + 772 | 0) >> 2] = ($4 + 4 | 0) + 16 | 0;
|
|
btVector3__btVector3_28_29($3 + 752 | 0 | 0) | 0;
|
|
HEAPF32[($3 + 732 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 728 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 724 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 736 | 0 | 0, $3 + 732 | 0 | 0, $3 + 728 | 0 | 0, $3 + 724 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($3 + 708 | 0 | 0, $3 + 736 | 0 | 0, HEAP32[($3 + 776 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($3 + 692 | 0 | 0, HEAP32[($3 + 772 | 0) >> 2] | 0 | 0, HEAP32[($3 + 776 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($3 + 692 | 0 | 0, $3 + 708 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 688 | 0) >> 2] = wasm2js_f32$0;
|
|
label$9 : {
|
|
label$10 : {
|
|
if (!(Math_fround(HEAPF32[($3 + 688 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
$114 = $3 + 692 | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($114 | 0, $114 | 0))), HEAPF32[(wasm2js_i32$0 + 684 | 0) >> 2] = wasm2js_f32$0;
|
|
label$11 : {
|
|
label$12 : {
|
|
if (!(Math_fround(HEAPF32[($3 + 688 | 0) >> 2]) < Math_fround(HEAPF32[($3 + 684 | 0) >> 2]) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
HEAPF32[($3 + 688 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($3 + 688 | 0) >> 2]) / Math_fround(HEAPF32[($3 + 684 | 0) >> 2]));
|
|
operator__28float_20const__2c_20btVector3_20const__29($3 + 668 | 0 | 0, $3 + 688 | 0 | 0, $3 + 692 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29($3 + 708 | 0 | 0, $3 + 668 | 0 | 0) | 0;
|
|
$135 = $4 + 332 | 0;
|
|
HEAP8[$135 >> 0] = HEAPU8[$135 >> 0] | 0 | 1 | 0;
|
|
HEAP8[($4 + 332 | 0) >> 0] = HEAPU8[$135 >> 0] | 0 | 2 | 0;
|
|
break label$11;
|
|
}
|
|
HEAP32[($3 + 688 | 0) >> 2] = 1065353216;
|
|
btVector3__operator___28btVector3_20const__29($3 + 708 | 0 | 0, $3 + 692 | 0 | 0) | 0;
|
|
HEAP8[($4 + 332 | 0) >> 0] = HEAPU8[($4 + 332 | 0) >> 0] | 0 | 2 | 0;
|
|
}
|
|
break label$9;
|
|
}
|
|
HEAP32[($3 + 688 | 0) >> 2] = 0;
|
|
HEAP8[($4 + 332 | 0) >> 0] = HEAPU8[($4 + 332 | 0) >> 0] | 0 | 1 | 0;
|
|
}
|
|
$165 = Math_fround(0 | 0);
|
|
btSubSimplexClosestResult__setBarycentricCoordinates_28float_2c_20float_2c_20float_2c_20float_29($4 + 316 | 0 | 0, Math_fround(Math_fround(Math_fround(1.0) - Math_fround(HEAPF32[($3 + 688 | 0) >> 2]))), Math_fround(Math_fround(HEAPF32[($3 + 688 | 0) >> 2])), Math_fround($165), Math_fround($165));
|
|
$166 = HEAP32[($3 + 776 | 0) >> 2] | 0;
|
|
operator__28float_20const__2c_20btVector3_20const__29($3 + 636 | 0 | 0, $3 + 688 | 0 | 0, $3 + 692 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($3 + 652 | 0 | 0, $166 | 0, $3 + 636 | 0 | 0);
|
|
$182 = 8;
|
|
i64toi32_i32$2 = ($3 + 652 | 0) + $182 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1128 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($3 + 752 | 0) + $182 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1128;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$1 = HEAP32[($3 + 652 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($3 + 656 | 0) >> 2] | 0;
|
|
$1132 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $3;
|
|
HEAP32[($3 + 752 | 0) >> 2] = $1132;
|
|
HEAP32[($3 + 756 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($3 + 588 | 0 | 0, ($4 + 84 | 0) + 16 | 0 | 0, $4 + 84 | 0 | 0);
|
|
operator__28float_20const__2c_20btVector3_20const__29($3 + 604 | 0 | 0, $3 + 688 | 0 | 0, $3 + 588 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($3 + 620 | 0 | 0, $4 + 84 | 0 | 0, $3 + 604 | 0 | 0);
|
|
$218 = $4 + 244 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 620 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 624 | 0) >> 2] | 0;
|
|
$1184 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $218;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1184;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$220 = 8;
|
|
i64toi32_i32$2 = ($3 + 620 | 0) + $220 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1197 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $218 + $220 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1197;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($3 + 540 | 0 | 0, ($4 + 164 | 0) + 16 | 0 | 0, $4 + 164 | 0 | 0);
|
|
operator__28float_20const__2c_20btVector3_20const__29($3 + 556 | 0 | 0, $3 + 688 | 0 | 0, $3 + 540 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($3 + 572 | 0 | 0, $4 + 164 | 0 | 0, $3 + 556 | 0 | 0);
|
|
$253 = $4 + 260 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 572 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 576 | 0) >> 2] | 0;
|
|
$1249 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $253;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1249;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$255 = 8;
|
|
i64toi32_i32$2 = ($3 + 572 | 0) + $255 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1262 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $253 + $255 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1262;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($3 + 524 | 0 | 0, $4 + 244 | 0 | 0, $4 + 260 | 0 | 0);
|
|
$269 = $4 + 276 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 524 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 528 | 0) >> 2] | 0;
|
|
$1282 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $269;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1282;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$271 = 8;
|
|
i64toi32_i32$2 = ($3 + 524 | 0) + $271 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1295 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $269 + $271 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1295;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVoronoiSimplexSolver__reduceVertices_28btUsageBitfield_20const__29($4 | 0, ($4 + 316 | 0) + 16 | 0 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = (btSubSimplexClosestResult__isValid_28_29($4 + 316 | 0 | 0) | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 312 | 0) >> 0] = wasm2js_i32$1;
|
|
break label$2;
|
|
case 3:
|
|
HEAPF32[($3 + 504 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 500 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 496 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 508 | 0 | 0, $3 + 504 | 0 | 0, $3 + 500 | 0 | 0, $3 + 496 | 0 | 0) | 0;
|
|
HEAP32[($3 + 492 | 0) >> 2] = $4 + 4 | 0;
|
|
HEAP32[($3 + 488 | 0) >> 2] = ($4 + 4 | 0) + 16 | 0;
|
|
HEAP32[($3 + 484 | 0) >> 2] = ($4 + 4 | 0) + 32 | 0;
|
|
btVoronoiSimplexSolver__closestPtPointTriangle_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btSubSimplexClosestResult__29($4 | 0, $3 + 508 | 0 | 0, HEAP32[($3 + 492 | 0) >> 2] | 0 | 0, HEAP32[($3 + 488 | 0) >> 2] | 0 | 0, HEAP32[($3 + 484 | 0) >> 2] | 0 | 0, $4 + 316 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($3 + 436 | 0 | 0, $4 + 84 | 0 | 0, ($4 + 316 | 0) + 20 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($3 + 420 | 0 | 0, ($4 + 84 | 0) + 16 | 0 | 0, (($4 + 316 | 0) + 20 | 0) + 4 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($3 + 452 | 0 | 0, $3 + 436 | 0 | 0, $3 + 420 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($3 + 404 | 0 | 0, ($4 + 84 | 0) + 32 | 0 | 0, (($4 + 316 | 0) + 20 | 0) + 8 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($3 + 468 | 0 | 0, $3 + 452 | 0 | 0, $3 + 404 | 0 | 0);
|
|
$376 = $4 + 244 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 468 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 472 | 0) >> 2] | 0;
|
|
$1484 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $376;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1484;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$378 = 8;
|
|
i64toi32_i32$2 = ($3 + 468 | 0) + $378 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1497 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $376 + $378 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1497;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($3 + 356 | 0 | 0, $4 + 164 | 0 | 0, ($4 + 316 | 0) + 20 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($3 + 340 | 0 | 0, ($4 + 164 | 0) + 16 | 0 | 0, (($4 + 316 | 0) + 20 | 0) + 4 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($3 + 372 | 0 | 0, $3 + 356 | 0 | 0, $3 + 340 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($3 + 324 | 0 | 0, ($4 + 164 | 0) + 32 | 0 | 0, (($4 + 316 | 0) + 20 | 0) + 8 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($3 + 388 | 0 | 0, $3 + 372 | 0 | 0, $3 + 324 | 0 | 0);
|
|
$438 = $4 + 260 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 388 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 392 | 0) >> 2] | 0;
|
|
$1594 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $438;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1594;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$440 = 8;
|
|
i64toi32_i32$2 = ($3 + 388 | 0) + $440 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1607 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $438 + $440 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1607;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($3 + 308 | 0 | 0, $4 + 244 | 0 | 0, $4 + 260 | 0 | 0);
|
|
$454 = $4 + 276 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 308 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 312 | 0) >> 2] | 0;
|
|
$1627 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $454;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1627;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$456 = 8;
|
|
i64toi32_i32$2 = ($3 + 308 | 0) + $456 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1640 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $454 + $456 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1640;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVoronoiSimplexSolver__reduceVertices_28btUsageBitfield_20const__29($4 | 0, ($4 + 316 | 0) + 16 | 0 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = (btSubSimplexClosestResult__isValid_28_29($4 + 316 | 0 | 0) | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 312 | 0) >> 0] = wasm2js_i32$1;
|
|
break label$2;
|
|
case 4:
|
|
HEAPF32[($3 + 288 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 284 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 280 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 292 | 0 | 0, $3 + 288 | 0 | 0, $3 + 284 | 0 | 0, $3 + 280 | 0 | 0) | 0;
|
|
HEAP32[($3 + 276 | 0) >> 2] = $4 + 4 | 0;
|
|
HEAP32[($3 + 272 | 0) >> 2] = ($4 + 4 | 0) + 16 | 0;
|
|
HEAP32[($3 + 268 | 0) >> 2] = ($4 + 4 | 0) + 32 | 0;
|
|
HEAP32[($3 + 264 | 0) >> 2] = ($4 + 4 | 0) + 48 | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = (btVoronoiSimplexSolver__closestPtPointTetrahedron_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btSubSimplexClosestResult__29($4 | 0, $3 + 292 | 0 | 0, HEAP32[($3 + 276 | 0) >> 2] | 0 | 0, HEAP32[($3 + 272 | 0) >> 2] | 0 | 0, HEAP32[($3 + 268 | 0) >> 2] | 0 | 0, HEAP32[($3 + 264 | 0) >> 2] | 0 | 0, $4 + 316 | 0 | 0) | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 263 | 0) >> 0] = wasm2js_i32$1;
|
|
label$13 : {
|
|
label$14 : {
|
|
if (!((HEAPU8[($3 + 263 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
operator__28btVector3_20const__2c_20float_20const__29($3 + 196 | 0 | 0, $4 + 84 | 0 | 0, ($4 + 316 | 0) + 20 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($3 + 180 | 0 | 0, ($4 + 84 | 0) + 16 | 0 | 0, (($4 + 316 | 0) + 20 | 0) + 4 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($3 + 212 | 0 | 0, $3 + 196 | 0 | 0, $3 + 180 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($3 + 164 | 0 | 0, ($4 + 84 | 0) + 32 | 0 | 0, (($4 + 316 | 0) + 20 | 0) + 8 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($3 + 228 | 0 | 0, $3 + 212 | 0 | 0, $3 + 164 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($3 + 148 | 0 | 0, ($4 + 84 | 0) + 48 | 0 | 0, (($4 + 316 | 0) + 20 | 0) + 12 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($3 + 244 | 0 | 0, $3 + 228 | 0 | 0, $3 + 148 | 0 | 0);
|
|
$594 = $4 + 244 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 244 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 248 | 0) >> 2] | 0;
|
|
$1889 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $594;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1889;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$596 = 8;
|
|
i64toi32_i32$2 = ($3 + 244 | 0) + $596 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1902 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $594 + $596 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1902;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($3 + 84 | 0 | 0, $4 + 164 | 0 | 0, ($4 + 316 | 0) + 20 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($3 + 68 | 0 | 0, ($4 + 164 | 0) + 16 | 0 | 0, (($4 + 316 | 0) + 20 | 0) + 4 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($3 + 100 | 0 | 0, $3 + 84 | 0 | 0, $3 + 68 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($3 + 52 | 0 | 0, ($4 + 164 | 0) + 32 | 0 | 0, (($4 + 316 | 0) + 20 | 0) + 8 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($3 + 116 | 0 | 0, $3 + 100 | 0 | 0, $3 + 52 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($3 + 36 | 0 | 0, ($4 + 164 | 0) + 48 | 0 | 0, (($4 + 316 | 0) + 20 | 0) + 12 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($3 + 132 | 0 | 0, $3 + 116 | 0 | 0, $3 + 36 | 0 | 0);
|
|
$678 = $4 + 260 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 132 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 136 | 0) >> 2] | 0;
|
|
$2036 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $678;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2036;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$680 = 8;
|
|
i64toi32_i32$2 = ($3 + 132 | 0) + $680 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2049 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $678 + $680 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $2049;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($3 + 20 | 0 | 0, $4 + 244 | 0 | 0, $4 + 260 | 0 | 0);
|
|
$694 = $4 + 276 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 24 | 0) >> 2] | 0;
|
|
$2069 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $694;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2069;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$696 = 8;
|
|
i64toi32_i32$2 = ($3 + 20 | 0) + $696 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2082 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $694 + $696 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $2082;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVoronoiSimplexSolver__reduceVertices_28btUsageBitfield_20const__29($4 | 0, ($4 + 316 | 0) + 16 | 0 | 0);
|
|
break label$13;
|
|
}
|
|
label$15 : {
|
|
label$16 : {
|
|
if (!((HEAPU8[($4 + 352 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
HEAP8[($4 + 312 | 0) >> 0] = 0;
|
|
break label$15;
|
|
}
|
|
HEAP8[($4 + 312 | 0) >> 0] = 1;
|
|
HEAPF32[($3 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 276 | 0 | 0, $3 + 16 | 0 | 0, $3 + 12 | 0 | 0, $3 + 8 | 0 | 0);
|
|
}
|
|
break label$2;
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = (btSubSimplexClosestResult__isValid_28_29($4 + 316 | 0 | 0) | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 312 | 0) >> 0] = wasm2js_i32$1;
|
|
break label$2;
|
|
default:
|
|
break label$3;
|
|
};
|
|
}
|
|
HEAP8[($4 + 312 | 0) >> 0] = 0;
|
|
}
|
|
}
|
|
$736 = (HEAPU8[($4 + 312 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $3 + 800 | 0;
|
|
return $736 | 0;
|
|
}
|
|
|
|
function btSubSimplexClosestResult__isValid_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $12 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$12 = 0;
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 20 | 0) >> 2]) >= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$12 = 0;
|
|
if (!(Math_fround(HEAPF32[($4 + 24 | 0) >> 2]) >= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$12 = 0;
|
|
if (!(Math_fround(HEAPF32[($4 + 28 | 0) >> 2]) >= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$12 = Math_fround(HEAPF32[($4 + 32 | 0) >> 2]) >= Math_fround(0 | 0);
|
|
}
|
|
HEAP8[($3 + 11 | 0) >> 0] = $12 & 1 | 0;
|
|
return (HEAPU8[($3 + 11 | 0) >> 0] | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function btVoronoiSimplexSolver__closestPtPointTriangle_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btSubSimplexClosestResult__29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $67 = Math_fround(0), $114 = Math_fround(0), $229 = Math_fround(0), $54 = 0, $56 = 0, $60 = 0, $102 = 0, $104 = 0, $108 = 0, $145 = Math_fround(0), $160 = 0, $161 = 0, $168 = 0, $172 = 0, $182 = Math_fround(0), $217 = 0, $219 = 0, $223 = 0, $260 = Math_fround(0), $275 = 0, $276 = 0, $283 = 0, $287 = 0, $297 = Math_fround(0), $333 = Math_fround(0), $339 = 0, $353 = 0, $354 = 0, $361 = 0, $365 = 0, $375 = Math_fround(0), $415 = 0, $416 = 0, $423 = 0, $427 = 0, $431 = 0, $566 = 0, $576 = 0, $668 = 0, $678 = 0, $149 = 0, $808 = 0, $812 = 0, $920 = 0, $930 = 0, $264 = 0, $1060 = 0, $1064 = 0, $1238 = 0, $1242 = 0, $392 = 0, $1378 = 0, $1382 = 0, $450 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$8 = __stack_pointer - 352 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 344 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 340 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 336 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 332 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 328 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 324 | 0) >> 2] = $5;
|
|
btUsageBitfield__reset_28_29((HEAP32[($8 + 324 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 308 | 0 | 0, HEAP32[($8 + 332 | 0) >> 2] | 0 | 0, HEAP32[($8 + 336 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 292 | 0 | 0, HEAP32[($8 + 328 | 0) >> 2] | 0 | 0, HEAP32[($8 + 336 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 276 | 0 | 0, HEAP32[($8 + 340 | 0) >> 2] | 0 | 0, HEAP32[($8 + 336 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 308 | 0 | 0, $8 + 276 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 272 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 292 | 0 | 0, $8 + 276 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 268 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 272 | 0) >> 2]) <= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if (!(Math_fround(HEAPF32[($8 + 268 | 0) >> 2]) <= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$54 = HEAP32[($8 + 324 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($8 + 336 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$566 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $54;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $566;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$56 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $56 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$576 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $54 + $56 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $576;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$60 = HEAP32[($8 + 324 | 0) >> 2] | 0;
|
|
HEAP8[($60 + 16 | 0) >> 0] = HEAPU8[($60 + 16 | 0) >> 0] | 0 | 1 | 0;
|
|
$67 = Math_fround(0 | 0);
|
|
btSubSimplexClosestResult__setBarycentricCoordinates_28float_2c_20float_2c_20float_2c_20float_29(HEAP32[($8 + 324 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(1.0)), Math_fround($67), Math_fround($67), Math_fround($67));
|
|
HEAP8[($8 + 351 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 252 | 0 | 0, HEAP32[($8 + 340 | 0) >> 2] | 0 | 0, HEAP32[($8 + 332 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 308 | 0 | 0, $8 + 252 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 248 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 292 | 0 | 0, $8 + 252 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 244 | 0) >> 2] = wasm2js_f32$0;
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 248 | 0) >> 2]) >= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
if (!(Math_fround(HEAPF32[($8 + 244 | 0) >> 2]) <= Math_fround(HEAPF32[($8 + 248 | 0) >> 2]) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$102 = HEAP32[($8 + 324 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($8 + 332 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$668 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $102;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $668;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$104 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $104 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$678 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $102 + $104 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $678;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$108 = HEAP32[($8 + 324 | 0) >> 2] | 0;
|
|
HEAP8[($108 + 16 | 0) >> 0] = HEAPU8[($108 + 16 | 0) >> 0] | 0 | 2 | 0;
|
|
$114 = Math_fround(0 | 0);
|
|
btSubSimplexClosestResult__setBarycentricCoordinates_28float_2c_20float_2c_20float_2c_20float_29(HEAP32[($8 + 324 | 0) >> 2] | 0 | 0, Math_fround($114), Math_fround(Math_fround(1.0)), Math_fround($114), Math_fround($114));
|
|
HEAP8[($8 + 351 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAPF32[($8 + 240 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($8 + 272 | 0) >> 2]) * Math_fround(HEAPF32[($8 + 244 | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[($8 + 248 | 0) >> 2]) * Math_fround(HEAPF32[($8 + 268 | 0) >> 2]))));
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 240 | 0) >> 2]) <= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
if (!(Math_fround(HEAPF32[($8 + 272 | 0) >> 2]) >= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
if (!(Math_fround(HEAPF32[($8 + 248 | 0) >> 2]) <= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$145 = Math_fround(HEAPF32[($8 + 272 | 0) >> 2]);
|
|
HEAPF32[($8 + 236 | 0) >> 2] = Math_fround($145 / Math_fround($145 - Math_fround(HEAPF32[($8 + 248 | 0) >> 2])));
|
|
$149 = HEAP32[($8 + 336 | 0) >> 2] | 0;
|
|
operator__28float_20const__2c_20btVector3_20const__29($8 + 204 | 0 | 0, $8 + 236 | 0 | 0, $8 + 308 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 220 | 0 | 0, $149 | 0, $8 + 204 | 0 | 0);
|
|
$160 = HEAP32[($8 + 324 | 0) >> 2] | 0;
|
|
$161 = 8;
|
|
i64toi32_i32$2 = ($8 + 220 | 0) + $161 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$808 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $160 + $161 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $808;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 220 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 224 | 0) >> 2] | 0;
|
|
$812 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $160;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $812;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$168 = HEAP32[($8 + 324 | 0) >> 2] | 0;
|
|
HEAP8[($168 + 16 | 0) >> 0] = HEAPU8[($168 + 16 | 0) >> 0] | 0 | 1 | 0;
|
|
$172 = HEAP32[($8 + 324 | 0) >> 2] | 0;
|
|
HEAP8[($172 + 16 | 0) >> 0] = HEAPU8[($172 + 16 | 0) >> 0] | 0 | 2 | 0;
|
|
$182 = Math_fround(0 | 0);
|
|
btSubSimplexClosestResult__setBarycentricCoordinates_28float_2c_20float_2c_20float_2c_20float_29(HEAP32[($8 + 324 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(Math_fround(1.0) - Math_fround(HEAPF32[($8 + 236 | 0) >> 2]))), Math_fround(Math_fround(HEAPF32[($8 + 236 | 0) >> 2])), Math_fround($182), Math_fround($182));
|
|
HEAP8[($8 + 351 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 188 | 0 | 0, HEAP32[($8 + 340 | 0) >> 2] | 0 | 0, HEAP32[($8 + 328 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 308 | 0 | 0, $8 + 188 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 184 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 292 | 0 | 0, $8 + 188 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 180 | 0) >> 2] = wasm2js_f32$0;
|
|
label$5 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 180 | 0) >> 2]) >= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
if (!(Math_fround(HEAPF32[($8 + 184 | 0) >> 2]) <= Math_fround(HEAPF32[($8 + 180 | 0) >> 2]) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
$217 = HEAP32[($8 + 324 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($8 + 328 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$920 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $217;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $920;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$219 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $219 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$930 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $217 + $219 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $930;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$223 = HEAP32[($8 + 324 | 0) >> 2] | 0;
|
|
HEAP8[($223 + 16 | 0) >> 0] = HEAPU8[($223 + 16 | 0) >> 0] | 0 | 4 | 0;
|
|
$229 = Math_fround(0 | 0);
|
|
btSubSimplexClosestResult__setBarycentricCoordinates_28float_2c_20float_2c_20float_2c_20float_29(HEAP32[($8 + 324 | 0) >> 2] | 0 | 0, Math_fround($229), Math_fround($229), Math_fround(Math_fround(1.0)), Math_fround($229));
|
|
HEAP8[($8 + 351 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAPF32[($8 + 176 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($8 + 184 | 0) >> 2]) * Math_fround(HEAPF32[($8 + 268 | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[($8 + 272 | 0) >> 2]) * Math_fround(HEAPF32[($8 + 180 | 0) >> 2]))));
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 176 | 0) >> 2]) <= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
if (!(Math_fround(HEAPF32[($8 + 268 | 0) >> 2]) >= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
if (!(Math_fround(HEAPF32[($8 + 180 | 0) >> 2]) <= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$260 = Math_fround(HEAPF32[($8 + 268 | 0) >> 2]);
|
|
HEAPF32[($8 + 172 | 0) >> 2] = Math_fround($260 / Math_fround($260 - Math_fround(HEAPF32[($8 + 180 | 0) >> 2])));
|
|
$264 = HEAP32[($8 + 336 | 0) >> 2] | 0;
|
|
operator__28float_20const__2c_20btVector3_20const__29($8 + 140 | 0 | 0, $8 + 172 | 0 | 0, $8 + 292 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 156 | 0 | 0, $264 | 0, $8 + 140 | 0 | 0);
|
|
$275 = HEAP32[($8 + 324 | 0) >> 2] | 0;
|
|
$276 = 8;
|
|
i64toi32_i32$2 = ($8 + 156 | 0) + $276 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1060 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $275 + $276 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1060;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 156 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 160 | 0) >> 2] | 0;
|
|
$1064 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $275;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1064;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$283 = HEAP32[($8 + 324 | 0) >> 2] | 0;
|
|
HEAP8[($283 + 16 | 0) >> 0] = HEAPU8[($283 + 16 | 0) >> 0] | 0 | 1 | 0;
|
|
$287 = HEAP32[($8 + 324 | 0) >> 2] | 0;
|
|
HEAP8[($287 + 16 | 0) >> 0] = HEAPU8[($287 + 16 | 0) >> 0] | 0 | 4 | 0;
|
|
$297 = Math_fround(0 | 0);
|
|
btSubSimplexClosestResult__setBarycentricCoordinates_28float_2c_20float_2c_20float_2c_20float_29(HEAP32[($8 + 324 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(Math_fround(1.0) - Math_fround(HEAPF32[($8 + 172 | 0) >> 2]))), Math_fround($297), Math_fround(Math_fround(HEAPF32[($8 + 172 | 0) >> 2])), Math_fround($297));
|
|
HEAP8[($8 + 351 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAPF32[($8 + 136 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($8 + 248 | 0) >> 2]) * Math_fround(HEAPF32[($8 + 180 | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[($8 + 184 | 0) >> 2]) * Math_fround(HEAPF32[($8 + 244 | 0) >> 2]))));
|
|
label$7 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 136 | 0) >> 2]) <= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
if (!(Math_fround(Math_fround(HEAPF32[($8 + 244 | 0) >> 2]) - Math_fround(HEAPF32[($8 + 248 | 0) >> 2])) >= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
if (!(Math_fround(Math_fround(HEAPF32[($8 + 184 | 0) >> 2]) - Math_fround(HEAPF32[($8 + 180 | 0) >> 2])) >= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
$333 = Math_fround(Math_fround(HEAPF32[($8 + 244 | 0) >> 2]) - Math_fround(HEAPF32[($8 + 248 | 0) >> 2]));
|
|
HEAPF32[($8 + 132 | 0) >> 2] = Math_fround($333 / Math_fround($333 + Math_fround(Math_fround(HEAPF32[($8 + 184 | 0) >> 2]) - Math_fround(HEAPF32[($8 + 180 | 0) >> 2]))));
|
|
$339 = HEAP32[($8 + 332 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 84 | 0 | 0, HEAP32[($8 + 328 | 0) >> 2] | 0 | 0, $339 | 0);
|
|
operator__28float_20const__2c_20btVector3_20const__29($8 + 100 | 0 | 0, $8 + 132 | 0 | 0, $8 + 84 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 116 | 0 | 0, $339 | 0, $8 + 100 | 0 | 0);
|
|
$353 = HEAP32[($8 + 324 | 0) >> 2] | 0;
|
|
$354 = 8;
|
|
i64toi32_i32$2 = ($8 + 116 | 0) + $354 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1238 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $353 + $354 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1238;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 116 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 120 | 0) >> 2] | 0;
|
|
$1242 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $353;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1242;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$361 = HEAP32[($8 + 324 | 0) >> 2] | 0;
|
|
HEAP8[($361 + 16 | 0) >> 0] = HEAPU8[($361 + 16 | 0) >> 0] | 0 | 2 | 0;
|
|
$365 = HEAP32[($8 + 324 | 0) >> 2] | 0;
|
|
HEAP8[($365 + 16 | 0) >> 0] = HEAPU8[($365 + 16 | 0) >> 0] | 0 | 4 | 0;
|
|
$375 = Math_fround(0 | 0);
|
|
btSubSimplexClosestResult__setBarycentricCoordinates_28float_2c_20float_2c_20float_2c_20float_29(HEAP32[($8 + 324 | 0) >> 2] | 0 | 0, Math_fround($375), Math_fround(Math_fround(Math_fround(1.0) - Math_fround(HEAPF32[($8 + 132 | 0) >> 2]))), Math_fround(Math_fround(HEAPF32[($8 + 132 | 0) >> 2])), Math_fround($375));
|
|
HEAP8[($8 + 351 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAPF32[($8 + 80 | 0) >> 2] = Math_fround(Math_fround(1.0) / Math_fround(Math_fround(Math_fround(HEAPF32[($8 + 136 | 0) >> 2]) + Math_fround(HEAPF32[($8 + 176 | 0) >> 2])) + Math_fround(HEAPF32[($8 + 240 | 0) >> 2])));
|
|
HEAPF32[($8 + 76 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($8 + 176 | 0) >> 2]) * Math_fround(HEAPF32[($8 + 80 | 0) >> 2]));
|
|
HEAPF32[($8 + 72 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($8 + 240 | 0) >> 2]) * Math_fround(HEAPF32[($8 + 80 | 0) >> 2]));
|
|
$392 = HEAP32[($8 + 336 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($8 + 24 | 0 | 0, $8 + 308 | 0 | 0, $8 + 76 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 40 | 0 | 0, $392 | 0, $8 + 24 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($8 + 8 | 0 | 0, $8 + 292 | 0 | 0, $8 + 72 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 56 | 0 | 0, $8 + 40 | 0 | 0, $8 + 8 | 0 | 0);
|
|
$415 = HEAP32[($8 + 324 | 0) >> 2] | 0;
|
|
$416 = 8;
|
|
i64toi32_i32$2 = ($8 + 56 | 0) + $416 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1378 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $415 + $416 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1378;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 56 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 60 | 0) >> 2] | 0;
|
|
$1382 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $415;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1382;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$423 = HEAP32[($8 + 324 | 0) >> 2] | 0;
|
|
HEAP8[($423 + 16 | 0) >> 0] = HEAPU8[($423 + 16 | 0) >> 0] | 0 | 1 | 0;
|
|
$427 = HEAP32[($8 + 324 | 0) >> 2] | 0;
|
|
HEAP8[($427 + 16 | 0) >> 0] = HEAPU8[($427 + 16 | 0) >> 0] | 0 | 2 | 0;
|
|
$431 = HEAP32[($8 + 324 | 0) >> 2] | 0;
|
|
HEAP8[($431 + 16 | 0) >> 0] = HEAPU8[($431 + 16 | 0) >> 0] | 0 | 4 | 0;
|
|
btSubSimplexClosestResult__setBarycentricCoordinates_28float_2c_20float_2c_20float_2c_20float_29(HEAP32[($8 + 324 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(Math_fround(Math_fround(1.0) - Math_fround(HEAPF32[($8 + 76 | 0) >> 2])) - Math_fround(HEAPF32[($8 + 72 | 0) >> 2]))), Math_fround(Math_fround(HEAPF32[($8 + 76 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($8 + 72 | 0) >> 2])), Math_fround(Math_fround(0 | 0)));
|
|
HEAP8[($8 + 351 | 0) >> 0] = 1 & 1 | 0;
|
|
}
|
|
$450 = (HEAPU8[($8 + 351 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $8 + 352 | 0;
|
|
return $450 | 0;
|
|
}
|
|
|
|
function btVoronoiSimplexSolver__closestPtPointTetrahedron_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btSubSimplexClosestResult__29($0, $1, $2, $3, $4, $5, $6) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
var $9 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $10 = 0, $16 = 0, $235 = 0, $246 = 0, $322 = 0, $409 = 0, $14 = 0, $23 = 0, $27 = 0, $31 = 0, $35 = 0, $113 = 0, $114 = 0, $148 = 0, $149 = 0, $162 = 0, $168 = 0, $176 = 0, $199 = 0, $200 = 0, $234 = 0, $248 = 0, $254 = 0, $263 = 0, $286 = 0, $287 = 0, $321 = 0, $333 = 0, $335 = 0, $341 = 0, $344 = 0, $350 = 0, $373 = 0, $374 = 0, $408 = 0, $420 = 0, $422 = 0, $429 = 0, $437 = 0, $467 = 0, $556 = 0, $566 = 0, $797 = 0, $801 = 0, $871 = 0, $875 = 0, $987 = 0, $991 = 0, $1061 = 0, $1065 = 0, $1183 = 0, $1187 = 0, $1257 = 0, $1261 = 0, $1379 = 0, $1383 = 0, $1453 = 0, $1457 = 0, $520 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$9 = __stack_pointer - 320 | 0;
|
|
__stack_pointer = $9;
|
|
HEAP32[($9 + 312 | 0) >> 2] = $0;
|
|
HEAP32[($9 + 308 | 0) >> 2] = $1;
|
|
HEAP32[($9 + 304 | 0) >> 2] = $2;
|
|
HEAP32[($9 + 300 | 0) >> 2] = $3;
|
|
HEAP32[($9 + 296 | 0) >> 2] = $4;
|
|
HEAP32[($9 + 292 | 0) >> 2] = $5;
|
|
HEAP32[($9 + 288 | 0) >> 2] = $6;
|
|
$10 = HEAP32[($9 + 312 | 0) >> 2] | 0;
|
|
btSubSimplexClosestResult__btSubSimplexClosestResult_28_29($9 + 248 | 0 | 0) | 0;
|
|
$14 = HEAP32[($9 + 288 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($9 + 308 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$556 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $14;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $556;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$16 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $16 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$566 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $14 + $16 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $566;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btUsageBitfield__reset_28_29((HEAP32[($9 + 288 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
$23 = HEAP32[($9 + 288 | 0) >> 2] | 0;
|
|
HEAP8[($23 + 16 | 0) >> 0] = HEAPU8[($23 + 16 | 0) >> 0] | 0 | 1 | 0;
|
|
$27 = HEAP32[($9 + 288 | 0) >> 2] | 0;
|
|
HEAP8[($27 + 16 | 0) >> 0] = HEAPU8[($27 + 16 | 0) >> 0] | 0 | 2 | 0;
|
|
$31 = HEAP32[($9 + 288 | 0) >> 2] | 0;
|
|
HEAP8[($31 + 16 | 0) >> 0] = HEAPU8[($31 + 16 | 0) >> 0] | 0 | 4 | 0;
|
|
$35 = HEAP32[($9 + 288 | 0) >> 2] | 0;
|
|
HEAP8[($35 + 16 | 0) >> 0] = HEAPU8[($35 + 16 | 0) >> 0] | 0 | $16 | 0;
|
|
(wasm2js_i32$0 = $9, wasm2js_i32$1 = btVoronoiSimplexSolver__pointOutsideOfPlane_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($10 | 0, HEAP32[($9 + 308 | 0) >> 2] | 0 | 0, HEAP32[($9 + 304 | 0) >> 2] | 0 | 0, HEAP32[($9 + 300 | 0) >> 2] | 0 | 0, HEAP32[($9 + 296 | 0) >> 2] | 0 | 0, HEAP32[($9 + 292 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 244 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $9, wasm2js_i32$1 = btVoronoiSimplexSolver__pointOutsideOfPlane_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($10 | 0, HEAP32[($9 + 308 | 0) >> 2] | 0 | 0, HEAP32[($9 + 304 | 0) >> 2] | 0 | 0, HEAP32[($9 + 296 | 0) >> 2] | 0 | 0, HEAP32[($9 + 292 | 0) >> 2] | 0 | 0, HEAP32[($9 + 300 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 240 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $9, wasm2js_i32$1 = btVoronoiSimplexSolver__pointOutsideOfPlane_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($10 | 0, HEAP32[($9 + 308 | 0) >> 2] | 0 | 0, HEAP32[($9 + 304 | 0) >> 2] | 0 | 0, HEAP32[($9 + 292 | 0) >> 2] | 0 | 0, HEAP32[($9 + 300 | 0) >> 2] | 0 | 0, HEAP32[($9 + 296 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 236 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $9, wasm2js_i32$1 = btVoronoiSimplexSolver__pointOutsideOfPlane_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($10 | 0, HEAP32[($9 + 308 | 0) >> 2] | 0 | 0, HEAP32[($9 + 300 | 0) >> 2] | 0 | 0, HEAP32[($9 + 292 | 0) >> 2] | 0 | 0, HEAP32[($9 + 296 | 0) >> 2] | 0 | 0, HEAP32[($9 + 304 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 232 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : {
|
|
if ((HEAP32[($9 + 244 | 0) >> 2] | 0 | 0) < (0 | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
if ((HEAP32[($9 + 240 | 0) >> 2] | 0 | 0) < (0 | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
if ((HEAP32[($9 + 236 | 0) >> 2] | 0 | 0) < (0 | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
if (!((HEAP32[($9 + 232 | 0) >> 2] | 0 | 0) < (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
}
|
|
HEAP8[((HEAP32[($9 + 288 | 0) >> 2] | 0) + 36 | 0) >> 0] = 1;
|
|
HEAP8[($9 + 319 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
label$4 : {
|
|
if (HEAP32[($9 + 244 | 0) >> 2] | 0) {
|
|
break label$4
|
|
}
|
|
if (HEAP32[($9 + 240 | 0) >> 2] | 0) {
|
|
break label$4
|
|
}
|
|
if (HEAP32[($9 + 236 | 0) >> 2] | 0) {
|
|
break label$4
|
|
}
|
|
if (HEAP32[($9 + 232 | 0) >> 2] | 0) {
|
|
break label$4
|
|
}
|
|
HEAP8[($9 + 319 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAPF32[($9 + 228 | 0) >> 2] = Math_fround(3402823466385288598117041.0e14);
|
|
label$5 : {
|
|
if (!(HEAP32[($9 + 244 | 0) >> 2] | 0)) {
|
|
break label$5
|
|
}
|
|
btVoronoiSimplexSolver__closestPtPointTriangle_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btSubSimplexClosestResult__29($10 | 0, HEAP32[($9 + 308 | 0) >> 2] | 0 | 0, HEAP32[($9 + 304 | 0) >> 2] | 0 | 0, HEAP32[($9 + 300 | 0) >> 2] | 0 | 0, HEAP32[($9 + 296 | 0) >> 2] | 0 | 0, $9 + 248 | 0 | 0) | 0;
|
|
$113 = $9 + 248 | 0;
|
|
$114 = 8;
|
|
i64toi32_i32$2 = $113 + $114 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$797 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($9 + 208 | 0) + $114 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $797;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $113;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$801 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $9;
|
|
HEAP32[($9 + 208 | 0) >> 2] = $801;
|
|
HEAP32[($9 + 212 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($9 + 188 | 0 | 0, $9 + 208 | 0 | 0, HEAP32[($9 + 308 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($9 + 172 | 0 | 0, $9 + 208 | 0 | 0, HEAP32[($9 + 308 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($9 + 188 | 0 | 0, $9 + 172 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 204 | 0) >> 2] = wasm2js_f32$0;
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[($9 + 204 | 0) >> 2]) < Math_fround(HEAPF32[($9 + 228 | 0) >> 2]) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAPF32[($9 + 228 | 0) >> 2] = Math_fround(HEAPF32[($9 + 204 | 0) >> 2]);
|
|
$148 = HEAP32[($9 + 288 | 0) >> 2] | 0;
|
|
$149 = 8;
|
|
i64toi32_i32$2 = ($9 + 208 | 0) + $149 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$871 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $148 + $149 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $871;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$1 = HEAP32[($9 + 208 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($9 + 212 | 0) >> 2] | 0;
|
|
$875 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $148;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $875;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btUsageBitfield__reset_28_29((HEAP32[($9 + 288 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
$162 = HEAP32[($9 + 288 | 0) >> 2] | 0;
|
|
HEAP8[($162 + 16 | 0) >> 0] = (HEAPU8[($162 + 16 | 0) >> 0] | 0) & 254 | 0 | ((HEAPU8[($9 + 264 | 0) >> 0] | 0) & 1 | 0) | 0;
|
|
$168 = HEAP32[($9 + 288 | 0) >> 2] | 0;
|
|
HEAP8[($168 + 16 | 0) >> 0] = (HEAPU8[($168 + 16 | 0) >> 0] | 0) & 253 | 0 | ((HEAPU8[($9 + 264 | 0) >> 0] | 0) & 2 | 0) | 0;
|
|
$176 = HEAP32[($9 + 288 | 0) >> 2] | 0;
|
|
HEAP8[($176 + 16 | 0) >> 0] = (HEAPU8[($176 + 16 | 0) >> 0] | 0) & -5 | 0 | ((HEAPU8[($9 + 264 | 0) >> 0] | 0) & 4 | 0) | 0;
|
|
btSubSimplexClosestResult__setBarycentricCoordinates_28float_2c_20float_2c_20float_2c_20float_29(HEAP32[($9 + 288 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($9 + 268 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($9 + 272 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($9 + 276 | 0) >> 2])), Math_fround(Math_fround(0 | 0)));
|
|
}
|
|
}
|
|
label$7 : {
|
|
if (!(HEAP32[($9 + 240 | 0) >> 2] | 0)) {
|
|
break label$7
|
|
}
|
|
btVoronoiSimplexSolver__closestPtPointTriangle_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btSubSimplexClosestResult__29($10 | 0, HEAP32[($9 + 308 | 0) >> 2] | 0 | 0, HEAP32[($9 + 304 | 0) >> 2] | 0 | 0, HEAP32[($9 + 296 | 0) >> 2] | 0 | 0, HEAP32[($9 + 292 | 0) >> 2] | 0 | 0, $9 + 248 | 0 | 0) | 0;
|
|
$199 = $9 + 248 | 0;
|
|
$200 = 8;
|
|
i64toi32_i32$2 = $199 + $200 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$987 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($9 + 152 | 0) + $200 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $987;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $199;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$991 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $9;
|
|
HEAP32[($9 + 152 | 0) >> 2] = $991;
|
|
HEAP32[($9 + 156 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($9 + 132 | 0 | 0, $9 + 152 | 0 | 0, HEAP32[($9 + 308 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($9 + 116 | 0 | 0, $9 + 152 | 0 | 0, HEAP32[($9 + 308 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($9 + 132 | 0 | 0, $9 + 116 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 148 | 0) >> 2] = wasm2js_f32$0;
|
|
label$8 : {
|
|
if (!(Math_fround(HEAPF32[($9 + 148 | 0) >> 2]) < Math_fround(HEAPF32[($9 + 228 | 0) >> 2]) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
HEAPF32[($9 + 228 | 0) >> 2] = Math_fround(HEAPF32[($9 + 148 | 0) >> 2]);
|
|
$234 = HEAP32[($9 + 288 | 0) >> 2] | 0;
|
|
$235 = 8;
|
|
i64toi32_i32$2 = ($9 + 152 | 0) + $235 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1061 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $234 + $235 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1061;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$1 = HEAP32[($9 + 152 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($9 + 156 | 0) >> 2] | 0;
|
|
$1065 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $234;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1065;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btUsageBitfield__reset_28_29((HEAP32[($9 + 288 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
$246 = 1;
|
|
$248 = HEAP32[($9 + 288 | 0) >> 2] | 0;
|
|
HEAP8[($248 + 16 | 0) >> 0] = (HEAPU8[($248 + 16 | 0) >> 0] | 0) & 254 | 0 | ((HEAPU8[($9 + 264 | 0) >> 0] | 0) & $246 | 0) | 0;
|
|
$254 = HEAP32[($9 + 288 | 0) >> 2] | 0;
|
|
HEAP8[($254 + 16 | 0) >> 0] = (HEAPU8[($254 + 16 | 0) >> 0] | 0) & 251 | 0 | (((HEAPU8[($9 + 264 | 0) >> 0] | 0) << $246 | 0) & 4 | 0) | 0;
|
|
$263 = HEAP32[($9 + 288 | 0) >> 2] | 0;
|
|
HEAP8[($263 + 16 | 0) >> 0] = (HEAPU8[($263 + 16 | 0) >> 0] | 0) & -9 | 0 | (((HEAPU8[($9 + 264 | 0) >> 0] | 0) << $246 | 0) & $235 | 0) | 0;
|
|
btSubSimplexClosestResult__setBarycentricCoordinates_28float_2c_20float_2c_20float_2c_20float_29(HEAP32[($9 + 288 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($9 + 268 | 0) >> 2])), Math_fround(Math_fround(0 | 0)), Math_fround(Math_fround(HEAPF32[($9 + 272 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($9 + 276 | 0) >> 2])));
|
|
}
|
|
}
|
|
label$9 : {
|
|
if (!(HEAP32[($9 + 236 | 0) >> 2] | 0)) {
|
|
break label$9
|
|
}
|
|
btVoronoiSimplexSolver__closestPtPointTriangle_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btSubSimplexClosestResult__29($10 | 0, HEAP32[($9 + 308 | 0) >> 2] | 0 | 0, HEAP32[($9 + 304 | 0) >> 2] | 0 | 0, HEAP32[($9 + 292 | 0) >> 2] | 0 | 0, HEAP32[($9 + 300 | 0) >> 2] | 0 | 0, $9 + 248 | 0 | 0) | 0;
|
|
$286 = $9 + 248 | 0;
|
|
$287 = 8;
|
|
i64toi32_i32$2 = $286 + $287 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1183 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($9 + 96 | 0) + $287 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1183;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $286;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1187 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $9;
|
|
HEAP32[($9 + 96 | 0) >> 2] = $1187;
|
|
HEAP32[($9 + 100 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($9 + 76 | 0 | 0, $9 + 96 | 0 | 0, HEAP32[($9 + 308 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($9 + 60 | 0 | 0, $9 + 96 | 0 | 0, HEAP32[($9 + 308 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($9 + 76 | 0 | 0, $9 + 60 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 92 | 0) >> 2] = wasm2js_f32$0;
|
|
label$10 : {
|
|
if (!(Math_fround(HEAPF32[($9 + 92 | 0) >> 2]) < Math_fround(HEAPF32[($9 + 228 | 0) >> 2]) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
HEAPF32[($9 + 228 | 0) >> 2] = Math_fround(HEAPF32[($9 + 92 | 0) >> 2]);
|
|
$321 = HEAP32[($9 + 288 | 0) >> 2] | 0;
|
|
$322 = 8;
|
|
i64toi32_i32$2 = ($9 + 96 | 0) + $322 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1257 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $321 + $322 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1257;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$1 = HEAP32[($9 + 96 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($9 + 100 | 0) >> 2] | 0;
|
|
$1261 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $321;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1261;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btUsageBitfield__reset_28_29((HEAP32[($9 + 288 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
$333 = 1;
|
|
$335 = HEAP32[($9 + 288 | 0) >> 2] | 0;
|
|
HEAP8[($335 + 16 | 0) >> 0] = (HEAPU8[($335 + 16 | 0) >> 0] | 0) & 254 | 0 | ((HEAPU8[($9 + 264 | 0) >> 0] | 0) & $333 | 0) | 0;
|
|
$341 = HEAP32[($9 + 288 | 0) >> 2] | 0;
|
|
$344 = 2;
|
|
HEAP8[($341 + 16 | 0) >> 0] = (HEAPU8[($341 + 16 | 0) >> 0] | 0) & 253 | 0 | (((HEAPU8[($9 + 264 | 0) >> 0] | 0) >>> $333 | 0) & $344 | 0) | 0;
|
|
$350 = HEAP32[($9 + 288 | 0) >> 2] | 0;
|
|
HEAP8[($350 + 16 | 0) >> 0] = (HEAPU8[($350 + 16 | 0) >> 0] | 0) & -9 | 0 | (((HEAPU8[($9 + 264 | 0) >> 0] | 0) << $344 | 0) & $322 | 0) | 0;
|
|
btSubSimplexClosestResult__setBarycentricCoordinates_28float_2c_20float_2c_20float_2c_20float_29(HEAP32[($9 + 288 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($9 + 268 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($9 + 276 | 0) >> 2])), Math_fround(Math_fround(0 | 0)), Math_fround(Math_fround(HEAPF32[($9 + 272 | 0) >> 2])));
|
|
}
|
|
}
|
|
label$11 : {
|
|
if (!(HEAP32[($9 + 232 | 0) >> 2] | 0)) {
|
|
break label$11
|
|
}
|
|
btVoronoiSimplexSolver__closestPtPointTriangle_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btSubSimplexClosestResult__29($10 | 0, HEAP32[($9 + 308 | 0) >> 2] | 0 | 0, HEAP32[($9 + 300 | 0) >> 2] | 0 | 0, HEAP32[($9 + 292 | 0) >> 2] | 0 | 0, HEAP32[($9 + 296 | 0) >> 2] | 0 | 0, $9 + 248 | 0 | 0) | 0;
|
|
$373 = $9 + 248 | 0;
|
|
$374 = 8;
|
|
i64toi32_i32$2 = $373 + $374 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1379 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($9 + 40 | 0) + $374 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1379;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $373;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1383 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $9;
|
|
HEAP32[($9 + 40 | 0) >> 2] = $1383;
|
|
HEAP32[($9 + 44 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($9 + 20 | 0 | 0, $9 + 40 | 0 | 0, HEAP32[($9 + 308 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($9 + 4 | 0 | 0, $9 + 40 | 0 | 0, HEAP32[($9 + 308 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($9 + 20 | 0 | 0, $9 + 4 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_f32$0;
|
|
label$12 : {
|
|
if (!(Math_fround(HEAPF32[($9 + 36 | 0) >> 2]) < Math_fround(HEAPF32[($9 + 228 | 0) >> 2]) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
HEAPF32[($9 + 228 | 0) >> 2] = Math_fround(HEAPF32[($9 + 36 | 0) >> 2]);
|
|
$408 = HEAP32[($9 + 288 | 0) >> 2] | 0;
|
|
$409 = 8;
|
|
i64toi32_i32$2 = ($9 + 40 | 0) + $409 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1453 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $408 + $409 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1453;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $9;
|
|
i64toi32_i32$1 = HEAP32[($9 + 40 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($9 + 44 | 0) >> 2] | 0;
|
|
$1457 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $408;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1457;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btUsageBitfield__reset_28_29((HEAP32[($9 + 288 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
$420 = 1;
|
|
$422 = HEAP32[($9 + 288 | 0) >> 2] | 0;
|
|
HEAP8[($422 + 16 | 0) >> 0] = (HEAPU8[($422 + 16 | 0) >> 0] | 0) & 253 | 0 | (((HEAPU8[($9 + 264 | 0) >> 0] | 0) & $420 | 0) << $420 | 0) | 0;
|
|
$429 = HEAP32[($9 + 288 | 0) >> 2] | 0;
|
|
HEAP8[($429 + 16 | 0) >> 0] = (HEAPU8[($429 + 16 | 0) >> 0] | 0) & 251 | 0 | ((HEAPU8[($9 + 264 | 0) >> 0] | 0) & 4 | 0) | 0;
|
|
$437 = HEAP32[($9 + 288 | 0) >> 2] | 0;
|
|
HEAP8[($437 + 16 | 0) >> 0] = (HEAPU8[($437 + 16 | 0) >> 0] | 0) & -9 | 0 | (((HEAPU8[($9 + 264 | 0) >> 0] | 0) << 2 | 0) & $409 | 0) | 0;
|
|
btSubSimplexClosestResult__setBarycentricCoordinates_28float_2c_20float_2c_20float_2c_20float_29(HEAP32[($9 + 288 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(0 | 0)), Math_fround(Math_fround(HEAPF32[($9 + 268 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($9 + 276 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($9 + 272 | 0) >> 2])));
|
|
}
|
|
}
|
|
label$13 : {
|
|
if (!(((((HEAPU8[((HEAP32[($9 + 288 | 0) >> 2] | 0) + 16 | 0) >> 0] | 0) & 1 | 0) & 255 | 0) & 65535 | 0 | 0) != (0 & 65535 | 0 | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
$467 = 1;
|
|
if (!((((((HEAPU8[((HEAP32[($9 + 288 | 0) >> 2] | 0) + 16 | 0) >> 0] | 0) >>> $467 | 0) & $467 | 0) & 255 | 0) & 65535 | 0 | 0) != (0 & 65535 | 0 | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
if (!((((((HEAPU8[((HEAP32[($9 + 288 | 0) >> 2] | 0) + 16 | 0) >> 0] | 0) >>> 2 | 0) & 1 | 0) & 255 | 0) & 65535 | 0 | 0) != (0 & 65535 | 0 | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
if (!((((((HEAPU8[((HEAP32[($9 + 288 | 0) >> 2] | 0) + 16 | 0) >> 0] | 0) >>> 3 | 0) & 1 | 0) & 255 | 0) & 65535 | 0 | 0) != (0 & 65535 | 0 | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
HEAP8[($9 + 319 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP8[($9 + 319 | 0) >> 0] = 1 & 1 | 0;
|
|
}
|
|
$520 = (HEAPU8[($9 + 319 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $9 + 320 | 0;
|
|
return $520 | 0;
|
|
}
|
|
|
|
function btVoronoiSimplexSolver__pointOutsideOfPlane_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, $68 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$8 = __stack_pointer - 128 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 120 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 116 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 112 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 108 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 104 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 100 | 0) >> 2] = $5;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 68 | 0 | 0, HEAP32[($8 + 108 | 0) >> 2] | 0 | 0, HEAP32[($8 + 112 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 52 | 0 | 0, HEAP32[($8 + 104 | 0) >> 2] | 0 | 0, HEAP32[($8 + 112 | 0) >> 2] | 0 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($8 + 84 | 0 | 0, $8 + 68 | 0 | 0, $8 + 52 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 32 | 0 | 0, HEAP32[($8 + 116 | 0) >> 2] | 0 | 0, HEAP32[($8 + 112 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 32 | 0 | 0, $8 + 84 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 48 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 12 | 0 | 0, HEAP32[($8 + 100 | 0) >> 2] | 0 | 0, HEAP32[($8 + 112 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 12 | 0 | 0, $8 + 84 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(Math_fround(HEAPF32[($8 + 28 | 0) >> 2]) * Math_fround(HEAPF32[($8 + 28 | 0) >> 2])) < Math_fround(9.99999905104687e-09) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($8 + 124 | 0) >> 2] = -1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($8 + 124 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($8 + 48 | 0) >> 2]) * Math_fround(HEAPF32[($8 + 28 | 0) >> 2])) < Math_fround(0 | 0) & 1 | 0;
|
|
}
|
|
$68 = HEAP32[($8 + 124 | 0) >> 2] | 0;
|
|
__stack_pointer = $8 + 128 | 0;
|
|
return $68 | 0;
|
|
}
|
|
|
|
function btVoronoiSimplexSolver__closest_28btVector3__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $5 = 0, $11 = 0, $13 = 0, $48 = 0, $58 = 0, $19 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = (btVoronoiSimplexSolver__updateClosestVectorAndPoints_28_29($5 | 0) | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 7 | 0) >> 0] = wasm2js_i32$1;
|
|
$11 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $5 + 276 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$48 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $11;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $48;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$13 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $13 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$58 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11 + $13 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $58;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$19 = (HEAPU8[($4 + 7 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $19 | 0;
|
|
}
|
|
|
|
function btVoronoiSimplexSolver__inSimplex_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $46 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 19 | 0) >> 0] = 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btVoronoiSimplexSolver__numVertices_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$3 : {
|
|
if (!(Math_fround(btVector3__distance2_28btVector3_20const__29_20const(($5 + 4 | 0) + ((HEAP32[($4 + 12 | 0) >> 2] | 0) << 4 | 0) | 0 | 0, HEAP32[($4 + 20 | 0) >> 2] | 0 | 0)) <= Math_fround(HEAPF32[($5 + 308 | 0) >> 2]) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP8[($4 + 19 | 0) >> 0] = 1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = (HEAP32[($4 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!((btVector3__operator___28btVector3_20const__29_20const(HEAP32[($4 + 20 | 0) >> 2] | 0 | 0, $5 + 292 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAP8[($4 + 31 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$4;
|
|
}
|
|
HEAP8[($4 + 31 | 0) >> 0] = (HEAPU8[($4 + 19 | 0) >> 0] | 0) & 1 | 0;
|
|
}
|
|
$46 = (HEAPU8[($4 + 31 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return $46 | 0;
|
|
}
|
|
|
|
function btVector3__distance2_28btVector3_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $13 = Math_fround(0);
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 8 | 0 | 0, HEAP32[($4 + 24 | 0) >> 2] | 0 | 0, HEAP32[($4 + 28 | 0) >> 2] | 0 | 0);
|
|
$13 = Math_fround(btVector3__length2_28_29_20const($4 + 8 | 0 | 0));
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return Math_fround($13);
|
|
}
|
|
|
|
function btVector3__operator___28btVector3_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $13 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$13 = 0;
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 12 | 0) >> 2]) == Math_fround(HEAPF32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 12 | 0) >> 2]) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$13 = 0;
|
|
if (!(Math_fround(HEAPF32[($5 + 8 | 0) >> 2]) == Math_fround(HEAPF32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2]) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$13 = 0;
|
|
if (!(Math_fround(HEAPF32[($5 + 4 | 0) >> 2]) == Math_fround(HEAPF32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2]) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$13 = Math_fround(HEAPF32[$5 >> 2]) == Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2]);
|
|
}
|
|
return $13 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btVoronoiSimplexSolver__compute_points_28btVector3__2c_20btVector3__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $5 = 0, $6 = 0, $9 = 0, $11 = 0, $17 = 0, $19 = 0, $48 = 0, $58 = 0, $67 = 0, $77 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btVoronoiSimplexSolver__updateClosestVectorAndPoints_28_29($6 | 0) | 0;
|
|
$9 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6 + 244 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$48 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $9;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $48;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$11 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $11 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$58 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $9 + $11 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $58;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$17 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6 + 260 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$67 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $17;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $67;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$19 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $19 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$77 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $17 + $19 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $77;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btVoronoiSimplexSolver_cpp() {
|
|
__cxx_global_var_init_66();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_67() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(115380 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btPolyhedralContactClipping__clipFace_28btAlignedObjectArray_btVector3__20const__2c_20btAlignedObjectArray_btVector3___2c_20btVector3_20const__2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $21 = 0, $22 = 0, $31 = 0, $32 = 0, $56 = 0, $57 = 0, $143 = 0, $213 = 0, $217 = 0, $235 = 0, $239 = 0, $291 = 0, $295 = 0, $87 = 0, $116 = 0, $469 = 0, $473 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 108 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 104 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 100 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 96 | 0) >> 2] = $3;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btAlignedObjectArray_btVector3___size_28_29_20const(HEAP32[($6 + 108 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 80 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($6 + 80 | 0) >> 2] | 0 | 0) < (2 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
break label$1;
|
|
}
|
|
$21 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29_20const(HEAP32[($6 + 108 | 0) >> 2] | 0 | 0, (btAlignedObjectArray_btVector3___size_28_29_20const(HEAP32[($6 + 108 | 0) >> 2] | 0 | 0) | 0) - 1 | 0 | 0) | 0;
|
|
$22 = 8;
|
|
i64toi32_i32$2 = $21 + $22 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$213 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 64 | 0) + $22 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $213;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $21;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$217 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 64 | 0) >> 2] = $217;
|
|
HEAP32[($6 + 68 | 0) >> 2] = i64toi32_i32$0;
|
|
$31 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29_20const(HEAP32[($6 + 108 | 0) >> 2] | 0 | 0, 0 | 0) | 0;
|
|
$32 = 8;
|
|
i64toi32_i32$2 = $31 + $32 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$235 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 48 | 0) + $32 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $235;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $31;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$239 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 48 | 0) >> 2] = $239;
|
|
HEAP32[($6 + 52 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($6 + 100 | 0) >> 2] | 0 | 0, $6 + 64 | 0 | 0)) + Math_fround(HEAPF32[($6 + 96 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 88 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP32[($6 + 92 | 0) >> 2] = 0;
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($6 + 92 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 80 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$56 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29_20const(HEAP32[($6 + 108 | 0) >> 2] | 0 | 0, HEAP32[($6 + 92 | 0) >> 2] | 0 | 0) | 0;
|
|
$57 = 8;
|
|
i64toi32_i32$2 = $56 + $57 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$291 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 48 | 0) + $57 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $291;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $56;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$295 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 48 | 0) >> 2] = $295;
|
|
HEAP32[($6 + 52 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($6 + 100 | 0) >> 2] | 0 | 0, $6 + 48 | 0 | 0)) + Math_fround(HEAPF32[($6 + 96 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 84 | 0) >> 2] = wasm2js_f32$0;
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 88 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 84 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
btAlignedObjectArray_btVector3___push_back_28btVector3_20const__29(HEAP32[($6 + 104 | 0) >> 2] | 0 | 0, $6 + 48 | 0 | 0);
|
|
break label$6;
|
|
}
|
|
$87 = HEAP32[($6 + 104 | 0) >> 2] | 0;
|
|
HEAPF32[($6 + 28 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($6 + 88 | 0) >> 2]) * Math_fround(1.0)) / Math_fround(Math_fround(HEAPF32[($6 + 88 | 0) >> 2]) - Math_fround(HEAPF32[($6 + 84 | 0) >> 2])));
|
|
btVector3__lerp_28btVector3_20const__2c_20float_20const__29_20const($6 + 32 | 0 | 0, $6 + 64 | 0 | 0, $6 + 48 | 0 | 0, $6 + 28 | 0 | 0);
|
|
btAlignedObjectArray_btVector3___push_back_28btVector3_20const__29($87 | 0, $6 + 32 | 0 | 0);
|
|
}
|
|
break label$4;
|
|
}
|
|
label$8 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 84 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
$116 = HEAP32[($6 + 104 | 0) >> 2] | 0;
|
|
HEAPF32[($6 + 8 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($6 + 88 | 0) >> 2]) * Math_fround(1.0)) / Math_fround(Math_fround(HEAPF32[($6 + 88 | 0) >> 2]) - Math_fround(HEAPF32[($6 + 84 | 0) >> 2])));
|
|
btVector3__lerp_28btVector3_20const__2c_20float_20const__29_20const($6 + 12 | 0 | 0, $6 + 64 | 0 | 0, $6 + 48 | 0 | 0, $6 + 8 | 0 | 0);
|
|
btAlignedObjectArray_btVector3___push_back_28btVector3_20const__29($116 | 0, $6 + 12 | 0 | 0);
|
|
btAlignedObjectArray_btVector3___push_back_28btVector3_20const__29(HEAP32[($6 + 104 | 0) >> 2] | 0 | 0, $6 + 48 | 0 | 0);
|
|
}
|
|
}
|
|
$143 = 8;
|
|
i64toi32_i32$2 = ($6 + 48 | 0) + $143 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$469 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 64 | 0) + $143 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $469;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 52 | 0) >> 2] | 0;
|
|
$473 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 64 | 0) >> 2] = $473;
|
|
HEAP32[($6 + 68 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($6 + 88 | 0) >> 2] = Math_fround(HEAPF32[($6 + 84 | 0) >> 2]);
|
|
HEAP32[($6 + 92 | 0) >> 2] = (HEAP32[($6 + 92 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 112 | 0;
|
|
return;
|
|
}
|
|
|
|
function btVector3__lerp_28btVector3_20const__2c_20float_20const__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAPF32[($6 + 16 | 0) >> 2] = Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[(HEAP32[($6 + 24 | 0) >> 2] | 0) >> 2]) - Math_fround(HEAPF32[$7 >> 2])) * Math_fround(HEAPF32[(HEAP32[($6 + 20 | 0) >> 2] | 0) >> 2])) + Math_fround(HEAPF32[$7 >> 2]));
|
|
HEAPF32[($6 + 12 | 0) >> 2] = Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[((HEAP32[($6 + 24 | 0) >> 2] | 0) + 4 | 0) >> 2]) - Math_fround(HEAPF32[($7 + 4 | 0) >> 2])) * Math_fround(HEAPF32[(HEAP32[($6 + 20 | 0) >> 2] | 0) >> 2])) + Math_fround(HEAPF32[($7 + 4 | 0) >> 2]));
|
|
HEAPF32[($6 + 8 | 0) >> 2] = Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[((HEAP32[($6 + 24 | 0) >> 2] | 0) + 8 | 0) >> 2]) - Math_fround(HEAPF32[($7 + 8 | 0) >> 2])) * Math_fround(HEAPF32[(HEAP32[($6 + 20 | 0) >> 2] | 0) >> 2])) + Math_fround(HEAPF32[($7 + 8 | 0) >> 2]));
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $6 + 16 | 0 | 0, $6 + 12 | 0 | 0, $6 + 8 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function InverseTransformPoint3x3_28btVector3__2c_20btVector3_20const__2c_20btTransform_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $31 = Math_fround(0), $54 = Math_fround(0), $77 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 36 | 0) >> 2] = $2;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btTransform__getBasis_28_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 32 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 32 | 0) >> 2] | 0 | 0, 1 | 0) | 0), HEAP32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 32 | 0) >> 2] | 0 | 0, 2 | 0) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
$31 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) >> 2])));
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $31)), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
$54 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) >> 2])));
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $54)), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
$77 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) >> 2])));
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $77)), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29(HEAP32[($5 + 44 | 0) >> 2] | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0, $5 + 8 | 0 | 0);
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function TestInternalObjects_28btTransform_20const__2c_20btTransform_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btConvexPolyhedron_20const__2c_20btConvexPolyhedron_20const__2c_20float_29($0, $1, $2, $3, $4, $5, $6) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = Math_fround($6);
|
|
var $9 = 0, $104 = Math_fround(0), $115 = Math_fround(0), $134 = Math_fround(0), $65 = Math_fround(0), $88 = Math_fround(0), $150 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$9 = __stack_pointer - 128 | 0;
|
|
__stack_pointer = $9;
|
|
HEAP32[($9 + 120 | 0) >> 2] = $0;
|
|
HEAP32[($9 + 116 | 0) >> 2] = $1;
|
|
HEAP32[($9 + 112 | 0) >> 2] = $2;
|
|
HEAP32[($9 + 108 | 0) >> 2] = $3;
|
|
HEAP32[($9 + 104 | 0) >> 2] = $4;
|
|
HEAP32[($9 + 100 | 0) >> 2] = $5;
|
|
HEAPF32[($9 + 96 | 0) >> 2] = $6;
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($9 + 112 | 0) >> 2] | 0 | 0, HEAP32[($9 + 108 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 92 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28_29($9 + 76 | 0 | 0) | 0;
|
|
InverseTransformPoint3x3_28btVector3__2c_20btVector3_20const__2c_20btTransform_20const__29($9 + 76 | 0 | 0, HEAP32[($9 + 108 | 0) >> 2] | 0 | 0, HEAP32[($9 + 120 | 0) >> 2] | 0 | 0);
|
|
btVector3__btVector3_28_29($9 + 60 | 0 | 0) | 0;
|
|
InverseTransformPoint3x3_28btVector3__2c_20btVector3_20const__2c_20btTransform_20const__29($9 + 60 | 0 | 0, HEAP32[($9 + 108 | 0) >> 2] | 0 | 0, HEAP32[($9 + 116 | 0) >> 2] | 0 | 0);
|
|
BoxSupport_28float_20const__2c_20float_20const__2c_20float__29(btVector3__operator_20float_20const__28_29_20const((HEAP32[($9 + 104 | 0) >> 2] | 0) + 80 | 0 | 0) | 0 | 0, btVector3__operator_20float__28_29($9 + 76 | 0 | 0) | 0 | 0, $9 + 48 | 0 | 0);
|
|
BoxSupport_28float_20const__2c_20float_20const__2c_20float__29(btVector3__operator_20float_20const__28_29_20const((HEAP32[($9 + 100 | 0) >> 2] | 0) + 80 | 0 | 0) | 0 | 0, btVector3__operator_20float__28_29($9 + 60 | 0 | 0) | 0 | 0, $9 + 36 | 0 | 0);
|
|
$65 = Math_fround(Math_fround(Math_fround(HEAPF32[($9 + 48 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__x_28_29_20const($9 + 76 | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($9 + 52 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__y_28_29_20const($9 + 76 | 0 | 0) | 0) >> 2])));
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[($9 + 56 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__z_28_29_20const($9 + 76 | 0 | 0) | 0) >> 2])) + $65)), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
$88 = Math_fround(Math_fround(Math_fround(HEAPF32[($9 + 36 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__x_28_29_20const($9 + 60 | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($9 + 40 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__y_28_29_20const($9 + 60 | 0 | 0) | 0) >> 2])));
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(HEAPF32[($9 + 44 | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__z_28_29_20const($9 + 60 | 0 | 0) | 0) >> 2])) + $88)), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($9 + 32 | 0) >> 2]) > Math_fround(HEAPF32[((HEAP32[($9 + 104 | 0) >> 2] | 0) + 96 | 0) >> 2]) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$104 = Math_fround(HEAPF32[($9 + 32 | 0) >> 2]);
|
|
break label$1;
|
|
}
|
|
$104 = Math_fround(HEAPF32[((HEAP32[($9 + 104 | 0) >> 2] | 0) + 96 | 0) >> 2]);
|
|
}
|
|
HEAPF32[($9 + 24 | 0) >> 2] = $104;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[($9 + 28 | 0) >> 2]) > Math_fround(HEAPF32[((HEAP32[($9 + 100 | 0) >> 2] | 0) + 96 | 0) >> 2]) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$115 = Math_fround(HEAPF32[($9 + 28 | 0) >> 2]);
|
|
break label$3;
|
|
}
|
|
$115 = Math_fround(HEAPF32[((HEAP32[($9 + 100 | 0) >> 2] | 0) + 96 | 0) >> 2]);
|
|
}
|
|
HEAPF32[($9 + 20 | 0) >> 2] = $115;
|
|
HEAPF32[($9 + 16 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($9 + 20 | 0) >> 2]) + Math_fround(HEAPF32[($9 + 24 | 0) >> 2]));
|
|
HEAPF32[($9 + 12 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($9 + 16 | 0) >> 2]) + Math_fround(HEAPF32[($9 + 92 | 0) >> 2]));
|
|
HEAPF32[($9 + 8 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($9 + 16 | 0) >> 2]) - Math_fround(HEAPF32[($9 + 92 | 0) >> 2]));
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[($9 + 12 | 0) >> 2]) < Math_fround(HEAPF32[($9 + 8 | 0) >> 2]) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$134 = Math_fround(HEAPF32[($9 + 12 | 0) >> 2]);
|
|
break label$5;
|
|
}
|
|
$134 = Math_fround(HEAPF32[($9 + 8 | 0) >> 2]);
|
|
}
|
|
HEAPF32[($9 + 4 | 0) >> 2] = $134;
|
|
label$7 : {
|
|
label$8 : {
|
|
if (!(Math_fround(HEAPF32[($9 + 4 | 0) >> 2]) > Math_fround(HEAPF32[($9 + 96 | 0) >> 2]) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
HEAP8[($9 + 127 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$7;
|
|
}
|
|
HEAP8[($9 + 127 | 0) >> 0] = 1 & 1 | 0;
|
|
}
|
|
$150 = (HEAPU8[($9 + 127 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $9 + 128 | 0;
|
|
return $150 | 0;
|
|
}
|
|
|
|
function BoxSupport_28float_20const__2c_20float_20const__2c_20float__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $16 = Math_fround(0), $31 = Math_fround(0), $46 = Math_fround(0);
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($5 + 8 | 0) >> 2] | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$16 = Math_fround(-Math_fround(HEAPF32[(HEAP32[($5 + 12 | 0) >> 2] | 0) >> 2]));
|
|
break label$1;
|
|
}
|
|
$16 = Math_fround(HEAPF32[(HEAP32[($5 + 12 | 0) >> 2] | 0) >> 2]);
|
|
}
|
|
HEAPF32[(HEAP32[($5 + 4 | 0) >> 2] | 0) >> 2] = $16;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$31 = Math_fround(-Math_fround(HEAPF32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2]));
|
|
break label$3;
|
|
}
|
|
$31 = Math_fround(HEAPF32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2]);
|
|
}
|
|
HEAPF32[((HEAP32[($5 + 4 | 0) >> 2] | 0) + 4 | 0) >> 2] = $31;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$46 = Math_fround(-Math_fround(HEAPF32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2]));
|
|
break label$5;
|
|
}
|
|
$46 = Math_fround(HEAPF32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2]);
|
|
}
|
|
HEAPF32[((HEAP32[($5 + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] = $46;
|
|
return;
|
|
}
|
|
|
|
function btPolyhedralContactClipping__findSeparatingAxis_28btConvexPolyhedron_20const__2c_20btConvexPolyhedron_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3__2c_20btDiscreteCollisionDetectorInterface__Result__29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $171 = 0, $173 = 0, $314 = 0, $316 = 0, $397 = 0, $398 = 0, $428 = 0, $429 = 0, $465 = 0, $466 = 0, $554 = 0, $556 = 0, $564 = 0, $573 = 0, $582 = 0, $591 = 0, $638 = 0, $647 = 0, $733 = 0, $758 = 0, $760 = 0, $1106 = 0, $1119 = 0, $1388 = 0, $1401 = 0, $1560 = 0, $1564 = 0, $1623 = 0, $1627 = 0, $1693 = 0, $1697 = 0, $1858 = 0, $1871 = 0, $1895 = 0, $1899 = 0, $1915 = 0, $1919 = 0, $1935 = 0, $1939 = 0, $1955 = 0, $1959 = 0, $2046 = 0, $2050 = 0, $2066 = 0, $2070 = 0, $2271 = 0, $2284 = 0, $771 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$8 = __stack_pointer - 720 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 712 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 708 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 704 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 700 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 696 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 692 | 0) >> 2] = $5;
|
|
HEAP32[(0 + 115392 | 0) >> 2] = (HEAP32[(0 + 115392 | 0) >> 2] | 0) + 1 | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($8 + 676 | 0 | 0, HEAP32[($8 + 704 | 0) >> 2] | 0 | 0, (HEAP32[($8 + 712 | 0) >> 2] | 0) + 64 | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($8 + 660 | 0 | 0, HEAP32[($8 + 700 | 0) >> 2] | 0 | 0, (HEAP32[($8 + 708 | 0) >> 2] | 0) + 64 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 644 | 0 | 0, $8 + 676 | 0 | 0, $8 + 660 | 0 | 0);
|
|
HEAPF32[($8 + 640 | 0) >> 2] = Math_fround(3402823466385288598117041.0e14);
|
|
HEAP32[($8 + 636 | 0) >> 2] = 0;
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = btAlignedObjectArray_btFace___size_28_29_20const((HEAP32[($8 + 712 | 0) >> 2] | 0) + 24 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 632 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($8 + 628 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($8 + 628 | 0) >> 2] | 0 | 0) < (HEAP32[($8 + 632 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 612 | 0 | 0, (btAlignedObjectArray_btFace___operator_5b_5d_28int_29_20const((HEAP32[($8 + 712 | 0) >> 2] | 0) + 24 | 0 | 0, HEAP32[($8 + 628 | 0) >> 2] | 0 | 0) | 0) + 20 | 0 | 0, ((btAlignedObjectArray_btFace___operator_5b_5d_28int_29_20const((HEAP32[($8 + 712 | 0) >> 2] | 0) + 24 | 0 | 0, HEAP32[($8 + 628 | 0) >> 2] | 0 | 0) | 0) + 20 | 0) + 4 | 0 | 0, ((btAlignedObjectArray_btFace___operator_5b_5d_28int_29_20const((HEAP32[($8 + 712 | 0) >> 2] | 0) + 24 | 0 | 0, HEAP32[($8 + 628 | 0) >> 2] | 0 | 0) | 0) + 20 | 0) + 8 | 0 | 0) | 0;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 596 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 704 | 0) >> 2] | 0 | 0) | 0 | 0, $8 + 612 | 0 | 0);
|
|
label$4 : {
|
|
if (!(Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 644 | 0 | 0, $8 + 596 | 0 | 0)) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAPF32[($8 + 592 | 0) >> 2] = Math_fround(-1.0);
|
|
btVector3__operator___28float_20const__29_1($8 + 596 | 0 | 0, $8 + 592 | 0 | 0) | 0;
|
|
}
|
|
HEAP32[($8 + 636 | 0) >> 2] = (HEAP32[($8 + 636 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[(0 + 115384 | 0) >> 2] = (HEAP32[(0 + 115384 | 0) >> 2] | 0) + 1 | 0;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!((HEAPU8[(0 + 112845 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
if ((TestInternalObjects_28btTransform_20const__2c_20btTransform_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btConvexPolyhedron_20const__2c_20btConvexPolyhedron_20const__2c_20float_29(HEAP32[($8 + 704 | 0) >> 2] | 0 | 0, HEAP32[($8 + 700 | 0) >> 2] | 0 | 0, $8 + 644 | 0 | 0, $8 + 596 | 0 | 0, HEAP32[($8 + 712 | 0) >> 2] | 0 | 0, HEAP32[($8 + 708 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($8 + 640 | 0) >> 2]))) | 0) & 1 | 0) {
|
|
break label$6
|
|
}
|
|
break label$5;
|
|
}
|
|
HEAP32[(0 + 115388 | 0) >> 2] = (HEAP32[(0 + 115388 | 0) >> 2] | 0) + 1 | 0;
|
|
btVector3__btVector3_28_29($8 + 572 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 556 | 0 | 0) | 0;
|
|
label$7 : {
|
|
if ((TestSepAxis_28btConvexPolyhedron_20const__2c_20btConvexPolyhedron_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3_20const__2c_20float__2c_20btVector3__2c_20btVector3__29(HEAP32[($8 + 712 | 0) >> 2] | 0 | 0, HEAP32[($8 + 708 | 0) >> 2] | 0 | 0, HEAP32[($8 + 704 | 0) >> 2] | 0 | 0, HEAP32[($8 + 700 | 0) >> 2] | 0 | 0, $8 + 596 | 0 | 0, $8 + 588 | 0 | 0, $8 + 572 | 0 | 0, $8 + 556 | 0 | 0) | 0) & 1 | 0) {
|
|
break label$7
|
|
}
|
|
HEAP8[($8 + 719 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
label$8 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 588 | 0) >> 2]) < Math_fround(HEAPF32[($8 + 640 | 0) >> 2]) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
HEAPF32[($8 + 640 | 0) >> 2] = Math_fround(HEAPF32[($8 + 588 | 0) >> 2]);
|
|
$171 = HEAP32[($8 + 696 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$0 = HEAP32[($8 + 596 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($8 + 600 | 0) >> 2] | 0;
|
|
$1106 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $171;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1106;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$173 = 8;
|
|
i64toi32_i32$2 = ($8 + 596 | 0) + $173 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1119 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $171 + $173 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1119;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
}
|
|
HEAP32[($8 + 628 | 0) >> 2] = (HEAP32[($8 + 628 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = btAlignedObjectArray_btFace___size_28_29_20const((HEAP32[($8 + 708 | 0) >> 2] | 0) + 24 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 552 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($8 + 548 | 0) >> 2] = 0;
|
|
label$9 : {
|
|
label$10 : while (1) {
|
|
if (!((HEAP32[($8 + 548 | 0) >> 2] | 0 | 0) < (HEAP32[($8 + 552 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 532 | 0 | 0, (btAlignedObjectArray_btFace___operator_5b_5d_28int_29_20const((HEAP32[($8 + 708 | 0) >> 2] | 0) + 24 | 0 | 0, HEAP32[($8 + 548 | 0) >> 2] | 0 | 0) | 0) + 20 | 0 | 0, ((btAlignedObjectArray_btFace___operator_5b_5d_28int_29_20const((HEAP32[($8 + 708 | 0) >> 2] | 0) + 24 | 0 | 0, HEAP32[($8 + 548 | 0) >> 2] | 0 | 0) | 0) + 20 | 0) + 4 | 0 | 0, ((btAlignedObjectArray_btFace___operator_5b_5d_28int_29_20const((HEAP32[($8 + 708 | 0) >> 2] | 0) + 24 | 0 | 0, HEAP32[($8 + 548 | 0) >> 2] | 0 | 0) | 0) + 20 | 0) + 8 | 0 | 0) | 0;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 516 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 700 | 0) >> 2] | 0 | 0) | 0 | 0, $8 + 532 | 0 | 0);
|
|
label$11 : {
|
|
if (!(Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 644 | 0 | 0, $8 + 516 | 0 | 0)) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
HEAPF32[($8 + 512 | 0) >> 2] = Math_fround(-1.0);
|
|
btVector3__operator___28float_20const__29_1($8 + 516 | 0 | 0, $8 + 512 | 0 | 0) | 0;
|
|
}
|
|
HEAP32[($8 + 636 | 0) >> 2] = (HEAP32[($8 + 636 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[(0 + 115384 | 0) >> 2] = (HEAP32[(0 + 115384 | 0) >> 2] | 0) + 1 | 0;
|
|
label$12 : {
|
|
label$13 : {
|
|
if (!((HEAPU8[(0 + 112845 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
if ((TestInternalObjects_28btTransform_20const__2c_20btTransform_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btConvexPolyhedron_20const__2c_20btConvexPolyhedron_20const__2c_20float_29(HEAP32[($8 + 704 | 0) >> 2] | 0 | 0, HEAP32[($8 + 700 | 0) >> 2] | 0 | 0, $8 + 644 | 0 | 0, $8 + 516 | 0 | 0, HEAP32[($8 + 712 | 0) >> 2] | 0 | 0, HEAP32[($8 + 708 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($8 + 640 | 0) >> 2]))) | 0) & 1 | 0) {
|
|
break label$13
|
|
}
|
|
break label$12;
|
|
}
|
|
HEAP32[(0 + 115388 | 0) >> 2] = (HEAP32[(0 + 115388 | 0) >> 2] | 0) + 1 | 0;
|
|
btVector3__btVector3_28_29($8 + 492 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 476 | 0 | 0) | 0;
|
|
label$14 : {
|
|
if ((TestSepAxis_28btConvexPolyhedron_20const__2c_20btConvexPolyhedron_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3_20const__2c_20float__2c_20btVector3__2c_20btVector3__29(HEAP32[($8 + 712 | 0) >> 2] | 0 | 0, HEAP32[($8 + 708 | 0) >> 2] | 0 | 0, HEAP32[($8 + 704 | 0) >> 2] | 0 | 0, HEAP32[($8 + 700 | 0) >> 2] | 0 | 0, $8 + 516 | 0 | 0, $8 + 508 | 0 | 0, $8 + 492 | 0 | 0, $8 + 476 | 0 | 0) | 0) & 1 | 0) {
|
|
break label$14
|
|
}
|
|
HEAP8[($8 + 719 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
label$15 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 508 | 0) >> 2]) < Math_fround(HEAPF32[($8 + 640 | 0) >> 2]) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
HEAPF32[($8 + 640 | 0) >> 2] = Math_fround(HEAPF32[($8 + 508 | 0) >> 2]);
|
|
$314 = HEAP32[($8 + 696 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$0 = HEAP32[($8 + 516 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($8 + 520 | 0) >> 2] | 0;
|
|
$1388 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $314;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1388;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$316 = 8;
|
|
i64toi32_i32$2 = ($8 + 516 | 0) + $316 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1401 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $314 + $316 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1401;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
}
|
|
HEAP32[($8 + 548 | 0) >> 2] = (HEAP32[($8 + 548 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$10;
|
|
};
|
|
}
|
|
btVector3__btVector3_28_29($8 + 460 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 444 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 428 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 412 | 0 | 0) | 0;
|
|
HEAP32[($8 + 408 | 0) >> 2] = -1;
|
|
HEAP32[($8 + 404 | 0) >> 2] = -1;
|
|
btVector3__btVector3_28_29($8 + 384 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 368 | 0 | 0) | 0;
|
|
HEAPF32[($8 + 348 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 344 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 340 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 352 | 0 | 0, $8 + 348 | 0 | 0, $8 + 344 | 0 | 0, $8 + 340 | 0 | 0) | 0;
|
|
HEAPF32[($8 + 316 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 312 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 308 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 320 | 0 | 0, $8 + 316 | 0 | 0, $8 + 312 | 0 | 0, $8 + 308 | 0 | 0) | 0;
|
|
HEAP32[($8 + 304 | 0) >> 2] = 0;
|
|
HEAP32[($8 + 300 | 0) >> 2] = 0;
|
|
label$16 : {
|
|
label$17 : while (1) {
|
|
if (!((HEAP32[($8 + 300 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btVector3___size_28_29_20const((HEAP32[($8 + 712 | 0) >> 2] | 0) + 44 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
$397 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29_20const((HEAP32[($8 + 712 | 0) >> 2] | 0) + 44 | 0 | 0, HEAP32[($8 + 300 | 0) >> 2] | 0 | 0) | 0;
|
|
$398 = 8;
|
|
i64toi32_i32$2 = $397 + $398 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1560 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 280 | 0) + $398 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1560;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $397;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1564 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 280 | 0) >> 2] = $1564;
|
|
HEAP32[($8 + 284 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 264 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 704 | 0) >> 2] | 0 | 0) | 0 | 0, $8 + 280 | 0 | 0);
|
|
HEAP32[($8 + 260 | 0) >> 2] = 0;
|
|
label$18 : {
|
|
label$19 : while (1) {
|
|
if (!((HEAP32[($8 + 260 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btVector3___size_28_29_20const((HEAP32[($8 + 708 | 0) >> 2] | 0) + 44 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$18
|
|
}
|
|
$428 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29_20const((HEAP32[($8 + 708 | 0) >> 2] | 0) + 44 | 0 | 0, HEAP32[($8 + 260 | 0) >> 2] | 0 | 0) | 0;
|
|
$429 = 8;
|
|
i64toi32_i32$2 = $428 + $429 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1623 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 240 | 0) + $429 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1623;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $428;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1627 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 240 | 0) >> 2] = $1627;
|
|
HEAP32[($8 + 244 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 224 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($8 + 700 | 0) >> 2] | 0 | 0) | 0 | 0, $8 + 240 | 0 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($8 + 208 | 0 | 0, $8 + 264 | 0 | 0, $8 + 224 | 0 | 0);
|
|
HEAP32[($8 + 304 | 0) >> 2] = (HEAP32[($8 + 304 | 0) >> 2] | 0) + 1 | 0;
|
|
label$20 : {
|
|
label$21 : {
|
|
if ((IsAlmostZero_28btVector3_20const__29($8 + 208 | 0 | 0) | 0) & 1 | 0) {
|
|
break label$21
|
|
}
|
|
$465 = btVector3__normalize_28_29($8 + 208 | 0 | 0) | 0;
|
|
$466 = 8;
|
|
i64toi32_i32$2 = $465 + $466 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1693 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 208 | 0) + $466 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1693;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $465;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1697 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 208 | 0) >> 2] = $1697;
|
|
HEAP32[($8 + 212 | 0) >> 2] = i64toi32_i32$0;
|
|
label$22 : {
|
|
if (!(Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 644 | 0 | 0, $8 + 208 | 0 | 0)) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$22
|
|
}
|
|
HEAPF32[($8 + 204 | 0) >> 2] = Math_fround(-1.0);
|
|
btVector3__operator___28float_20const__29_1($8 + 208 | 0 | 0, $8 + 204 | 0 | 0) | 0;
|
|
}
|
|
HEAP32[(0 + 115384 | 0) >> 2] = (HEAP32[(0 + 115384 | 0) >> 2] | 0) + 1 | 0;
|
|
label$23 : {
|
|
if (!((HEAPU8[(0 + 112845 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$23
|
|
}
|
|
if ((TestInternalObjects_28btTransform_20const__2c_20btTransform_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btConvexPolyhedron_20const__2c_20btConvexPolyhedron_20const__2c_20float_29(HEAP32[($8 + 704 | 0) >> 2] | 0 | 0, HEAP32[($8 + 700 | 0) >> 2] | 0 | 0, $8 + 644 | 0 | 0, $8 + 208 | 0 | 0, HEAP32[($8 + 712 | 0) >> 2] | 0 | 0, HEAP32[($8 + 708 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($8 + 640 | 0) >> 2]))) | 0) & 1 | 0) {
|
|
break label$23
|
|
}
|
|
break label$20;
|
|
}
|
|
HEAP32[(0 + 115388 | 0) >> 2] = (HEAP32[(0 + 115388 | 0) >> 2] | 0) + 1 | 0;
|
|
btVector3__btVector3_28_29($8 + 184 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 168 | 0 | 0) | 0;
|
|
label$24 : {
|
|
if ((TestSepAxis_28btConvexPolyhedron_20const__2c_20btConvexPolyhedron_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3_20const__2c_20float__2c_20btVector3__2c_20btVector3__29(HEAP32[($8 + 712 | 0) >> 2] | 0 | 0, HEAP32[($8 + 708 | 0) >> 2] | 0 | 0, HEAP32[($8 + 704 | 0) >> 2] | 0 | 0, HEAP32[($8 + 700 | 0) >> 2] | 0 | 0, $8 + 208 | 0 | 0, $8 + 200 | 0 | 0, $8 + 184 | 0 | 0, $8 + 168 | 0 | 0) | 0) & 1 | 0) {
|
|
break label$24
|
|
}
|
|
HEAP8[($8 + 719 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
label$25 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 200 | 0) >> 2]) < Math_fround(HEAPF32[($8 + 640 | 0) >> 2]) & 1 | 0)) {
|
|
break label$25
|
|
}
|
|
HEAPF32[($8 + 640 | 0) >> 2] = Math_fround(HEAPF32[($8 + 200 | 0) >> 2]);
|
|
$554 = HEAP32[($8 + 696 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$0 = HEAP32[($8 + 208 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($8 + 212 | 0) >> 2] | 0;
|
|
$1858 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $554;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1858;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$556 = 8;
|
|
i64toi32_i32$2 = ($8 + 208 | 0) + $556 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1871 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $554 + $556 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1871;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($8 + 408 | 0) >> 2] = HEAP32[($8 + 300 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 404 | 0) >> 2] = HEAP32[($8 + 260 | 0) >> 2] | 0;
|
|
$564 = 8;
|
|
i64toi32_i32$2 = ($8 + 264 | 0) + $564 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1895 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 384 | 0) + $564 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1895;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 264 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 268 | 0) >> 2] | 0;
|
|
$1899 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 384 | 0) >> 2] = $1899;
|
|
HEAP32[($8 + 388 | 0) >> 2] = i64toi32_i32$0;
|
|
$573 = 8;
|
|
i64toi32_i32$2 = ($8 + 224 | 0) + $573 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1915 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 368 | 0) + $573 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1915;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 224 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 228 | 0) >> 2] | 0;
|
|
$1919 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 368 | 0) >> 2] = $1919;
|
|
HEAP32[($8 + 372 | 0) >> 2] = i64toi32_i32$0;
|
|
$582 = 8;
|
|
i64toi32_i32$2 = ($8 + 184 | 0) + $582 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1935 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 352 | 0) + $582 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1935;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 184 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 188 | 0) >> 2] | 0;
|
|
$1939 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 352 | 0) >> 2] = $1939;
|
|
HEAP32[($8 + 356 | 0) >> 2] = i64toi32_i32$0;
|
|
$591 = 8;
|
|
i64toi32_i32$2 = ($8 + 168 | 0) + $591 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1955 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 320 | 0) + $591 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1955;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 168 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 172 | 0) >> 2] | 0;
|
|
$1959 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 320 | 0) >> 2] = $1959;
|
|
HEAP32[($8 + 324 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
}
|
|
}
|
|
HEAP32[($8 + 260 | 0) >> 2] = (HEAP32[($8 + 260 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$19;
|
|
};
|
|
}
|
|
HEAP32[($8 + 300 | 0) >> 2] = (HEAP32[($8 + 300 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$17;
|
|
};
|
|
}
|
|
label$26 : {
|
|
if (!((HEAP32[($8 + 408 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$26
|
|
}
|
|
if (!((HEAP32[($8 + 404 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$26
|
|
}
|
|
btVector3__btVector3_28_29($8 + 152 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 136 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 120 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 96 | 0 | 0, $8 + 320 | 0 | 0, $8 + 352 | 0 | 0);
|
|
$638 = 8;
|
|
i64toi32_i32$2 = ($8 + 384 | 0) + $638 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2046 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 80 | 0) + $638 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2046;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 384 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 388 | 0) >> 2] | 0;
|
|
$2050 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 80 | 0) >> 2] = $2050;
|
|
HEAP32[($8 + 84 | 0) >> 2] = i64toi32_i32$0;
|
|
$647 = 8;
|
|
i64toi32_i32$2 = ($8 + 368 | 0) + $647 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2066 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 64 | 0) + $647 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2066;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 368 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 372 | 0) >> 2] | 0;
|
|
$2070 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 64 | 0) >> 2] = $2070;
|
|
HEAP32[($8 + 68 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($8 + 60 | 0) >> 2] = Math_fround(1000000015047466219876688.0e6);
|
|
HEAPF32[($8 + 56 | 0) >> 2] = Math_fround(1000000015047466219876688.0e6);
|
|
btSegmentsClosestPoints_28btVector3__2c_20btVector3__2c_20btVector3__2c_20float__2c_20float__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20btVector3_20const__2c_20float_29($8 + 152 | 0 | 0, $8 + 136 | 0 | 0, $8 + 120 | 0 | 0, $8 + 116 | 0 | 0, $8 + 112 | 0 | 0, $8 + 96 | 0 | 0, $8 + 80 | 0 | 0, Math_fround(Math_fround(HEAPF32[($8 + 56 | 0) >> 2])), $8 + 64 | 0 | 0, Math_fround(Math_fround(HEAPF32[($8 + 60 | 0) >> 2])));
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($8 + 152 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 52 | 0) >> 2] = wasm2js_f32$0;
|
|
label$27 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 52 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$27
|
|
}
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btSqrt_28float_29(Math_fround(Math_fround(HEAPF32[($8 + 52 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 48 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($8 + 44 | 0) >> 2] = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[($8 + 48 | 0) >> 2]));
|
|
btVector3__operator___28float_20const__29_1($8 + 152 | 0 | 0, $8 + 44 | 0 | 0) | 0;
|
|
label$28 : {
|
|
if (!(Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 152 | 0 | 0, $8 + 644 | 0 | 0)) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$28
|
|
}
|
|
HEAPF32[($8 + 40 | 0) >> 2] = Math_fround(-1.0);
|
|
btVector3__operator___28float_20const__29_1($8 + 152 | 0 | 0, $8 + 40 | 0 | 0) | 0;
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 24 | 0 | 0, $8 + 320 | 0 | 0, $8 + 120 | 0 | 0);
|
|
HEAPF32[($8 + 20 | 0) >> 2] = Math_fround(HEAPF32[($8 + 48 | 0) >> 2]);
|
|
$733 = HEAP32[($8 + 692 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$733 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($733, $8 + 152 | 0, $8 + 24 | 0, Math_fround(-Math_fround(HEAPF32[($8 + 20 | 0) >> 2])));
|
|
}
|
|
}
|
|
label$29 : {
|
|
if (!(Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 644 | 0 | 0, HEAP32[($8 + 696 | 0) >> 2] | 0 | 0)) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$29
|
|
}
|
|
operator__28btVector3_20const__29($8 + 4 | 0 | 0, HEAP32[($8 + 696 | 0) >> 2] | 0 | 0);
|
|
$758 = HEAP32[($8 + 696 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$0 = HEAP32[($8 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($8 + 8 | 0) >> 2] | 0;
|
|
$2271 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $758;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2271;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$760 = 8;
|
|
i64toi32_i32$2 = ($8 + 4 | 0) + $760 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2284 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $758 + $760 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $2284;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
HEAP8[($8 + 719 | 0) >> 0] = 1 & 1 | 0;
|
|
}
|
|
$771 = (HEAPU8[($8 + 719 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $8 + 720 | 0;
|
|
return $771 | 0;
|
|
}
|
|
|
|
function TestSepAxis_28btConvexPolyhedron_20const__2c_20btConvexPolyhedron_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3_20const__2c_20float__2c_20btVector3__2c_20btVector3__29($0, $1, $2, $3, $4, $5, $6, $7) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
var $10 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $99 = 0, $101 = 0, $107 = 0, $109 = 0, $117 = 0, $119 = 0, $125 = 0, $127 = 0, $343 = 0, $356 = 0, $362 = 0, $375 = 0, $387 = 0, $400 = 0, $406 = 0, $419 = 0, $138 = 0;
|
|
$10 = __stack_pointer - 128 | 0;
|
|
__stack_pointer = $10;
|
|
HEAP32[($10 + 120 | 0) >> 2] = $0;
|
|
HEAP32[($10 + 116 | 0) >> 2] = $1;
|
|
HEAP32[($10 + 112 | 0) >> 2] = $2;
|
|
HEAP32[($10 + 108 | 0) >> 2] = $3;
|
|
HEAP32[($10 + 104 | 0) >> 2] = $4;
|
|
HEAP32[($10 + 100 | 0) >> 2] = $5;
|
|
HEAP32[($10 + 96 | 0) >> 2] = $6;
|
|
HEAP32[($10 + 92 | 0) >> 2] = $7;
|
|
btVector3__btVector3_28_29($10 + 60 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($10 + 44 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($10 + 28 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($10 + 12 | 0 | 0) | 0;
|
|
btConvexPolyhedron__project_28btTransform_20const__2c_20btVector3_20const__2c_20float__2c_20float__2c_20btVector3__2c_20btVector3__29_20const(HEAP32[($10 + 120 | 0) >> 2] | 0 | 0, HEAP32[($10 + 112 | 0) >> 2] | 0 | 0, HEAP32[($10 + 104 | 0) >> 2] | 0 | 0, $10 + 88 | 0 | 0, $10 + 84 | 0 | 0, $10 + 60 | 0 | 0, $10 + 44 | 0 | 0);
|
|
btConvexPolyhedron__project_28btTransform_20const__2c_20btVector3_20const__2c_20float__2c_20float__2c_20btVector3__2c_20btVector3__29_20const(HEAP32[($10 + 116 | 0) >> 2] | 0 | 0, HEAP32[($10 + 108 | 0) >> 2] | 0 | 0, HEAP32[($10 + 104 | 0) >> 2] | 0 | 0, $10 + 80 | 0 | 0, $10 + 76 | 0 | 0, $10 + 28 | 0 | 0, $10 + 12 | 0 | 0);
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : {
|
|
if (Math_fround(HEAPF32[($10 + 84 | 0) >> 2]) < Math_fround(HEAPF32[($10 + 80 | 0) >> 2]) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
if (!(Math_fround(HEAPF32[($10 + 76 | 0) >> 2]) < Math_fround(HEAPF32[($10 + 88 | 0) >> 2]) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
}
|
|
HEAP8[($10 + 127 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAPF32[($10 + 8 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($10 + 84 | 0) >> 2]) - Math_fround(HEAPF32[($10 + 80 | 0) >> 2]));
|
|
label$4 : {
|
|
if (Math_fround(HEAPF32[($10 + 8 | 0) >> 2]) >= Math_fround(0 | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
__assert_fail(80781 | 0, 73878 | 0, 94 | 0, 69820 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAPF32[($10 + 4 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($10 + 76 | 0) >> 2]) - Math_fround(HEAPF32[($10 + 88 | 0) >> 2]));
|
|
label$5 : {
|
|
if (Math_fround(HEAPF32[($10 + 4 | 0) >> 2]) >= Math_fround(0 | 0) & 1 | 0) {
|
|
break label$5
|
|
}
|
|
__assert_fail(80772 | 0, 73878 | 0, 96 | 0, 69820 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!(Math_fround(HEAPF32[($10 + 8 | 0) >> 2]) < Math_fround(HEAPF32[($10 + 4 | 0) >> 2]) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAPF32[(HEAP32[($10 + 100 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[($10 + 8 | 0) >> 2]);
|
|
$99 = HEAP32[($10 + 96 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $10;
|
|
i64toi32_i32$0 = HEAP32[($10 + 44 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($10 + 48 | 0) >> 2] | 0;
|
|
$343 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $99;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $343;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$101 = 8;
|
|
i64toi32_i32$2 = ($10 + 44 | 0) + $101 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$356 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $99 + $101 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $356;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$107 = HEAP32[($10 + 92 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $10;
|
|
i64toi32_i32$0 = HEAP32[($10 + 28 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($10 + 32 | 0) >> 2] | 0;
|
|
$362 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $107;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $362;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$109 = 8;
|
|
i64toi32_i32$2 = ($10 + 28 | 0) + $109 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$375 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $107 + $109 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $375;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$6;
|
|
}
|
|
HEAPF32[(HEAP32[($10 + 100 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[($10 + 4 | 0) >> 2]);
|
|
$117 = HEAP32[($10 + 96 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $10;
|
|
i64toi32_i32$0 = HEAP32[($10 + 60 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($10 + 64 | 0) >> 2] | 0;
|
|
$387 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $117;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $387;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$119 = 8;
|
|
i64toi32_i32$2 = ($10 + 60 | 0) + $119 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$400 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $117 + $119 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $400;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$125 = HEAP32[($10 + 92 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $10;
|
|
i64toi32_i32$0 = HEAP32[($10 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($10 + 16 | 0) >> 2] | 0;
|
|
$406 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $125;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $406;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$127 = 8;
|
|
i64toi32_i32$2 = ($10 + 12 | 0) + $127 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$419 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $125 + $127 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $419;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
HEAP8[($10 + 127 | 0) >> 0] = 1 & 1 | 0;
|
|
}
|
|
$138 = (HEAPU8[($10 + 127 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $10 + 128 | 0;
|
|
return $138 | 0;
|
|
}
|
|
|
|
function btSegmentsClosestPoints_28btVector3__2c_20btVector3__2c_20btVector3__2c_20float__2c_20float__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20btVector3_20const__2c_20float_29($0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = Math_fround($7);
|
|
$8 = $8 | 0;
|
|
$9 = Math_fround($9);
|
|
var $12 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $145 = 0, $147 = 0, $158 = 0, $160 = 0, $178 = 0, $180 = 0, $543 = 0, $556 = 0, $573 = 0, $586 = 0, $616 = 0, $629 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$12 = __stack_pointer - 128 | 0;
|
|
__stack_pointer = $12;
|
|
HEAP32[($12 + 124 | 0) >> 2] = $0;
|
|
HEAP32[($12 + 120 | 0) >> 2] = $1;
|
|
HEAP32[($12 + 116 | 0) >> 2] = $2;
|
|
HEAP32[($12 + 112 | 0) >> 2] = $3;
|
|
HEAP32[($12 + 108 | 0) >> 2] = $4;
|
|
HEAP32[($12 + 104 | 0) >> 2] = $5;
|
|
HEAP32[($12 + 100 | 0) >> 2] = $6;
|
|
HEAPF32[($12 + 96 | 0) >> 2] = $7;
|
|
HEAP32[($12 + 92 | 0) >> 2] = $8;
|
|
HEAPF32[($12 + 88 | 0) >> 2] = $9;
|
|
(wasm2js_i32$0 = $12, wasm2js_f32$0 = Math_fround(btDot_28btVector3_20const__2c_20btVector3_20const__29(HEAP32[($12 + 100 | 0) >> 2] | 0 | 0, HEAP32[($12 + 92 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 84 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $12, wasm2js_f32$0 = Math_fround(btDot_28btVector3_20const__2c_20btVector3_20const__29(HEAP32[($12 + 100 | 0) >> 2] | 0 | 0, HEAP32[($12 + 104 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 80 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $12, wasm2js_f32$0 = Math_fround(btDot_28btVector3_20const__2c_20btVector3_20const__29(HEAP32[($12 + 92 | 0) >> 2] | 0 | 0, HEAP32[($12 + 104 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 76 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($12 + 72 | 0) >> 2] = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($12 + 84 | 0) >> 2])) * Math_fround(HEAPF32[($12 + 84 | 0) >> 2])) + Math_fround(1.0));
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($12 + 72 | 0) >> 2]) == Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2] = Math_fround(0 | 0);
|
|
break label$1;
|
|
}
|
|
HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2] = Math_fround(Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($12 + 76 | 0) >> 2])) * Math_fround(HEAPF32[($12 + 84 | 0) >> 2])) + Math_fround(HEAPF32[($12 + 80 | 0) >> 2])) / Math_fround(HEAPF32[($12 + 72 | 0) >> 2]));
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2]) < Math_fround(-Math_fround(HEAPF32[($12 + 96 | 0) >> 2])) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($12 + 96 | 0) >> 2]));
|
|
break label$3;
|
|
}
|
|
label$5 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2]) > Math_fround(HEAPF32[($12 + 96 | 0) >> 2]) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[($12 + 96 | 0) >> 2]);
|
|
}
|
|
}
|
|
}
|
|
HEAPF32[(HEAP32[($12 + 108 | 0) >> 2] | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[($12 + 84 | 0) >> 2])) + Math_fround(-Math_fround(HEAPF32[($12 + 76 | 0) >> 2])));
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($12 + 108 | 0) >> 2] | 0) >> 2]) < Math_fround(-Math_fround(HEAPF32[($12 + 88 | 0) >> 2])) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAPF32[(HEAP32[($12 + 108 | 0) >> 2] | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($12 + 88 | 0) >> 2]));
|
|
HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[(HEAP32[($12 + 108 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[($12 + 84 | 0) >> 2])) + Math_fround(HEAPF32[($12 + 80 | 0) >> 2]));
|
|
label$8 : {
|
|
label$9 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2]) < Math_fround(-Math_fround(HEAPF32[($12 + 96 | 0) >> 2])) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($12 + 96 | 0) >> 2]));
|
|
break label$8;
|
|
}
|
|
label$10 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2]) > Math_fround(HEAPF32[($12 + 96 | 0) >> 2]) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[($12 + 96 | 0) >> 2]);
|
|
}
|
|
}
|
|
break label$6;
|
|
}
|
|
label$11 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($12 + 108 | 0) >> 2] | 0) >> 2]) > Math_fround(HEAPF32[($12 + 88 | 0) >> 2]) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
HEAPF32[(HEAP32[($12 + 108 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[($12 + 88 | 0) >> 2]);
|
|
HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[(HEAP32[($12 + 108 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[($12 + 84 | 0) >> 2])) + Math_fround(HEAPF32[($12 + 80 | 0) >> 2]));
|
|
label$12 : {
|
|
label$13 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2]) < Math_fround(-Math_fround(HEAPF32[($12 + 96 | 0) >> 2])) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($12 + 96 | 0) >> 2]));
|
|
break label$12;
|
|
}
|
|
label$14 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2]) > Math_fround(HEAPF32[($12 + 96 | 0) >> 2]) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
HEAPF32[(HEAP32[($12 + 112 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[($12 + 96 | 0) >> 2]);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
operator__28btVector3_20const__2c_20float_20const__29($12 + 56 | 0 | 0, HEAP32[($12 + 100 | 0) >> 2] | 0 | 0, HEAP32[($12 + 112 | 0) >> 2] | 0 | 0);
|
|
$145 = HEAP32[($12 + 120 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$0 = HEAP32[($12 + 56 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($12 + 60 | 0) >> 2] | 0;
|
|
$543 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $145;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $543;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$147 = 8;
|
|
i64toi32_i32$2 = ($12 + 56 | 0) + $147 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$556 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $145 + $147 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $556;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($12 + 40 | 0 | 0, HEAP32[($12 + 92 | 0) >> 2] | 0 | 0, HEAP32[($12 + 108 | 0) >> 2] | 0 | 0);
|
|
$158 = HEAP32[($12 + 116 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$0 = HEAP32[($12 + 40 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($12 + 44 | 0) >> 2] | 0;
|
|
$573 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $158;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $573;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$160 = 8;
|
|
i64toi32_i32$2 = ($12 + 40 | 0) + $160 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$586 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $158 + $160 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $586;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($12 + 8 | 0 | 0, HEAP32[($12 + 104 | 0) >> 2] | 0 | 0, HEAP32[($12 + 120 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($12 + 24 | 0 | 0, $12 + 8 | 0 | 0, HEAP32[($12 + 116 | 0) >> 2] | 0 | 0);
|
|
$178 = HEAP32[($12 + 124 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$0 = HEAP32[($12 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($12 + 28 | 0) >> 2] | 0;
|
|
$616 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $178;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $616;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$180 = 8;
|
|
i64toi32_i32$2 = ($12 + 24 | 0) + $180 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$629 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $178 + $180 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $629;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $12 + 128 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPolyhedralContactClipping__clipFaceAgainstHull_28btVector3_20const__2c_20btConvexPolyhedron_20const__2c_20btTransform_20const__2c_20btAlignedObjectArray_btVector3___2c_20btAlignedObjectArray_btVector3___2c_20float_2c_20float_2c_20btDiscreteCollisionDetectorInterface__Result__29($0, $1, $2, $3, $4, $5, $6, $7) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = Math_fround($5);
|
|
$6 = Math_fround($6);
|
|
$7 = $7 | 0;
|
|
var $10 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $195 = 0, $276 = 0, $277 = 0, $306 = 0, $307 = 0, $314 = 0, $11 = 0, $144 = 0, $740 = 0, $744 = 0, $217 = 0, $907 = 0, $911 = 0, $977 = 0, $981 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$1 = 0;
|
|
$10 = __stack_pointer - 384 | 0;
|
|
__stack_pointer = $10;
|
|
HEAP32[($10 + 380 | 0) >> 2] = $0;
|
|
HEAP32[($10 + 376 | 0) >> 2] = $1;
|
|
HEAP32[($10 + 372 | 0) >> 2] = $2;
|
|
HEAP32[($10 + 368 | 0) >> 2] = $3;
|
|
HEAP32[($10 + 364 | 0) >> 2] = $4;
|
|
HEAPF32[($10 + 360 | 0) >> 2] = $5;
|
|
HEAPF32[($10 + 356 | 0) >> 2] = $6;
|
|
HEAP32[($10 + 352 | 0) >> 2] = $7;
|
|
$11 = HEAP32[($10 + 364 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($10 + 336 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3___resize_28int_2c_20btVector3_20const__29($11 | 0, 0 | 0, $10 + 336 | 0 | 0);
|
|
HEAP32[($10 + 332 | 0) >> 2] = HEAP32[($10 + 368 | 0) >> 2] | 0;
|
|
HEAP32[($10 + 328 | 0) >> 2] = HEAP32[($10 + 364 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btVector3___reserve_28int_29(HEAP32[($10 + 328 | 0) >> 2] | 0 | 0, btAlignedObjectArray_btVector3___size_28_29_20const(HEAP32[($10 + 332 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
HEAP32[($10 + 324 | 0) >> 2] = -1;
|
|
HEAPF32[($10 + 320 | 0) >> 2] = Math_fround(3402823466385288598117041.0e14);
|
|
HEAP32[($10 + 316 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($10 + 316 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btFace___size_28_29_20const((HEAP32[($10 + 376 | 0) >> 2] | 0) + 24 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($10 + 300 | 0 | 0, (btAlignedObjectArray_btFace___operator_5b_5d_28int_29_20const((HEAP32[($10 + 376 | 0) >> 2] | 0) + 24 | 0 | 0, HEAP32[($10 + 316 | 0) >> 2] | 0 | 0) | 0) + 20 | 0 | 0, ((btAlignedObjectArray_btFace___operator_5b_5d_28int_29_20const((HEAP32[($10 + 376 | 0) >> 2] | 0) + 24 | 0 | 0, HEAP32[($10 + 316 | 0) >> 2] | 0 | 0) | 0) + 20 | 0) + 4 | 0 | 0, ((btAlignedObjectArray_btFace___operator_5b_5d_28int_29_20const((HEAP32[($10 + 376 | 0) >> 2] | 0) + 24 | 0 | 0, HEAP32[($10 + 316 | 0) >> 2] | 0 | 0) | 0) + 20 | 0) + 8 | 0 | 0) | 0;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($10 + 284 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($10 + 372 | 0) >> 2] | 0 | 0) | 0 | 0, $10 + 300 | 0 | 0);
|
|
(wasm2js_i32$0 = $10, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($10 + 284 | 0 | 0, HEAP32[($10 + 380 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 280 | 0) >> 2] = wasm2js_f32$0;
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($10 + 280 | 0) >> 2]) < Math_fround(HEAPF32[($10 + 320 | 0) >> 2]) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAPF32[($10 + 320 | 0) >> 2] = Math_fround(HEAPF32[($10 + 280 | 0) >> 2]);
|
|
HEAP32[($10 + 324 | 0) >> 2] = HEAP32[($10 + 316 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($10 + 316 | 0) >> 2] = (HEAP32[($10 + 316 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!((HEAP32[($10 + 324 | 0) >> 2] | 0 | 0) < (0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
break label$4;
|
|
}
|
|
(wasm2js_i32$0 = $10, wasm2js_i32$1 = btAlignedObjectArray_btFace___operator_5b_5d_28int_29_20const((HEAP32[($10 + 376 | 0) >> 2] | 0) + 24 | 0 | 0, HEAP32[($10 + 324 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 276 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $10, wasm2js_i32$1 = btAlignedObjectArray_int___size_28_29_20const(HEAP32[($10 + 276 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 272 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($10 + 268 | 0) >> 2] = 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($10 + 268 | 0) >> 2] | 0 | 0) < (HEAP32[($10 + 272 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
(wasm2js_i32$0 = $10, wasm2js_i32$1 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29_20const((HEAP32[($10 + 376 | 0) >> 2] | 0) + 4 | 0 | 0, HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29_20const(HEAP32[($10 + 276 | 0) >> 2] | 0 | 0, HEAP32[($10 + 268 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 264 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $10, wasm2js_i32$1 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29_20const((HEAP32[($10 + 376 | 0) >> 2] | 0) + 4 | 0 | 0, HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29_20const(HEAP32[($10 + 276 | 0) >> 2] | 0 | 0, ((HEAP32[($10 + 268 | 0) >> 2] | 0) + 1 | 0 | 0) % (HEAP32[($10 + 272 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 260 | 0) >> 2] = wasm2js_i32$1;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($10 + 244 | 0 | 0, HEAP32[($10 + 264 | 0) >> 2] | 0 | 0, HEAP32[($10 + 260 | 0) >> 2] | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($10 + 228 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($10 + 372 | 0) >> 2] | 0 | 0) | 0 | 0, $10 + 244 | 0 | 0);
|
|
$144 = btTransform__getBasis_28_29_20const(HEAP32[($10 + 372 | 0) >> 2] | 0 | 0) | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($10 + 196 | 0 | 0, (HEAP32[($10 + 276 | 0) >> 2] | 0) + 20 | 0 | 0, ((HEAP32[($10 + 276 | 0) >> 2] | 0) + 20 | 0) + 4 | 0 | 0, ((HEAP32[($10 + 276 | 0) >> 2] | 0) + 20 | 0) + 8 | 0 | 0) | 0;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($10 + 212 | 0 | 0, $144 | 0, $10 + 196 | 0 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($10 + 164 | 0 | 0, $10 + 228 | 0 | 0, $10 + 212 | 0 | 0);
|
|
operator__28btVector3_20const__29($10 + 180 | 0 | 0, $10 + 164 | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($10 + 148 | 0 | 0, HEAP32[($10 + 372 | 0) >> 2] | 0 | 0, HEAP32[($10 + 264 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $10, wasm2js_f32$0 = Math_fround(-Math_fround(btVector3__dot_28btVector3_20const__29_20const($10 + 148 | 0 | 0, $10 + 180 | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 144 | 0) >> 2] = wasm2js_f32$0;
|
|
$195 = 8;
|
|
i64toi32_i32$2 = ($10 + 180 | 0) + $195 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$740 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($10 + 128 | 0) + $195 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $740;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $10;
|
|
i64toi32_i32$1 = HEAP32[($10 + 180 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($10 + 184 | 0) >> 2] | 0;
|
|
$744 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $10;
|
|
HEAP32[($10 + 128 | 0) >> 2] = $744;
|
|
HEAP32[($10 + 132 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($10 + 124 | 0) >> 2] = Math_fround(HEAPF32[($10 + 144 | 0) >> 2]);
|
|
btPolyhedralContactClipping__clipFace_28btAlignedObjectArray_btVector3__20const__2c_20btAlignedObjectArray_btVector3___2c_20btVector3_20const__2c_20float_29(HEAP32[($10 + 332 | 0) >> 2] | 0 | 0, HEAP32[($10 + 328 | 0) >> 2] | 0 | 0, $10 + 128 | 0 | 0, Math_fround(Math_fround(HEAPF32[($10 + 124 | 0) >> 2])));
|
|
void_20btSwap_btAlignedObjectArray_btVector3____28btAlignedObjectArray_btVector3____2c_20btAlignedObjectArray_btVector3____29($10 + 332 | 0 | 0, $10 + 328 | 0 | 0);
|
|
$217 = HEAP32[($10 + 328 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($10 + 108 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3___resize_28int_2c_20btVector3_20const__29($217 | 0, 0 | 0, $10 + 108 | 0 | 0);
|
|
HEAP32[($10 + 268 | 0) >> 2] = (HEAP32[($10 + 268 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
btVector3__btVector3_28_29($10 + 92 | 0 | 0) | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($10 + 76 | 0 | 0, (HEAP32[($10 + 276 | 0) >> 2] | 0) + 20 | 0 | 0, ((HEAP32[($10 + 276 | 0) >> 2] | 0) + 20 | 0) + 4 | 0 | 0, ((HEAP32[($10 + 276 | 0) >> 2] | 0) + 20 | 0) + 8 | 0 | 0) | 0;
|
|
HEAPF32[($10 + 72 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($10 + 276 | 0) >> 2] | 0) + 32 | 0) >> 2]);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($10 + 56 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($10 + 372 | 0) >> 2] | 0 | 0) | 0 | 0, $10 + 76 | 0 | 0);
|
|
(wasm2js_i32$0 = $10, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[($10 + 72 | 0) >> 2]) - Math_fround(btVector3__dot_28btVector3_20const__29_20const($10 + 56 | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($10 + 372 | 0) >> 2] | 0 | 0) | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 52 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP32[($10 + 48 | 0) >> 2] = 0;
|
|
label$8 : while (1) {
|
|
if (!((HEAP32[($10 + 48 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btVector3___size_28_29_20const(HEAP32[($10 + 332 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$276 = btAlignedObjectArray_btVector3___at_28int_29(HEAP32[($10 + 332 | 0) >> 2] | 0 | 0, HEAP32[($10 + 48 | 0) >> 2] | 0 | 0) | 0;
|
|
$277 = 8;
|
|
i64toi32_i32$2 = $276 + $277 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$907 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($10 + 32 | 0) + $277 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $907;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $276;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$911 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $10;
|
|
HEAP32[($10 + 32 | 0) >> 2] = $911;
|
|
HEAP32[($10 + 36 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $10, wasm2js_f32$0 = Math_fround(Math_fround(btVector3__dot_28btVector3_20const__29_20const($10 + 56 | 0 | 0, $10 + 32 | 0 | 0)) + Math_fround(HEAPF32[($10 + 52 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
label$9 : {
|
|
if (!(Math_fround(HEAPF32[($10 + 28 | 0) >> 2]) <= Math_fround(HEAPF32[($10 + 360 | 0) >> 2]) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
HEAPF32[($10 + 28 | 0) >> 2] = Math_fround(HEAPF32[($10 + 360 | 0) >> 2]);
|
|
}
|
|
label$10 : {
|
|
if (!(Math_fround(HEAPF32[($10 + 28 | 0) >> 2]) <= Math_fround(HEAPF32[($10 + 356 | 0) >> 2]) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
$306 = btAlignedObjectArray_btVector3___at_28int_29(HEAP32[($10 + 332 | 0) >> 2] | 0 | 0, HEAP32[($10 + 48 | 0) >> 2] | 0 | 0) | 0;
|
|
$307 = 8;
|
|
i64toi32_i32$2 = $306 + $307 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$977 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($10 + 8 | 0) + $307 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $977;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $306;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$981 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $10;
|
|
HEAP32[($10 + 8 | 0) >> 2] = $981;
|
|
HEAP32[($10 + 12 | 0) >> 2] = i64toi32_i32$0;
|
|
$314 = HEAP32[($10 + 352 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$314 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($314, HEAP32[($10 + 380 | 0) >> 2] | 0, $10 + 8 | 0, Math_fround(HEAPF32[($10 + 28 | 0) >> 2]));
|
|
}
|
|
HEAP32[($10 + 48 | 0) >> 2] = (HEAP32[($10 + 48 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$8;
|
|
};
|
|
}
|
|
__stack_pointer = $10 + 384 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20btSwap_btAlignedObjectArray_btVector3____28btAlignedObjectArray_btVector3____2c_20btAlignedObjectArray_btVector3____29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] = HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btPolyhedralContactClipping__clipHullAgainstHull_28btVector3_20const__2c_20btConvexPolyhedron_20const__2c_20btConvexPolyhedron_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20float_2c_20float_2c_20btAlignedObjectArray_btVector3___2c_20btAlignedObjectArray_btVector3___2c_20btDiscreteCollisionDetectorInterface__Result__29($0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = Math_fround($5);
|
|
$6 = Math_fround($6);
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
$9 = $9 | 0;
|
|
var $12 = 0, $83 = 0, $114 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$1 = 0;
|
|
$12 = __stack_pointer - 160 | 0;
|
|
__stack_pointer = $12;
|
|
HEAP32[($12 + 156 | 0) >> 2] = $0;
|
|
HEAP32[($12 + 152 | 0) >> 2] = $1;
|
|
HEAP32[($12 + 148 | 0) >> 2] = $2;
|
|
HEAP32[($12 + 144 | 0) >> 2] = $3;
|
|
HEAP32[($12 + 140 | 0) >> 2] = $4;
|
|
HEAPF32[($12 + 136 | 0) >> 2] = $5;
|
|
HEAPF32[($12 + 132 | 0) >> 2] = $6;
|
|
HEAP32[($12 + 128 | 0) >> 2] = $7;
|
|
HEAP32[($12 + 124 | 0) >> 2] = $8;
|
|
HEAP32[($12 + 120 | 0) >> 2] = $9;
|
|
btVector3__normalized_28_29_20const($12 + 104 | 0 | 0, HEAP32[($12 + 156 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($12 + 100 | 0) >> 2] = -1;
|
|
HEAPF32[($12 + 96 | 0) >> 2] = Math_fround(-3402823466385288598117041.0e14);
|
|
HEAP32[($12 + 92 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($12 + 92 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btFace___size_28_29_20const((HEAP32[($12 + 148 | 0) >> 2] | 0) + 24 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($12 + 76 | 0 | 0, (btAlignedObjectArray_btFace___operator_5b_5d_28int_29_20const((HEAP32[($12 + 148 | 0) >> 2] | 0) + 24 | 0 | 0, HEAP32[($12 + 92 | 0) >> 2] | 0 | 0) | 0) + 20 | 0 | 0, ((btAlignedObjectArray_btFace___operator_5b_5d_28int_29_20const((HEAP32[($12 + 148 | 0) >> 2] | 0) + 24 | 0 | 0, HEAP32[($12 + 92 | 0) >> 2] | 0 | 0) | 0) + 20 | 0) + 4 | 0 | 0, ((btAlignedObjectArray_btFace___operator_5b_5d_28int_29_20const((HEAP32[($12 + 148 | 0) >> 2] | 0) + 24 | 0 | 0, HEAP32[($12 + 92 | 0) >> 2] | 0 | 0) | 0) + 20 | 0) + 8 | 0 | 0) | 0;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($12 + 60 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($12 + 140 | 0) >> 2] | 0 | 0) | 0 | 0, $12 + 76 | 0 | 0);
|
|
(wasm2js_i32$0 = $12, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($12 + 60 | 0 | 0, $12 + 104 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 56 | 0) >> 2] = wasm2js_f32$0;
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($12 + 56 | 0) >> 2]) > Math_fround(HEAPF32[($12 + 96 | 0) >> 2]) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAPF32[($12 + 96 | 0) >> 2] = Math_fround(HEAPF32[($12 + 56 | 0) >> 2]);
|
|
HEAP32[($12 + 100 | 0) >> 2] = HEAP32[($12 + 92 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($12 + 92 | 0) >> 2] = (HEAP32[($12 + 92 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
$83 = HEAP32[($12 + 128 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($12 + 40 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btVector3___resize_28int_2c_20btVector3_20const__29($83 | 0, 0 | 0, $12 + 40 | 0 | 0);
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = btAlignedObjectArray_btFace___operator_5b_5d_28int_29_20const((HEAP32[($12 + 148 | 0) >> 2] | 0) + 24 | 0 | 0, HEAP32[($12 + 100 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = btAlignedObjectArray_int___size_28_29_20const(HEAP32[($12 + 36 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($12 + 28 | 0) >> 2] = 0;
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((HEAP32[($12 + 28 | 0) >> 2] | 0 | 0) < (HEAP32[($12 + 32 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = btAlignedObjectArray_btVector3___operator_5b_5d_28int_29_20const((HEAP32[($12 + 148 | 0) >> 2] | 0) + 4 | 0 | 0, HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29_20const(HEAP32[($12 + 36 | 0) >> 2] | 0 | 0, HEAP32[($12 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_i32$1;
|
|
$114 = HEAP32[($12 + 128 | 0) >> 2] | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($12 + 8 | 0 | 0, HEAP32[($12 + 140 | 0) >> 2] | 0 | 0, HEAP32[($12 + 24 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btVector3___push_back_28btVector3_20const__29($114 | 0, $12 + 8 | 0 | 0);
|
|
HEAP32[($12 + 28 | 0) >> 2] = (HEAP32[($12 + 28 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
label$6 : {
|
|
if (!((HEAP32[($12 + 100 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
btPolyhedralContactClipping__clipFaceAgainstHull_28btVector3_20const__2c_20btConvexPolyhedron_20const__2c_20btTransform_20const__2c_20btAlignedObjectArray_btVector3___2c_20btAlignedObjectArray_btVector3___2c_20float_2c_20float_2c_20btDiscreteCollisionDetectorInterface__Result__29($12 + 104 | 0 | 0, HEAP32[($12 + 152 | 0) >> 2] | 0 | 0, HEAP32[($12 + 144 | 0) >> 2] | 0 | 0, HEAP32[($12 + 128 | 0) >> 2] | 0 | 0, HEAP32[($12 + 124 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($12 + 136 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($12 + 132 | 0) >> 2])), HEAP32[($12 + 120 | 0) >> 2] | 0 | 0);
|
|
}
|
|
__stack_pointer = $12 + 160 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btPolyhedralContactClipping_cpp() {
|
|
__cxx_global_var_init_67();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_68() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(115396 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btFixedConstraint__btFixedConstraint_28btRigidBody__2c_20btRigidBody__2c_20btTransform_20const__2c_20btTransform_20const__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0;
|
|
$7 = __stack_pointer - 144 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 140 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 136 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 132 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 128 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 124 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 140 | 0) >> 2] | 0;
|
|
btGeneric6DofSpring2Constraint__btGeneric6DofSpring2Constraint_28btRigidBody__2c_20btRigidBody__2c_20btTransform_20const__2c_20btTransform_20const__2c_20RotateOrder_29($8 | 0, HEAP32[($7 + 136 | 0) >> 2] | 0 | 0, HEAP32[($7 + 132 | 0) >> 2] | 0 | 0, HEAP32[($7 + 128 | 0) >> 2] | 0 | 0, HEAP32[($7 + 124 | 0) >> 2] | 0 | 0, 0 | 0) | 0;
|
|
HEAP32[$8 >> 2] = 101992 + 8 | 0;
|
|
HEAPF32[($7 + 104 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($7 + 100 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($7 + 96 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 108 | 0 | 0, $7 + 104 | 0 | 0, $7 + 100 | 0 | 0, $7 + 96 | 0 | 0) | 0;
|
|
btGeneric6DofSpring2Constraint__setAngularLowerLimit_28btVector3_20const__29($8 | 0, $7 + 108 | 0 | 0);
|
|
HEAPF32[($7 + 76 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($7 + 72 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($7 + 68 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 80 | 0 | 0, $7 + 76 | 0 | 0, $7 + 72 | 0 | 0, $7 + 68 | 0 | 0) | 0;
|
|
btGeneric6DofSpring2Constraint__setAngularUpperLimit_28btVector3_20const__29($8 | 0, $7 + 80 | 0 | 0);
|
|
HEAPF32[($7 + 48 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($7 + 44 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($7 + 40 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 52 | 0 | 0, $7 + 48 | 0 | 0, $7 + 44 | 0 | 0, $7 + 40 | 0 | 0) | 0;
|
|
btGeneric6DofSpring2Constraint__setLinearLowerLimit_28btVector3_20const__29($8 | 0, $7 + 52 | 0 | 0);
|
|
HEAPF32[($7 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($7 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($7 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($7 + 24 | 0 | 0, $7 + 20 | 0 | 0, $7 + 16 | 0 | 0, $7 + 12 | 0 | 0) | 0;
|
|
btGeneric6DofSpring2Constraint__setLinearUpperLimit_28btVector3_20const__29($8 | 0, $7 + 24 | 0 | 0);
|
|
__stack_pointer = $7 + 144 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__setAngularLowerLimit_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $21 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$21 = Math_fround(btNormalizeAngle_28float_29(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[($4 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]))));
|
|
HEAPF32[(($5 + 968 | 0) + Math_imul(HEAP32[($4 + 4 | 0) >> 2] | 0, 88) | 0) >> 2] = $21;
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__setAngularUpperLimit_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $21 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$21 = Math_fround(btNormalizeAngle_28float_29(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) + ((HEAP32[($4 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]))));
|
|
HEAPF32[((($5 + 968 | 0) + Math_imul(HEAP32[($4 + 4 | 0) >> 2] | 0, 88) | 0) + 4 | 0) >> 2] = $21;
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__setLinearLowerLimit_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, $8 = 0, $10 = 0, $32 = 0, $42 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$8 = (HEAP32[($4 + 12 | 0) >> 2] | 0) + 680 | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$32 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $8;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $32;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$10 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $10 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$42 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8 + $10 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $42;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__setLinearUpperLimit_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, $10 = 0, $12 = 0, $37 = 0, $47 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$10 = ((HEAP32[($4 + 12 | 0) >> 2] | 0) + 680 | 0) + 16 | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$37 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $10;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $37;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$12 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $12 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$47 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $10 + $12 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $47;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function btFixedConstraint___btFixedConstraint_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btGeneric6DofSpring2Constraint___btGeneric6DofSpring2Constraint_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint___btGeneric6DofSpring2Constraint_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btTypedConstraint___btTypedConstraint_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btTypedConstraint___btTypedConstraint_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 102548 + 8 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btFixedConstraint___btFixedConstraint_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[1048 | 0]($4) | 0;
|
|
btGeneric6DofSpring2Constraint__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__buildJacobian_28_29($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return;
|
|
}
|
|
|
|
function btTypedConstraint__setupSolverConstraint_28btAlignedObjectArray_btSolverConstraint___2c_20int_2c_20int_2c_20float_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = Math_fround($4);
|
|
var $7 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAPF32[($7 + 12 | 0) >> 2] = $4;
|
|
return;
|
|
}
|
|
|
|
function btTypedConstraint__solveConstraintObsolete_28btSolverBody__2c_20btSolverBody__2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
var $6 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAPF32[$6 >> 2] = $3;
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__calculateSerializeBufferSize_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 644 | 0;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__serialize_28void__2c_20btSerializer__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $279 = 0, $306 = 0, $333 = 0, $360 = 0, $387 = 0, $514 = 0, $541 = 0, $568 = 0, $595 = 0, $622 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 16 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
btTypedConstraint__serialize_28void__2c_20btSerializer__29_20const($6 | 0, HEAP32[($5 + 16 | 0) >> 2] | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0;
|
|
btTransform__serialize_28btTransformFloatData__29_20const($6 + 48 | 0 | 0, (HEAP32[($5 + 16 | 0) >> 2] | 0) + 52 | 0 | 0);
|
|
btTransform__serialize_28btTransformFloatData__29_20const($6 + 112 | 0 | 0, (HEAP32[($5 + 16 | 0) >> 2] | 0) + 116 | 0 | 0);
|
|
HEAP32[($5 + 12 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[(((HEAP32[($5 + 16 | 0) >> 2] | 0) + 428 | 0) + ((HEAP32[($5 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[(($6 + 968 | 0) + Math_imul(HEAP32[($5 + 12 | 0) >> 2] | 0, 88) | 0) >> 2]);
|
|
HEAPF32[(((HEAP32[($5 + 16 | 0) >> 2] | 0) + 412 | 0) + ((HEAP32[($5 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[((($6 + 968 | 0) + Math_imul(HEAP32[($5 + 12 | 0) >> 2] | 0, 88) | 0) + 4 | 0) >> 2]);
|
|
HEAPF32[(((HEAP32[($5 + 16 | 0) >> 2] | 0) + 444 | 0) + ((HEAP32[($5 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[((($6 + 968 | 0) + Math_imul(HEAP32[($5 + 12 | 0) >> 2] | 0, 88) | 0) + 8 | 0) >> 2]);
|
|
HEAPF32[(((HEAP32[($5 + 16 | 0) >> 2] | 0) + 460 | 0) + ((HEAP32[($5 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[((($6 + 968 | 0) + Math_imul(HEAP32[($5 + 12 | 0) >> 2] | 0, 88) | 0) + 12 | 0) >> 2]);
|
|
HEAPF32[(((HEAP32[($5 + 16 | 0) >> 2] | 0) + 476 | 0) + ((HEAP32[($5 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[((($6 + 968 | 0) + Math_imul(HEAP32[($5 + 12 | 0) >> 2] | 0, 88) | 0) + 16 | 0) >> 2]);
|
|
HEAPF32[(((HEAP32[($5 + 16 | 0) >> 2] | 0) + 492 | 0) + ((HEAP32[($5 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[((($6 + 968 | 0) + Math_imul(HEAP32[($5 + 12 | 0) >> 2] | 0, 88) | 0) + 20 | 0) >> 2]);
|
|
HEAPF32[(((HEAP32[($5 + 16 | 0) >> 2] | 0) + 508 | 0) + ((HEAP32[($5 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[((($6 + 968 | 0) + Math_imul(HEAP32[($5 + 12 | 0) >> 2] | 0, 88) | 0) + 24 | 0) >> 2]);
|
|
HEAPF32[(((HEAP32[($5 + 16 | 0) >> 2] | 0) + 524 | 0) + ((HEAP32[($5 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[((($6 + 968 | 0) + Math_imul(HEAP32[($5 + 12 | 0) >> 2] | 0, 88) | 0) + 32 | 0) >> 2]);
|
|
HEAPF32[(((HEAP32[($5 + 16 | 0) >> 2] | 0) + 540 | 0) + ((HEAP32[($5 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[((($6 + 968 | 0) + Math_imul(HEAP32[($5 + 12 | 0) >> 2] | 0, 88) | 0) + 36 | 0) >> 2]);
|
|
HEAPF32[(((HEAP32[($5 + 16 | 0) >> 2] | 0) + 556 | 0) + ((HEAP32[($5 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[((($6 + 968 | 0) + Math_imul(HEAP32[($5 + 12 | 0) >> 2] | 0, 88) | 0) + 44 | 0) >> 2]);
|
|
HEAPF32[(((HEAP32[($5 + 16 | 0) >> 2] | 0) + 572 | 0) + ((HEAP32[($5 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[((($6 + 968 | 0) + Math_imul(HEAP32[($5 + 12 | 0) >> 2] | 0, 88) | 0) + 52 | 0) >> 2]);
|
|
HEAPF32[(((HEAP32[($5 + 16 | 0) >> 2] | 0) + 588 | 0) + ((HEAP32[($5 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[((($6 + 968 | 0) + Math_imul(HEAP32[($5 + 12 | 0) >> 2] | 0, 88) | 0) + 60 | 0) >> 2]);
|
|
HEAPF32[(((HEAP32[($5 + 16 | 0) >> 2] | 0) + 604 | 0) + ((HEAP32[($5 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[((($6 + 968 | 0) + Math_imul(HEAP32[($5 + 12 | 0) >> 2] | 0, 88) | 0) + 68 | 0) >> 2]);
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
HEAPF32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 440 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 424 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 456 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 472 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 488 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 504 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 520 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 536 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 552 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 568 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 584 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 600 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 616 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP32[($5 + 12 | 0) >> 2] = 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (4 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$279 = (HEAPU8[((($6 + 968 | 0) + Math_imul(HEAP32[($5 + 12 | 0) >> 2] | 0, 88) | 0) + 28 | 0) >> 0] | 0) & 1 | 0 ? 1 : 0;
|
|
break label$5;
|
|
}
|
|
$279 = 0;
|
|
}
|
|
HEAP8[(((HEAP32[($5 + 16 | 0) >> 2] | 0) + 620 | 0) + (HEAP32[($5 + 12 | 0) >> 2] | 0) | 0) >> 0] = $279;
|
|
label$7 : {
|
|
label$8 : {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
$306 = (HEAPU8[((($6 + 968 | 0) + Math_imul(HEAP32[($5 + 12 | 0) >> 2] | 0, 88) | 0) + 40 | 0) >> 0] | 0) & 1 | 0 ? 1 : 0;
|
|
break label$7;
|
|
}
|
|
$306 = 0;
|
|
}
|
|
HEAP8[(((HEAP32[($5 + 16 | 0) >> 2] | 0) + 624 | 0) + (HEAP32[($5 + 12 | 0) >> 2] | 0) | 0) >> 0] = $306;
|
|
label$9 : {
|
|
label$10 : {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
$333 = (HEAPU8[((($6 + 968 | 0) + Math_imul(HEAP32[($5 + 12 | 0) >> 2] | 0, 88) | 0) + 48 | 0) >> 0] | 0) & 1 | 0 ? 1 : 0;
|
|
break label$9;
|
|
}
|
|
$333 = 0;
|
|
}
|
|
HEAP8[(((HEAP32[($5 + 16 | 0) >> 2] | 0) + 628 | 0) + (HEAP32[($5 + 12 | 0) >> 2] | 0) | 0) >> 0] = $333;
|
|
label$11 : {
|
|
label$12 : {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
$360 = (HEAPU8[((($6 + 968 | 0) + Math_imul(HEAP32[($5 + 12 | 0) >> 2] | 0, 88) | 0) + 56 | 0) >> 0] | 0) & 1 | 0 ? 1 : 0;
|
|
break label$11;
|
|
}
|
|
$360 = 0;
|
|
}
|
|
HEAP8[(((HEAP32[($5 + 16 | 0) >> 2] | 0) + 632 | 0) + (HEAP32[($5 + 12 | 0) >> 2] | 0) | 0) >> 0] = $360;
|
|
label$13 : {
|
|
label$14 : {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
$387 = (HEAPU8[((($6 + 968 | 0) + Math_imul(HEAP32[($5 + 12 | 0) >> 2] | 0, 88) | 0) + 64 | 0) >> 0] | 0) & 1 | 0 ? 1 : 0;
|
|
break label$13;
|
|
}
|
|
$387 = 0;
|
|
}
|
|
HEAP8[(((HEAP32[($5 + 16 | 0) >> 2] | 0) + 636 | 0) + (HEAP32[($5 + 12 | 0) >> 2] | 0) | 0) >> 0] = $387;
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
btVector3__serialize_28btVector3FloatData__29_20const($6 + 680 | 0 | 0, (HEAP32[($5 + 16 | 0) >> 2] | 0) + 196 | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const(($6 + 680 | 0) + 16 | 0 | 0, (HEAP32[($5 + 16 | 0) >> 2] | 0) + 180 | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const(($6 + 680 | 0) + 32 | 0 | 0, (HEAP32[($5 + 16 | 0) >> 2] | 0) + 212 | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const(($6 + 680 | 0) + 48 | 0 | 0, (HEAP32[($5 + 16 | 0) >> 2] | 0) + 228 | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const(($6 + 680 | 0) + 64 | 0 | 0, (HEAP32[($5 + 16 | 0) >> 2] | 0) + 244 | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const(($6 + 680 | 0) + 80 | 0 | 0, (HEAP32[($5 + 16 | 0) >> 2] | 0) + 260 | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const(($6 + 680 | 0) + 96 | 0 | 0, (HEAP32[($5 + 16 | 0) >> 2] | 0) + 276 | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const(($6 + 680 | 0) + 196 | 0 | 0, (HEAP32[($5 + 16 | 0) >> 2] | 0) + 292 | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const(($6 + 680 | 0) + 212 | 0 | 0, (HEAP32[($5 + 16 | 0) >> 2] | 0) + 308 | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const(($6 + 680 | 0) + 124 | 0 | 0, (HEAP32[($5 + 16 | 0) >> 2] | 0) + 324 | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const(($6 + 680 | 0) + 140 | 0 | 0, (HEAP32[($5 + 16 | 0) >> 2] | 0) + 340 | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const(($6 + 680 | 0) + 160 | 0 | 0, (HEAP32[($5 + 16 | 0) >> 2] | 0) + 356 | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const(($6 + 680 | 0) + 180 | 0 | 0, (HEAP32[($5 + 16 | 0) >> 2] | 0) + 372 | 0 | 0);
|
|
HEAP32[($5 + 12 | 0) >> 2] = 0;
|
|
label$15 : {
|
|
label$16 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (4 | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
label$17 : {
|
|
label$18 : {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$18
|
|
}
|
|
$514 = (HEAPU8[((($6 + 680 | 0) + 112 | 0) + (HEAP32[($5 + 12 | 0) >> 2] | 0) | 0) >> 0] | 0) & 1 | 0 ? 1 : 0;
|
|
break label$17;
|
|
}
|
|
$514 = 0;
|
|
}
|
|
HEAP8[(((HEAP32[($5 + 16 | 0) >> 2] | 0) + 388 | 0) + (HEAP32[($5 + 12 | 0) >> 2] | 0) | 0) >> 0] = $514;
|
|
label$19 : {
|
|
label$20 : {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$20
|
|
}
|
|
$541 = (HEAPU8[((($6 + 680 | 0) + 115 | 0) + (HEAP32[($5 + 12 | 0) >> 2] | 0) | 0) >> 0] | 0) & 1 | 0 ? 1 : 0;
|
|
break label$19;
|
|
}
|
|
$541 = 0;
|
|
}
|
|
HEAP8[(((HEAP32[($5 + 16 | 0) >> 2] | 0) + 392 | 0) + (HEAP32[($5 + 12 | 0) >> 2] | 0) | 0) >> 0] = $541;
|
|
label$21 : {
|
|
label$22 : {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$22
|
|
}
|
|
$568 = (HEAPU8[((($6 + 680 | 0) + 118 | 0) + (HEAP32[($5 + 12 | 0) >> 2] | 0) | 0) >> 0] | 0) & 1 | 0 ? 1 : 0;
|
|
break label$21;
|
|
}
|
|
$568 = 0;
|
|
}
|
|
HEAP8[(((HEAP32[($5 + 16 | 0) >> 2] | 0) + 396 | 0) + (HEAP32[($5 + 12 | 0) >> 2] | 0) | 0) >> 0] = $568;
|
|
label$23 : {
|
|
label$24 : {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$24
|
|
}
|
|
$595 = (HEAPU8[((($6 + 680 | 0) + 156 | 0) + (HEAP32[($5 + 12 | 0) >> 2] | 0) | 0) >> 0] | 0) & 1 | 0 ? 1 : 0;
|
|
break label$23;
|
|
}
|
|
$595 = 0;
|
|
}
|
|
HEAP8[(((HEAP32[($5 + 16 | 0) >> 2] | 0) + 400 | 0) + (HEAP32[($5 + 12 | 0) >> 2] | 0) | 0) >> 0] = $595;
|
|
label$25 : {
|
|
label$26 : {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$26
|
|
}
|
|
$622 = (HEAPU8[((($6 + 680 | 0) + 176 | 0) + (HEAP32[($5 + 12 | 0) >> 2] | 0) | 0) >> 0] | 0) & 1 | 0 ? 1 : 0;
|
|
break label$25;
|
|
}
|
|
$622 = 0;
|
|
}
|
|
HEAP8[(((HEAP32[($5 + 16 | 0) >> 2] | 0) + 404 | 0) + (HEAP32[($5 + 12 | 0) >> 2] | 0) | 0) >> 0] = $622;
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$16;
|
|
};
|
|
}
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 640 | 0) >> 2] = HEAP32[($6 + 1232 | 0) >> 2] | 0;
|
|
HEAP8[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 408 | 0) >> 0] = 0;
|
|
HEAP8[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 409 | 0) >> 0] = 0;
|
|
HEAP8[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 410 | 0) >> 0] = 0;
|
|
HEAP8[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 411 | 0) >> 0] = 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return 83125 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btFixedConstraint_cpp() {
|
|
__cxx_global_var_init_68();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_69() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(115400 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__btGeneric6DofSpring2Constraint_28btRigidBody__2c_20btRigidBody__2c_20btTransform_20const__2c_20btTransform_20const__2c_20RotateOrder_29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $9 = 0, $8 = 0, $23 = 0, $26 = 0, $27 = 0, $29 = 0, $36 = 0, $39 = 0, $40 = 0, $42 = 0, $51 = 0, $54 = 0, $55 = 0, $57 = 0, $71 = 0, $74 = 0, $75 = 0, $77 = 0, $25 = 0, $38 = 0, $53 = 0, $73 = 0, $86 = 0;
|
|
$8 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 16 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 12 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 8 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 4 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $9;
|
|
btTypedConstraint__btTypedConstraint_28btTypedConstraintType_2c_20btRigidBody__2c_20btRigidBody__29($9 | 0, 12 | 0, HEAP32[($8 + 20 | 0) >> 2] | 0 | 0, HEAP32[($8 + 16 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$9 >> 2] = 102076 + 8 | 0;
|
|
btTransform__btTransform_28btTransform_20const__29($9 + 48 | 0 | 0, HEAP32[($8 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
btTransform__btTransform_28btTransform_20const__29($9 + 112 | 0 | 0, HEAP32[($8 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
$23 = $9 + 176 | 0;
|
|
$25 = $23 + 252 | 0;
|
|
$26 = $23;
|
|
label$1 : while (1) {
|
|
$27 = $26;
|
|
btJacobianEntry__btJacobianEntry_28_29($27 | 0) | 0;
|
|
$29 = $27 + 84 | 0;
|
|
$26 = $29;
|
|
if (!(($29 | 0) == ($25 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
$36 = $9 + 428 | 0;
|
|
$38 = $36 + 252 | 0;
|
|
$39 = $36;
|
|
label$2 : while (1) {
|
|
$40 = $39;
|
|
btJacobianEntry__btJacobianEntry_28_29($40 | 0) | 0;
|
|
$42 = $40 + 84 | 0;
|
|
$39 = $42;
|
|
if (!(($42 | 0) == ($38 | 0) & 1 | 0)) {
|
|
continue label$2
|
|
}
|
|
break label$2;
|
|
};
|
|
btTranslationalLimitMotor2__btTranslationalLimitMotor2_28_29($9 + 680 | 0 | 0) | 0;
|
|
$51 = $9 + 968 | 0;
|
|
$53 = $51 + 264 | 0;
|
|
$54 = $51;
|
|
label$3 : while (1) {
|
|
$55 = $54;
|
|
btRotationalLimitMotor2__btRotationalLimitMotor2_28_29($55 | 0) | 0;
|
|
$57 = $55 + 88 | 0;
|
|
$54 = $57;
|
|
if (!(($57 | 0) == ($53 | 0) & 1 | 0)) {
|
|
continue label$3
|
|
}
|
|
break label$3;
|
|
};
|
|
HEAP32[($9 + 1232 | 0) >> 2] = HEAP32[($8 + 4 | 0) >> 2] | 0;
|
|
btTransform__btTransform_28_29($9 + 1236 | 0 | 0) | 0;
|
|
btTransform__btTransform_28_29($9 + 1300 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($9 + 1364 | 0 | 0) | 0;
|
|
$71 = $9 + 1380 | 0;
|
|
$73 = $71 + 48 | 0;
|
|
$74 = $71;
|
|
label$4 : while (1) {
|
|
$75 = $74;
|
|
btVector3__btVector3_28_29($75 | 0) | 0;
|
|
$77 = $75 + 16 | 0;
|
|
$74 = $77;
|
|
if (!(($77 | 0) == ($73 | 0) & 1 | 0)) {
|
|
continue label$4
|
|
}
|
|
break label$4;
|
|
};
|
|
btVector3__btVector3_28_29($9 + 1428 | 0 | 0) | 0;
|
|
HEAP32[($9 + 1456 | 0) >> 2] = 0;
|
|
btGeneric6DofSpring2Constraint__calculateTransforms_28_29($9 | 0);
|
|
$86 = HEAP32[($8 + 28 | 0) >> 2] | 0;
|
|
__stack_pointer = $8 + 32 | 0;
|
|
return $86 | 0;
|
|
}
|
|
|
|
function btJacobianEntry__btJacobianEntry_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($4 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 16 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 32 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 48 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 64 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btTranslationalLimitMotor2__btTranslationalLimitMotor2_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $294 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$3 = __stack_pointer - 144 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 136 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 136 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 140 | 0) >> 2] = $4;
|
|
btVector3__btVector3_28_29($4 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 16 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 32 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 48 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 64 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 80 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 96 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 124 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 140 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 160 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 180 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 196 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 212 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 228 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 244 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 260 | 0 | 0) | 0;
|
|
HEAPF32[($3 + 132 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 128 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 124 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($4 | 0, $3 + 132 | 0 | 0, $3 + 128 | 0 | 0, $3 + 124 | 0 | 0);
|
|
HEAPF32[($3 + 120 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 116 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 112 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 16 | 0 | 0, $3 + 120 | 0 | 0, $3 + 116 | 0 | 0, $3 + 112 | 0 | 0);
|
|
HEAPF32[($3 + 108 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 104 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 100 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 32 | 0 | 0, $3 + 108 | 0 | 0, $3 + 104 | 0 | 0, $3 + 100 | 0 | 0);
|
|
HEAPF32[($3 + 96 | 0) >> 2] = Math_fround(.20000000298023224);
|
|
HEAPF32[($3 + 92 | 0) >> 2] = Math_fround(.20000000298023224);
|
|
HEAPF32[($3 + 88 | 0) >> 2] = Math_fround(.20000000298023224);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 48 | 0 | 0, $3 + 96 | 0 | 0, $3 + 92 | 0 | 0, $3 + 88 | 0 | 0);
|
|
HEAPF32[($3 + 84 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 80 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 76 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 64 | 0 | 0, $3 + 84 | 0 | 0, $3 + 80 | 0 | 0, $3 + 76 | 0 | 0);
|
|
HEAPF32[($3 + 72 | 0) >> 2] = Math_fround(.8999999761581421);
|
|
HEAPF32[($3 + 68 | 0) >> 2] = Math_fround(.8999999761581421);
|
|
HEAPF32[($3 + 64 | 0) >> 2] = Math_fround(.8999999761581421);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 80 | 0 | 0, $3 + 72 | 0 | 0, $3 + 68 | 0 | 0, $3 + 64 | 0 | 0);
|
|
HEAPF32[($3 + 60 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 56 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 52 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 96 | 0 | 0, $3 + 60 | 0 | 0, $3 + 56 | 0 | 0, $3 + 52 | 0 | 0);
|
|
HEAPF32[($3 + 48 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 44 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 40 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 228 | 0 | 0, $3 + 48 | 0 | 0, $3 + 44 | 0 | 0, $3 + 40 | 0 | 0);
|
|
HEAPF32[($3 + 36 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 32 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 28 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 244 | 0 | 0, $3 + 36 | 0 | 0, $3 + 32 | 0 | 0, $3 + 28 | 0 | 0);
|
|
HEAPF32[($3 + 24 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 260 | 0 | 0, $3 + 24 | 0 | 0, $3 + 20 | 0 | 0, $3 + 16 | 0 | 0);
|
|
HEAP32[($3 + 12 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP8[(($4 + 112 | 0) + (HEAP32[($3 + 12 | 0) >> 2] | 0) | 0) >> 0] = 0;
|
|
HEAP8[(($4 + 115 | 0) + (HEAP32[($3 + 12 | 0) >> 2] | 0) | 0) >> 0] = 0;
|
|
HEAP8[(($4 + 118 | 0) + (HEAP32[($3 + 12 | 0) >> 2] | 0) | 0) >> 0] = 0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($4 + 124 | 0 | 0) | 0) + ((HEAP32[($3 + 12 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($4 + 140 | 0 | 0) | 0) + ((HEAP32[($3 + 12 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP8[(($4 + 156 | 0) + (HEAP32[($3 + 12 | 0) >> 2] | 0) | 0) >> 0] = 0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($4 + 160 | 0 | 0) | 0) + ((HEAP32[($3 + 12 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP8[(($4 + 176 | 0) + (HEAP32[($3 + 12 | 0) >> 2] | 0) | 0) >> 0] = 0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($4 + 180 | 0 | 0) | 0) + ((HEAP32[($3 + 12 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($4 + 196 | 0 | 0) | 0) + ((HEAP32[($3 + 12 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($4 + 212 | 0 | 0) | 0) + ((HEAP32[($3 + 12 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP32[(($4 + 276 | 0) + ((HEAP32[($3 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = (HEAP32[($3 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
$294 = HEAP32[($3 + 140 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 144 | 0;
|
|
return $294 | 0;
|
|
}
|
|
|
|
function btRotationalLimitMotor2__btRotationalLimitMotor2_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[$4 >> 2] = Math_fround(1.0);
|
|
HEAPF32[($4 + 4 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[($4 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 12 | 0) >> 2] = Math_fround(.20000000298023224);
|
|
HEAPF32[($4 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 20 | 0) >> 2] = Math_fround(.8999999761581421);
|
|
HEAPF32[($4 + 24 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP8[($4 + 28 | 0) >> 0] = 0;
|
|
HEAPF32[($4 + 32 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 36 | 0) >> 2] = Math_fround(.10000000149011612);
|
|
HEAP8[($4 + 40 | 0) >> 0] = 0;
|
|
HEAPF32[($4 + 44 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP8[($4 + 48 | 0) >> 0] = 0;
|
|
HEAPF32[($4 + 52 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP8[($4 + 56 | 0) >> 0] = 0;
|
|
HEAPF32[($4 + 60 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP8[($4 + 64 | 0) >> 0] = 0;
|
|
HEAPF32[($4 + 68 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 72 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 76 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 80 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP32[($4 + 84 | 0) >> 2] = 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__calculateTransforms_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btGeneric6DofSpring2Constraint__calculateTransforms_28btTransform_20const__2c_20btTransform_20const__29($4 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($4 + 28 | 0) >> 2] | 0 | 0) | 0 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($4 + 32 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__getCenterOfMassTransform_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0 | 0;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__calculateTransforms_28btTransform_20const__2c_20btTransform_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $39 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 160 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 156 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 152 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 148 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 156 | 0) >> 2] | 0;
|
|
btTransform__operator__28btTransform_20const__29_20const($5 + 84 | 0 | 0, HEAP32[($5 + 152 | 0) >> 2] | 0 | 0, $6 + 48 | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29($6 + 1236 | 0 | 0, $5 + 84 | 0 | 0) | 0;
|
|
btTransform__operator__28btTransform_20const__29_20const($5 + 20 | 0 | 0, HEAP32[($5 + 148 | 0) >> 2] | 0 | 0, $6 + 112 | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29($6 + 1300 | 0 | 0, $5 + 20 | 0 | 0) | 0;
|
|
btGeneric6DofSpring2Constraint__calculateLinearInfo_28_29($6 | 0);
|
|
btGeneric6DofSpring2Constraint__calculateAngleInfo_28_29($6 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btRigidBody__getInvMass_28_29_20const(btTypedConstraint__getRigidBodyA_28_29($6 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btRigidBody__getInvMass_28_29_20const(btTypedConstraint__getRigidBodyB_28_29($6 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
$39 = 1;
|
|
label$1 : {
|
|
if (Math_fround(HEAPF32[($5 + 16 | 0) >> 2]) < Math_fround(1.1920928955078125e-07) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
$39 = Math_fround(HEAPF32[($5 + 12 | 0) >> 2]) < Math_fround(1.1920928955078125e-07);
|
|
}
|
|
HEAP8[($6 + 1452 | 0) >> 0] = $39 & 1 | 0;
|
|
HEAPF32[($5 + 8 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 16 | 0) >> 2]) + Math_fround(HEAPF32[($5 + 12 | 0) >> 2]));
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 8 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAPF32[($6 + 1444 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 12 | 0) >> 2]) / Math_fround(HEAPF32[($5 + 8 | 0) >> 2]));
|
|
break label$2;
|
|
}
|
|
HEAPF32[($6 + 1444 | 0) >> 2] = Math_fround(.5);
|
|
}
|
|
HEAPF32[($6 + 1448 | 0) >> 2] = Math_fround(Math_fround(1.0) - Math_fround(HEAPF32[($6 + 1444 | 0) >> 2]));
|
|
__stack_pointer = $5 + 160 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $19 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) % (3 | 0) | 0;
|
|
HEAP32[$4 >> 2] = (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) / (3 | 0) | 0;
|
|
$19 = Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) + ((HEAP32[$4 >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return Math_fround($19);
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__matrixToEulerXYZ_28btMatrix3x3_20const__2c_20btVector3__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $25 = Math_fround(0), $31 = Math_fround(0), $41 = Math_fround(0), $54 = Math_fround(0), $73 = Math_fround(0), $88 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 2 | 0))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[$4 >> 2]) < Math_fround(1.0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[$4 >> 2]) > Math_fround(-1.0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$25 = Math_fround(btAtan2_28float_2c_20float_29(Math_fround(Math_fround(-Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 5 | 0)))), Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 8 | 0)))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $25), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$31 = Math_fround(btAsin_28float_29(Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 2 | 0)))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $31), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$41 = Math_fround(btAtan2_28float_2c_20float_29(Math_fround(Math_fround(-Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 1 | 0)))), Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 0 | 0)))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $41), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($4 + 15 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
$54 = Math_fround(-Math_fround(btAtan2_28float_2c_20float_29(Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 3 | 0))), Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 4 | 0))))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $54), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(-1.5707963705062866)), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($4 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
$73 = Math_fround(btAtan2_28float_2c_20float_29(Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 3 | 0))), Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 4 | 0)))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $73), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(1.5707963705062866)), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($4 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
}
|
|
$88 = (HEAPU8[($4 + 15 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $88 | 0;
|
|
}
|
|
|
|
function btAsin_28float_29($0) {
|
|
$0 = Math_fround($0);
|
|
var $3 = 0, $17 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAPF32[($3 + 12 | 0) >> 2] = $0;
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[($3 + 12 | 0) >> 2]) < Math_fround(-1.0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[($3 + 12 | 0) >> 2] = Math_fround(-1.0);
|
|
}
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($3 + 12 | 0) >> 2]) > Math_fround(1.0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($3 + 12 | 0) >> 2] = Math_fround(1.0);
|
|
}
|
|
$17 = Math_fround(asinf(Math_fround(Math_fround(HEAPF32[($3 + 12 | 0) >> 2]))));
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($17);
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__matrixToEulerXZY_28btMatrix3x3_20const__2c_20btVector3__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $24 = Math_fround(0), $33 = Math_fround(0), $40 = Math_fround(0), $54 = Math_fround(0), $74 = Math_fround(0), $89 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 1 | 0))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[$4 >> 2]) < Math_fround(1.0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[$4 >> 2]) > Math_fround(-1.0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$24 = Math_fround(btAtan2_28float_2c_20float_29(Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 7 | 0))), Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 4 | 0)))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $24), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$33 = Math_fround(btAtan2_28float_2c_20float_29(Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 2 | 0))), Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 0 | 0)))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $33), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$40 = Math_fround(btAsin_28float_29(Math_fround(Math_fround(-Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 1 | 0))))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $40), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($4 + 15 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
$54 = Math_fround(-Math_fround(btAtan2_28float_2c_20float_29(Math_fround(Math_fround(-Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 6 | 0)))), Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 8 | 0))))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $54), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(1.5707963705062866)), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($4 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
$74 = Math_fround(btAtan2_28float_2c_20float_29(Math_fround(Math_fround(-Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 6 | 0)))), Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 8 | 0)))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $74), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(-1.5707963705062866)), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($4 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
}
|
|
$89 = (HEAPU8[($4 + 15 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $89 | 0;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__matrixToEulerYXZ_28btMatrix3x3_20const__2c_20btVector3__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $22 = Math_fround(0), $31 = Math_fround(0), $40 = Math_fround(0), $57 = Math_fround(0), $77 = Math_fround(0), $89 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 5 | 0))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[$4 >> 2]) < Math_fround(1.0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[$4 >> 2]) > Math_fround(-1.0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$22 = Math_fround(btAsin_28float_29(Math_fround(Math_fround(-Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 5 | 0))))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $22), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$31 = Math_fround(btAtan2_28float_2c_20float_29(Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 2 | 0))), Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 8 | 0)))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $31), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$40 = Math_fround(btAtan2_28float_2c_20float_29(Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 3 | 0))), Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 4 | 0)))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $40), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($4 + 15 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(1.5707963705062866)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$57 = Math_fround(-Math_fround(btAtan2_28float_2c_20float_29(Math_fround(Math_fround(-Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 1 | 0)))), Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 0 | 0))))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $57), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($4 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(-1.5707963705062866)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$77 = Math_fround(btAtan2_28float_2c_20float_29(Math_fround(Math_fround(-Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 1 | 0)))), Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 0 | 0)))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $77), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($4 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
}
|
|
$89 = (HEAPU8[($4 + 15 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $89 | 0;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__matrixToEulerYZX_28btMatrix3x3_20const__2c_20btVector3__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $25 = Math_fround(0), $35 = Math_fround(0), $41 = Math_fround(0), $58 = Math_fround(0), $77 = Math_fround(0), $88 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 3 | 0))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[$4 >> 2]) < Math_fround(1.0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[$4 >> 2]) > Math_fround(-1.0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$25 = Math_fround(btAtan2_28float_2c_20float_29(Math_fround(Math_fround(-Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 5 | 0)))), Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 4 | 0)))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $25), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$35 = Math_fround(btAtan2_28float_2c_20float_29(Math_fround(Math_fround(-Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 6 | 0)))), Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 0 | 0)))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $35), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$41 = Math_fround(btAsin_28float_29(Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 3 | 0)))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $41), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($4 + 15 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$58 = Math_fround(-Math_fround(btAtan2_28float_2c_20float_29(Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 7 | 0))), Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 8 | 0))))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $58), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(-1.5707963705062866)), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($4 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$77 = Math_fround(btAtan2_28float_2c_20float_29(Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 7 | 0))), Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 8 | 0)))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $77), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(1.5707963705062866)), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($4 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
}
|
|
$88 = (HEAPU8[($4 + 15 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $88 | 0;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__matrixToEulerZXY_28btMatrix3x3_20const__2c_20btVector3__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $21 = Math_fround(0), $31 = Math_fround(0), $41 = Math_fround(0), $61 = Math_fround(0), $80 = Math_fround(0), $88 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 7 | 0))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[$4 >> 2]) < Math_fround(1.0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[$4 >> 2]) > Math_fround(-1.0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$21 = Math_fround(btAsin_28float_29(Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 7 | 0)))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $21), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$31 = Math_fround(btAtan2_28float_2c_20float_29(Math_fround(Math_fround(-Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 6 | 0)))), Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 8 | 0)))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $31), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$41 = Math_fround(btAtan2_28float_2c_20float_29(Math_fround(Math_fround(-Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 1 | 0)))), Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 4 | 0)))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $41), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($4 + 15 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(-1.5707963705062866)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$61 = Math_fround(-Math_fround(btAtan2_28float_2c_20float_29(Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 2 | 0))), Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 0 | 0))))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $61), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($4 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(1.5707963705062866)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$80 = Math_fround(btAtan2_28float_2c_20float_29(Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 2 | 0))), Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 0 | 0)))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $80), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($4 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
}
|
|
$88 = (HEAPU8[($4 + 15 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $88 | 0;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__matrixToEulerZYX_28btMatrix3x3_20const__2c_20btVector3__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $24 = Math_fround(0), $31 = Math_fround(0), $40 = Math_fround(0), $60 = Math_fround(0), $81 = Math_fround(0), $89 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 6 | 0))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[$4 >> 2]) < Math_fround(1.0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[$4 >> 2]) > Math_fround(-1.0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$24 = Math_fround(btAtan2_28float_2c_20float_29(Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 7 | 0))), Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 8 | 0)))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $24), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$31 = Math_fround(btAsin_28float_29(Math_fround(Math_fround(-Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 6 | 0))))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $31), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$40 = Math_fround(btAtan2_28float_2c_20float_29(Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 3 | 0))), Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 0 | 0)))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $40), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($4 + 15 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(1.5707963705062866)), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$60 = Math_fround(-Math_fround(btAtan2_28float_2c_20float_29(Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 1 | 0))), Math_fround(Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 2 | 0))))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $60), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($4 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = Math_fround(-1.5707963705062866)), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$81 = Math_fround(btAtan2_28float_2c_20float_29(Math_fround(Math_fround(-Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 1 | 0)))), Math_fround(Math_fround(-Math_fround(btGeneric6DofSpring2Constraint__btGetMatrixElem_28btMatrix3x3_20const__2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 2 | 0))))));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_f32$0 = $81), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($4 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
}
|
|
$89 = (HEAPU8[($4 + 15 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $89 | 0;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__calculateAngleInfo_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $4 = 0, $17 = 0, $53 = 0, $81 = 0, $83 = 0, $100 = 0, $102 = 0, $121 = 0, $123 = 0, $155 = 0, $157 = 0, $174 = 0, $176 = 0, $195 = 0, $197 = 0, $227 = 0, $229 = 0, $246 = 0, $248 = 0, $265 = 0, $267 = 0, $299 = 0, $301 = 0, $318 = 0, $320 = 0, $339 = 0, $341 = 0, $371 = 0, $373 = 0, $390 = 0, $392 = 0, $409 = 0, $411 = 0, $443 = 0, $445 = 0, $462 = 0, $464 = 0, $483 = 0, $485 = 0, $664 = 0, $677 = 0, $701 = 0, $714 = 0, $741 = 0, $754 = 0, $803 = 0, $816 = 0, $840 = 0, $853 = 0, $880 = 0, $893 = 0, $939 = 0, $952 = 0, $976 = 0, $989 = 0, $1013 = 0, $1026 = 0, $1075 = 0, $1088 = 0, $1112 = 0, $1125 = 0, $1152 = 0, $1165 = 0, $1211 = 0, $1224 = 0, $1248 = 0, $1261 = 0, $1285 = 0, $1298 = 0, $1347 = 0, $1360 = 0, $1384 = 0, $1397 = 0, $1424 = 0, $1437 = 0;
|
|
$3 = __stack_pointer - 592 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 588 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 588 | 0) >> 2] | 0;
|
|
btMatrix3x3__inverse_28_29_20const($3 + 492 | 0 | 0, btTransform__getBasis_28_29($4 + 1236 | 0 | 0) | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btMatrix3x3_20const__29($3 + 540 | 0 | 0, $3 + 492 | 0 | 0, btTransform__getBasis_28_29($4 + 1300 | 0 | 0) | 0 | 0);
|
|
$17 = HEAP32[($4 + 1232 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
switch ($17 | 0) {
|
|
case 0:
|
|
btGeneric6DofSpring2Constraint__matrixToEulerXYZ_28btMatrix3x3_20const__2c_20btVector3__29($3 + 540 | 0 | 0, $4 + 1364 | 0 | 0) | 0;
|
|
break label$1;
|
|
case 1:
|
|
btGeneric6DofSpring2Constraint__matrixToEulerXZY_28btMatrix3x3_20const__2c_20btVector3__29($3 + 540 | 0 | 0, $4 + 1364 | 0 | 0) | 0;
|
|
break label$1;
|
|
case 2:
|
|
btGeneric6DofSpring2Constraint__matrixToEulerYXZ_28btMatrix3x3_20const__2c_20btVector3__29($3 + 540 | 0 | 0, $4 + 1364 | 0 | 0) | 0;
|
|
break label$1;
|
|
case 3:
|
|
btGeneric6DofSpring2Constraint__matrixToEulerYZX_28btMatrix3x3_20const__2c_20btVector3__29($3 + 540 | 0 | 0, $4 + 1364 | 0 | 0) | 0;
|
|
break label$1;
|
|
case 4:
|
|
btGeneric6DofSpring2Constraint__matrixToEulerZXY_28btMatrix3x3_20const__2c_20btVector3__29($3 + 540 | 0 | 0, $4 + 1364 | 0 | 0) | 0;
|
|
break label$1;
|
|
case 5:
|
|
btGeneric6DofSpring2Constraint__matrixToEulerZYX_28btMatrix3x3_20const__2c_20btVector3__29($3 + 540 | 0 | 0, $4 + 1364 | 0 | 0) | 0;
|
|
break label$1;
|
|
default:
|
|
break label$2;
|
|
};
|
|
}
|
|
__assert_fail(81487 | 0, 71825 | 0, 292 | 0, 76219 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$53 = HEAP32[($4 + 1232 | 0) >> 2] | 0;
|
|
label$9 : {
|
|
label$10 : {
|
|
switch ($53 | 0) {
|
|
case 0:
|
|
btMatrix3x3__getColumn_28int_29_20const($3 + 476 | 0 | 0, btTransform__getBasis_28_29($4 + 1300 | 0 | 0) | 0 | 0, 0 | 0);
|
|
btMatrix3x3__getColumn_28int_29_20const($3 + 460 | 0 | 0, btTransform__getBasis_28_29($4 + 1236 | 0 | 0) | 0 | 0, 2 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($3 + 444 | 0 | 0, $3 + 460 | 0 | 0, $3 + 476 | 0 | 0);
|
|
$81 = ($4 + 1380 | 0) + 16 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 444 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 448 | 0) >> 2] | 0;
|
|
$664 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $81;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $664;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$83 = 8;
|
|
i64toi32_i32$2 = ($3 + 444 | 0) + $83 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$677 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $81 + $83 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $677;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__cross_28btVector3_20const__29_20const($3 + 428 | 0 | 0, ($4 + 1380 | 0) + 16 | 0 | 0, $3 + 460 | 0 | 0);
|
|
$100 = $4 + 1380 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 428 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 432 | 0) >> 2] | 0;
|
|
$701 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $100;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $701;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$102 = 8;
|
|
i64toi32_i32$2 = ($3 + 428 | 0) + $102 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$714 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $100 + $102 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $714;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__cross_28btVector3_20const__29_20const($3 + 412 | 0 | 0, $3 + 476 | 0 | 0, ($4 + 1380 | 0) + 16 | 0 | 0);
|
|
$121 = ($4 + 1380 | 0) + 32 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 412 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 416 | 0) >> 2] | 0;
|
|
$741 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $121;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $741;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$123 = 8;
|
|
i64toi32_i32$2 = ($3 + 412 | 0) + $123 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$754 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $121 + $123 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $754;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$9;
|
|
case 1:
|
|
btMatrix3x3__getColumn_28int_29_20const($3 + 396 | 0 | 0, btTransform__getBasis_28_29($4 + 1300 | 0 | 0) | 0 | 0, 0 | 0);
|
|
btMatrix3x3__getColumn_28int_29_20const($3 + 380 | 0 | 0, btTransform__getBasis_28_29($4 + 1236 | 0 | 0) | 0 | 0, 1 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($3 + 364 | 0 | 0, $3 + 396 | 0 | 0, $3 + 380 | 0 | 0);
|
|
$155 = ($4 + 1380 | 0) + 32 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 364 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 368 | 0) >> 2] | 0;
|
|
$803 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $155;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $803;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$157 = 8;
|
|
i64toi32_i32$2 = ($3 + 364 | 0) + $157 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$816 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $155 + $157 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $816;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__cross_28btVector3_20const__29_20const($3 + 348 | 0 | 0, $3 + 380 | 0 | 0, ($4 + 1380 | 0) + 32 | 0 | 0);
|
|
$174 = $4 + 1380 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 348 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 352 | 0) >> 2] | 0;
|
|
$840 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $174;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $840;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$176 = 8;
|
|
i64toi32_i32$2 = ($3 + 348 | 0) + $176 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$853 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $174 + $176 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $853;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__cross_28btVector3_20const__29_20const($3 + 332 | 0 | 0, ($4 + 1380 | 0) + 32 | 0 | 0, $3 + 396 | 0 | 0);
|
|
$195 = ($4 + 1380 | 0) + 16 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 332 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 336 | 0) >> 2] | 0;
|
|
$880 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $195;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $880;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$197 = 8;
|
|
i64toi32_i32$2 = ($3 + 332 | 0) + $197 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$893 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $195 + $197 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $893;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$9;
|
|
case 2:
|
|
btMatrix3x3__getColumn_28int_29_20const($3 + 316 | 0 | 0, btTransform__getBasis_28_29($4 + 1300 | 0 | 0) | 0 | 0, 1 | 0);
|
|
btMatrix3x3__getColumn_28int_29_20const($3 + 300 | 0 | 0, btTransform__getBasis_28_29($4 + 1236 | 0 | 0) | 0 | 0, 2 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($3 + 284 | 0 | 0, $3 + 316 | 0 | 0, $3 + 300 | 0 | 0);
|
|
$227 = $4 + 1380 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 284 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 288 | 0) >> 2] | 0;
|
|
$939 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $227;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $939;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$229 = 8;
|
|
i64toi32_i32$2 = ($3 + 284 | 0) + $229 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$952 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $227 + $229 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $952;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__cross_28btVector3_20const__29_20const($3 + 268 | 0 | 0, $3 + 300 | 0 | 0, $4 + 1380 | 0 | 0);
|
|
$246 = ($4 + 1380 | 0) + 16 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 268 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 272 | 0) >> 2] | 0;
|
|
$976 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $246;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $976;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$248 = 8;
|
|
i64toi32_i32$2 = ($3 + 268 | 0) + $248 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$989 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $246 + $248 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $989;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__cross_28btVector3_20const__29_20const($3 + 252 | 0 | 0, $4 + 1380 | 0 | 0, $3 + 316 | 0 | 0);
|
|
$265 = ($4 + 1380 | 0) + 32 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 252 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 256 | 0) >> 2] | 0;
|
|
$1013 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $265;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1013;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$267 = 8;
|
|
i64toi32_i32$2 = ($3 + 252 | 0) + $267 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1026 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $265 + $267 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1026;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$9;
|
|
case 3:
|
|
btMatrix3x3__getColumn_28int_29_20const($3 + 236 | 0 | 0, btTransform__getBasis_28_29($4 + 1236 | 0 | 0) | 0 | 0, 0 | 0);
|
|
btMatrix3x3__getColumn_28int_29_20const($3 + 220 | 0 | 0, btTransform__getBasis_28_29($4 + 1300 | 0 | 0) | 0 | 0, 1 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($3 + 204 | 0 | 0, $3 + 236 | 0 | 0, $3 + 220 | 0 | 0);
|
|
$299 = ($4 + 1380 | 0) + 32 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 204 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 208 | 0) >> 2] | 0;
|
|
$1075 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $299;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1075;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$301 = 8;
|
|
i64toi32_i32$2 = ($3 + 204 | 0) + $301 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1088 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $299 + $301 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1088;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__cross_28btVector3_20const__29_20const($3 + 188 | 0 | 0, $3 + 220 | 0 | 0, ($4 + 1380 | 0) + 32 | 0 | 0);
|
|
$318 = $4 + 1380 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 188 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 192 | 0) >> 2] | 0;
|
|
$1112 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $318;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1112;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$320 = 8;
|
|
i64toi32_i32$2 = ($3 + 188 | 0) + $320 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1125 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $318 + $320 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1125;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__cross_28btVector3_20const__29_20const($3 + 172 | 0 | 0, ($4 + 1380 | 0) + 32 | 0 | 0, $3 + 236 | 0 | 0);
|
|
$339 = ($4 + 1380 | 0) + 16 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 172 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 176 | 0) >> 2] | 0;
|
|
$1152 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $339;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1152;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$341 = 8;
|
|
i64toi32_i32$2 = ($3 + 172 | 0) + $341 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1165 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $339 + $341 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1165;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$9;
|
|
case 4:
|
|
btMatrix3x3__getColumn_28int_29_20const($3 + 156 | 0 | 0, btTransform__getBasis_28_29($4 + 1236 | 0 | 0) | 0 | 0, 1 | 0);
|
|
btMatrix3x3__getColumn_28int_29_20const($3 + 140 | 0 | 0, btTransform__getBasis_28_29($4 + 1300 | 0 | 0) | 0 | 0, 2 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($3 + 124 | 0 | 0, $3 + 156 | 0 | 0, $3 + 140 | 0 | 0);
|
|
$371 = $4 + 1380 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 124 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 128 | 0) >> 2] | 0;
|
|
$1211 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $371;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1211;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$373 = 8;
|
|
i64toi32_i32$2 = ($3 + 124 | 0) + $373 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1224 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $371 + $373 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1224;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__cross_28btVector3_20const__29_20const($3 + 108 | 0 | 0, $3 + 140 | 0 | 0, $4 + 1380 | 0 | 0);
|
|
$390 = ($4 + 1380 | 0) + 16 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 108 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 112 | 0) >> 2] | 0;
|
|
$1248 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $390;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1248;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$392 = 8;
|
|
i64toi32_i32$2 = ($3 + 108 | 0) + $392 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1261 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $390 + $392 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1261;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__cross_28btVector3_20const__29_20const($3 + 92 | 0 | 0, $4 + 1380 | 0 | 0, $3 + 156 | 0 | 0);
|
|
$409 = ($4 + 1380 | 0) + 32 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 92 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 96 | 0) >> 2] | 0;
|
|
$1285 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $409;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1285;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$411 = 8;
|
|
i64toi32_i32$2 = ($3 + 92 | 0) + $411 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1298 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $409 + $411 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1298;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$9;
|
|
case 5:
|
|
btMatrix3x3__getColumn_28int_29_20const($3 + 76 | 0 | 0, btTransform__getBasis_28_29($4 + 1236 | 0 | 0) | 0 | 0, 0 | 0);
|
|
btMatrix3x3__getColumn_28int_29_20const($3 + 60 | 0 | 0, btTransform__getBasis_28_29($4 + 1300 | 0 | 0) | 0 | 0, 2 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($3 + 44 | 0 | 0, $3 + 60 | 0 | 0, $3 + 76 | 0 | 0);
|
|
$443 = ($4 + 1380 | 0) + 16 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 44 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 48 | 0) >> 2] | 0;
|
|
$1347 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $443;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1347;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$445 = 8;
|
|
i64toi32_i32$2 = ($3 + 44 | 0) + $445 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1360 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $443 + $445 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1360;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__cross_28btVector3_20const__29_20const($3 + 28 | 0 | 0, ($4 + 1380 | 0) + 16 | 0 | 0, $3 + 60 | 0 | 0);
|
|
$462 = $4 + 1380 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 28 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 32 | 0) >> 2] | 0;
|
|
$1384 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $462;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1384;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$464 = 8;
|
|
i64toi32_i32$2 = ($3 + 28 | 0) + $464 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1397 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $462 + $464 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1397;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__cross_28btVector3_20const__29_20const($3 + 12 | 0 | 0, $3 + 76 | 0 | 0, ($4 + 1380 | 0) + 16 | 0 | 0);
|
|
$483 = ($4 + 1380 | 0) + 32 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 16 | 0) >> 2] | 0;
|
|
$1424 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $483;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1424;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$485 = 8;
|
|
i64toi32_i32$2 = ($3 + 12 | 0) + $485 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1437 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $483 + $485 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1437;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$9;
|
|
default:
|
|
break label$10;
|
|
};
|
|
}
|
|
__assert_fail(81487 | 0, 71825 | 0, 402 | 0, 76219 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
btVector3__normalize_28_29($4 + 1380 | 0 | 0) | 0;
|
|
btVector3__normalize_28_29(($4 + 1380 | 0) + 16 | 0 | 0) | 0;
|
|
btVector3__normalize_28_29(($4 + 1380 | 0) + 32 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 592 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__calculateLinearInfo_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, i64toi32_i32$2 = 0, $15 = 0, $17 = 0, $38 = 0, $40 = 0, $119 = 0, $132 = 0, $164 = 0, $177 = 0, $61 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$3 = __stack_pointer - 96 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 92 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 92 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($3 + 76 | 0 | 0, btTransform__getOrigin_28_29($4 + 1300 | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29($4 + 1236 | 0 | 0) | 0 | 0);
|
|
$15 = $4 + 1428 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 76 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 80 | 0) >> 2] | 0;
|
|
$119 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $15;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $119;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$17 = 8;
|
|
i64toi32_i32$2 = ($3 + 76 | 0) + $17 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$132 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $15 + $17 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $132;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btMatrix3x3__inverse_28_29_20const($3 + 12 | 0 | 0, btTransform__getBasis_28_29($4 + 1236 | 0 | 0) | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($3 + 60 | 0 | 0, $3 + 12 | 0 | 0, $4 + 1428 | 0 | 0);
|
|
$38 = $4 + 1428 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 60 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 64 | 0) >> 2] | 0;
|
|
$164 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $38;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $164;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$40 = 8;
|
|
i64toi32_i32$2 = ($3 + 60 | 0) + $40 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$177 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $38 + $40 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $177;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$61 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($4 + 1428 | 0 | 0) | 0) + ((HEAP32[($3 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29(($4 + 680 | 0) + 260 | 0 | 0) | 0) + ((HEAP32[($3 + 8 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $61), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
btTranslationalLimitMotor2__testLimitValue_28int_2c_20float_29($4 + 680 | 0 | 0, HEAP32[($3 + 8 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($4 + 1428 | 0 | 0) | 0) + ((HEAP32[($3 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])));
|
|
HEAP32[($3 + 8 | 0) >> 2] = (HEAP32[($3 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $3 + 96 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTypedConstraint__getRigidBodyA_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btRigidBody__getInvMass_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 404 | 0) >> 2]));
|
|
}
|
|
|
|
function btTypedConstraint__getRigidBodyB_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btTranslationalLimitMotor2__testLimitValue_28int_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $6 = 0, $49 = Math_fround(0), $66 = Math_fround(0), $76 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 | 0) | 0) + ((HEAP32[($5 + 24 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 16 | 0 | 0) | 0) + ((HEAP32[($5 + 24 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 16 | 0) >> 2]) > Math_fround(HEAPF32[($5 + 12 | 0) >> 2]) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($6 + 228 | 0 | 0) | 0) + ((HEAP32[($5 + 24 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP32[(($6 + 276 | 0) + ((HEAP32[($5 + 24 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 16 | 0) >> 2]) == Math_fround(HEAPF32[($5 + 12 | 0) >> 2]) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$49 = Math_fround(Math_fround(HEAPF32[($5 + 20 | 0) >> 2]) - Math_fround(HEAPF32[($5 + 16 | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($6 + 228 | 0 | 0) | 0) + ((HEAP32[($5 + 24 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $49), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP32[(($6 + 276 | 0) + ((HEAP32[($5 + 24 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = 3;
|
|
break label$3;
|
|
}
|
|
$66 = Math_fround(Math_fround(HEAPF32[($5 + 20 | 0) >> 2]) - Math_fround(HEAPF32[($5 + 16 | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($6 + 228 | 0 | 0) | 0) + ((HEAP32[($5 + 24 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $66), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$76 = Math_fround(Math_fround(HEAPF32[($5 + 20 | 0) >> 2]) - Math_fround(HEAPF32[($5 + 12 | 0) >> 2]));
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($6 + 244 | 0 | 0) | 0) + ((HEAP32[($5 + 24 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $76), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP32[(($6 + 276 | 0) + ((HEAP32[($5 + 24 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = 4;
|
|
}
|
|
}
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__testAngularLimitMotor_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($5 + 1364 | 0 | 0) | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btAdjustAngleToLimits_28float_2c_20float_2c_20float_29(Math_fround(Math_fround(HEAPF32[($4 + 4 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[(($5 + 968 | 0) + Math_imul(HEAP32[($4 + 8 | 0) >> 2] | 0, 88) | 0) >> 2])), Math_fround(Math_fround(HEAPF32[((($5 + 968 | 0) + Math_imul(HEAP32[($4 + 8 | 0) >> 2] | 0, 88) | 0) + 4 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[((($5 + 968 | 0) + Math_imul(HEAP32[($4 + 8 | 0) >> 2] | 0, 88) | 0) + 80 | 0) >> 2] = Math_fround(HEAPF32[($4 + 4 | 0) >> 2]);
|
|
btRotationalLimitMotor2__testLimitValue_28float_29(($5 + 968 | 0) + Math_imul(HEAP32[($4 + 8 | 0) >> 2] | 0, 88) | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 4 | 0) >> 2])));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAdjustAngleToLimits_28float_2c_20float_2c_20float_29($0, $1, $2) {
|
|
$0 = Math_fround($0);
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $33 = Math_fround(0), $61 = Math_fround(0), $65 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAPF32[($5 + 24 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 20 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 16 | 0) >> 2] = $2;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 20 | 0) >> 2]) >= Math_fround(HEAPF32[($5 + 16 | 0) >> 2]) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($5 + 28 | 0) >> 2] = Math_fround(HEAPF32[($5 + 24 | 0) >> 2]);
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 24 | 0) >> 2]) < Math_fround(HEAPF32[($5 + 20 | 0) >> 2]) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(btNormalizeAngle_28float_29(Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 20 | 0) >> 2]) - Math_fround(HEAPF32[($5 + 24 | 0) >> 2]))))))))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(btNormalizeAngle_28float_29(Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 16 | 0) >> 2]) - Math_fround(HEAPF32[($5 + 24 | 0) >> 2]))))))))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 12 | 0) >> 2]) < Math_fround(HEAPF32[($5 + 8 | 0) >> 2]) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
$33 = Math_fround(HEAPF32[($5 + 24 | 0) >> 2]);
|
|
break label$4;
|
|
}
|
|
$33 = Math_fround(Math_fround(HEAPF32[($5 + 24 | 0) >> 2]) + Math_fround(6.2831854820251465));
|
|
}
|
|
HEAPF32[($5 + 28 | 0) >> 2] = $33;
|
|
break label$1;
|
|
}
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 24 | 0) >> 2]) > Math_fround(HEAPF32[($5 + 16 | 0) >> 2]) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(btNormalizeAngle_28float_29(Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 24 | 0) >> 2]) - Math_fround(HEAPF32[($5 + 16 | 0) >> 2]))))))))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(btNormalizeAngle_28float_29(Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 24 | 0) >> 2]) - Math_fround(HEAPF32[($5 + 20 | 0) >> 2]))))))))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
label$7 : {
|
|
label$8 : {
|
|
if (!(Math_fround(HEAPF32[$5 >> 2]) < Math_fround(HEAPF32[($5 + 4 | 0) >> 2]) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
$61 = Math_fround(Math_fround(HEAPF32[($5 + 24 | 0) >> 2]) - Math_fround(6.2831854820251465));
|
|
break label$7;
|
|
}
|
|
$61 = Math_fround(HEAPF32[($5 + 24 | 0) >> 2]);
|
|
}
|
|
HEAPF32[($5 + 28 | 0) >> 2] = $61;
|
|
break label$1;
|
|
}
|
|
HEAPF32[($5 + 28 | 0) >> 2] = Math_fround(HEAPF32[($5 + 24 | 0) >> 2]);
|
|
}
|
|
$65 = Math_fround(HEAPF32[($5 + 28 | 0) >> 2]);
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return Math_fround($65);
|
|
}
|
|
|
|
function btRotationalLimitMotor2__testLimitValue_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $5 = 0, $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[$5 >> 2]) > Math_fround(HEAPF32[($5 + 4 | 0) >> 2]) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 84 | 0) >> 2] = 0;
|
|
HEAPF32[($5 + 72 | 0) >> 2] = Math_fround(0 | 0);
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[$5 >> 2]) == Math_fround(HEAPF32[($5 + 4 | 0) >> 2]) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAPF32[($5 + 72 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2]) - Math_fround(HEAPF32[$5 >> 2]));
|
|
HEAP32[($5 + 84 | 0) >> 2] = 3;
|
|
break label$3;
|
|
}
|
|
HEAPF32[($5 + 72 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2]) - Math_fround(HEAPF32[$5 >> 2]));
|
|
HEAPF32[($5 + 76 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2]) - Math_fround(HEAPF32[($5 + 4 | 0) >> 2]));
|
|
HEAP32[($5 + 84 | 0) >> 2] = 4;
|
|
}
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__getInfo1_28btTypedConstraint__btConstraintInfo1__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $37 = 0, $50 = 0, $63 = 0, $76 = 0, $105 = 0, $116 = 0, $129 = 0, $142 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btGeneric6DofSpring2Constraint__calculateTransforms_28btTransform_20const__2c_20btTransform_20const__29($5 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] = 0;
|
|
HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAP32[((($5 + 680 | 0) + 276 | 0) + ((HEAP32[($4 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0) == (4 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$37 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
HEAP32[$37 >> 2] = (HEAP32[$37 >> 2] | 0) + 2 | 0;
|
|
break label$3;
|
|
}
|
|
label$5 : {
|
|
if (!(HEAP32[((($5 + 680 | 0) + 276 | 0) + ((HEAP32[($4 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0)) {
|
|
break label$5
|
|
}
|
|
$50 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
HEAP32[$50 >> 2] = (HEAP32[$50 >> 2] | 0) + 1 | 0;
|
|
}
|
|
}
|
|
label$6 : {
|
|
if (!((HEAPU8[((($5 + 680 | 0) + 112 | 0) + (HEAP32[($4 + 4 | 0) >> 2] | 0) | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$63 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
HEAP32[$63 >> 2] = (HEAP32[$63 >> 2] | 0) + 1 | 0;
|
|
}
|
|
label$7 : {
|
|
if (!((HEAPU8[((($5 + 680 | 0) + 118 | 0) + (HEAP32[($4 + 4 | 0) >> 2] | 0) | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
$76 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
HEAP32[$76 >> 2] = (HEAP32[$76 >> 2] | 0) + 1 | 0;
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
label$8 : {
|
|
label$9 : while (1) {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
btGeneric6DofSpring2Constraint__testAngularLimitMotor_28int_29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
label$10 : {
|
|
label$11 : {
|
|
if (!((HEAP32[((($5 + 968 | 0) + Math_imul(HEAP32[($4 + 4 | 0) >> 2] | 0, 88) | 0) + 84 | 0) >> 2] | 0 | 0) == (4 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
$105 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
HEAP32[$105 >> 2] = (HEAP32[$105 >> 2] | 0) + 2 | 0;
|
|
break label$10;
|
|
}
|
|
label$12 : {
|
|
if (!(HEAP32[((($5 + 968 | 0) + Math_imul(HEAP32[($4 + 4 | 0) >> 2] | 0, 88) | 0) + 84 | 0) >> 2] | 0)) {
|
|
break label$12
|
|
}
|
|
$116 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
HEAP32[$116 >> 2] = (HEAP32[$116 >> 2] | 0) + 1 | 0;
|
|
}
|
|
}
|
|
label$13 : {
|
|
if (!((HEAPU8[((($5 + 968 | 0) + Math_imul(HEAP32[($4 + 4 | 0) >> 2] | 0, 88) | 0) + 28 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
$129 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
HEAP32[$129 >> 2] = (HEAP32[$129 >> 2] | 0) + 1 | 0;
|
|
}
|
|
label$14 : {
|
|
if (!((HEAPU8[((($5 + 968 | 0) + Math_imul(HEAP32[($4 + 4 | 0) >> 2] | 0, 88) | 0) + 48 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
$142 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
HEAP32[$142 >> 2] = (HEAP32[$142 >> 2] | 0) + 1 | 0;
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$9;
|
|
};
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__getInfo2_28btTypedConstraint__btConstraintInfo2__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 40 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 44 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btRigidBody__getLinearVelocity_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btRigidBody__getLinearVelocity_28_29_20const(HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btRigidBody__getAngularVelocity_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btRigidBody__getAngularVelocity_28_29_20const(HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btGeneric6DofSpring2Constraint__setAngularLimits_28btTypedConstraint__btConstraintInfo2__2c_20int_2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($5 | 0, HEAP32[($4 + 40 | 0) >> 2] | 0 | 0, 0 | 0, HEAP32[($4 + 36 | 0) >> 2] | 0 | 0, HEAP32[($4 + 32 | 0) >> 2] | 0 | 0, HEAP32[($4 + 28 | 0) >> 2] | 0 | 0, HEAP32[($4 + 24 | 0) >> 2] | 0 | 0, HEAP32[($4 + 20 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
btGeneric6DofSpring2Constraint__setLinearLimits_28btTypedConstraint__btConstraintInfo2__2c_20int_2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($5 | 0, HEAP32[($4 + 40 | 0) >> 2] | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, HEAP32[($4 + 36 | 0) >> 2] | 0 | 0, HEAP32[($4 + 32 | 0) >> 2] | 0 | 0, HEAP32[($4 + 28 | 0) >> 2] | 0 | 0, HEAP32[($4 + 24 | 0) >> 2] | 0 | 0, HEAP32[($4 + 20 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__setAngularLimits_28btTypedConstraint__btConstraintInfo2__2c_20int_2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2, $3, $4, $5, $6, $7, $8) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
var $11 = 0, $12 = 0, $16 = 0, $19 = 0, i64toi32_i32$1 = 0, $160 = 0, $166 = 0;
|
|
$11 = __stack_pointer - 96 | 0;
|
|
__stack_pointer = $11;
|
|
HEAP32[($11 + 92 | 0) >> 2] = $0;
|
|
HEAP32[($11 + 88 | 0) >> 2] = $1;
|
|
HEAP32[($11 + 84 | 0) >> 2] = $2;
|
|
HEAP32[($11 + 80 | 0) >> 2] = $3;
|
|
HEAP32[($11 + 76 | 0) >> 2] = $4;
|
|
HEAP32[($11 + 72 | 0) >> 2] = $5;
|
|
HEAP32[($11 + 68 | 0) >> 2] = $6;
|
|
HEAP32[($11 + 64 | 0) >> 2] = $7;
|
|
HEAP32[($11 + 60 | 0) >> 2] = $8;
|
|
$12 = HEAP32[($11 + 92 | 0) >> 2] | 0;
|
|
HEAP32[($11 + 56 | 0) >> 2] = HEAP32[($11 + 84 | 0) >> 2] | 0;
|
|
$16 = 0;
|
|
HEAP32[($11 + 48 | 0) >> 2] = HEAP32[($16 + 102136 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($16 + 102132 | 0) >> 2] | 0;
|
|
HEAP32[($11 + 40 | 0) >> 2] = HEAP32[($16 + 102128 | 0) >> 2] | 0;
|
|
HEAP32[($11 + 44 | 0) >> 2] = i64toi32_i32$1;
|
|
$19 = HEAP32[($12 + 1232 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
switch ($19 | 0) {
|
|
case 0:
|
|
HEAP32[($11 + 40 | 0) >> 2] = 0;
|
|
HEAP32[($11 + 44 | 0) >> 2] = 1;
|
|
HEAP32[($11 + 48 | 0) >> 2] = 2;
|
|
break label$1;
|
|
case 1:
|
|
HEAP32[($11 + 40 | 0) >> 2] = 0;
|
|
HEAP32[($11 + 44 | 0) >> 2] = 2;
|
|
HEAP32[($11 + 48 | 0) >> 2] = 1;
|
|
break label$1;
|
|
case 2:
|
|
HEAP32[($11 + 40 | 0) >> 2] = 1;
|
|
HEAP32[($11 + 44 | 0) >> 2] = 0;
|
|
HEAP32[($11 + 48 | 0) >> 2] = 2;
|
|
break label$1;
|
|
case 3:
|
|
HEAP32[($11 + 40 | 0) >> 2] = 1;
|
|
HEAP32[($11 + 44 | 0) >> 2] = 2;
|
|
HEAP32[($11 + 48 | 0) >> 2] = 0;
|
|
break label$1;
|
|
case 4:
|
|
HEAP32[($11 + 40 | 0) >> 2] = 2;
|
|
HEAP32[($11 + 44 | 0) >> 2] = 0;
|
|
HEAP32[($11 + 48 | 0) >> 2] = 1;
|
|
break label$1;
|
|
case 5:
|
|
HEAP32[($11 + 40 | 0) >> 2] = 2;
|
|
HEAP32[($11 + 44 | 0) >> 2] = 1;
|
|
HEAP32[($11 + 48 | 0) >> 2] = 0;
|
|
break label$1;
|
|
default:
|
|
break label$2;
|
|
};
|
|
}
|
|
__assert_fail(81487 | 0, 71825 | 0, 563 | 0, 69239 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($11 + 36 | 0) >> 2] = 0;
|
|
label$9 : {
|
|
label$10 : while (1) {
|
|
if (!((HEAP32[($11 + 36 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
HEAP32[($11 + 32 | 0) >> 2] = HEAP32[(($11 + 40 | 0) + ((HEAP32[($11 + 36 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
label$11 : {
|
|
label$12 : {
|
|
if (HEAP32[((($12 + 968 | 0) + Math_imul(HEAP32[($11 + 32 | 0) >> 2] | 0, 88) | 0) + 84 | 0) >> 2] | 0) {
|
|
break label$12
|
|
}
|
|
if ((HEAPU8[((($12 + 968 | 0) + Math_imul(HEAP32[($11 + 32 | 0) >> 2] | 0, 88) | 0) + 28 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$12
|
|
}
|
|
if (!((HEAPU8[((($12 + 968 | 0) + Math_imul(HEAP32[($11 + 32 | 0) >> 2] | 0, 88) | 0) + 48 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
}
|
|
btGeneric6DofSpring2Constraint__getAxis_28int_29_20const($11 + 16 | 0 | 0, $12 | 0, HEAP32[($11 + 32 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($11 + 12 | 0) >> 2] = (HEAP32[($12 + 1456 | 0) >> 2] | 0) >> (((HEAP32[($11 + 32 | 0) >> 2] | 0) + 3 | 0) << 2 | 0) | 0;
|
|
label$13 : {
|
|
if ((HEAP32[($11 + 12 | 0) >> 2] | 0) & 1 | 0) {
|
|
break label$13
|
|
}
|
|
HEAPF32[((($12 + 968 | 0) + Math_imul(HEAP32[($11 + 32 | 0) >> 2] | 0, 88) | 0) + 16 | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[((HEAP32[($11 + 88 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) >> 2]);
|
|
}
|
|
label$14 : {
|
|
if ((HEAP32[($11 + 12 | 0) >> 2] | 0) & 2 | 0) {
|
|
break label$14
|
|
}
|
|
HEAPF32[((($12 + 968 | 0) + Math_imul(HEAP32[($11 + 32 | 0) >> 2] | 0, 88) | 0) + 12 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($11 + 88 | 0) >> 2] | 0) + 4 | 0) >> 2]);
|
|
}
|
|
label$15 : {
|
|
if ((HEAP32[($11 + 12 | 0) >> 2] | 0) & 4 | 0) {
|
|
break label$15
|
|
}
|
|
HEAPF32[((($12 + 968 | 0) + Math_imul(HEAP32[($11 + 32 | 0) >> 2] | 0, 88) | 0) + 24 | 0) >> 2] = Math_fround(HEAPF32[(HEAP32[((HEAP32[($11 + 88 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) >> 2]);
|
|
}
|
|
label$16 : {
|
|
if ((HEAP32[($11 + 12 | 0) >> 2] | 0) & 8 | 0) {
|
|
break label$16
|
|
}
|
|
HEAPF32[((($12 + 968 | 0) + Math_imul(HEAP32[($11 + 32 | 0) >> 2] | 0, 88) | 0) + 20 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($11 + 88 | 0) >> 2] | 0) + 4 | 0) >> 2]);
|
|
}
|
|
$160 = btGeneric6DofSpring2Constraint__get_limit_motor_info2_28btRotationalLimitMotor2__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btTypedConstraint__btConstraintInfo2__2c_20int_2c_20btVector3__2c_20int_2c_20int_29($12 | 0, ($12 + 968 | 0) + Math_imul(HEAP32[($11 + 32 | 0) >> 2] | 0, 88) | 0 | 0, HEAP32[($11 + 80 | 0) >> 2] | 0 | 0, HEAP32[($11 + 76 | 0) >> 2] | 0 | 0, HEAP32[($11 + 72 | 0) >> 2] | 0 | 0, HEAP32[($11 + 68 | 0) >> 2] | 0 | 0, HEAP32[($11 + 64 | 0) >> 2] | 0 | 0, HEAP32[($11 + 60 | 0) >> 2] | 0 | 0, HEAP32[($11 + 88 | 0) >> 2] | 0 | 0, HEAP32[($11 + 56 | 0) >> 2] | 0 | 0, $11 + 16 | 0 | 0, 1 | 0, 0 | 0) | 0;
|
|
HEAP32[($11 + 56 | 0) >> 2] = (HEAP32[($11 + 56 | 0) >> 2] | 0) + $160 | 0;
|
|
}
|
|
HEAP32[($11 + 36 | 0) >> 2] = (HEAP32[($11 + 36 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$10;
|
|
};
|
|
}
|
|
$166 = HEAP32[($11 + 56 | 0) >> 2] | 0;
|
|
__stack_pointer = $11 + 96 | 0;
|
|
return $166 | 0;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__setLinearLimits_28btTypedConstraint__btConstraintInfo2__2c_20int_2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2, $3, $4, $5, $6, $7, $8) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
var $11 = 0, $12 = 0, $330 = 0, $442 = 0, $248 = Math_fround(0), $266 = Math_fround(0), $283 = Math_fround(0), $301 = Math_fround(0), $398 = 0, $412 = 0, $510 = 0, $524 = 0, $563 = 0, $569 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$11 = __stack_pointer - 176 | 0;
|
|
__stack_pointer = $11;
|
|
HEAP32[($11 + 172 | 0) >> 2] = $0;
|
|
HEAP32[($11 + 168 | 0) >> 2] = $1;
|
|
HEAP32[($11 + 164 | 0) >> 2] = $2;
|
|
HEAP32[($11 + 160 | 0) >> 2] = $3;
|
|
HEAP32[($11 + 156 | 0) >> 2] = $4;
|
|
HEAP32[($11 + 152 | 0) >> 2] = $5;
|
|
HEAP32[($11 + 148 | 0) >> 2] = $6;
|
|
HEAP32[($11 + 144 | 0) >> 2] = $7;
|
|
HEAP32[($11 + 140 | 0) >> 2] = $8;
|
|
$12 = HEAP32[($11 + 172 | 0) >> 2] | 0;
|
|
btRotationalLimitMotor2__btRotationalLimitMotor2_28_29($11 + 52 | 0 | 0) | 0;
|
|
HEAP32[($11 + 48 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($11 + 48 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (HEAP32[((($12 + 680 | 0) + 276 | 0) + ((HEAP32[($11 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0) {
|
|
break label$4
|
|
}
|
|
if ((HEAPU8[((($12 + 680 | 0) + 112 | 0) + (HEAP32[($11 + 48 | 0) >> 2] | 0) | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
if (!((HEAPU8[((($12 + 680 | 0) + 118 | 0) + (HEAP32[($11 + 48 | 0) >> 2] | 0) | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
}
|
|
(wasm2js_i32$0 = $11, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29(($12 + 680 | 0) + 32 | 0 | 0) | 0) + ((HEAP32[($11 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 60 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP32[($11 + 136 | 0) >> 2] = HEAP32[((($12 + 680 | 0) + 276 | 0) + ((HEAP32[($11 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $11, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29(($12 + 680 | 0) + 260 | 0 | 0) | 0) + ((HEAP32[($11 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 132 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $11, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29(($12 + 680 | 0) + 228 | 0 | 0) | 0) + ((HEAP32[($11 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 124 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $11, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29(($12 + 680 | 0) + 244 | 0 | 0) | 0) + ((HEAP32[($11 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 128 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($11 + 80 | 0) >> 0] = (HEAPU8[((($12 + 680 | 0) + 112 | 0) + (HEAP32[($11 + 48 | 0) >> 2] | 0) | 0) >> 0] | 0) & 1 | 0;
|
|
HEAP8[($11 + 92 | 0) >> 0] = (HEAPU8[((($12 + 680 | 0) + 115 | 0) + (HEAP32[($11 + 48 | 0) >> 2] | 0) | 0) >> 0] | 0) & 1 | 0;
|
|
(wasm2js_i32$0 = $11, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29(($12 + 680 | 0) + 124 | 0 | 0) | 0) + ((HEAP32[($11 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 96 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($11 + 100 | 0) >> 0] = (HEAPU8[((($12 + 680 | 0) + 118 | 0) + (HEAP32[($11 + 48 | 0) >> 2] | 0) | 0) >> 0] | 0) & 1 | 0;
|
|
(wasm2js_i32$0 = $11, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29(($12 + 680 | 0) + 140 | 0 | 0) | 0) + ((HEAP32[($11 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 104 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($11 + 108 | 0) >> 0] = (HEAPU8[((($12 + 680 | 0) + 156 | 0) + (HEAP32[($11 + 48 | 0) >> 2] | 0) | 0) >> 0] | 0) & 1 | 0;
|
|
(wasm2js_i32$0 = $11, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29(($12 + 680 | 0) + 160 | 0 | 0) | 0) + ((HEAP32[($11 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 112 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($11 + 116 | 0) >> 0] = (HEAPU8[((($12 + 680 | 0) + 176 | 0) + (HEAP32[($11 + 48 | 0) >> 2] | 0) | 0) >> 0] | 0) & 1 | 0;
|
|
(wasm2js_i32$0 = $11, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29(($12 + 680 | 0) + 180 | 0 | 0) | 0) + ((HEAP32[($11 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 120 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $11, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29(($12 + 680 | 0) + 16 | 0 | 0) | 0) + ((HEAP32[($11 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 56 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $11, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($12 + 680 | 0 | 0) | 0) + ((HEAP32[($11 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 52 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $11, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29(($12 + 680 | 0) + 212 | 0 | 0) | 0) + ((HEAP32[($11 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 88 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $11, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29(($12 + 680 | 0) + 196 | 0 | 0) | 0) + ((HEAP32[($11 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 84 | 0) >> 2] = wasm2js_f32$0;
|
|
btMatrix3x3__getColumn_28int_29_20const($11 + 32 | 0 | 0, btTransform__getBasis_28_29($12 + 1236 | 0 | 0) | 0 | 0, HEAP32[($11 + 48 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($11 + 28 | 0) >> 2] = (HEAP32[($12 + 1456 | 0) >> 2] | 0) >> ((HEAP32[($11 + 48 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!((HEAP32[($11 + 28 | 0) >> 2] | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$248 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29(($12 + 680 | 0) + 64 | 0 | 0) | 0) + ((HEAP32[($11 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
break label$5;
|
|
}
|
|
$248 = Math_fround(HEAPF32[(HEAP32[((HEAP32[($11 + 168 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) >> 2]);
|
|
}
|
|
HEAPF32[($11 + 68 | 0) >> 2] = $248;
|
|
label$7 : {
|
|
label$8 : {
|
|
if (!((HEAP32[($11 + 28 | 0) >> 2] | 0) & 2 | 0)) {
|
|
break label$8
|
|
}
|
|
$266 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29(($12 + 680 | 0) + 48 | 0 | 0) | 0) + ((HEAP32[($11 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
break label$7;
|
|
}
|
|
$266 = Math_fround(HEAPF32[((HEAP32[($11 + 168 | 0) >> 2] | 0) + 4 | 0) >> 2]);
|
|
}
|
|
HEAPF32[($11 + 64 | 0) >> 2] = $266;
|
|
label$9 : {
|
|
label$10 : {
|
|
if (!((HEAP32[($11 + 28 | 0) >> 2] | 0) & 4 | 0)) {
|
|
break label$10
|
|
}
|
|
$283 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29(($12 + 680 | 0) + 96 | 0 | 0) | 0) + ((HEAP32[($11 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
break label$9;
|
|
}
|
|
$283 = Math_fround(HEAPF32[(HEAP32[((HEAP32[($11 + 168 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) >> 2]);
|
|
}
|
|
HEAPF32[($11 + 76 | 0) >> 2] = $283;
|
|
label$11 : {
|
|
label$12 : {
|
|
if (!((HEAP32[($11 + 28 | 0) >> 2] | 0) & 8 | 0)) {
|
|
break label$12
|
|
}
|
|
$301 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29(($12 + 680 | 0) + 80 | 0 | 0) | 0) + ((HEAP32[($11 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
break label$11;
|
|
}
|
|
$301 = Math_fround(HEAPF32[((HEAP32[($11 + 168 | 0) >> 2] | 0) + 4 | 0) >> 2]);
|
|
}
|
|
HEAPF32[($11 + 72 | 0) >> 2] = $301;
|
|
HEAP32[($11 + 24 | 0) >> 2] = ((HEAP32[($11 + 48 | 0) >> 2] | 0) + 1 | 0 | 0) % (3 | 0) | 0;
|
|
HEAP32[($11 + 20 | 0) >> 2] = ((HEAP32[($11 + 48 | 0) >> 2] | 0) + 2 | 0 | 0) % (3 | 0) | 0;
|
|
HEAP32[($11 + 16 | 0) >> 2] = 1;
|
|
$330 = 1;
|
|
label$13 : {
|
|
if ((HEAP32[((($12 + 968 | 0) + Math_imul(HEAP32[($11 + 24 | 0) >> 2] | 0, 88) | 0) + 84 | 0) >> 2] | 0 | 0) == (1 | 0) & 1 | 0) {
|
|
break label$13
|
|
}
|
|
$330 = 1;
|
|
if ((HEAP32[((($12 + 968 | 0) + Math_imul(HEAP32[($11 + 24 | 0) >> 2] | 0, 88) | 0) + 84 | 0) >> 2] | 0 | 0) == (2 | 0) & 1 | 0) {
|
|
break label$13
|
|
}
|
|
label$14 : {
|
|
if (!((HEAP32[((($12 + 968 | 0) + Math_imul(HEAP32[($11 + 24 | 0) >> 2] | 0, 88) | 0) + 84 | 0) >> 2] | 0 | 0) == (3 | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
$330 = 1;
|
|
if (+Math_fround(HEAPF32[(($12 + Math_imul(HEAP32[($11 + 24 | 0) >> 2] | 0, 88) | 0) + 1040 | 0) >> 2]) < -.001 & 1 | 0) {
|
|
break label$13
|
|
}
|
|
$330 = 1;
|
|
if (+Math_fround(HEAPF32[(($12 + Math_imul(HEAP32[($11 + 24 | 0) >> 2] | 0, 88) | 0) + 1040 | 0) >> 2]) > .001 & 1 | 0) {
|
|
break label$13
|
|
}
|
|
}
|
|
$398 = 0;
|
|
label$15 : {
|
|
if (!((HEAP32[((($12 + 968 | 0) + Math_imul(HEAP32[($11 + 24 | 0) >> 2] | 0, 88) | 0) + 84 | 0) >> 2] | 0 | 0) == (4 | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
$412 = 1;
|
|
label$16 : {
|
|
if (+Math_fround(HEAPF32[(($12 + Math_imul(HEAP32[($11 + 24 | 0) >> 2] | 0, 88) | 0) + 1040 | 0) >> 2]) < -.001 & 1 | 0) {
|
|
break label$16
|
|
}
|
|
$412 = +Math_fround(HEAPF32[(($12 + Math_imul(HEAP32[($11 + 24 | 0) >> 2] | 0, 88) | 0) + 1044 | 0) >> 2]) > .001;
|
|
}
|
|
$398 = $412;
|
|
}
|
|
$330 = $398;
|
|
}
|
|
HEAP8[($11 + 15 | 0) >> 0] = $330 & 1 | 0;
|
|
$442 = 1;
|
|
label$17 : {
|
|
if ((HEAP32[((($12 + 968 | 0) + Math_imul(HEAP32[($11 + 20 | 0) >> 2] | 0, 88) | 0) + 84 | 0) >> 2] | 0 | 0) == (1 | 0) & 1 | 0) {
|
|
break label$17
|
|
}
|
|
$442 = 1;
|
|
if ((HEAP32[((($12 + 968 | 0) + Math_imul(HEAP32[($11 + 20 | 0) >> 2] | 0, 88) | 0) + 84 | 0) >> 2] | 0 | 0) == (2 | 0) & 1 | 0) {
|
|
break label$17
|
|
}
|
|
label$18 : {
|
|
if (!((HEAP32[((($12 + 968 | 0) + Math_imul(HEAP32[($11 + 20 | 0) >> 2] | 0, 88) | 0) + 84 | 0) >> 2] | 0 | 0) == (3 | 0) & 1 | 0)) {
|
|
break label$18
|
|
}
|
|
$442 = 1;
|
|
if (+Math_fround(HEAPF32[(($12 + Math_imul(HEAP32[($11 + 20 | 0) >> 2] | 0, 88) | 0) + 1040 | 0) >> 2]) < -.001 & 1 | 0) {
|
|
break label$17
|
|
}
|
|
$442 = 1;
|
|
if (+Math_fround(HEAPF32[(($12 + Math_imul(HEAP32[($11 + 20 | 0) >> 2] | 0, 88) | 0) + 1040 | 0) >> 2]) > .001 & 1 | 0) {
|
|
break label$17
|
|
}
|
|
}
|
|
$510 = 0;
|
|
label$19 : {
|
|
if (!((HEAP32[((($12 + 968 | 0) + Math_imul(HEAP32[($11 + 20 | 0) >> 2] | 0, 88) | 0) + 84 | 0) >> 2] | 0 | 0) == (4 | 0) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
$524 = 1;
|
|
label$20 : {
|
|
if (+Math_fround(HEAPF32[(($12 + Math_imul(HEAP32[($11 + 20 | 0) >> 2] | 0, 88) | 0) + 1040 | 0) >> 2]) < -.001 & 1 | 0) {
|
|
break label$20
|
|
}
|
|
$524 = +Math_fround(HEAPF32[(($12 + Math_imul(HEAP32[($11 + 20 | 0) >> 2] | 0, 88) | 0) + 1044 | 0) >> 2]) > .001;
|
|
}
|
|
$510 = $524;
|
|
}
|
|
$442 = $510;
|
|
}
|
|
HEAP8[($11 + 14 | 0) >> 0] = $442 & 1 | 0;
|
|
label$21 : {
|
|
if (!((HEAPU8[($11 + 15 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$21
|
|
}
|
|
if (!((HEAPU8[($11 + 14 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$21
|
|
}
|
|
HEAP32[($11 + 16 | 0) >> 2] = 0;
|
|
}
|
|
$563 = btGeneric6DofSpring2Constraint__get_limit_motor_info2_28btRotationalLimitMotor2__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btTypedConstraint__btConstraintInfo2__2c_20int_2c_20btVector3__2c_20int_2c_20int_29($12 | 0, $11 + 52 | 0 | 0, HEAP32[($11 + 160 | 0) >> 2] | 0 | 0, HEAP32[($11 + 156 | 0) >> 2] | 0 | 0, HEAP32[($11 + 152 | 0) >> 2] | 0 | 0, HEAP32[($11 + 148 | 0) >> 2] | 0 | 0, HEAP32[($11 + 144 | 0) >> 2] | 0 | 0, HEAP32[($11 + 140 | 0) >> 2] | 0 | 0, HEAP32[($11 + 168 | 0) >> 2] | 0 | 0, HEAP32[($11 + 164 | 0) >> 2] | 0 | 0, $11 + 32 | 0 | 0, 0 | 0, HEAP32[($11 + 16 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($11 + 164 | 0) >> 2] = (HEAP32[($11 + 164 | 0) >> 2] | 0) + $563 | 0;
|
|
}
|
|
HEAP32[($11 + 48 | 0) >> 2] = (HEAP32[($11 + 48 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
$569 = HEAP32[($11 + 164 | 0) >> 2] | 0;
|
|
__stack_pointer = $11 + 176 | 0;
|
|
return $569 | 0;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__getAxis_28int_29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $5 = 0, $14 = 0, $42 = 0, $52 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $2;
|
|
i64toi32_i32$2 = ((HEAP32[($5 + 12 | 0) >> 2] | 0) + 1380 | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$42 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $42;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$14 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $14 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$52 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0 + $14 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $52;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__get_limit_motor_info2_28btRotationalLimitMotor2__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btTypedConstraint__btConstraintInfo2__2c_20int_2c_20btVector3__2c_20int_2c_20int_29($0, $1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
$9 = $9 | 0;
|
|
$10 = $10 | 0;
|
|
$11 = $11 | 0;
|
|
$12 = $12 | 0;
|
|
var $15 = 0, $16 = 0, $38 = Math_fround(0), $427 = Math_fround(0), $542 = Math_fround(0), $568 = Math_fround(0), $578 = Math_fround(0), $594 = Math_fround(0), $611 = Math_fround(0), $708 = Math_fround(0), $733 = Math_fround(0), $816 = Math_fround(0), $825 = Math_fround(0), $837 = Math_fround(0), $854 = Math_fround(0), $872 = Math_fround(0), $891 = Math_fround(0), $915 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$15 = __stack_pointer - 176 | 0;
|
|
__stack_pointer = $15;
|
|
HEAP32[($15 + 172 | 0) >> 2] = $0;
|
|
HEAP32[($15 + 168 | 0) >> 2] = $1;
|
|
HEAP32[($15 + 164 | 0) >> 2] = $2;
|
|
HEAP32[($15 + 160 | 0) >> 2] = $3;
|
|
HEAP32[($15 + 156 | 0) >> 2] = $4;
|
|
HEAP32[($15 + 152 | 0) >> 2] = $5;
|
|
HEAP32[($15 + 148 | 0) >> 2] = $6;
|
|
HEAP32[($15 + 144 | 0) >> 2] = $7;
|
|
HEAP32[($15 + 140 | 0) >> 2] = $8;
|
|
HEAP32[($15 + 136 | 0) >> 2] = $9;
|
|
HEAP32[($15 + 132 | 0) >> 2] = $10;
|
|
HEAP32[($15 + 128 | 0) >> 2] = $11;
|
|
HEAP32[($15 + 124 | 0) >> 2] = $12;
|
|
$16 = HEAP32[($15 + 172 | 0) >> 2] | 0;
|
|
HEAP32[($15 + 120 | 0) >> 2] = 0;
|
|
HEAP32[($15 + 116 | 0) >> 2] = Math_imul(HEAP32[($15 + 136 | 0) >> 2] | 0, HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0);
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 84 | 0) >> 2] | 0 | 0) == (4 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(HEAP32[($15 + 128 | 0) >> 2] | 0)) {
|
|
break label$4
|
|
}
|
|
$38 = Math_fround(Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($15 + 148 | 0) >> 2] | 0 | 0, HEAP32[($15 + 132 | 0) >> 2] | 0 | 0)) - Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($15 + 144 | 0) >> 2] | 0 | 0, HEAP32[($15 + 132 | 0) >> 2] | 0 | 0)));
|
|
break label$3;
|
|
}
|
|
$38 = Math_fround(Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($15 + 156 | 0) >> 2] | 0 | 0, HEAP32[($15 + 132 | 0) >> 2] | 0 | 0)) - Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($15 + 152 | 0) >> 2] | 0 | 0, HEAP32[($15 + 132 | 0) >> 2] | 0 | 0)));
|
|
}
|
|
HEAPF32[($15 + 112 | 0) >> 2] = $38;
|
|
btGeneric6DofSpring2Constraint__calculateJacobi_28btRotationalLimitMotor2__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btTypedConstraint__btConstraintInfo2__2c_20int_2c_20btVector3__2c_20int_2c_20int_29($16 | 0, HEAP32[($15 + 168 | 0) >> 2] | 0 | 0, HEAP32[($15 + 164 | 0) >> 2] | 0 | 0, HEAP32[($15 + 160 | 0) >> 2] | 0 | 0, HEAP32[($15 + 140 | 0) >> 2] | 0 | 0, HEAP32[($15 + 116 | 0) >> 2] | 0 | 0, HEAP32[($15 + 132 | 0) >> 2] | 0 | 0, HEAP32[($15 + 128 | 0) >> 2] | 0 | 0, HEAP32[($15 + 124 | 0) >> 2] | 0 | 0);
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[(HEAP32[($15 + 140 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 12 | 0) >> 2])) * Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 72 | 0) >> 2])) * Math_fround((HEAP32[($15 + 128 | 0) >> 2] | 0 ? -1 : 1) | 0));
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!(HEAP32[($15 + 128 | 0) >> 2] | 0)) {
|
|
break label$6
|
|
}
|
|
label$7 : {
|
|
if (!(Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($15 + 112 | 0) >> 2])) * Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 12 | 0) >> 2])) + Math_fround(HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAPF32[($15 + 108 | 0) >> 2] = Math_fround(Math_fround(-Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 8 | 0) >> 2])) * Math_fround(HEAPF32[($15 + 112 | 0) >> 2]));
|
|
label$8 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 108 | 0) >> 2]) > Math_fround(HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($15 + 108 | 0) >> 2]);
|
|
}
|
|
}
|
|
break label$5;
|
|
}
|
|
label$9 : {
|
|
if (!(Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($15 + 112 | 0) >> 2])) * Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 12 | 0) >> 2])) + Math_fround(HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
HEAPF32[($15 + 104 | 0) >> 2] = Math_fround(Math_fround(-Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 8 | 0) >> 2])) * Math_fround(HEAPF32[($15 + 112 | 0) >> 2]));
|
|
label$10 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 104 | 0) >> 2]) < Math_fround(HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($15 + 104 | 0) >> 2]);
|
|
}
|
|
}
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[($15 + 128 | 0) >> 2] | 0 ? Math_fround(0 | 0) : Math_fround(-3402823466385288598117041.0e14);
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[($15 + 128 | 0) >> 2] | 0 ? Math_fround(3402823466385288598117041.0e14) : Math_fround(0 | 0);
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 16 | 0) >> 2]);
|
|
HEAP32[($15 + 116 | 0) >> 2] = (HEAP32[($15 + 116 | 0) >> 2] | 0) + (HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0) | 0;
|
|
HEAP32[($15 + 120 | 0) >> 2] = (HEAP32[($15 + 120 | 0) >> 2] | 0) + 1 | 0;
|
|
btGeneric6DofSpring2Constraint__calculateJacobi_28btRotationalLimitMotor2__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btTypedConstraint__btConstraintInfo2__2c_20int_2c_20btVector3__2c_20int_2c_20int_29($16 | 0, HEAP32[($15 + 168 | 0) >> 2] | 0 | 0, HEAP32[($15 + 164 | 0) >> 2] | 0 | 0, HEAP32[($15 + 160 | 0) >> 2] | 0 | 0, HEAP32[($15 + 140 | 0) >> 2] | 0 | 0, HEAP32[($15 + 116 | 0) >> 2] | 0 | 0, HEAP32[($15 + 132 | 0) >> 2] | 0 | 0, HEAP32[($15 + 128 | 0) >> 2] | 0 | 0, HEAP32[($15 + 124 | 0) >> 2] | 0 | 0);
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[(HEAP32[($15 + 140 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 12 | 0) >> 2])) * Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 76 | 0) >> 2])) * Math_fround((HEAP32[($15 + 128 | 0) >> 2] | 0 ? -1 : 1) | 0));
|
|
label$11 : {
|
|
label$12 : {
|
|
if (!(HEAP32[($15 + 128 | 0) >> 2] | 0)) {
|
|
break label$12
|
|
}
|
|
label$13 : {
|
|
if (!(Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($15 + 112 | 0) >> 2])) * Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 12 | 0) >> 2])) + Math_fround(HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
HEAPF32[($15 + 100 | 0) >> 2] = Math_fround(Math_fround(-Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 8 | 0) >> 2])) * Math_fround(HEAPF32[($15 + 112 | 0) >> 2]));
|
|
label$14 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 100 | 0) >> 2]) < Math_fround(HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($15 + 100 | 0) >> 2]);
|
|
}
|
|
}
|
|
break label$11;
|
|
}
|
|
label$15 : {
|
|
if (!(Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($15 + 112 | 0) >> 2])) * Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 12 | 0) >> 2])) + Math_fround(HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
HEAPF32[($15 + 96 | 0) >> 2] = Math_fround(Math_fround(-Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 8 | 0) >> 2])) * Math_fround(HEAPF32[($15 + 112 | 0) >> 2]));
|
|
label$16 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 96 | 0) >> 2]) > Math_fround(HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($15 + 96 | 0) >> 2]);
|
|
}
|
|
}
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[($15 + 128 | 0) >> 2] | 0 ? Math_fround(-3402823466385288598117041.0e14) : Math_fround(0 | 0);
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[($15 + 128 | 0) >> 2] | 0 ? Math_fround(0 | 0) : Math_fround(3402823466385288598117041.0e14);
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 16 | 0) >> 2]);
|
|
HEAP32[($15 + 116 | 0) >> 2] = (HEAP32[($15 + 116 | 0) >> 2] | 0) + (HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0) | 0;
|
|
HEAP32[($15 + 120 | 0) >> 2] = (HEAP32[($15 + 120 | 0) >> 2] | 0) + 1 | 0;
|
|
break label$1;
|
|
}
|
|
label$17 : {
|
|
if (!((HEAP32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 84 | 0) >> 2] | 0 | 0) == (3 | 0) & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
btGeneric6DofSpring2Constraint__calculateJacobi_28btRotationalLimitMotor2__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btTypedConstraint__btConstraintInfo2__2c_20int_2c_20btVector3__2c_20int_2c_20int_29($16 | 0, HEAP32[($15 + 168 | 0) >> 2] | 0 | 0, HEAP32[($15 + 164 | 0) >> 2] | 0 | 0, HEAP32[($15 + 160 | 0) >> 2] | 0 | 0, HEAP32[($15 + 140 | 0) >> 2] | 0 | 0, HEAP32[($15 + 116 | 0) >> 2] | 0 | 0, HEAP32[($15 + 132 | 0) >> 2] | 0 | 0, HEAP32[($15 + 128 | 0) >> 2] | 0 | 0, HEAP32[($15 + 124 | 0) >> 2] | 0 | 0);
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[(HEAP32[($15 + 140 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 12 | 0) >> 2])) * Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 72 | 0) >> 2])) * Math_fround((HEAP32[($15 + 128 | 0) >> 2] | 0 ? -1 : 1) | 0));
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(-3402823466385288598117041.0e14);
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(3402823466385288598117041.0e14);
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 16 | 0) >> 2]);
|
|
HEAP32[($15 + 116 | 0) >> 2] = (HEAP32[($15 + 116 | 0) >> 2] | 0) + (HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0) | 0;
|
|
HEAP32[($15 + 120 | 0) >> 2] = (HEAP32[($15 + 120 | 0) >> 2] | 0) + 1 | 0;
|
|
}
|
|
}
|
|
label$18 : {
|
|
if (!((HEAPU8[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 28 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$18
|
|
}
|
|
if ((HEAPU8[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 40 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$18
|
|
}
|
|
btGeneric6DofSpring2Constraint__calculateJacobi_28btRotationalLimitMotor2__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btTypedConstraint__btConstraintInfo2__2c_20int_2c_20btVector3__2c_20int_2c_20int_29($16 | 0, HEAP32[($15 + 168 | 0) >> 2] | 0 | 0, HEAP32[($15 + 164 | 0) >> 2] | 0 | 0, HEAP32[($15 + 160 | 0) >> 2] | 0 | 0, HEAP32[($15 + 140 | 0) >> 2] | 0 | 0, HEAP32[($15 + 116 | 0) >> 2] | 0 | 0, HEAP32[($15 + 132 | 0) >> 2] | 0 | 0, HEAP32[($15 + 128 | 0) >> 2] | 0 | 0, HEAP32[($15 + 124 | 0) >> 2] | 0 | 0);
|
|
label$19 : {
|
|
label$20 : {
|
|
if (!(HEAP32[($15 + 128 | 0) >> 2] | 0)) {
|
|
break label$20
|
|
}
|
|
$427 = Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 32 | 0) >> 2]);
|
|
break label$19;
|
|
}
|
|
$427 = Math_fround(-Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 32 | 0) >> 2]));
|
|
}
|
|
HEAPF32[($15 + 92 | 0) >> 2] = $427;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(btTypedConstraint__getMotorFactor_28float_2c_20float_2c_20float_2c_20float_2c_20float_29($16 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 80 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[(HEAP32[($15 + 168 | 0) >> 2] | 0) >> 2])), Math_fround(Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 4 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($15 + 92 | 0) >> 2])), Math_fround(Math_fround(Math_fround(HEAPF32[(HEAP32[($15 + 140 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 20 | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 88 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 88 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 32 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 36 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 36 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 24 | 0) >> 2]);
|
|
HEAP32[($15 + 116 | 0) >> 2] = (HEAP32[($15 + 116 | 0) >> 2] | 0) + (HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0) | 0;
|
|
HEAP32[($15 + 120 | 0) >> 2] = (HEAP32[($15 + 120 | 0) >> 2] | 0) + 1 | 0;
|
|
}
|
|
label$21 : {
|
|
if (!((HEAPU8[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 28 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$21
|
|
}
|
|
if (!((HEAPU8[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 40 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$21
|
|
}
|
|
HEAPF32[($15 + 84 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 80 | 0) >> 2]) - Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 44 | 0) >> 2]));
|
|
HEAPF32[($15 + 80 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 44 | 0) >> 2]);
|
|
label$22 : {
|
|
if (!(HEAP32[($15 + 128 | 0) >> 2] | 0)) {
|
|
break label$22
|
|
}
|
|
label$23 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 84 | 0) >> 2]) > Math_fround(3.1415927410125732) & 1 | 0)) {
|
|
break label$23
|
|
}
|
|
HEAPF32[($15 + 84 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 84 | 0) >> 2]) - Math_fround(6.2831854820251465));
|
|
HEAPF32[($15 + 80 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 80 | 0) >> 2]) + Math_fround(6.2831854820251465));
|
|
}
|
|
label$24 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 84 | 0) >> 2]) < Math_fround(-3.1415927410125732) & 1 | 0)) {
|
|
break label$24
|
|
}
|
|
HEAPF32[($15 + 84 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 84 | 0) >> 2]) + Math_fround(6.2831854820251465));
|
|
HEAPF32[($15 + 80 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 80 | 0) >> 2]) - Math_fround(6.2831854820251465));
|
|
}
|
|
}
|
|
btGeneric6DofSpring2Constraint__calculateJacobi_28btRotationalLimitMotor2__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btTypedConstraint__btConstraintInfo2__2c_20int_2c_20btVector3__2c_20int_2c_20int_29($16 | 0, HEAP32[($15 + 168 | 0) >> 2] | 0 | 0, HEAP32[($15 + 164 | 0) >> 2] | 0 | 0, HEAP32[($15 + 160 | 0) >> 2] | 0 | 0, HEAP32[($15 + 140 | 0) >> 2] | 0 | 0, HEAP32[($15 + 116 | 0) >> 2] | 0 | 0, HEAP32[($15 + 132 | 0) >> 2] | 0 | 0, HEAP32[($15 + 128 | 0) >> 2] | 0 | 0, HEAP32[($15 + 124 | 0) >> 2] | 0 | 0);
|
|
label$25 : {
|
|
label$26 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 84 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$26
|
|
}
|
|
$542 = Math_fround(-Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 32 | 0) >> 2]));
|
|
break label$25;
|
|
}
|
|
$542 = Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 32 | 0) >> 2]);
|
|
}
|
|
HEAPF32[($15 + 76 | 0) >> 2] = $542;
|
|
HEAPF32[($15 + 72 | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($15 + 76 | 0) >> 2]));
|
|
label$27 : {
|
|
label$28 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 84 | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$28
|
|
}
|
|
label$29 : {
|
|
label$30 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($15 + 168 | 0) >> 2] | 0) >> 2]) > Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 4 | 0) >> 2]) & 1 | 0)) {
|
|
break label$30
|
|
}
|
|
label$31 : {
|
|
label$32 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 84 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$32
|
|
}
|
|
$568 = Math_fround(HEAPF32[($15 + 80 | 0) >> 2]);
|
|
break label$31;
|
|
}
|
|
$568 = Math_fround(-3402823466385288598117041.0e14);
|
|
}
|
|
HEAPF32[($15 + 64 | 0) >> 2] = $568;
|
|
label$33 : {
|
|
label$34 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 84 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$34
|
|
}
|
|
$578 = Math_fround(HEAPF32[($15 + 80 | 0) >> 2]);
|
|
break label$33;
|
|
}
|
|
$578 = Math_fround(3402823466385288598117041.0e14);
|
|
}
|
|
HEAPF32[($15 + 60 | 0) >> 2] = $578;
|
|
break label$29;
|
|
}
|
|
label$35 : {
|
|
label$36 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 84 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$36
|
|
}
|
|
if (!(Math_fround(HEAPF32[($15 + 80 | 0) >> 2]) > Math_fround(HEAPF32[(HEAP32[($15 + 168 | 0) >> 2] | 0) >> 2]) & 1 | 0)) {
|
|
break label$36
|
|
}
|
|
$594 = Math_fround(HEAPF32[($15 + 80 | 0) >> 2]);
|
|
break label$35;
|
|
}
|
|
$594 = Math_fround(HEAPF32[(HEAP32[($15 + 168 | 0) >> 2] | 0) >> 2]);
|
|
}
|
|
HEAPF32[($15 + 64 | 0) >> 2] = $594;
|
|
label$37 : {
|
|
label$38 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 84 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$38
|
|
}
|
|
if (!(Math_fround(HEAPF32[($15 + 80 | 0) >> 2]) < Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 4 | 0) >> 2]) & 1 | 0)) {
|
|
break label$38
|
|
}
|
|
$611 = Math_fround(HEAPF32[($15 + 80 | 0) >> 2]);
|
|
break label$37;
|
|
}
|
|
$611 = Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 4 | 0) >> 2]);
|
|
}
|
|
HEAPF32[($15 + 60 | 0) >> 2] = $611;
|
|
}
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(btTypedConstraint__getMotorFactor_28float_2c_20float_2c_20float_2c_20float_2c_20float_29($16 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 80 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($15 + 64 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($15 + 60 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($15 + 72 | 0) >> 2])), Math_fround(Math_fround(Math_fround(HEAPF32[(HEAP32[($15 + 140 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 20 | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 68 | 0) >> 2] = wasm2js_f32$0;
|
|
break label$27;
|
|
}
|
|
HEAPF32[($15 + 68 | 0) >> 2] = Math_fround(0 | 0);
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 68 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 76 | 0) >> 2])) * Math_fround((HEAP32[($15 + 128 | 0) >> 2] | 0 ? -1 : 1) | 0));
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 36 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 36 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 24 | 0) >> 2]);
|
|
HEAP32[($15 + 116 | 0) >> 2] = (HEAP32[($15 + 116 | 0) >> 2] | 0) + (HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0) | 0;
|
|
HEAP32[($15 + 120 | 0) >> 2] = (HEAP32[($15 + 120 | 0) >> 2] | 0) + 1 | 0;
|
|
}
|
|
label$39 : {
|
|
if (!((HEAPU8[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 48 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$39
|
|
}
|
|
HEAPF32[($15 + 56 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 80 | 0) >> 2]) - Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 68 | 0) >> 2]));
|
|
btGeneric6DofSpring2Constraint__calculateJacobi_28btRotationalLimitMotor2__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btTypedConstraint__btConstraintInfo2__2c_20int_2c_20btVector3__2c_20int_2c_20int_29($16 | 0, HEAP32[($15 + 168 | 0) >> 2] | 0 | 0, HEAP32[($15 + 164 | 0) >> 2] | 0 | 0, HEAP32[($15 + 160 | 0) >> 2] | 0 | 0, HEAP32[($15 + 140 | 0) >> 2] | 0 | 0, HEAP32[($15 + 116 | 0) >> 2] | 0 | 0, HEAP32[($15 + 132 | 0) >> 2] | 0 | 0, HEAP32[($15 + 128 | 0) >> 2] | 0 | 0, HEAP32[($15 + 124 | 0) >> 2] | 0 | 0);
|
|
HEAPF32[($15 + 52 | 0) >> 2] = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[(HEAP32[($15 + 140 | 0) >> 2] | 0) >> 2]));
|
|
HEAPF32[($15 + 48 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 60 | 0) >> 2]);
|
|
HEAPF32[($15 + 44 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 52 | 0) >> 2]);
|
|
label$40 : {
|
|
label$41 : {
|
|
if (!(HEAP32[($15 + 128 | 0) >> 2] | 0)) {
|
|
break label$41
|
|
}
|
|
$708 = Math_fround(Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($15 + 148 | 0) >> 2] | 0 | 0, HEAP32[($15 + 132 | 0) >> 2] | 0 | 0)) - Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($15 + 144 | 0) >> 2] | 0 | 0, HEAP32[($15 + 132 | 0) >> 2] | 0 | 0)));
|
|
break label$40;
|
|
}
|
|
$708 = Math_fround(Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($15 + 156 | 0) >> 2] | 0 | 0, HEAP32[($15 + 132 | 0) >> 2] | 0 | 0)) - Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($15 + 152 | 0) >> 2] | 0 | 0, HEAP32[($15 + 132 | 0) >> 2] | 0 | 0)));
|
|
}
|
|
HEAPF32[($15 + 40 | 0) >> 2] = $708;
|
|
HEAPF32[($15 + 36 | 0) >> 2] = Math_fround(0 | 0);
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(Math_fround(1.0) / Math_fround(btRigidBody__getInvMass_28_29_20const(HEAP32[($16 + 28 | 0) >> 2] | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(Math_fround(1.0) / Math_fround(btRigidBody__getInvMass_28_29_20const(HEAP32[($16 + 32 | 0) >> 2] | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
label$42 : {
|
|
label$43 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 32 | 0) >> 2]) > Math_fround(HEAPF32[($15 + 28 | 0) >> 2]) & 1 | 0)) {
|
|
break label$43
|
|
}
|
|
$733 = Math_fround(HEAPF32[($15 + 28 | 0) >> 2]);
|
|
break label$42;
|
|
}
|
|
$733 = Math_fround(HEAPF32[($15 + 32 | 0) >> 2]);
|
|
}
|
|
HEAPF32[($15 + 24 | 0) >> 2] = $733;
|
|
(wasm2js_i32$0 = $15, wasm2js_f32$0 = Math_fround(sqrt_5babi_v160004_5d_28float_29(Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 44 | 0) >> 2]) / Math_fround(HEAPF32[($15 + 24 | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
label$44 : {
|
|
if (!((HEAPU8[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 56 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$44
|
|
}
|
|
if (!(.25 < +Math_fround(Math_fround(HEAPF32[($15 + 20 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 52 | 0) >> 2])) & 1 | 0)) {
|
|
break label$44
|
|
}
|
|
HEAPF32[($15 + 44 | 0) >> 2] = Math_fround(Math_fround(Math_fround(Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[($15 + 52 | 0) >> 2])) / Math_fround(HEAPF32[($15 + 52 | 0) >> 2])) / Math_fround(16.0)) * Math_fround(HEAPF32[($15 + 24 | 0) >> 2]));
|
|
}
|
|
label$45 : {
|
|
if (!((HEAPU8[((HEAP32[($15 + 168 | 0) >> 2] | 0) + 64 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$45
|
|
}
|
|
if (!(Math_fround(Math_fround(HEAPF32[($15 + 48 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 52 | 0) >> 2])) > Math_fround(HEAPF32[($15 + 24 | 0) >> 2]) & 1 | 0)) {
|
|
break label$45
|
|
}
|
|
HEAPF32[($15 + 48 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 24 | 0) >> 2]) / Math_fround(HEAPF32[($15 + 52 | 0) >> 2]));
|
|
}
|
|
HEAPF32[($15 + 16 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 44 | 0) >> 2]) * Math_fround(HEAPF32[($15 + 56 | 0) >> 2])) * Math_fround(HEAPF32[($15 + 52 | 0) >> 2]));
|
|
HEAPF32[($15 + 12 | 0) >> 2] = Math_fround(Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($15 + 48 | 0) >> 2])) * Math_fround(HEAPF32[($15 + 40 | 0) >> 2])) * Math_fround((HEAP32[($15 + 128 | 0) >> 2] | 0 ? -1 : 1) | 0)) * Math_fround(HEAPF32[($15 + 52 | 0) >> 2]));
|
|
HEAPF32[($15 + 8 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($15 + 16 | 0) >> 2]) + Math_fround(HEAPF32[($15 + 12 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($15 + 8 | 0) >> 2]) * Math_fround((HEAP32[($15 + 128 | 0) >> 2] | 0 ? -1 : 1) | 0)) + Math_fround(HEAPF32[($15 + 40 | 0) >> 2]));
|
|
label$46 : {
|
|
label$47 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 8 | 0) >> 2]) < Math_fround(HEAPF32[($15 + 12 | 0) >> 2]) & 1 | 0)) {
|
|
break label$47
|
|
}
|
|
$816 = Math_fround(HEAPF32[($15 + 8 | 0) >> 2]);
|
|
break label$46;
|
|
}
|
|
$816 = Math_fround(HEAPF32[($15 + 12 | 0) >> 2]);
|
|
}
|
|
HEAPF32[($15 + 4 | 0) >> 2] = $816;
|
|
label$48 : {
|
|
label$49 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 8 | 0) >> 2]) < Math_fround(HEAPF32[($15 + 12 | 0) >> 2]) & 1 | 0)) {
|
|
break label$49
|
|
}
|
|
$825 = Math_fround(HEAPF32[($15 + 12 | 0) >> 2]);
|
|
break label$48;
|
|
}
|
|
$825 = Math_fround(HEAPF32[($15 + 8 | 0) >> 2]);
|
|
}
|
|
HEAPF32[$15 >> 2] = $825;
|
|
label$50 : {
|
|
label$51 : {
|
|
if (HEAP32[($15 + 128 | 0) >> 2] | 0) {
|
|
break label$51
|
|
}
|
|
label$52 : {
|
|
label$53 : {
|
|
if (!(Math_fround(HEAPF32[($15 + 4 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$53
|
|
}
|
|
$837 = Math_fround(0 | 0);
|
|
break label$52;
|
|
}
|
|
$837 = Math_fround(HEAPF32[($15 + 4 | 0) >> 2]);
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = $837;
|
|
label$54 : {
|
|
label$55 : {
|
|
if (!(Math_fround(HEAPF32[$15 >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$55
|
|
}
|
|
$854 = Math_fround(0 | 0);
|
|
break label$54;
|
|
}
|
|
$854 = Math_fround(HEAPF32[$15 >> 2]);
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = $854;
|
|
break label$50;
|
|
}
|
|
label$56 : {
|
|
label$57 : {
|
|
if (!(Math_fround(-Math_fround(HEAPF32[$15 >> 2])) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$57
|
|
}
|
|
$872 = Math_fround(0 | 0);
|
|
break label$56;
|
|
}
|
|
$872 = Math_fround(-Math_fround(HEAPF32[$15 >> 2]));
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = $872;
|
|
label$58 : {
|
|
label$59 : {
|
|
if (!(Math_fround(-Math_fround(HEAPF32[($15 + 4 | 0) >> 2])) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$59
|
|
}
|
|
$891 = Math_fround(0 | 0);
|
|
break label$58;
|
|
}
|
|
$891 = Math_fround(-Math_fround(HEAPF32[($15 + 4 | 0) >> 2]));
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = $891;
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) + ((HEAP32[($15 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($15 + 36 | 0) >> 2]);
|
|
HEAP32[($15 + 116 | 0) >> 2] = (HEAP32[($15 + 116 | 0) >> 2] | 0) + (HEAP32[((HEAP32[($15 + 140 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0) | 0;
|
|
HEAP32[($15 + 120 | 0) >> 2] = (HEAP32[($15 + 120 | 0) >> 2] | 0) + 1 | 0;
|
|
}
|
|
$915 = HEAP32[($15 + 120 | 0) >> 2] | 0;
|
|
__stack_pointer = $15 + 176 | 0;
|
|
return $915 | 0;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__calculateJacobi_28btRotationalLimitMotor2__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btTypedConstraint__btConstraintInfo2__2c_20int_2c_20btVector3__2c_20int_2c_20int_29($0, $1, $2, $3, $4, $5, $6, $7, $8) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
var $11 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $12 = 0, $16 = 0, $23 = 0, $111 = 0, $128 = 0, $144 = 0, $160 = 0, $29 = Math_fround(0), $39 = Math_fround(0), $49 = Math_fround(0), $60 = Math_fround(0), $71 = Math_fround(0), $82 = Math_fround(0), $491 = 0, $495 = 0, $527 = 0, $531 = 0, $560 = 0, $564 = 0, $593 = 0, $597 = 0, $194 = 0, $222 = 0;
|
|
$11 = __stack_pointer - 192 | 0;
|
|
__stack_pointer = $11;
|
|
HEAP32[($11 + 188 | 0) >> 2] = $0;
|
|
HEAP32[($11 + 184 | 0) >> 2] = $1;
|
|
HEAP32[($11 + 180 | 0) >> 2] = $2;
|
|
HEAP32[($11 + 176 | 0) >> 2] = $3;
|
|
HEAP32[($11 + 172 | 0) >> 2] = $4;
|
|
HEAP32[($11 + 168 | 0) >> 2] = $5;
|
|
HEAP32[($11 + 164 | 0) >> 2] = $6;
|
|
HEAP32[($11 + 160 | 0) >> 2] = $7;
|
|
HEAP32[($11 + 156 | 0) >> 2] = $8;
|
|
$12 = HEAP32[($11 + 188 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($11 + 160 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$16 = HEAP32[((HEAP32[($11 + 172 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
$16 = HEAP32[((HEAP32[($11 + 172 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($11 + 152 | 0) >> 2] = $16;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(HEAP32[($11 + 160 | 0) >> 2] | 0)) {
|
|
break label$4
|
|
}
|
|
$23 = HEAP32[((HEAP32[($11 + 172 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0;
|
|
break label$3;
|
|
}
|
|
$23 = HEAP32[((HEAP32[($11 + 172 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($11 + 148 | 0) >> 2] = $23;
|
|
$29 = Math_fround(HEAPF32[(btVector3__operator_20float__28_29(HEAP32[($11 + 164 | 0) >> 2] | 0 | 0) | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($11 + 152 | 0) >> 2] | 0) + (((HEAP32[($11 + 168 | 0) >> 2] | 0) + 0 | 0) << 2 | 0) | 0) >> 2] = $29;
|
|
$39 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29(HEAP32[($11 + 164 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($11 + 152 | 0) >> 2] | 0) + (((HEAP32[($11 + 168 | 0) >> 2] | 0) + 1 | 0) << 2 | 0) | 0) >> 2] = $39;
|
|
$49 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29(HEAP32[($11 + 164 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($11 + 152 | 0) >> 2] | 0) + (((HEAP32[($11 + 168 | 0) >> 2] | 0) + 2 | 0) << 2 | 0) | 0) >> 2] = $49;
|
|
$60 = Math_fround(-Math_fround(HEAPF32[(btVector3__operator_20float__28_29(HEAP32[($11 + 164 | 0) >> 2] | 0 | 0) | 0) >> 2]));
|
|
HEAPF32[((HEAP32[($11 + 148 | 0) >> 2] | 0) + (((HEAP32[($11 + 168 | 0) >> 2] | 0) + 0 | 0) << 2 | 0) | 0) >> 2] = $60;
|
|
$71 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float__28_29(HEAP32[($11 + 164 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[($11 + 148 | 0) >> 2] | 0) + (((HEAP32[($11 + 168 | 0) >> 2] | 0) + 1 | 0) << 2 | 0) | 0) >> 2] = $71;
|
|
$82 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float__28_29(HEAP32[($11 + 164 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[($11 + 148 | 0) >> 2] | 0) + (((HEAP32[($11 + 168 | 0) >> 2] | 0) + 2 | 0) << 2 | 0) | 0) >> 2] = $82;
|
|
label$5 : {
|
|
if (HEAP32[($11 + 160 | 0) >> 2] | 0) {
|
|
break label$5
|
|
}
|
|
btVector3__btVector3_28_29($11 + 128 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($11 + 112 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($11 + 96 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($11 + 80 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($11 + 64 | 0 | 0, btTransform__getOrigin_28_29($12 + 1300 | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($11 + 176 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$111 = 8;
|
|
i64toi32_i32$2 = ($11 + 64 | 0) + $111 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$491 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($11 + 80 | 0) + $111 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $491;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $11;
|
|
i64toi32_i32$1 = HEAP32[($11 + 64 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($11 + 68 | 0) >> 2] | 0;
|
|
$495 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11;
|
|
HEAP32[($11 + 80 | 0) >> 2] = $495;
|
|
HEAP32[($11 + 84 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($11 + 48 | 0 | 0, btTransform__getOrigin_28_29($12 + 1236 | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($11 + 180 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$128 = 8;
|
|
i64toi32_i32$2 = ($11 + 48 | 0) + $128 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$527 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($11 + 96 | 0) + $128 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $527;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $11;
|
|
i64toi32_i32$1 = HEAP32[($11 + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($11 + 52 | 0) >> 2] | 0;
|
|
$531 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11;
|
|
HEAP32[($11 + 96 | 0) >> 2] = $531;
|
|
HEAP32[($11 + 100 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__cross_28btVector3_20const__29_20const($11 + 32 | 0 | 0, $11 + 96 | 0 | 0, HEAP32[($11 + 164 | 0) >> 2] | 0 | 0);
|
|
$144 = 8;
|
|
i64toi32_i32$2 = ($11 + 32 | 0) + $144 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$560 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($11 + 128 | 0) + $144 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $560;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $11;
|
|
i64toi32_i32$1 = HEAP32[($11 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($11 + 36 | 0) >> 2] | 0;
|
|
$564 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11;
|
|
HEAP32[($11 + 128 | 0) >> 2] = $564;
|
|
HEAP32[($11 + 132 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__cross_28btVector3_20const__29_20const($11 + 16 | 0 | 0, $11 + 80 | 0 | 0, HEAP32[($11 + 164 | 0) >> 2] | 0 | 0);
|
|
$160 = 8;
|
|
i64toi32_i32$2 = ($11 + 16 | 0) + $160 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$593 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($11 + 112 | 0) + $160 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $593;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $11;
|
|
i64toi32_i32$1 = HEAP32[($11 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($11 + 20 | 0) >> 2] | 0;
|
|
$597 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11;
|
|
HEAP32[($11 + 112 | 0) >> 2] = $597;
|
|
HEAP32[($11 + 116 | 0) >> 2] = i64toi32_i32$0;
|
|
label$6 : {
|
|
if (!((HEAPU8[($12 + 1452 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
if (HEAP32[($11 + 156 | 0) >> 2] | 0) {
|
|
break label$6
|
|
}
|
|
btVector3__operator___28float_20const__29_1($11 + 128 | 0 | 0, $12 + 1444 | 0 | 0) | 0;
|
|
btVector3__operator___28float_20const__29_1($11 + 112 | 0 | 0, $12 + 1448 | 0 | 0) | 0;
|
|
}
|
|
HEAP32[($11 + 12 | 0) >> 2] = 0;
|
|
label$7 : {
|
|
label$8 : while (1) {
|
|
if (!((HEAP32[($11 + 12 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
$194 = btVector3__operator_20float__28_29($11 + 128 | 0 | 0) | 0;
|
|
HEAPF32[((HEAP32[((HEAP32[($11 + 172 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + (((HEAP32[($11 + 168 | 0) >> 2] | 0) + (HEAP32[($11 + 12 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($194 + ((HEAP32[($11 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
HEAP32[($11 + 12 | 0) >> 2] = (HEAP32[($11 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$8;
|
|
};
|
|
}
|
|
HEAP32[($11 + 12 | 0) >> 2] = 0;
|
|
label$9 : {
|
|
label$10 : while (1) {
|
|
if (!((HEAP32[($11 + 12 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
$222 = btVector3__operator_20float__28_29($11 + 112 | 0 | 0) | 0;
|
|
HEAPF32[((HEAP32[((HEAP32[($11 + 172 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + (((HEAP32[($11 + 168 | 0) >> 2] | 0) + (HEAP32[($11 + 12 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($222 + ((HEAP32[($11 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]));
|
|
HEAP32[($11 + 12 | 0) >> 2] = (HEAP32[($11 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$10;
|
|
};
|
|
}
|
|
}
|
|
__stack_pointer = $11 + 192 | 0;
|
|
return;
|
|
}
|
|
|
|
function sqrt_5babi_v160004_5d_28float_29($0) {
|
|
$0 = Math_fround($0);
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAPF32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(Math_sqrt(Math_fround(HEAPF32[($3 + 12 | 0) >> 2]))));
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__setFrames_28btTransform_20const__2c_20btTransform_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btTransform__operator__28btTransform_20const__29($6 + 48 | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
btTransform__operator__28btTransform_20const__29($6 + 112 | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($6);
|
|
btGeneric6DofSpring2Constraint__calculateTransforms_28_29($6 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__setParam_28int_2c_20float_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $24 = 0, $114 = 0, $26 = Math_fround(0), $43 = Math_fround(0), $60 = Math_fround(0), $77 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[$6 >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if (!((HEAP32[$6 >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$24 = (HEAP32[($6 + 8 | 0) >> 2] | 0) + -1 | 0;
|
|
label$3 : {
|
|
label$4 : {
|
|
switch ($24 | 0) {
|
|
case 1:
|
|
$26 = Math_fround(HEAPF32[($6 + 4 | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29(($7 + 680 | 0) + 48 | 0 | 0) | 0) + ((HEAP32[$6 >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $26), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP32[($7 + 1456 | 0) >> 2] = HEAP32[($7 + 1456 | 0) >> 2] | 0 | (2 << ((HEAP32[$6 >> 2] | 0) << 2 | 0) | 0) | 0;
|
|
break label$3;
|
|
case 3:
|
|
$43 = Math_fround(HEAPF32[($6 + 4 | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29(($7 + 680 | 0) + 64 | 0 | 0) | 0) + ((HEAP32[$6 >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $43), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP32[($7 + 1456 | 0) >> 2] = HEAP32[($7 + 1456 | 0) >> 2] | 0 | (1 << ((HEAP32[$6 >> 2] | 0) << 2 | 0) | 0) | 0;
|
|
break label$3;
|
|
case 0:
|
|
$60 = Math_fround(HEAPF32[($6 + 4 | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29(($7 + 680 | 0) + 80 | 0 | 0) | 0) + ((HEAP32[$6 >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $60), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP32[($7 + 1456 | 0) >> 2] = HEAP32[($7 + 1456 | 0) >> 2] | 0 | (8 << ((HEAP32[$6 >> 2] | 0) << 2 | 0) | 0) | 0;
|
|
break label$3;
|
|
case 2:
|
|
$77 = Math_fround(HEAPF32[($6 + 4 | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29(($7 + 680 | 0) + 96 | 0 | 0) | 0) + ((HEAP32[$6 >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $77), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP32[($7 + 1456 | 0) >> 2] = HEAP32[($7 + 1456 | 0) >> 2] | 0 | (4 << ((HEAP32[$6 >> 2] | 0) << 2 | 0) | 0) | 0;
|
|
break label$3;
|
|
default:
|
|
break label$4;
|
|
};
|
|
}
|
|
__assert_fail(86177 | 0, 71825 | 0, 867 | 0, 77248 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
break label$1;
|
|
}
|
|
label$9 : {
|
|
label$10 : {
|
|
if (!((HEAP32[$6 >> 2] | 0 | 0) >= (3 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
if (!((HEAP32[$6 >> 2] | 0 | 0) < (6 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
$114 = (HEAP32[($6 + 8 | 0) >> 2] | 0) + -1 | 0;
|
|
label$11 : {
|
|
label$12 : {
|
|
switch ($114 | 0) {
|
|
case 1:
|
|
HEAPF32[((($7 + 968 | 0) + Math_imul((HEAP32[$6 >> 2] | 0) - 3 | 0, 88) | 0) + 12 | 0) >> 2] = Math_fround(HEAPF32[($6 + 4 | 0) >> 2]);
|
|
HEAP32[($7 + 1456 | 0) >> 2] = HEAP32[($7 + 1456 | 0) >> 2] | 0 | (2 << ((HEAP32[$6 >> 2] | 0) << 2 | 0) | 0) | 0;
|
|
break label$11;
|
|
case 3:
|
|
HEAPF32[((($7 + 968 | 0) + Math_imul((HEAP32[$6 >> 2] | 0) - 3 | 0, 88) | 0) + 16 | 0) >> 2] = Math_fround(HEAPF32[($6 + 4 | 0) >> 2]);
|
|
HEAP32[($7 + 1456 | 0) >> 2] = HEAP32[($7 + 1456 | 0) >> 2] | 0 | (1 << ((HEAP32[$6 >> 2] | 0) << 2 | 0) | 0) | 0;
|
|
break label$11;
|
|
case 0:
|
|
HEAPF32[((($7 + 968 | 0) + Math_imul((HEAP32[$6 >> 2] | 0) - 3 | 0, 88) | 0) + 20 | 0) >> 2] = Math_fround(HEAPF32[($6 + 4 | 0) >> 2]);
|
|
HEAP32[($7 + 1456 | 0) >> 2] = HEAP32[($7 + 1456 | 0) >> 2] | 0 | (8 << ((HEAP32[$6 >> 2] | 0) << 2 | 0) | 0) | 0;
|
|
break label$11;
|
|
case 2:
|
|
HEAPF32[((($7 + 968 | 0) + Math_imul((HEAP32[$6 >> 2] | 0) - 3 | 0, 88) | 0) + 24 | 0) >> 2] = Math_fround(HEAPF32[($6 + 4 | 0) >> 2]);
|
|
HEAP32[($7 + 1456 | 0) >> 2] = HEAP32[($7 + 1456 | 0) >> 2] | 0 | (4 << ((HEAP32[$6 >> 2] | 0) << 2 | 0) | 0) | 0;
|
|
break label$11;
|
|
default:
|
|
break label$12;
|
|
};
|
|
}
|
|
__assert_fail(86177 | 0, 71825 | 0, 891 | 0, 77248 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
break label$9;
|
|
}
|
|
__assert_fail(86177 | 0, 71825 | 0, 896 | 0, 77248 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
}
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__getParam_28int_2c_20int_29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $25 = 0, $131 = 0, $221 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[$5 >> 2] = Math_fround(0 | 0);
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if (!((HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$25 = (HEAP32[($5 + 8 | 0) >> 2] | 0) + -1 | 0;
|
|
label$3 : {
|
|
label$4 : {
|
|
switch ($25 | 0) {
|
|
case 1:
|
|
label$9 : {
|
|
if ((HEAP32[($6 + 1456 | 0) >> 2] | 0) & (2 << ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) | 0) {
|
|
break label$9
|
|
}
|
|
__assert_fail(86890 | 0, 71825 | 0, 909 | 0, 77257 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(($6 + 680 | 0) + 48 | 0 | 0) | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
break label$3;
|
|
case 3:
|
|
label$10 : {
|
|
if ((HEAP32[($6 + 1456 | 0) >> 2] | 0) & (1 << ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) | 0) {
|
|
break label$10
|
|
}
|
|
__assert_fail(86940 | 0, 71825 | 0, 913 | 0, 77257 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(($6 + 680 | 0) + 64 | 0 | 0) | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
break label$3;
|
|
case 0:
|
|
label$11 : {
|
|
if ((HEAP32[($6 + 1456 | 0) >> 2] | 0) & (8 << ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) | 0) {
|
|
break label$11
|
|
}
|
|
__assert_fail(86990 | 0, 71825 | 0, 917 | 0, 77257 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(($6 + 680 | 0) + 80 | 0 | 0) | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
break label$3;
|
|
case 2:
|
|
label$12 : {
|
|
if ((HEAP32[($6 + 1456 | 0) >> 2] | 0) & (4 << ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) | 0) {
|
|
break label$12
|
|
}
|
|
__assert_fail(87040 | 0, 71825 | 0, 921 | 0, 77257 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(($6 + 680 | 0) + 96 | 0 | 0) | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
break label$3;
|
|
default:
|
|
break label$4;
|
|
};
|
|
}
|
|
__assert_fail(86177 | 0, 71825 | 0, 925 | 0, 77257 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
break label$1;
|
|
}
|
|
label$13 : {
|
|
label$14 : {
|
|
if (!((HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) >= (3 | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
if (!((HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) < (6 | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
$131 = (HEAP32[($5 + 8 | 0) >> 2] | 0) + -1 | 0;
|
|
label$15 : {
|
|
label$16 : {
|
|
switch ($131 | 0) {
|
|
case 1:
|
|
label$21 : {
|
|
if ((HEAP32[($6 + 1456 | 0) >> 2] | 0) & (2 << ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) | 0) {
|
|
break label$21
|
|
}
|
|
__assert_fail(86890 | 0, 71825 | 0, 933 | 0, 77257 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAPF32[$5 >> 2] = Math_fround(HEAPF32[((($6 + 968 | 0) + Math_imul((HEAP32[($5 + 4 | 0) >> 2] | 0) - 3 | 0, 88) | 0) + 12 | 0) >> 2]);
|
|
break label$15;
|
|
case 3:
|
|
label$22 : {
|
|
if ((HEAP32[($6 + 1456 | 0) >> 2] | 0) & (1 << ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) | 0) {
|
|
break label$22
|
|
}
|
|
__assert_fail(86940 | 0, 71825 | 0, 937 | 0, 77257 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAPF32[$5 >> 2] = Math_fround(HEAPF32[((($6 + 968 | 0) + Math_imul((HEAP32[($5 + 4 | 0) >> 2] | 0) - 3 | 0, 88) | 0) + 16 | 0) >> 2]);
|
|
break label$15;
|
|
case 0:
|
|
label$23 : {
|
|
if ((HEAP32[($6 + 1456 | 0) >> 2] | 0) & (8 << ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) | 0) {
|
|
break label$23
|
|
}
|
|
__assert_fail(86990 | 0, 71825 | 0, 941 | 0, 77257 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAPF32[$5 >> 2] = Math_fround(HEAPF32[((($6 + 968 | 0) + Math_imul((HEAP32[($5 + 4 | 0) >> 2] | 0) - 3 | 0, 88) | 0) + 20 | 0) >> 2]);
|
|
break label$15;
|
|
case 2:
|
|
label$24 : {
|
|
if ((HEAP32[($6 + 1456 | 0) >> 2] | 0) & (4 << ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) | 0) {
|
|
break label$24
|
|
}
|
|
__assert_fail(87040 | 0, 71825 | 0, 945 | 0, 77257 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAPF32[$5 >> 2] = Math_fround(HEAPF32[((($6 + 968 | 0) + Math_imul((HEAP32[($5 + 4 | 0) >> 2] | 0) - 3 | 0, 88) | 0) + 24 | 0) >> 2]);
|
|
break label$15;
|
|
default:
|
|
break label$16;
|
|
};
|
|
}
|
|
__assert_fail(86177 | 0, 71825 | 0, 949 | 0, 77257 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
break label$13;
|
|
}
|
|
__assert_fail(86177 | 0, 71825 | 0, 954 | 0, 77257 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
}
|
|
$221 = Math_fround(HEAPF32[$5 >> 2]);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return Math_fround($221);
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__setBounce_28int_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $6 = 0, $32 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if ((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (6 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
}
|
|
__assert_fail(86524 | 0, 71825 | 0, 982 | 0, 82167 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$32 = Math_fround(HEAPF32[($5 + 4 | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29(($6 + 680 | 0) + 32 | 0 | 0) | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $32), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
break label$3;
|
|
}
|
|
HEAPF32[((($6 + 968 | 0) + Math_imul((HEAP32[($5 + 8 | 0) >> 2] | 0) - 3 | 0, 88) | 0) + 8 | 0) >> 2] = Math_fround(HEAPF32[($5 + 4 | 0) >> 2]);
|
|
}
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__enableMotor_28int_2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $7 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 7 | 0) >> 0] = $2;
|
|
$7 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if ((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (6 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
}
|
|
__assert_fail(86524 | 0, 71825 | 0, 991 | 0, 70654 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP8[((($7 + 680 | 0) + 112 | 0) + (HEAP32[($5 + 8 | 0) >> 2] | 0) | 0) >> 0] = (HEAPU8[($5 + 7 | 0) >> 0] | 0) & 1 | 0;
|
|
break label$3;
|
|
}
|
|
HEAP8[((($7 + 968 | 0) + Math_imul((HEAP32[($5 + 8 | 0) >> 2] | 0) - 3 | 0, 88) | 0) + 28 | 0) >> 0] = (HEAPU8[($5 + 7 | 0) >> 0] | 0) & 1 | 0;
|
|
}
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__setServo_28int_2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $7 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 7 | 0) >> 0] = $2;
|
|
$7 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if ((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (6 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
}
|
|
__assert_fail(86524 | 0, 71825 | 0, 1e3 | 0, 76180 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP8[((($7 + 680 | 0) + 115 | 0) + (HEAP32[($5 + 8 | 0) >> 2] | 0) | 0) >> 0] = (HEAPU8[($5 + 7 | 0) >> 0] | 0) & 1 | 0;
|
|
break label$3;
|
|
}
|
|
HEAP8[((($7 + 968 | 0) + Math_imul((HEAP32[($5 + 8 | 0) >> 2] | 0) - 3 | 0, 88) | 0) + 40 | 0) >> 0] = (HEAPU8[($5 + 7 | 0) >> 0] | 0) & 1 | 0;
|
|
}
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__setTargetVelocity_28int_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $6 = 0, $32 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if ((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (6 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
}
|
|
__assert_fail(86524 | 0, 71825 | 0, 1009 | 0, 65757 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$32 = Math_fround(HEAPF32[($5 + 4 | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29(($6 + 680 | 0) + 196 | 0 | 0) | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $32), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
break label$3;
|
|
}
|
|
HEAPF32[((($6 + 968 | 0) + Math_imul((HEAP32[($5 + 8 | 0) >> 2] | 0) - 3 | 0, 88) | 0) + 32 | 0) >> 2] = Math_fround(HEAPF32[($5 + 4 | 0) >> 2]);
|
|
}
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__setServoTarget_28int_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $6 = 0, $32 = Math_fround(0), $45 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if ((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) < (6 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
}
|
|
__assert_fail(86524 | 0, 71825 | 0, 1020 | 0, 68608 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$32 = Math_fround(HEAPF32[($5 + 20 | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29(($6 + 680 | 0) + 124 | 0 | 0) | 0) + ((HEAP32[($5 + 24 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $32), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
break label$3;
|
|
}
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 20 | 0) >> 2]) + Math_fround(3.1415927410125732));
|
|
$45 = Math_fround(HEAPF32[($5 + 16 | 0) >> 2]);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(floor_5babi_v160004_5d_28float_29(Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 16 | 0) >> 2]) / Math_fround(6.2831854820251465))))) * Math_fround(-6.2831854820251465)) + $45)), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 12 | 0) >> 2]) >= Math_fround(6.2831854820251465) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
break label$5;
|
|
}
|
|
label$7 : {
|
|
label$8 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 12 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
label$9 : {
|
|
label$10 : {
|
|
if (!(Math_fround(Math_fround(6.2831854820251465) + Math_fround(HEAPF32[($5 + 12 | 0) >> 2])) == Math_fround(6.2831854820251465) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
break label$9;
|
|
}
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(Math_fround(6.2831854820251465) + Math_fround(HEAPF32[($5 + 12 | 0) >> 2]));
|
|
}
|
|
break label$7;
|
|
}
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(HEAPF32[($5 + 12 | 0) >> 2]);
|
|
}
|
|
}
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 16 | 0) >> 2]) - Math_fround(3.1415927410125732));
|
|
HEAPF32[((($6 + 968 | 0) + Math_imul((HEAP32[($5 + 24 | 0) >> 2] | 0) - 3 | 0, 88) | 0) + 44 | 0) >> 2] = Math_fround(HEAPF32[($5 + 16 | 0) >> 2]);
|
|
}
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function floor_5babi_v160004_5d_28float_29($0) {
|
|
$0 = Math_fround($0);
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAPF32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(Math_floor(Math_fround(HEAPF32[($3 + 12 | 0) >> 2]))));
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__setMaxMotorForce_28int_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $6 = 0, $32 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if ((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (6 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
}
|
|
__assert_fail(86524 | 0, 71825 | 0, 1063 | 0, 82121 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$32 = Math_fround(HEAPF32[($5 + 4 | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29(($6 + 680 | 0) + 212 | 0 | 0) | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $32), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
break label$3;
|
|
}
|
|
HEAPF32[((($6 + 968 | 0) + Math_imul((HEAP32[($5 + 8 | 0) >> 2] | 0) - 3 | 0, 88) | 0) + 36 | 0) >> 2] = Math_fround(HEAPF32[($5 + 4 | 0) >> 2]);
|
|
}
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__enableSpring_28int_2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $7 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 7 | 0) >> 0] = $2;
|
|
$7 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if ((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (6 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
}
|
|
__assert_fail(86524 | 0, 71825 | 0, 1072 | 0, 80592 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP8[((($7 + 680 | 0) + 118 | 0) + (HEAP32[($5 + 8 | 0) >> 2] | 0) | 0) >> 0] = (HEAPU8[($5 + 7 | 0) >> 0] | 0) & 1 | 0;
|
|
break label$3;
|
|
}
|
|
HEAP8[((($7 + 968 | 0) + Math_imul((HEAP32[($5 + 8 | 0) >> 2] | 0) - 3 | 0, 88) | 0) + 48 | 0) >> 0] = (HEAPU8[($5 + 7 | 0) >> 0] | 0) & 1 | 0;
|
|
}
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__setStiffness_28int_2c_20float_2c_20bool_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $8 = 0, $34 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP8[($6 + 3 | 0) >> 0] = $3;
|
|
$8 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if ((HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) < (6 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
}
|
|
__assert_fail(86524 | 0, 71825 | 0, 1081 | 0, 69344 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$34 = Math_fround(HEAPF32[($6 + 4 | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29(($8 + 680 | 0) + 140 | 0 | 0) | 0) + ((HEAP32[($6 + 8 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $34), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP8[((($8 + 680 | 0) + 156 | 0) + (HEAP32[($6 + 8 | 0) >> 2] | 0) | 0) >> 0] = (HEAPU8[($6 + 3 | 0) >> 0] | 0) & 1 | 0;
|
|
break label$3;
|
|
}
|
|
HEAPF32[((($8 + 968 | 0) + Math_imul((HEAP32[($6 + 8 | 0) >> 2] | 0) - 3 | 0, 88) | 0) + 52 | 0) >> 2] = Math_fround(HEAPF32[($6 + 4 | 0) >> 2]);
|
|
HEAP8[((($8 + 968 | 0) + Math_imul((HEAP32[($6 + 8 | 0) >> 2] | 0) - 3 | 0, 88) | 0) + 56 | 0) >> 0] = (HEAPU8[($6 + 3 | 0) >> 0] | 0) & 1 | 0;
|
|
}
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__setDamping_28int_2c_20float_2c_20bool_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $8 = 0, $34 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP8[($6 + 3 | 0) >> 0] = $3;
|
|
$8 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if ((HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) < (6 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
}
|
|
__assert_fail(86524 | 0, 71825 | 0, 1093 | 0, 80675 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$34 = Math_fround(HEAPF32[($6 + 4 | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29(($8 + 680 | 0) + 160 | 0 | 0) | 0) + ((HEAP32[($6 + 8 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $34), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP8[((($8 + 680 | 0) + 176 | 0) + (HEAP32[($6 + 8 | 0) >> 2] | 0) | 0) >> 0] = (HEAPU8[($6 + 3 | 0) >> 0] | 0) & 1 | 0;
|
|
break label$3;
|
|
}
|
|
HEAPF32[((($8 + 968 | 0) + Math_imul((HEAP32[($6 + 8 | 0) >> 2] | 0) - 3 | 0, 88) | 0) + 60 | 0) >> 2] = Math_fround(HEAPF32[($6 + 4 | 0) >> 2]);
|
|
HEAP8[((($8 + 968 | 0) + Math_imul((HEAP32[($6 + 8 | 0) >> 2] | 0) - 3 | 0, 88) | 0) + 64 | 0) >> 0] = (HEAPU8[($6 + 3 | 0) >> 0] | 0) & 1 | 0;
|
|
}
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__setEquilibriumPoint_28int_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $6 = 0, $32 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if ((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (6 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
}
|
|
__assert_fail(86524 | 0, 71825 | 0, 1125 | 0, 67685 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$32 = Math_fround(HEAPF32[($5 + 4 | 0) >> 2]);
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29(($6 + 680 | 0) + 180 | 0 | 0) | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = $32), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
break label$3;
|
|
}
|
|
HEAPF32[((($6 + 968 | 0) + Math_imul((HEAP32[($5 + 8 | 0) >> 2] | 0) - 3 | 0, 88) | 0) + 68 | 0) >> 2] = Math_fround(HEAPF32[($5 + 4 | 0) >> 2]);
|
|
}
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint___btGeneric6DofSpring2Constraint_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btGeneric6DofSpring2Constraint___btGeneric6DofSpring2Constraint_28_29($4 | 0) | 0;
|
|
btGeneric6DofSpring2Constraint__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btGeneric6DofSpring2Constraint_cpp() {
|
|
__cxx_global_var_init_69();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_70() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(115404 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btAngularLimit__btAngularLimit_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[$4 >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 4 | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[($4 + 8 | 0) >> 2] = Math_fround(.8999999761581421);
|
|
HEAPF32[($4 + 12 | 0) >> 2] = Math_fround(.30000001192092896);
|
|
HEAPF32[($4 + 16 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($4 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 24 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP8[($4 + 28 | 0) >> 0] = 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function quatRotate_28btQuaternion_20const__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $2;
|
|
operator__28btQuaternion_20const__2c_20btVector3_20const__29($5 + 24 | 0 | 0, HEAP32[($5 + 44 | 0) >> 2] | 0 | 0, HEAP32[($5 + 40 | 0) >> 2] | 0 | 0);
|
|
btQuaternion__inverse_28_29_20const($5 + 8 | 0 | 0, HEAP32[($5 + 44 | 0) >> 2] | 0 | 0);
|
|
btQuaternion__operator___28btQuaternion_20const__29($5 + 24 | 0 | 0, $5 + 8 | 0 | 0) | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, btQuadWord__getX_28_29_20const($5 + 24 | 0 | 0) | 0 | 0, btQuadWord__getY_28_29_20const($5 + 24 | 0 | 0) | 0 | 0, btQuadWord__getZ_28_29_20const($5 + 24 | 0 | 0) | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function operator__28btQuaternion_20const__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $20 = Math_fround(0), $44 = Math_fround(0), $68 = Math_fround(0), $94 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $2;
|
|
$20 = Math_fround(Math_fround(Math_fround(HEAPF32[(btQuadWord__w_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[(btQuadWord__y_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])));
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[(btQuadWord__z_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2])) * Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $20)), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
$44 = Math_fround(Math_fround(Math_fround(HEAPF32[(btQuadWord__w_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[(btQuadWord__z_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])));
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[(btQuadWord__x_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2])) * Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $44)), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
$68 = Math_fround(Math_fround(Math_fround(HEAPF32[(btQuadWord__w_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[(btQuadWord__x_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])));
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[(btQuadWord__y_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2])) * Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $68)), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
$94 = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[(btQuadWord__x_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2])) * Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[(btQuadWord__y_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2]))));
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[(btQuadWord__z_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0) >> 2])) * Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $94)), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
btQuaternion__btQuaternion_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $5 + 20 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0, $5 + 8 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btQuaternion__operator___28btQuaternion_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $15 = Math_fround(0), $21 = Math_fround(0), $38 = Math_fround(0), $44 = Math_fround(0), $61 = Math_fround(0), $67 = Math_fround(0), $85 = Math_fround(0), $92 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
$15 = Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 12 | 0) >> 2]) * Math_fround(HEAPF32[(btQuadWord__x_28_29_20const(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[$5 >> 2]) * Math_fround(HEAPF32[((HEAP32[($4 + 24 | 0) >> 2] | 0) + 12 | 0) >> 2])));
|
|
$21 = Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2]) * Math_fround(HEAPF32[(btQuadWord__z_28_29_20const(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $15);
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($5 + 8 | 0) >> 2])) * Math_fround(HEAPF32[(btQuadWord__y_28_29_20const(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $21)), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
$38 = Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 12 | 0) >> 2]) * Math_fround(HEAPF32[(btQuadWord__y_28_29_20const(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($4 + 24 | 0) >> 2] | 0) + 12 | 0) >> 2])));
|
|
$44 = Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 8 | 0) >> 2]) * Math_fround(HEAPF32[(btQuadWord__x_28_29_20const(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $38);
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[$5 >> 2])) * Math_fround(HEAPF32[(btQuadWord__z_28_29_20const(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $44)), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
$61 = Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 12 | 0) >> 2]) * Math_fround(HEAPF32[(btQuadWord__z_28_29_20const(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($5 + 8 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($4 + 24 | 0) >> 2] | 0) + 12 | 0) >> 2])));
|
|
$67 = Math_fround(Math_fround(Math_fround(HEAPF32[$5 >> 2]) * Math_fround(HEAPF32[(btQuadWord__y_28_29_20const(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $61);
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($5 + 4 | 0) >> 2])) * Math_fround(HEAPF32[(btQuadWord__x_28_29_20const(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $67)), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
$85 = Math_fround(Math_fround(Math_fround(HEAPF32[($5 + 12 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($4 + 24 | 0) >> 2] | 0) + 12 | 0) >> 2])) + Math_fround(-Math_fround(Math_fround(HEAPF32[$5 >> 2]) * Math_fround(HEAPF32[(btQuadWord__x_28_29_20const(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2]))));
|
|
$92 = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($5 + 4 | 0) >> 2])) * Math_fround(HEAPF32[(btQuadWord__y_28_29_20const(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $85);
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($5 + 8 | 0) >> 2])) * Math_fround(HEAPF32[(btQuadWord__z_28_29_20const(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2])) + $92)), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
btQuadWord__setValue_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($5 | 0, $4 + 20 | 0 | 0, $4 + 16 | 0 | 0, $4 + 12 | 0 | 0, $4 + 8 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btQuadWord__getX_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btQuadWord__getY_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0 | 0;
|
|
}
|
|
|
|
function btQuadWord__getZ_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0 | 0;
|
|
}
|
|
|
|
function btHingeConstraint__btHingeConstraint_28btRigidBody__2c_20btRigidBody__2c_20btTransform_20const__2c_20btTransform_20const__2c_20bool_29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $10 = 0, $8 = 0, $18 = 0, $21 = 0, $22 = 0, $24 = 0, $31 = 0, $34 = 0, $35 = 0, $37 = 0, $20 = 0, $33 = 0, $73 = 0;
|
|
$8 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 16 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 12 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 8 | 0) >> 2] = $4;
|
|
HEAP8[($8 + 7 | 0) >> 0] = $5;
|
|
$10 = HEAP32[($8 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $10;
|
|
btTypedConstraint__btTypedConstraint_28btTypedConstraintType_2c_20btRigidBody__2c_20btRigidBody__29($10 | 0, 4 | 0, HEAP32[($8 + 20 | 0) >> 2] | 0 | 0, HEAP32[($8 + 16 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$10 >> 2] = 102188 + 8 | 0;
|
|
$18 = $10 + 48 | 0;
|
|
$20 = $18 + 252 | 0;
|
|
$21 = $18;
|
|
label$1 : while (1) {
|
|
$22 = $21;
|
|
btJacobianEntry__btJacobianEntry_28_29($22 | 0) | 0;
|
|
$24 = $22 + 84 | 0;
|
|
$21 = $24;
|
|
if (!(($24 | 0) == ($20 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
$31 = $10 + 300 | 0;
|
|
$33 = $31 + 252 | 0;
|
|
$34 = $31;
|
|
label$2 : while (1) {
|
|
$35 = $34;
|
|
btJacobianEntry__btJacobianEntry_28_29($35 | 0) | 0;
|
|
$37 = $35 + 84 | 0;
|
|
$34 = $37;
|
|
if (!(($37 | 0) == ($33 | 0) & 1 | 0)) {
|
|
continue label$2
|
|
}
|
|
break label$2;
|
|
};
|
|
btTransform__btTransform_28btTransform_20const__29($10 + 552 | 0 | 0, HEAP32[($8 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
btTransform__btTransform_28btTransform_20const__29($10 + 616 | 0 | 0, HEAP32[($8 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
btAngularLimit__btAngularLimit_28_29($10 + 688 | 0 | 0) | 0;
|
|
HEAP8[($10 + 736 | 0) >> 0] = 0;
|
|
HEAP8[($10 + 737 | 0) >> 0] = 0;
|
|
HEAP8[($10 + 738 | 0) >> 0] = 0;
|
|
HEAP8[($10 + 739 | 0) >> 0] = 1;
|
|
HEAP8[($10 + 740 | 0) >> 0] = (HEAPU8[($8 + 7 | 0) >> 0] | 0) & 1 | 0;
|
|
HEAP32[($10 + 748 | 0) >> 2] = 0;
|
|
HEAPF32[($10 + 752 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($10 + 756 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($10 + 760 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($10 + 764 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($10 + 732 | 0) >> 2] = (HEAPU8[($10 + 740 | 0) >> 0] | 0) & 1 | 0 ? Math_fround(-1.0) : Math_fround(1.0);
|
|
$73 = HEAP32[($8 + 28 | 0) >> 2] | 0;
|
|
__stack_pointer = $8 + 32 | 0;
|
|
return $73 | 0;
|
|
}
|
|
|
|
function btHingeConstraint__buildJacobian_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $42 = 0, $45 = 0, $46 = 0, $48 = 0, $70 = 0, $72 = 0, $44 = 0, $487 = 0, $500 = 0, $121 = 0, $222 = 0, $329 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$3 = __stack_pointer - 704 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 700 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 700 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($4 + 738 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[($4 + 36 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 744 | 0) >> 2] = Math_fround(0 | 0);
|
|
label$2 : {
|
|
if ((HEAPU8[($4 + 736 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
btTransform__operator__28btVector3_20const__29_20const($3 + 684 | 0 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($4 + 28 | 0) >> 2] | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29($4 + 552 | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($3 + 668 | 0 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($4 + 32 | 0) >> 2] | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29($4 + 616 | 0 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($3 + 652 | 0 | 0, $3 + 668 | 0 | 0, $3 + 684 | 0 | 0);
|
|
$42 = $3 + 592 | 0;
|
|
$44 = $42 + 48 | 0;
|
|
$45 = $42;
|
|
label$3 : while (1) {
|
|
$46 = $45;
|
|
btVector3__btVector3_28_29($46 | 0) | 0;
|
|
$48 = $46 + 16 | 0;
|
|
$45 = $48;
|
|
if (!(($48 | 0) == ($44 | 0) & 1 | 0)) {
|
|
continue label$3
|
|
}
|
|
break label$3;
|
|
};
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!(Math_fround(btVector3__length2_28_29_20const($3 + 652 | 0 | 0)) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btVector3__normalized_28_29_20const($3 + 576 | 0 | 0, $3 + 652 | 0 | 0);
|
|
$70 = $3 + 592 | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[($3 + 576 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($3 + 580 | 0) >> 2] | 0;
|
|
$487 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $70;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $487;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$72 = 8;
|
|
i64toi32_i32$2 = ($3 + 576 | 0) + $72 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$500 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $70 + $72 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $500;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$4;
|
|
}
|
|
HEAPF32[($3 + 572 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($3 + 568 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 564 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 592 | 0 | 0, $3 + 572 | 0 | 0, $3 + 568 | 0 | 0, $3 + 564 | 0 | 0);
|
|
}
|
|
void_20btPlaneSpace1_btVector3__28btVector3_20const__2c_20btVector3__2c_20btVector3__29($3 + 592 | 0 | 0, ($3 + 592 | 0) + 16 | 0 | 0, ($3 + 592 | 0) + 32 | 0 | 0);
|
|
HEAP32[($3 + 560 | 0) >> 2] = 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($3 + 560 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$121 = ($4 + 48 | 0) + Math_imul(HEAP32[($3 + 560 | 0) >> 2] | 0, 84) | 0;
|
|
btMatrix3x3__transpose_28_29_20const($3 + 512 | 0 | 0, btTransform__getBasis_28_29_20const(btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($4 + 28 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
btMatrix3x3__transpose_28_29_20const($3 + 464 | 0 | 0, btTransform__getBasis_28_29_20const(btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($4 + 32 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($3 + 448 | 0 | 0, $3 + 684 | 0 | 0, btRigidBody__getCenterOfMassPosition_28_29_20const(HEAP32[($4 + 28 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($3 + 432 | 0 | 0, $3 + 668 | 0 | 0, btRigidBody__getCenterOfMassPosition_28_29_20const(HEAP32[($4 + 32 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btJacobianEntry__btJacobianEntry_28btMatrix3x3_20const__2c_20btMatrix3x3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20btVector3_20const__2c_20float_29($121 | 0, $3 + 512 | 0 | 0, $3 + 464 | 0 | 0, $3 + 448 | 0 | 0, $3 + 432 | 0 | 0, ($3 + 592 | 0) + ((HEAP32[($3 + 560 | 0) >> 2] | 0) << 4 | 0) | 0 | 0, btRigidBody__getInvInertiaDiagLocal_28_29_20const(HEAP32[($4 + 28 | 0) >> 2] | 0 | 0) | 0 | 0, Math_fround(Math_fround(btRigidBody__getInvMass_28_29_20const(HEAP32[($4 + 28 | 0) >> 2] | 0 | 0))), btRigidBody__getInvInertiaDiagLocal_28_29_20const(HEAP32[($4 + 32 | 0) >> 2] | 0 | 0) | 0 | 0, Math_fround(Math_fround(btRigidBody__getInvMass_28_29_20const(HEAP32[($4 + 32 | 0) >> 2] | 0 | 0)))) | 0;
|
|
HEAP32[($3 + 560 | 0) >> 2] = (HEAP32[($3 + 560 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
btVector3__btVector3_28_29($3 + 416 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($3 + 400 | 0 | 0) | 0;
|
|
btMatrix3x3__getColumn_28int_29_20const($3 + 384 | 0 | 0, btTransform__getBasis_28_29($4 + 552 | 0 | 0) | 0 | 0, 2 | 0);
|
|
void_20btPlaneSpace1_btVector3__28btVector3_20const__2c_20btVector3__2c_20btVector3__29($3 + 384 | 0 | 0, $3 + 416 | 0 | 0, $3 + 400 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($3 + 368 | 0 | 0, btTransform__getBasis_28_29_20const(btRigidBody__getCenterOfMassTransform_28_29_20const(btHingeConstraint__getRigidBodyA_28_29($4 | 0) | 0 | 0) | 0 | 0) | 0 | 0, $3 + 416 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($3 + 352 | 0 | 0, btTransform__getBasis_28_29_20const(btRigidBody__getCenterOfMassTransform_28_29_20const(btHingeConstraint__getRigidBodyA_28_29($4 | 0) | 0 | 0) | 0 | 0) | 0 | 0, $3 + 400 | 0 | 0);
|
|
$222 = btTransform__getBasis_28_29_20const(btRigidBody__getCenterOfMassTransform_28_29_20const(btHingeConstraint__getRigidBodyA_28_29($4 | 0) | 0 | 0) | 0 | 0) | 0;
|
|
btMatrix3x3__getColumn_28int_29_20const($3 + 320 | 0 | 0, btTransform__getBasis_28_29($4 + 552 | 0 | 0) | 0 | 0, 2 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($3 + 336 | 0 | 0, $222 | 0, $3 + 320 | 0 | 0);
|
|
btMatrix3x3__transpose_28_29_20const($3 + 272 | 0 | 0, btTransform__getBasis_28_29_20const(btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($4 + 28 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
btMatrix3x3__transpose_28_29_20const($3 + 224 | 0 | 0, btTransform__getBasis_28_29_20const(btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($4 + 32 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
btJacobianEntry__btJacobianEntry_28btVector3_20const__2c_20btMatrix3x3_20const__2c_20btMatrix3x3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($4 + 300 | 0 | 0, $3 + 368 | 0 | 0, $3 + 272 | 0 | 0, $3 + 224 | 0 | 0, btRigidBody__getInvInertiaDiagLocal_28_29_20const(HEAP32[($4 + 28 | 0) >> 2] | 0 | 0) | 0 | 0, btRigidBody__getInvInertiaDiagLocal_28_29_20const(HEAP32[($4 + 32 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
btMatrix3x3__transpose_28_29_20const($3 + 176 | 0 | 0, btTransform__getBasis_28_29_20const(btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($4 + 28 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
btMatrix3x3__transpose_28_29_20const($3 + 128 | 0 | 0, btTransform__getBasis_28_29_20const(btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($4 + 32 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
btJacobianEntry__btJacobianEntry_28btVector3_20const__2c_20btMatrix3x3_20const__2c_20btMatrix3x3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29(($4 + 300 | 0) + 84 | 0 | 0, $3 + 352 | 0 | 0, $3 + 176 | 0 | 0, $3 + 128 | 0 | 0, btRigidBody__getInvInertiaDiagLocal_28_29_20const(HEAP32[($4 + 28 | 0) >> 2] | 0 | 0) | 0 | 0, btRigidBody__getInvInertiaDiagLocal_28_29_20const(HEAP32[($4 + 32 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
btMatrix3x3__transpose_28_29_20const($3 + 80 | 0 | 0, btTransform__getBasis_28_29_20const(btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($4 + 28 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
btMatrix3x3__transpose_28_29_20const($3 + 32 | 0 | 0, btTransform__getBasis_28_29_20const(btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($4 + 32 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
btJacobianEntry__btJacobianEntry_28btVector3_20const__2c_20btMatrix3x3_20const__2c_20btMatrix3x3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29(($4 + 300 | 0) + 168 | 0 | 0, $3 + 336 | 0 | 0, $3 + 80 | 0 | 0, $3 + 32 | 0 | 0, btRigidBody__getInvInertiaDiagLocal_28_29_20const(HEAP32[($4 + 28 | 0) >> 2] | 0 | 0) | 0 | 0, btRigidBody__getInvInertiaDiagLocal_28_29_20const(HEAP32[($4 + 32 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
HEAPF32[($4 + 724 | 0) >> 2] = Math_fround(0 | 0);
|
|
btHingeConstraint__testLimit_28btTransform_20const__2c_20btTransform_20const__29($4 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($4 + 28 | 0) >> 2] | 0 | 0) | 0 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($4 + 32 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$329 = btTransform__getBasis_28_29_20const(btRigidBody__getCenterOfMassTransform_28_29_20const(btHingeConstraint__getRigidBodyA_28_29($4 | 0) | 0 | 0) | 0 | 0) | 0;
|
|
btMatrix3x3__getColumn_28int_29_20const($3 | 0, btTransform__getBasis_28_29($4 + 552 | 0 | 0) | 0 | 0, 2 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($3 + 16 | 0 | 0, $329 | 0, $3 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(Math_fround(1.0) / Math_fround(Math_fround(btRigidBody__computeAngularImpulseDenominator_28btVector3_20const__29_20const(btHingeConstraint__getRigidBodyA_28_29($4 | 0) | 0 | 0, $3 + 16 | 0 | 0)) + Math_fround(btRigidBody__computeAngularImpulseDenominator_28btVector3_20const__29_20const(btHingeConstraint__getRigidBodyB_28_29($4 | 0) | 0 | 0, $3 + 16 | 0 | 0))))), HEAPF32[(wasm2js_i32$0 + 720 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
__stack_pointer = $3 + 704 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__getCenterOfMassPosition_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $7 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$7 = btTransform__getOrigin_28_29_20const((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btRigidBody__getInvInertiaDiagLocal_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 456 | 0 | 0;
|
|
}
|
|
|
|
function btJacobianEntry__btJacobianEntry_28btMatrix3x3_20const__2c_20btMatrix3x3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20btVector3_20const__2c_20float_29($0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = Math_fround($7);
|
|
$8 = $8 | 0;
|
|
$9 = Math_fround($9);
|
|
var $12 = 0, i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, $13 = 0, i64toi32_i32$2 = 0, $16 = 0, $40 = 0, $42 = 0, $66 = 0, $68 = 0, $81 = 0, $83 = 0, $96 = 0, $98 = 0, $166 = 0, $176 = 0, $28 = 0, $225 = 0, $238 = 0, $48 = 0, $49 = 0, $277 = 0, $290 = 0, $309 = 0, $322 = 0, $341 = 0, $354 = 0, $129 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$12 = __stack_pointer - 160 | 0;
|
|
__stack_pointer = $12;
|
|
HEAP32[($12 + 152 | 0) >> 2] = $0;
|
|
HEAP32[($12 + 148 | 0) >> 2] = $1;
|
|
HEAP32[($12 + 144 | 0) >> 2] = $2;
|
|
HEAP32[($12 + 140 | 0) >> 2] = $3;
|
|
HEAP32[($12 + 136 | 0) >> 2] = $4;
|
|
HEAP32[($12 + 132 | 0) >> 2] = $5;
|
|
HEAP32[($12 + 128 | 0) >> 2] = $6;
|
|
HEAPF32[($12 + 124 | 0) >> 2] = $7;
|
|
HEAP32[($12 + 120 | 0) >> 2] = $8;
|
|
HEAPF32[($12 + 116 | 0) >> 2] = $9;
|
|
$13 = HEAP32[($12 + 152 | 0) >> 2] | 0;
|
|
HEAP32[($12 + 156 | 0) >> 2] = $13;
|
|
i64toi32_i32$2 = HEAP32[($12 + 132 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$166 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $13;
|
|
HEAP32[$13 >> 2] = $166;
|
|
HEAP32[($13 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$16 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $16 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$176 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $13 + $16 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $176;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__btVector3_28_29($13 + 16 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($13 + 32 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($13 + 48 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($13 + 64 | 0 | 0) | 0;
|
|
$28 = HEAP32[($12 + 148 | 0) >> 2] | 0;
|
|
btVector3__cross_28btVector3_20const__29_20const($12 + 84 | 0 | 0, HEAP32[($12 + 140 | 0) >> 2] | 0 | 0, $13 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($12 + 100 | 0 | 0, $28 | 0, $12 + 84 | 0 | 0);
|
|
$40 = $13 + 16 | 0;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$0 = HEAP32[($12 + 100 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($12 + 104 | 0) >> 2] | 0;
|
|
$225 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $40;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $225;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$42 = 8;
|
|
i64toi32_i32$2 = ($12 + 100 | 0) + $42 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$238 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $40 + $42 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $238;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$48 = HEAP32[($12 + 144 | 0) >> 2] | 0;
|
|
$49 = HEAP32[($12 + 136 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__29($12 + 36 | 0 | 0, $13 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($12 + 52 | 0 | 0, $49 | 0, $12 + 36 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($12 + 68 | 0 | 0, $48 | 0, $12 + 52 | 0 | 0);
|
|
$66 = $13 + 32 | 0;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$0 = HEAP32[($12 + 68 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($12 + 72 | 0) >> 2] | 0;
|
|
$277 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $66;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $277;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$68 = 8;
|
|
i64toi32_i32$2 = ($12 + 68 | 0) + $68 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$290 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $66 + $68 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $290;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($12 + 20 | 0 | 0, HEAP32[($12 + 128 | 0) >> 2] | 0 | 0, $13 + 16 | 0 | 0);
|
|
$81 = $13 + 48 | 0;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$0 = HEAP32[($12 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($12 + 24 | 0) >> 2] | 0;
|
|
$309 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $81;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $309;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$83 = 8;
|
|
i64toi32_i32$2 = ($12 + 20 | 0) + $83 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$322 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $81 + $83 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $322;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($12 + 4 | 0 | 0, HEAP32[($12 + 120 | 0) >> 2] | 0 | 0, $13 + 32 | 0 | 0);
|
|
$96 = $13 + 64 | 0;
|
|
i64toi32_i32$2 = $12;
|
|
i64toi32_i32$0 = HEAP32[($12 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($12 + 8 | 0) >> 2] | 0;
|
|
$341 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $96;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $341;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$98 = 8;
|
|
i64toi32_i32$2 = ($12 + 4 | 0) + $98 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$354 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $96 + $98 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $354;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $13, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[($12 + 124 | 0) >> 2]) + Math_fround(btVector3__dot_28btVector3_20const__29_20const($13 + 48 | 0 | 0, $13 + 16 | 0 | 0))) + Math_fround(HEAPF32[($12 + 116 | 0) >> 2])) + Math_fround(btVector3__dot_28btVector3_20const__29_20const($13 + 64 | 0 | 0, $13 + 32 | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 80 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
if (Math_fround(HEAPF32[($13 + 80 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(86643 | 0, 77966 | 0, 52 | 0, 65922 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$129 = HEAP32[($12 + 156 | 0) >> 2] | 0;
|
|
__stack_pointer = $12 + 160 | 0;
|
|
return $129 | 0;
|
|
}
|
|
|
|
function btHingeConstraint__getRigidBodyA_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btJacobianEntry__btJacobianEntry_28btVector3_20const__2c_20btMatrix3x3_20const__2c_20btMatrix3x3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $9 = 0, i64toi32_i32$2 = 0, $39 = 0, $41 = 0, $59 = 0, $61 = 0, $74 = 0, $76 = 0, $89 = 0, $91 = 0, $208 = 0, $221 = 0, $47 = 0, $249 = 0, $262 = 0, $281 = 0, $294 = 0, $313 = 0, $326 = 0, $118 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$8 = __stack_pointer - 128 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 120 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 116 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 112 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 108 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 104 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 100 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 120 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 124 | 0) >> 2] = $9;
|
|
HEAPF32[($8 + 96 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 92 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 88 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($9 | 0, $8 + 96 | 0 | 0, $8 + 92 | 0 | 0, $8 + 88 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($9 + 16 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($9 + 32 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($9 + 48 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($9 + 64 | 0 | 0) | 0;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 72 | 0 | 0, HEAP32[($8 + 112 | 0) >> 2] | 0 | 0, HEAP32[($8 + 116 | 0) >> 2] | 0 | 0);
|
|
$39 = $9 + 16 | 0;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$0 = HEAP32[($8 + 72 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($8 + 76 | 0) >> 2] | 0;
|
|
$208 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $39;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $208;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$41 = 8;
|
|
i64toi32_i32$2 = ($8 + 72 | 0) + $41 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$221 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $39 + $41 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $221;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$47 = HEAP32[($8 + 108 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__29($8 + 40 | 0 | 0, HEAP32[($8 + 116 | 0) >> 2] | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 56 | 0 | 0, $47 | 0, $8 + 40 | 0 | 0);
|
|
$59 = $9 + 32 | 0;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$0 = HEAP32[($8 + 56 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($8 + 60 | 0) >> 2] | 0;
|
|
$249 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $59;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $249;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$61 = 8;
|
|
i64toi32_i32$2 = ($8 + 56 | 0) + $61 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$262 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $59 + $61 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $262;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($8 + 24 | 0 | 0, HEAP32[($8 + 104 | 0) >> 2] | 0 | 0, $9 + 16 | 0 | 0);
|
|
$74 = $9 + 48 | 0;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$0 = HEAP32[($8 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($8 + 28 | 0) >> 2] | 0;
|
|
$281 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $74;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $281;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$76 = 8;
|
|
i64toi32_i32$2 = ($8 + 24 | 0) + $76 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$294 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $74 + $76 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $294;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($8 + 8 | 0 | 0, HEAP32[($8 + 100 | 0) >> 2] | 0 | 0, $9 + 32 | 0 | 0);
|
|
$89 = $9 + 64 | 0;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$0 = HEAP32[($8 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($8 + 12 | 0) >> 2] | 0;
|
|
$313 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $89;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $313;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$91 = 8;
|
|
i64toi32_i32$2 = ($8 + 8 | 0) + $91 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$326 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $89 + $91 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $326;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(Math_fround(btVector3__dot_28btVector3_20const__29_20const($9 + 48 | 0 | 0, $9 + 16 | 0 | 0)) + Math_fround(btVector3__dot_28btVector3_20const__29_20const($9 + 64 | 0 | 0, $9 + 32 | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 80 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
if (Math_fround(HEAPF32[($9 + 80 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(86643 | 0, 77966 | 0, 69 | 0, 65922 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$118 = HEAP32[($8 + 124 | 0) >> 2] | 0;
|
|
__stack_pointer = $8 + 128 | 0;
|
|
return $118 | 0;
|
|
}
|
|
|
|
function btHingeConstraint__testLimit_28btTransform_20const__2c_20btTransform_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btHingeConstraint__getHingeAngle_28btTransform_20const__2c_20btTransform_20const__29($6 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 728 | 0) >> 2] = wasm2js_f32$0;
|
|
btAngularLimit__test_28float_29($6 + 688 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 728 | 0) >> 2])));
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__computeAngularImpulseDenominator_28btVector3_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $15 = Math_fround(0);
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
operator__28btVector3_20const__2c_20btMatrix3x3_20const__29($4 + 8 | 0 | 0, HEAP32[($4 + 24 | 0) >> 2] | 0 | 0, btRigidBody__getInvInertiaTensorWorld_28_29_20const(HEAP32[($4 + 28 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$15 = Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0, $4 + 8 | 0 | 0));
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return Math_fround($15);
|
|
}
|
|
|
|
function btHingeConstraint__getRigidBodyB_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btHingeConstraint__getHingeAngle_28btTransform_20const__2c_20btTransform_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $8 = 0, $23 = 0, $38 = 0, $69 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 108 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 104 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 100 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 108 | 0) >> 2] | 0;
|
|
$8 = btTransform__getBasis_28_29_20const(HEAP32[($5 + 104 | 0) >> 2] | 0 | 0) | 0;
|
|
btMatrix3x3__getColumn_28int_29_20const($5 + 68 | 0 | 0, btTransform__getBasis_28_29($6 + 552 | 0 | 0) | 0 | 0, 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($5 + 84 | 0 | 0, $8 | 0, $5 + 68 | 0 | 0);
|
|
$23 = btTransform__getBasis_28_29_20const(HEAP32[($5 + 104 | 0) >> 2] | 0 | 0) | 0;
|
|
btMatrix3x3__getColumn_28int_29_20const($5 + 36 | 0 | 0, btTransform__getBasis_28_29($6 + 552 | 0 | 0) | 0 | 0, 1 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($5 + 52 | 0 | 0, $23 | 0, $5 + 36 | 0 | 0);
|
|
$38 = btTransform__getBasis_28_29_20const(HEAP32[($5 + 100 | 0) >> 2] | 0 | 0) | 0;
|
|
btMatrix3x3__getColumn_28int_29_20const($5 + 4 | 0 | 0, btTransform__getBasis_28_29($6 + 616 | 0 | 0) | 0 | 0, 1 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($5 + 20 | 0 | 0, $38 | 0, $5 + 4 | 0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btAtan2_28float_2c_20float_29(Math_fround(Math_fround(btVector3__dot_28btVector3_20const__29_20const($5 + 20 | 0 | 0, $5 + 84 | 0 | 0))), Math_fround(Math_fround(btVector3__dot_28btVector3_20const__29_20const($5 + 20 | 0 | 0, $5 + 52 | 0 | 0)))))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$69 = Math_fround(Math_fround(HEAPF32[($6 + 732 | 0) >> 2]) * Math_fround(HEAPF32[$5 >> 2]));
|
|
__stack_pointer = $5 + 112 | 0;
|
|
return Math_fround($69);
|
|
}
|
|
|
|
function btRigidBody__getInvInertiaTensorWorld_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 324 | 0 | 0;
|
|
}
|
|
|
|
function btHingeConstraint__getInfo1_28btTypedConstraint__btConstraintInfo1__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $25 = 0, $29 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($5 + 738 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] = 0;
|
|
HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] = 5;
|
|
HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] = 1;
|
|
btHingeConstraint__testLimit_28btTransform_20const__2c_20btTransform_20const__29($5 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
label$3 : {
|
|
label$4 : {
|
|
if (btHingeConstraint__getSolveLimit_28_29($5 | 0) | 0) {
|
|
break label$4
|
|
}
|
|
if (!((btHingeConstraint__getEnableAngularMotor_28_29($5 | 0) | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
}
|
|
$25 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
HEAP32[$25 >> 2] = (HEAP32[$25 >> 2] | 0) + 1 | 0;
|
|
$29 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($29 + 4 | 0) >> 2] = (HEAP32[($29 + 4 | 0) >> 2] | 0) + -1 | 0;
|
|
}
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHingeConstraint__getSolveLimit_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $9 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$9 = (btAngularLimit__isLimit_28_29_20const((HEAP32[($3 + 12 | 0) >> 2] | 0) + 688 | 0 | 0) | 0) & 1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btHingeConstraint__getEnableAngularMotor_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAPU8[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 737 | 0) >> 0] | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function btAngularLimit__isLimit_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAPU8[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 28 | 0) >> 0] | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function btHingeConstraint__getInfo2_28btTypedConstraint__btConstraintInfo2__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($5 + 739 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btHingeConstraint__getInfo2InternalUsingFrameOffset_28btTypedConstraint__btConstraintInfo2__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0 | 0, btRigidBody__getAngularVelocity_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0 | 0, btRigidBody__getAngularVelocity_28_29_20const(HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
break label$1;
|
|
}
|
|
btHingeConstraint__getInfo2Internal_28btTypedConstraint__btConstraintInfo2__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0 | 0, btRigidBody__getAngularVelocity_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0 | 0, btRigidBody__getAngularVelocity_28_29_20const(HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHingeConstraint__getInfo2InternalUsingFrameOffset_28btTypedConstraint__btConstraintInfo2__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $9 = 0, $52 = 0, $164 = 0, $209 = 0, $270 = 0, $297 = 0, $333 = 0, $367 = 0, $385 = 0, $403 = 0, $421 = 0, $496 = 0, $514 = 0, $605 = 0, $623 = 0, $708 = Math_fround(0), $1284 = Math_fround(0), $1318 = 0, $1349 = 0, $1511 = 0, $1848 = 0, $1852 = 0, $1930 = 0, $1934 = 0, $2038 = 0, $2042 = 0, $2088 = 0, $2092 = 0, $2153 = 0, $2157 = 0, $2221 = 0, $2225 = 0, $2256 = 0, $2260 = 0, $2291 = 0, $2295 = 0, $2326 = 0, $2330 = 0, $441 = 0, $469 = 0, $2475 = 0, $2479 = 0, $2510 = 0, $2514 = 0, $550 = 0, $578 = 0, $2692 = 0, $2696 = 0, $2727 = 0, $2731 = 0, $658 = 0, $686 = 0, $730 = 0, $758 = 0, $786 = 0, $814 = 0, $843 = 0, $872 = 0, $948 = Math_fround(0), $961 = Math_fround(0), $974 = Math_fround(0), $987 = Math_fround(0), $1000 = Math_fround(0), $1013 = Math_fround(0), $1027 = Math_fround(0), $1041 = Math_fround(0), $1055 = Math_fround(0), $1069 = Math_fround(0), $1083 = Math_fround(0), $1097 = Math_fround(0), $1127 = Math_fround(0), $1142 = Math_fround(0), $1186 = Math_fround(0), $1199 = Math_fround(0), $1212 = Math_fround(0), $1226 = Math_fround(0), $1240 = Math_fround(0), $1254 = Math_fround(0), $1437 = Math_fround(0), $1505 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$1 = 0;
|
|
$8 = __stack_pointer - 976 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 972 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 968 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 964 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 960 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 956 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 952 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 972 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($9 + 738 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
__assert_fail(81148 | 0, 71702 | 0, 775 | 0, 68265 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($8 + 944 | 0) >> 2] = HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0;
|
|
btTransform__operator__28btTransform_20const__29_20const($8 + 880 | 0 | 0, HEAP32[($8 + 964 | 0) >> 2] | 0 | 0, $9 + 552 | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29_20const($8 + 816 | 0 | 0, HEAP32[($8 + 960 | 0) >> 2] | 0 | 0, $9 + 616 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 800 | 0 | 0, btTransform__getOrigin_28_29($8 + 816 | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29($8 + 880 | 0 | 0) | 0 | 0);
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btRigidBody__getInvMass_28_29_20const(btHingeConstraint__getRigidBodyA_28_29($9 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 796 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btRigidBody__getInvMass_28_29_20const(btHingeConstraint__getRigidBodyB_28_29($9 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 792 | 0) >> 2] = wasm2js_f32$0;
|
|
$52 = 1;
|
|
label$2 : {
|
|
if (Math_fround(HEAPF32[($8 + 796 | 0) >> 2]) < Math_fround(1.1920928955078125e-07) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
$52 = Math_fround(HEAPF32[($8 + 792 | 0) >> 2]) < Math_fround(1.1920928955078125e-07);
|
|
}
|
|
HEAP8[($8 + 791 | 0) >> 0] = $52 & 1 | 0;
|
|
HEAPF32[($8 + 784 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($8 + 796 | 0) >> 2]) + Math_fround(HEAPF32[($8 + 792 | 0) >> 2]));
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 784 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAPF32[($8 + 780 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($8 + 792 | 0) >> 2]) / Math_fround(HEAPF32[($8 + 784 | 0) >> 2]));
|
|
break label$3;
|
|
}
|
|
HEAPF32[($8 + 780 | 0) >> 2] = Math_fround(.5);
|
|
}
|
|
HEAPF32[($8 + 776 | 0) >> 2] = Math_fround(Math_fround(1.0) - Math_fround(HEAPF32[($8 + 780 | 0) >> 2]));
|
|
btMatrix3x3__getColumn_28int_29_20const($8 + 760 | 0 | 0, btTransform__getBasis_28_29($8 + 880 | 0 | 0) | 0 | 0, 2 | 0);
|
|
btMatrix3x3__getColumn_28int_29_20const($8 + 744 | 0 | 0, btTransform__getBasis_28_29($8 + 816 | 0 | 0) | 0 | 0, 2 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($8 + 712 | 0 | 0, $8 + 760 | 0 | 0, $8 + 780 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($8 + 696 | 0 | 0, $8 + 744 | 0 | 0, $8 + 776 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 728 | 0 | 0, $8 + 712 | 0 | 0, $8 + 696 | 0 | 0);
|
|
btVector3__normalize_28_29($8 + 728 | 0 | 0) | 0;
|
|
btTransform__btTransform_28btTransform_20const__29($8 + 632 | 0 | 0, HEAP32[($8 + 964 | 0) >> 2] | 0 | 0) | 0;
|
|
btTransform__btTransform_28btTransform_20const__29($8 + 568 | 0 | 0, HEAP32[($8 + 960 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($8 + 564 | 0) >> 2] = 0;
|
|
HEAP32[($8 + 560 | 0) >> 2] = HEAP32[($8 + 944 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 556 | 0) >> 2] = (HEAP32[($8 + 944 | 0) >> 2] | 0) << 1 | 0;
|
|
HEAP32[($8 + 552 | 0) >> 2] = 2;
|
|
btVector3__btVector3_28_29($8 + 536 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 520 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 504 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 488 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 472 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 456 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 440 | 0 | 0, btTransform__getOrigin_28_29($8 + 816 | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29($8 + 568 | 0 | 0) | 0 | 0);
|
|
$164 = 8;
|
|
i64toi32_i32$2 = ($8 + 440 | 0) + $164 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1848 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 488 | 0) + $164 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1848;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 440 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 444 | 0) >> 2] | 0;
|
|
$1852 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 488 | 0) >> 2] = $1852;
|
|
HEAP32[($8 + 492 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 488 | 0 | 0, $8 + 728 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 420 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($8 + 424 | 0 | 0, $8 + 728 | 0 | 0, $8 + 420 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 404 | 0 | 0, $8 + 488 | 0 | 0, $8 + 424 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 388 | 0 | 0, btTransform__getOrigin_28_29($8 + 880 | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29($8 + 632 | 0 | 0) | 0 | 0);
|
|
$209 = 8;
|
|
i64toi32_i32$2 = ($8 + 388 | 0) + $209 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1930 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 504 | 0) + $209 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1930;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 388 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 392 | 0) >> 2] | 0;
|
|
$1934 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 504 | 0) >> 2] = $1934;
|
|
HEAP32[($8 + 508 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 504 | 0 | 0, $8 + 728 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 368 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($8 + 372 | 0 | 0, $8 + 728 | 0 | 0, $8 + 368 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 352 | 0 | 0, $8 + 504 | 0 | 0, $8 + 372 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 336 | 0 | 0, $8 + 372 | 0 | 0, $8 + 424 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($8 + 304 | 0 | 0, $8 + 336 | 0 | 0, $8 + 780 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 320 | 0 | 0, $8 + 352 | 0 | 0, $8 + 304 | 0 | 0);
|
|
$270 = 8;
|
|
i64toi32_i32$2 = ($8 + 320 | 0) + $270 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2038 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 504 | 0) + $270 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2038;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 320 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 324 | 0) >> 2] | 0;
|
|
$2042 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 504 | 0) >> 2] = $2042;
|
|
HEAP32[($8 + 508 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($8 + 272 | 0 | 0, $8 + 336 | 0 | 0, $8 + 776 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 288 | 0 | 0, $8 + 404 | 0 | 0, $8 + 272 | 0 | 0);
|
|
$297 = 8;
|
|
i64toi32_i32$2 = ($8 + 288 | 0) + $297 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2088 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 488 | 0) + $297 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2088;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 288 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 292 | 0) >> 2] | 0;
|
|
$2092 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 488 | 0) >> 2] = $2092;
|
|
HEAP32[($8 + 492 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($8 + 240 | 0 | 0, $8 + 404 | 0 | 0, $8 + 780 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($8 + 224 | 0 | 0, $8 + 352 | 0 | 0, $8 + 776 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 256 | 0 | 0, $8 + 240 | 0 | 0, $8 + 224 | 0 | 0);
|
|
$333 = 8;
|
|
i64toi32_i32$2 = ($8 + 256 | 0) + $333 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2153 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 472 | 0) + $333 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2153;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 256 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 260 | 0) >> 2] | 0;
|
|
$2157 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 472 | 0) >> 2] = $2157;
|
|
HEAP32[($8 + 476 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($8 + 472 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 220 | 0) >> 2] = wasm2js_f32$0;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 220 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btSqrt_28float_29(Math_fround(Math_fround(HEAPF32[($8 + 220 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 216 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__operator___28float_20const__29($8 + 472 | 0 | 0, $8 + 216 | 0 | 0) | 0;
|
|
break label$5;
|
|
}
|
|
btMatrix3x3__getColumn_28int_29_20const($8 + 200 | 0 | 0, btTransform__getBasis_28_29($8 + 880 | 0 | 0) | 0 | 0, 1 | 0);
|
|
$367 = 8;
|
|
i64toi32_i32$2 = ($8 + 200 | 0) + $367 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2221 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 472 | 0) + $367 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2221;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 200 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 204 | 0) >> 2] | 0;
|
|
$2225 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 472 | 0) >> 2] = $2225;
|
|
HEAP32[($8 + 476 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
btVector3__cross_28btVector3_20const__29_20const($8 + 184 | 0 | 0, $8 + 728 | 0 | 0, $8 + 472 | 0 | 0);
|
|
$385 = 8;
|
|
i64toi32_i32$2 = ($8 + 184 | 0) + $385 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2256 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 456 | 0) + $385 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2256;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 184 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 188 | 0) >> 2] | 0;
|
|
$2260 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 456 | 0) >> 2] = $2260;
|
|
HEAP32[($8 + 460 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__cross_28btVector3_20const__29_20const($8 + 168 | 0 | 0, $8 + 504 | 0 | 0, $8 + 472 | 0 | 0);
|
|
$403 = 8;
|
|
i64toi32_i32$2 = ($8 + 168 | 0) + $403 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2291 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 536 | 0) + $403 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2291;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 168 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 172 | 0) >> 2] | 0;
|
|
$2295 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 536 | 0) >> 2] = $2295;
|
|
HEAP32[($8 + 540 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__cross_28btVector3_20const__29_20const($8 + 152 | 0 | 0, $8 + 488 | 0 | 0, $8 + 472 | 0 | 0);
|
|
$421 = 8;
|
|
i64toi32_i32$2 = ($8 + 152 | 0) + $421 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2326 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 520 | 0) + $421 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2326;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 152 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 156 | 0) >> 2] | 0;
|
|
$2330 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 520 | 0) >> 2] = $2330;
|
|
HEAP32[($8 + 524 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($8 + 948 | 0) >> 2] = 0;
|
|
label$7 : {
|
|
label$8 : while (1) {
|
|
if (!((HEAP32[($8 + 948 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
$441 = btVector3__operator_20float__28_29($8 + 536 | 0 | 0) | 0;
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + (((HEAP32[($8 + 564 | 0) >> 2] | 0) + (HEAP32[($8 + 948 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($441 + ((HEAP32[($8 + 948 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
HEAP32[($8 + 948 | 0) >> 2] = (HEAP32[($8 + 948 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$8;
|
|
};
|
|
}
|
|
HEAP32[($8 + 948 | 0) >> 2] = 0;
|
|
label$9 : {
|
|
label$10 : while (1) {
|
|
if (!((HEAP32[($8 + 948 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
$469 = btVector3__operator_20float__28_29($8 + 520 | 0 | 0) | 0;
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + (((HEAP32[($8 + 564 | 0) >> 2] | 0) + (HEAP32[($8 + 948 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($469 + ((HEAP32[($8 + 948 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]));
|
|
HEAP32[($8 + 948 | 0) >> 2] = (HEAP32[($8 + 948 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$10;
|
|
};
|
|
}
|
|
btVector3__cross_28btVector3_20const__29_20const($8 + 136 | 0 | 0, $8 + 504 | 0 | 0, $8 + 456 | 0 | 0);
|
|
$496 = 8;
|
|
i64toi32_i32$2 = ($8 + 136 | 0) + $496 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2475 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 536 | 0) + $496 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2475;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 136 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 140 | 0) >> 2] | 0;
|
|
$2479 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 536 | 0) >> 2] = $2479;
|
|
HEAP32[($8 + 540 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__cross_28btVector3_20const__29_20const($8 + 120 | 0 | 0, $8 + 488 | 0 | 0, $8 + 456 | 0 | 0);
|
|
$514 = 8;
|
|
i64toi32_i32$2 = ($8 + 120 | 0) + $514 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2510 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 520 | 0) + $514 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2510;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 120 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 124 | 0) >> 2] | 0;
|
|
$2514 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 520 | 0) >> 2] = $2514;
|
|
HEAP32[($8 + 524 | 0) >> 2] = i64toi32_i32$0;
|
|
label$11 : {
|
|
if (!((HEAPU8[($8 + 791 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
if (!(btHingeConstraint__getSolveLimit_28_29($9 | 0) | 0)) {
|
|
break label$11
|
|
}
|
|
btVector3__operator___28float_20const__29_1($8 + 520 | 0 | 0, $8 + 776 | 0 | 0) | 0;
|
|
btVector3__operator___28float_20const__29_1($8 + 536 | 0 | 0, $8 + 780 | 0 | 0) | 0;
|
|
}
|
|
HEAP32[($8 + 948 | 0) >> 2] = 0;
|
|
label$12 : {
|
|
label$13 : while (1) {
|
|
if (!((HEAP32[($8 + 948 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
$550 = btVector3__operator_20float__28_29($8 + 536 | 0 | 0) | 0;
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + (((HEAP32[($8 + 560 | 0) >> 2] | 0) + (HEAP32[($8 + 948 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($550 + ((HEAP32[($8 + 948 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
HEAP32[($8 + 948 | 0) >> 2] = (HEAP32[($8 + 948 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$13;
|
|
};
|
|
}
|
|
HEAP32[($8 + 948 | 0) >> 2] = 0;
|
|
label$14 : {
|
|
label$15 : while (1) {
|
|
if (!((HEAP32[($8 + 948 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
$578 = btVector3__operator_20float__28_29($8 + 520 | 0 | 0) | 0;
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + (((HEAP32[($8 + 560 | 0) >> 2] | 0) + (HEAP32[($8 + 948 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($578 + ((HEAP32[($8 + 948 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]));
|
|
HEAP32[($8 + 948 | 0) >> 2] = (HEAP32[($8 + 948 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$15;
|
|
};
|
|
}
|
|
btVector3__cross_28btVector3_20const__29_20const($8 + 104 | 0 | 0, $8 + 504 | 0 | 0, $8 + 728 | 0 | 0);
|
|
$605 = 8;
|
|
i64toi32_i32$2 = ($8 + 104 | 0) + $605 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2692 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 536 | 0) + $605 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2692;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 104 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 108 | 0) >> 2] | 0;
|
|
$2696 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 536 | 0) >> 2] = $2696;
|
|
HEAP32[($8 + 540 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__cross_28btVector3_20const__29_20const($8 + 88 | 0 | 0, $8 + 488 | 0 | 0, $8 + 728 | 0 | 0);
|
|
$623 = 8;
|
|
i64toi32_i32$2 = ($8 + 88 | 0) + $623 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2727 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 520 | 0) + $623 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2727;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$1 = HEAP32[($8 + 88 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($8 + 92 | 0) >> 2] | 0;
|
|
$2731 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 520 | 0) >> 2] = $2731;
|
|
HEAP32[($8 + 524 | 0) >> 2] = i64toi32_i32$0;
|
|
label$16 : {
|
|
if (!((HEAPU8[($8 + 791 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
btVector3__operator___28float_20const__29_1($8 + 520 | 0 | 0, $8 + 776 | 0 | 0) | 0;
|
|
btVector3__operator___28float_20const__29_1($8 + 536 | 0 | 0, $8 + 780 | 0 | 0) | 0;
|
|
}
|
|
HEAP32[($8 + 948 | 0) >> 2] = 0;
|
|
label$17 : {
|
|
label$18 : while (1) {
|
|
if (!((HEAP32[($8 + 948 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
$658 = btVector3__operator_20float__28_29($8 + 536 | 0 | 0) | 0;
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + (((HEAP32[($8 + 556 | 0) >> 2] | 0) + (HEAP32[($8 + 948 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($658 + ((HEAP32[($8 + 948 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
HEAP32[($8 + 948 | 0) >> 2] = (HEAP32[($8 + 948 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$18;
|
|
};
|
|
}
|
|
HEAP32[($8 + 948 | 0) >> 2] = 0;
|
|
label$19 : {
|
|
label$20 : while (1) {
|
|
if (!((HEAP32[($8 + 948 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
$686 = btVector3__operator_20float__28_29($8 + 520 | 0 | 0) | 0;
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + (((HEAP32[($8 + 556 | 0) >> 2] | 0) + (HEAP32[($8 + 948 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($686 + ((HEAP32[($8 + 948 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]));
|
|
HEAP32[($8 + 948 | 0) >> 2] = (HEAP32[($8 + 948 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$20;
|
|
};
|
|
}
|
|
label$21 : {
|
|
label$22 : {
|
|
if (!((HEAP32[($9 + 748 | 0) >> 2] | 0) & 8 | 0)) {
|
|
break label$22
|
|
}
|
|
$708 = Math_fround(HEAPF32[($9 + 756 | 0) >> 2]);
|
|
break label$21;
|
|
}
|
|
$708 = Math_fround(HEAPF32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 4 | 0) >> 2]);
|
|
}
|
|
HEAPF32[($8 + 84 | 0) >> 2] = $708;
|
|
HEAPF32[($8 + 80 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[(HEAP32[($8 + 968 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[($8 + 84 | 0) >> 2]));
|
|
label$23 : {
|
|
if ((HEAPU8[($9 + 736 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$23
|
|
}
|
|
HEAP32[($8 + 948 | 0) >> 2] = 0;
|
|
label$24 : {
|
|
label$25 : while (1) {
|
|
if (!((HEAP32[($8 + 948 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$24
|
|
}
|
|
$730 = btVector3__operator_20float__28_29($8 + 472 | 0 | 0) | 0;
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + (((HEAP32[($8 + 564 | 0) >> 2] | 0) + (HEAP32[($8 + 948 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($730 + ((HEAP32[($8 + 948 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
HEAP32[($8 + 948 | 0) >> 2] = (HEAP32[($8 + 948 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$25;
|
|
};
|
|
}
|
|
HEAP32[($8 + 948 | 0) >> 2] = 0;
|
|
label$26 : {
|
|
label$27 : while (1) {
|
|
if (!((HEAP32[($8 + 948 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$26
|
|
}
|
|
$758 = btVector3__operator_20float__28_29($8 + 456 | 0 | 0) | 0;
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + (((HEAP32[($8 + 560 | 0) >> 2] | 0) + (HEAP32[($8 + 948 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($758 + ((HEAP32[($8 + 948 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
HEAP32[($8 + 948 | 0) >> 2] = (HEAP32[($8 + 948 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$27;
|
|
};
|
|
}
|
|
HEAP32[($8 + 948 | 0) >> 2] = 0;
|
|
label$28 : {
|
|
label$29 : while (1) {
|
|
if (!((HEAP32[($8 + 948 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$28
|
|
}
|
|
$786 = btVector3__operator_20float__28_29($8 + 728 | 0 | 0) | 0;
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + (((HEAP32[($8 + 556 | 0) >> 2] | 0) + (HEAP32[($8 + 948 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($786 + ((HEAP32[($8 + 948 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
HEAP32[($8 + 948 | 0) >> 2] = (HEAP32[($8 + 948 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$29;
|
|
};
|
|
}
|
|
HEAP32[($8 + 948 | 0) >> 2] = 0;
|
|
label$30 : {
|
|
label$31 : while (1) {
|
|
if (!((HEAP32[($8 + 948 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$30
|
|
}
|
|
$814 = btVector3__operator_20float__28_29($8 + 472 | 0 | 0) | 0;
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0) + (((HEAP32[($8 + 564 | 0) >> 2] | 0) + (HEAP32[($8 + 948 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($814 + ((HEAP32[($8 + 948 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]));
|
|
HEAP32[($8 + 948 | 0) >> 2] = (HEAP32[($8 + 948 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$31;
|
|
};
|
|
}
|
|
HEAP32[($8 + 948 | 0) >> 2] = 0;
|
|
label$32 : {
|
|
label$33 : while (1) {
|
|
if (!((HEAP32[($8 + 948 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$32
|
|
}
|
|
$843 = btVector3__operator_20float__28_29($8 + 456 | 0 | 0) | 0;
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0) + (((HEAP32[($8 + 560 | 0) >> 2] | 0) + (HEAP32[($8 + 948 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($843 + ((HEAP32[($8 + 948 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]));
|
|
HEAP32[($8 + 948 | 0) >> 2] = (HEAP32[($8 + 948 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$33;
|
|
};
|
|
}
|
|
HEAP32[($8 + 948 | 0) >> 2] = 0;
|
|
label$34 : {
|
|
label$35 : while (1) {
|
|
if (!((HEAP32[($8 + 948 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$34
|
|
}
|
|
$872 = btVector3__operator_20float__28_29($8 + 728 | 0 | 0) | 0;
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0) + (((HEAP32[($8 + 556 | 0) >> 2] | 0) + (HEAP32[($8 + 948 | 0) >> 2] | 0) | 0) << 2 | 0) | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($872 + ((HEAP32[($8 + 948 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]));
|
|
HEAP32[($8 + 948 | 0) >> 2] = (HEAP32[($8 + 948 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$35;
|
|
};
|
|
}
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[($8 + 80 | 0) >> 2]) * Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 472 | 0 | 0, $8 + 800 | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 76 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($8 + 564 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($8 + 76 | 0) >> 2]);
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[($8 + 80 | 0) >> 2]) * Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 456 | 0 | 0, $8 + 800 | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 76 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($8 + 560 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($8 + 76 | 0) >> 2]);
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[($8 + 80 | 0) >> 2]) * Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 728 | 0 | 0, $8 + 800 | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 76 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($8 + 556 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($8 + 76 | 0) >> 2]);
|
|
}
|
|
HEAP32[($8 + 72 | 0) >> 2] = Math_imul(HEAP32[($8 + 944 | 0) >> 2] | 0, 3);
|
|
HEAP32[($8 + 68 | 0) >> 2] = (HEAP32[($8 + 944 | 0) >> 2] | 0) << 2 | 0;
|
|
$948 = Math_fround(HEAPF32[(btVector3__operator_20float__28_29($8 + 472 | 0 | 0) | 0) >> 2]);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + (((HEAP32[($8 + 72 | 0) >> 2] | 0) + 0 | 0) << 2 | 0) | 0) >> 2] = $948;
|
|
$961 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($8 + 472 | 0 | 0) | 0) + 4 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + (((HEAP32[($8 + 72 | 0) >> 2] | 0) + 1 | 0) << 2 | 0) | 0) >> 2] = $961;
|
|
$974 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($8 + 472 | 0 | 0) | 0) + 8 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + (((HEAP32[($8 + 72 | 0) >> 2] | 0) + 2 | 0) << 2 | 0) | 0) >> 2] = $974;
|
|
$987 = Math_fround(HEAPF32[(btVector3__operator_20float__28_29($8 + 456 | 0 | 0) | 0) >> 2]);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + (((HEAP32[($8 + 68 | 0) >> 2] | 0) + 0 | 0) << 2 | 0) | 0) >> 2] = $987;
|
|
$1000 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($8 + 456 | 0 | 0) | 0) + 4 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + (((HEAP32[($8 + 68 | 0) >> 2] | 0) + 1 | 0) << 2 | 0) | 0) >> 2] = $1000;
|
|
$1013 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($8 + 456 | 0 | 0) | 0) + 8 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + (((HEAP32[($8 + 68 | 0) >> 2] | 0) + 2 | 0) << 2 | 0) | 0) >> 2] = $1013;
|
|
$1027 = Math_fround(-Math_fround(HEAPF32[(btVector3__operator_20float__28_29($8 + 472 | 0 | 0) | 0) >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + (((HEAP32[($8 + 72 | 0) >> 2] | 0) + 0 | 0) << 2 | 0) | 0) >> 2] = $1027;
|
|
$1041 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float__28_29($8 + 472 | 0 | 0) | 0) + 4 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + (((HEAP32[($8 + 72 | 0) >> 2] | 0) + 1 | 0) << 2 | 0) | 0) >> 2] = $1041;
|
|
$1055 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float__28_29($8 + 472 | 0 | 0) | 0) + 8 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + (((HEAP32[($8 + 72 | 0) >> 2] | 0) + 2 | 0) << 2 | 0) | 0) >> 2] = $1055;
|
|
$1069 = Math_fround(-Math_fround(HEAPF32[(btVector3__operator_20float__28_29($8 + 456 | 0 | 0) | 0) >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + (((HEAP32[($8 + 68 | 0) >> 2] | 0) + 0 | 0) << 2 | 0) | 0) >> 2] = $1069;
|
|
$1083 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float__28_29($8 + 456 | 0 | 0) | 0) + 4 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + (((HEAP32[($8 + 68 | 0) >> 2] | 0) + 1 | 0) << 2 | 0) | 0) >> 2] = $1083;
|
|
$1097 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float__28_29($8 + 456 | 0 | 0) | 0) + 8 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + (((HEAP32[($8 + 68 | 0) >> 2] | 0) + 2 | 0) << 2 | 0) | 0) >> 2] = $1097;
|
|
HEAPF32[($8 + 80 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[(HEAP32[($8 + 968 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[($8 + 84 | 0) >> 2]));
|
|
btVector3__cross_28btVector3_20const__29_20const($8 + 52 | 0 | 0, $8 + 760 | 0 | 0, $8 + 744 | 0 | 0);
|
|
$1127 = Math_fround(Math_fround(HEAPF32[($8 + 80 | 0) >> 2]) * Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 52 | 0 | 0, $8 + 472 | 0 | 0)));
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($8 + 72 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = $1127;
|
|
$1142 = Math_fround(Math_fround(HEAPF32[($8 + 80 | 0) >> 2]) * Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 52 | 0 | 0, $8 + 456 | 0 | 0)));
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($8 + 68 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = $1142;
|
|
HEAP32[($8 + 552 | 0) >> 2] = 4;
|
|
HEAPF32[($8 + 44 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP32[($8 + 40 | 0) >> 2] = 0;
|
|
label$36 : {
|
|
if (!(btHingeConstraint__getSolveLimit_28_29($9 | 0) | 0)) {
|
|
break label$36
|
|
}
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(Math_fround(btAngularLimit__getCorrection_28_29_20const($9 + 688 | 0 | 0)) * Math_fround(HEAPF32[($9 + 732 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP32[($8 + 40 | 0) >> 2] = Math_fround(HEAPF32[($8 + 44 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0 ? 1 : 2;
|
|
}
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = (btHingeConstraint__getEnableAngularMotor_28_29($9 | 0) | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 39 | 0) >> 0] = wasm2js_i32$1;
|
|
label$37 : {
|
|
label$38 : {
|
|
if (HEAP32[($8 + 40 | 0) >> 2] | 0) {
|
|
break label$38
|
|
}
|
|
if (!((HEAPU8[($8 + 39 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$37
|
|
}
|
|
}
|
|
HEAP32[($8 + 552 | 0) >> 2] = (HEAP32[($8 + 552 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($8 + 48 | 0) >> 2] = Math_imul(HEAP32[($8 + 552 | 0) >> 2] | 0, HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0);
|
|
$1186 = Math_fround(HEAPF32[(btVector3__operator_20float__28_29($8 + 728 | 0 | 0) | 0) >> 2]);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + (((HEAP32[($8 + 48 | 0) >> 2] | 0) + 0 | 0) << 2 | 0) | 0) >> 2] = $1186;
|
|
$1199 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($8 + 728 | 0 | 0) | 0) + 4 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + (((HEAP32[($8 + 48 | 0) >> 2] | 0) + 1 | 0) << 2 | 0) | 0) >> 2] = $1199;
|
|
$1212 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($8 + 728 | 0 | 0) | 0) + 8 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + (((HEAP32[($8 + 48 | 0) >> 2] | 0) + 2 | 0) << 2 | 0) | 0) >> 2] = $1212;
|
|
$1226 = Math_fround(-Math_fround(HEAPF32[(btVector3__operator_20float__28_29($8 + 728 | 0 | 0) | 0) >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + (((HEAP32[($8 + 48 | 0) >> 2] | 0) + 0 | 0) << 2 | 0) | 0) >> 2] = $1226;
|
|
$1240 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float__28_29($8 + 728 | 0 | 0) | 0) + 4 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + (((HEAP32[($8 + 48 | 0) >> 2] | 0) + 1 | 0) << 2 | 0) | 0) >> 2] = $1240;
|
|
$1254 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float__28_29($8 + 728 | 0 | 0) | 0) + 8 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + (((HEAP32[($8 + 48 | 0) >> 2] | 0) + 2 | 0) << 2 | 0) | 0) >> 2] = $1254;
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btHingeConstraint__getLowerLimit_28_29_20const($9 | 0))), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btHingeConstraint__getUpperLimit_28_29_20const($9 | 0))), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
label$39 : {
|
|
if (!(HEAP32[($8 + 40 | 0) >> 2] | 0)) {
|
|
break label$39
|
|
}
|
|
if (!(Math_fround(HEAPF32[($8 + 32 | 0) >> 2]) == Math_fround(HEAPF32[($8 + 28 | 0) >> 2]) & 1 | 0)) {
|
|
break label$39
|
|
}
|
|
HEAP8[($8 + 39 | 0) >> 0] = 0;
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(0 | 0);
|
|
label$40 : {
|
|
label$41 : {
|
|
if (!((HEAP32[($9 + 748 | 0) >> 2] | 0) & 2 | 0)) {
|
|
break label$41
|
|
}
|
|
$1284 = Math_fround(HEAPF32[($9 + 764 | 0) >> 2]);
|
|
break label$40;
|
|
}
|
|
$1284 = Math_fround(HEAPF32[($8 + 84 | 0) >> 2]);
|
|
}
|
|
HEAPF32[($8 + 24 | 0) >> 2] = $1284;
|
|
label$42 : {
|
|
if (!((HEAPU8[($8 + 39 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$42
|
|
}
|
|
label$43 : {
|
|
if (!((HEAP32[($9 + 748 | 0) >> 2] | 0) & 4 | 0)) {
|
|
break label$43
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($9 + 752 | 0) >> 2]);
|
|
}
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btTypedConstraint__getMotorFactor_28float_2c_20float_2c_20float_2c_20float_2c_20float_29($9 | 0, Math_fround(Math_fround(HEAPF32[($9 + 728 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($8 + 32 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($8 + 28 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($9 + 680 | 0) >> 2])), Math_fround(Math_fround(Math_fround(HEAPF32[(HEAP32[($8 + 968 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[($8 + 24 | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
$1318 = (HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
HEAPF32[$1318 >> 2] = Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[($8 + 20 | 0) >> 2]) * Math_fround(HEAPF32[($9 + 680 | 0) >> 2])) * Math_fround(HEAPF32[($9 + 732 | 0) >> 2])) + Math_fround(HEAPF32[$1318 >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($9 + 684 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($9 + 684 | 0) >> 2]);
|
|
}
|
|
label$44 : {
|
|
if (!(HEAP32[($8 + 40 | 0) >> 2] | 0)) {
|
|
break label$44
|
|
}
|
|
HEAPF32[($8 + 80 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[(HEAP32[($8 + 968 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[($8 + 24 | 0) >> 2]));
|
|
$1349 = (HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
HEAPF32[$1349 >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($8 + 80 | 0) >> 2]) * Math_fround(HEAPF32[($8 + 44 | 0) >> 2])) + Math_fround(HEAPF32[$1349 >> 2]));
|
|
label$45 : {
|
|
if (!((HEAP32[($9 + 748 | 0) >> 2] | 0) & 1 | 0)) {
|
|
break label$45
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($9 + 760 | 0) >> 2]);
|
|
}
|
|
label$46 : {
|
|
label$47 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 32 | 0) >> 2]) == Math_fround(HEAPF32[($8 + 28 | 0) >> 2]) & 1 | 0)) {
|
|
break label$47
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(-3402823466385288598117041.0e14);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(3402823466385288598117041.0e14);
|
|
break label$46;
|
|
}
|
|
label$48 : {
|
|
label$49 : {
|
|
if (!((HEAP32[($8 + 40 | 0) >> 2] | 0 | 0) == (1 | 0) & 1 | 0)) {
|
|
break label$49
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(3402823466385288598117041.0e14);
|
|
break label$48;
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(-3402823466385288598117041.0e14);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(0 | 0);
|
|
}
|
|
}
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btAngularLimit__getRelaxationFactor_28_29_20const($9 + 688 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
label$50 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 16 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$50
|
|
}
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($8 + 956 | 0) >> 2] | 0 | 0, $8 + 728 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
$1437 = Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($8 + 952 | 0) >> 2] | 0 | 0, $8 + 728 | 0 | 0));
|
|
HEAPF32[($8 + 12 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($8 + 12 | 0) >> 2]) - $1437);
|
|
label$51 : {
|
|
label$52 : {
|
|
if (!((HEAP32[($8 + 40 | 0) >> 2] | 0 | 0) == (1 | 0) & 1 | 0)) {
|
|
break label$52
|
|
}
|
|
label$53 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 12 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$53
|
|
}
|
|
HEAPF32[($8 + 8 | 0) >> 2] = Math_fround(Math_fround(-Math_fround(HEAPF32[($8 + 16 | 0) >> 2])) * Math_fround(HEAPF32[($8 + 12 | 0) >> 2]));
|
|
label$54 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 8 | 0) >> 2]) > Math_fround(HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$54
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($8 + 8 | 0) >> 2]);
|
|
}
|
|
}
|
|
break label$51;
|
|
}
|
|
label$55 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 12 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$55
|
|
}
|
|
HEAPF32[($8 + 4 | 0) >> 2] = Math_fround(Math_fround(-Math_fround(HEAPF32[($8 + 16 | 0) >> 2])) * Math_fround(HEAPF32[($8 + 12 | 0) >> 2]));
|
|
label$56 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 4 | 0) >> 2]) < Math_fround(HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$56
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($8 + 4 | 0) >> 2]);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
$1505 = Math_fround(btAngularLimit__getBiasFactor_28_29_20const($9 + 688 | 0 | 0));
|
|
$1511 = (HEAP32[((HEAP32[($8 + 968 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
HEAPF32[$1511 >> 2] = Math_fround(Math_fround(HEAPF32[$1511 >> 2]) * $1505);
|
|
}
|
|
}
|
|
__stack_pointer = $8 + 976 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHingeConstraint__getInfo2Internal_28btTypedConstraint__btConstraintInfo2__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, $9 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $34 = 0, $35 = 0, $45 = 0, $46 = 0, $172 = Math_fround(0), $599 = Math_fround(0), $633 = 0, $664 = 0, $826 = 0, $909 = 0, $913 = 0, $932 = 0, $936 = 0, $191 = Math_fround(0), $200 = Math_fround(0), $204 = 0, $259 = Math_fround(0), $272 = Math_fround(0), $285 = Math_fround(0), $298 = Math_fround(0), $311 = Math_fround(0), $324 = Math_fround(0), $338 = Math_fround(0), $352 = Math_fround(0), $366 = Math_fround(0), $380 = Math_fround(0), $394 = Math_fround(0), $408 = Math_fround(0), $442 = Math_fround(0), $457 = Math_fround(0), $501 = Math_fround(0), $514 = Math_fround(0), $527 = Math_fround(0), $541 = Math_fround(0), $555 = Math_fround(0), $569 = Math_fround(0), $752 = Math_fround(0), $820 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$1 = 0;
|
|
$8 = __stack_pointer - 416 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 412 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 408 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 404 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 400 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 396 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 392 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 412 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($9 + 738 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
__assert_fail(81148 | 0, 71702 | 0, 419 | 0, 77516 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($8 + 384 | 0) >> 2] = HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0;
|
|
btTransform__operator__28btTransform_20const__29_20const($8 + 320 | 0 | 0, HEAP32[($8 + 404 | 0) >> 2] | 0 | 0, $9 + 552 | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29_20const($8 + 256 | 0 | 0, HEAP32[($8 + 400 | 0) >> 2] | 0 | 0, $9 + 616 | 0 | 0);
|
|
$34 = btTransform__getOrigin_28_29($8 + 320 | 0 | 0) | 0;
|
|
$35 = 8;
|
|
i64toi32_i32$2 = $34 + $35 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$909 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 240 | 0) + $35 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $909;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $34;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$913 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 240 | 0) >> 2] = $913;
|
|
HEAP32[($8 + 244 | 0) >> 2] = i64toi32_i32$0;
|
|
$45 = btTransform__getOrigin_28_29($8 + 256 | 0 | 0) | 0;
|
|
$46 = 8;
|
|
i64toi32_i32$2 = $45 + $46 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$932 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($8 + 224 | 0) + $46 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $932;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $45;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$936 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 224 | 0) >> 2] = $936;
|
|
HEAP32[($8 + 228 | 0) >> 2] = i64toi32_i32$0;
|
|
label$2 : {
|
|
if ((HEAPU8[($9 + 736 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
HEAPF32[(HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + (((HEAP32[($8 + 384 | 0) >> 2] | 0) + 1 | 0) << 2 | 0) | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + ((((HEAP32[($8 + 384 | 0) >> 2] | 0) << 1 | 0) + 2 | 0) << 2 | 0) | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[(HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0) + (((HEAP32[($8 + 384 | 0) >> 2] | 0) + 1 | 0) << 2 | 0) | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0) + ((((HEAP32[($8 + 384 | 0) >> 2] | 0) << 1 | 0) + 2 | 0) << 2 | 0) | 0) >> 2] = Math_fround(-1.0);
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 208 | 0 | 0, $8 + 240 | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($8 + 404 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
HEAP32[($8 + 204 | 0) >> 2] = HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 200 | 0) >> 2] = (HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + ((HEAP32[($8 + 384 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
HEAP32[($8 + 196 | 0) >> 2] = (HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + (((HEAP32[($8 + 384 | 0) >> 2] | 0) << 1 | 0) << 2 | 0) | 0;
|
|
operator__28btVector3_20const__29($8 + 180 | 0 | 0, $8 + 208 | 0 | 0);
|
|
btVector3__getSkewSymmetricMatrix_28btVector3__2c_20btVector3__2c_20btVector3__29_20const($8 + 180 | 0 | 0, HEAP32[($8 + 204 | 0) >> 2] | 0 | 0, HEAP32[($8 + 200 | 0) >> 2] | 0 | 0, HEAP32[($8 + 196 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($8 + 164 | 0 | 0, $8 + 224 | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($8 + 400 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
HEAP32[($8 + 160 | 0) >> 2] = HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 156 | 0) >> 2] = (HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + ((HEAP32[($8 + 384 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
HEAP32[($8 + 152 | 0) >> 2] = (HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + (((HEAP32[($8 + 384 | 0) >> 2] | 0) << 1 | 0) << 2 | 0) | 0;
|
|
btVector3__getSkewSymmetricMatrix_28btVector3__2c_20btVector3__2c_20btVector3__29_20const($8 + 164 | 0 | 0, HEAP32[($8 + 160 | 0) >> 2] | 0 | 0, HEAP32[($8 + 156 | 0) >> 2] | 0 | 0, HEAP32[($8 + 152 | 0) >> 2] | 0 | 0);
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAP32[($9 + 748 | 0) >> 2] | 0) & 8 | 0)) {
|
|
break label$4
|
|
}
|
|
$172 = Math_fround(HEAPF32[($9 + 756 | 0) >> 2]);
|
|
break label$3;
|
|
}
|
|
$172 = Math_fround(HEAPF32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 4 | 0) >> 2]);
|
|
}
|
|
HEAPF32[($8 + 148 | 0) >> 2] = $172;
|
|
HEAPF32[($8 + 144 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[(HEAP32[($8 + 408 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[($8 + 148 | 0) >> 2]));
|
|
label$5 : {
|
|
if ((HEAPU8[($9 + 736 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$5
|
|
}
|
|
HEAP32[($8 + 388 | 0) >> 2] = 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($8 + 388 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$191 = Math_fround(HEAPF32[($8 + 144 | 0) >> 2]);
|
|
$200 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($8 + 224 | 0 | 0) | 0) + ((HEAP32[($8 + 388 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
$204 = btVector3__operator_20float__28_29($8 + 240 | 0 | 0) | 0;
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + (Math_imul(HEAP32[($8 + 388 | 0) >> 2] | 0, HEAP32[($8 + 384 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround($191 * Math_fround($200 - Math_fround(HEAPF32[($204 + ((HEAP32[($8 + 388 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])));
|
|
HEAP32[($8 + 388 | 0) >> 2] = (HEAP32[($8 + 388 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
btMatrix3x3__getColumn_28int_29_20const($8 + 128 | 0 | 0, btTransform__getBasis_28_29($8 + 320 | 0 | 0) | 0 | 0, 2 | 0);
|
|
btMatrix3x3__getColumn_28int_29_20const($8 + 112 | 0 | 0, btTransform__getBasis_28_29($8 + 320 | 0 | 0) | 0 | 0, 0 | 0);
|
|
btMatrix3x3__getColumn_28int_29_20const($8 + 96 | 0 | 0, btTransform__getBasis_28_29($8 + 320 | 0 | 0) | 0 | 0, 1 | 0);
|
|
HEAP32[($8 + 92 | 0) >> 2] = Math_imul(HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0, 3);
|
|
HEAP32[($8 + 88 | 0) >> 2] = (HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0) << 2 | 0;
|
|
$259 = Math_fround(HEAPF32[(btVector3__operator_20float__28_29($8 + 112 | 0 | 0) | 0) >> 2]);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + (((HEAP32[($8 + 92 | 0) >> 2] | 0) + 0 | 0) << 2 | 0) | 0) >> 2] = $259;
|
|
$272 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($8 + 112 | 0 | 0) | 0) + 4 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + (((HEAP32[($8 + 92 | 0) >> 2] | 0) + 1 | 0) << 2 | 0) | 0) >> 2] = $272;
|
|
$285 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($8 + 112 | 0 | 0) | 0) + 8 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + (((HEAP32[($8 + 92 | 0) >> 2] | 0) + 2 | 0) << 2 | 0) | 0) >> 2] = $285;
|
|
$298 = Math_fround(HEAPF32[(btVector3__operator_20float__28_29($8 + 96 | 0 | 0) | 0) >> 2]);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + (((HEAP32[($8 + 88 | 0) >> 2] | 0) + 0 | 0) << 2 | 0) | 0) >> 2] = $298;
|
|
$311 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($8 + 96 | 0 | 0) | 0) + 4 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + (((HEAP32[($8 + 88 | 0) >> 2] | 0) + 1 | 0) << 2 | 0) | 0) >> 2] = $311;
|
|
$324 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($8 + 96 | 0 | 0) | 0) + 8 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + (((HEAP32[($8 + 88 | 0) >> 2] | 0) + 2 | 0) << 2 | 0) | 0) >> 2] = $324;
|
|
$338 = Math_fround(-Math_fround(HEAPF32[(btVector3__operator_20float__28_29($8 + 112 | 0 | 0) | 0) >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + (((HEAP32[($8 + 92 | 0) >> 2] | 0) + 0 | 0) << 2 | 0) | 0) >> 2] = $338;
|
|
$352 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float__28_29($8 + 112 | 0 | 0) | 0) + 4 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + (((HEAP32[($8 + 92 | 0) >> 2] | 0) + 1 | 0) << 2 | 0) | 0) >> 2] = $352;
|
|
$366 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float__28_29($8 + 112 | 0 | 0) | 0) + 8 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + (((HEAP32[($8 + 92 | 0) >> 2] | 0) + 2 | 0) << 2 | 0) | 0) >> 2] = $366;
|
|
$380 = Math_fround(-Math_fround(HEAPF32[(btVector3__operator_20float__28_29($8 + 96 | 0 | 0) | 0) >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + (((HEAP32[($8 + 88 | 0) >> 2] | 0) + 0 | 0) << 2 | 0) | 0) >> 2] = $380;
|
|
$394 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float__28_29($8 + 96 | 0 | 0) | 0) + 4 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + (((HEAP32[($8 + 88 | 0) >> 2] | 0) + 1 | 0) << 2 | 0) | 0) >> 2] = $394;
|
|
$408 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float__28_29($8 + 96 | 0 | 0) | 0) + 8 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + (((HEAP32[($8 + 88 | 0) >> 2] | 0) + 2 | 0) << 2 | 0) | 0) >> 2] = $408;
|
|
btMatrix3x3__getColumn_28int_29_20const($8 + 72 | 0 | 0, btTransform__getBasis_28_29($8 + 256 | 0 | 0) | 0 | 0, 2 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($8 + 56 | 0 | 0, $8 + 128 | 0 | 0, $8 + 72 | 0 | 0);
|
|
$442 = Math_fround(Math_fround(HEAPF32[($8 + 144 | 0) >> 2]) * Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 56 | 0 | 0, $8 + 112 | 0 | 0)));
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($8 + 92 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = $442;
|
|
$457 = Math_fround(Math_fround(HEAPF32[($8 + 144 | 0) >> 2]) * Math_fround(btVector3__dot_28btVector3_20const__29_20const($8 + 56 | 0 | 0, $8 + 96 | 0 | 0)));
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($8 + 88 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = $457;
|
|
HEAP32[($8 + 52 | 0) >> 2] = 4;
|
|
HEAPF32[($8 + 44 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP32[($8 + 40 | 0) >> 2] = 0;
|
|
label$8 : {
|
|
if (!(btHingeConstraint__getSolveLimit_28_29($9 | 0) | 0)) {
|
|
break label$8
|
|
}
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(Math_fround(btAngularLimit__getCorrection_28_29_20const($9 + 688 | 0 | 0)) * Math_fround(HEAPF32[($9 + 732 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP32[($8 + 40 | 0) >> 2] = Math_fround(HEAPF32[($8 + 44 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0 ? 1 : 2;
|
|
}
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = (btHingeConstraint__getEnableAngularMotor_28_29($9 | 0) | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 39 | 0) >> 0] = wasm2js_i32$1;
|
|
label$9 : {
|
|
label$10 : {
|
|
if (HEAP32[($8 + 40 | 0) >> 2] | 0) {
|
|
break label$10
|
|
}
|
|
if (!((HEAPU8[($8 + 39 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
}
|
|
HEAP32[($8 + 52 | 0) >> 2] = (HEAP32[($8 + 52 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($8 + 48 | 0) >> 2] = Math_imul(HEAP32[($8 + 52 | 0) >> 2] | 0, HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0);
|
|
$501 = Math_fround(HEAPF32[(btVector3__operator_20float__28_29($8 + 128 | 0 | 0) | 0) >> 2]);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + (((HEAP32[($8 + 48 | 0) >> 2] | 0) + 0 | 0) << 2 | 0) | 0) >> 2] = $501;
|
|
$514 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($8 + 128 | 0 | 0) | 0) + 4 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + (((HEAP32[($8 + 48 | 0) >> 2] | 0) + 1 | 0) << 2 | 0) | 0) >> 2] = $514;
|
|
$527 = Math_fround(HEAPF32[((btVector3__operator_20float__28_29($8 + 128 | 0 | 0) | 0) + 8 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + (((HEAP32[($8 + 48 | 0) >> 2] | 0) + 2 | 0) << 2 | 0) | 0) >> 2] = $527;
|
|
$541 = Math_fround(-Math_fround(HEAPF32[(btVector3__operator_20float__28_29($8 + 128 | 0 | 0) | 0) >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + (((HEAP32[($8 + 48 | 0) >> 2] | 0) + 0 | 0) << 2 | 0) | 0) >> 2] = $541;
|
|
$555 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float__28_29($8 + 128 | 0 | 0) | 0) + 4 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + (((HEAP32[($8 + 48 | 0) >> 2] | 0) + 1 | 0) << 2 | 0) | 0) >> 2] = $555;
|
|
$569 = Math_fround(-Math_fround(HEAPF32[((btVector3__operator_20float__28_29($8 + 128 | 0 | 0) | 0) + 8 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + (((HEAP32[($8 + 48 | 0) >> 2] | 0) + 2 | 0) << 2 | 0) | 0) >> 2] = $569;
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btHingeConstraint__getLowerLimit_28_29_20const($9 | 0))), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btHingeConstraint__getUpperLimit_28_29_20const($9 | 0))), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
label$11 : {
|
|
if (!(HEAP32[($8 + 40 | 0) >> 2] | 0)) {
|
|
break label$11
|
|
}
|
|
if (!(Math_fround(HEAPF32[($8 + 32 | 0) >> 2]) == Math_fround(HEAPF32[($8 + 28 | 0) >> 2]) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
HEAP8[($8 + 39 | 0) >> 0] = 0;
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(0 | 0);
|
|
label$12 : {
|
|
label$13 : {
|
|
if (!((HEAP32[($9 + 748 | 0) >> 2] | 0) & 2 | 0)) {
|
|
break label$13
|
|
}
|
|
$599 = Math_fround(HEAPF32[($9 + 764 | 0) >> 2]);
|
|
break label$12;
|
|
}
|
|
$599 = Math_fround(HEAPF32[($8 + 148 | 0) >> 2]);
|
|
}
|
|
HEAPF32[($8 + 24 | 0) >> 2] = $599;
|
|
label$14 : {
|
|
if (!((HEAPU8[($8 + 39 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
label$15 : {
|
|
if (!((HEAP32[($9 + 748 | 0) >> 2] | 0) & 4 | 0)) {
|
|
break label$15
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($9 + 752 | 0) >> 2]);
|
|
}
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btTypedConstraint__getMotorFactor_28float_2c_20float_2c_20float_2c_20float_2c_20float_29($9 | 0, Math_fround(Math_fround(HEAPF32[($9 + 728 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($8 + 32 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($8 + 28 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($9 + 680 | 0) >> 2])), Math_fround(Math_fround(Math_fround(HEAPF32[(HEAP32[($8 + 408 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[($8 + 24 | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
$633 = (HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
HEAPF32[$633 >> 2] = Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[($8 + 20 | 0) >> 2]) * Math_fround(HEAPF32[($9 + 680 | 0) >> 2])) * Math_fround(HEAPF32[($9 + 732 | 0) >> 2])) + Math_fround(HEAPF32[$633 >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($9 + 684 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($9 + 684 | 0) >> 2]);
|
|
}
|
|
label$16 : {
|
|
if (!(HEAP32[($8 + 40 | 0) >> 2] | 0)) {
|
|
break label$16
|
|
}
|
|
HEAPF32[($8 + 144 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[(HEAP32[($8 + 408 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[($8 + 24 | 0) >> 2]));
|
|
$664 = (HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
HEAPF32[$664 >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($8 + 144 | 0) >> 2]) * Math_fround(HEAPF32[($8 + 44 | 0) >> 2])) + Math_fround(HEAPF32[$664 >> 2]));
|
|
label$17 : {
|
|
if (!((HEAP32[($9 + 748 | 0) >> 2] | 0) & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($9 + 760 | 0) >> 2]);
|
|
}
|
|
label$18 : {
|
|
label$19 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 32 | 0) >> 2]) == Math_fround(HEAPF32[($8 + 28 | 0) >> 2]) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(-3402823466385288598117041.0e14);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(3402823466385288598117041.0e14);
|
|
break label$18;
|
|
}
|
|
label$20 : {
|
|
label$21 : {
|
|
if (!((HEAP32[($8 + 40 | 0) >> 2] | 0 | 0) == (1 | 0) & 1 | 0)) {
|
|
break label$21
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(3402823466385288598117041.0e14);
|
|
break label$20;
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(-3402823466385288598117041.0e14);
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(0 | 0);
|
|
}
|
|
}
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btAngularLimit__getRelaxationFactor_28_29_20const($9 + 688 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
label$22 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 16 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$22
|
|
}
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($8 + 396 | 0) >> 2] | 0 | 0, $8 + 128 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
$752 = Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($8 + 392 | 0) >> 2] | 0 | 0, $8 + 128 | 0 | 0));
|
|
HEAPF32[($8 + 12 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($8 + 12 | 0) >> 2]) - $752);
|
|
label$23 : {
|
|
label$24 : {
|
|
if (!((HEAP32[($8 + 40 | 0) >> 2] | 0 | 0) == (1 | 0) & 1 | 0)) {
|
|
break label$24
|
|
}
|
|
label$25 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 12 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$25
|
|
}
|
|
HEAPF32[($8 + 8 | 0) >> 2] = Math_fround(Math_fround(-Math_fround(HEAPF32[($8 + 16 | 0) >> 2])) * Math_fround(HEAPF32[($8 + 12 | 0) >> 2]));
|
|
label$26 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 8 | 0) >> 2]) > Math_fround(HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$26
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($8 + 8 | 0) >> 2]);
|
|
}
|
|
}
|
|
break label$23;
|
|
}
|
|
label$27 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 12 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$27
|
|
}
|
|
HEAPF32[($8 + 4 | 0) >> 2] = Math_fround(Math_fround(-Math_fround(HEAPF32[($8 + 16 | 0) >> 2])) * Math_fround(HEAPF32[($8 + 12 | 0) >> 2]));
|
|
label$28 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 4 | 0) >> 2]) < Math_fround(HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) & 1 | 0)) {
|
|
break label$28
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($8 + 4 | 0) >> 2]);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
$820 = Math_fround(btAngularLimit__getBiasFactor_28_29_20const($9 + 688 | 0 | 0));
|
|
$826 = (HEAP32[((HEAP32[($8 + 408 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + ((HEAP32[($8 + 48 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
HEAPF32[$826 >> 2] = Math_fround(Math_fround(HEAPF32[$826 >> 2]) * $820);
|
|
}
|
|
}
|
|
__stack_pointer = $8 + 416 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAngularLimit__getCorrection_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 20 | 0) >> 2]));
|
|
}
|
|
|
|
function btHingeConstraint__getLowerLimit_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $7 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$7 = Math_fround(btAngularLimit__getLow_28_29_20const((HEAP32[($3 + 12 | 0) >> 2] | 0) + 688 | 0 | 0));
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($7);
|
|
}
|
|
|
|
function btHingeConstraint__getUpperLimit_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $7 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$7 = Math_fround(btAngularLimit__getHigh_28_29_20const((HEAP32[($3 + 12 | 0) >> 2] | 0) + 688 | 0 | 0));
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($7);
|
|
}
|
|
|
|
function btAngularLimit__getRelaxationFactor_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 16 | 0) >> 2]));
|
|
}
|
|
|
|
function btAngularLimit__getBiasFactor_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 12 | 0) >> 2]));
|
|
}
|
|
|
|
function btVector3__getSkewSymmetricMatrix_28btVector3__2c_20btVector3__2c_20btVector3__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $8 = 0, $21 = 0, $22 = 0, $34 = 0, $38 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 32 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
$8 = HEAP32[($6 + 40 | 0) >> 2] | 0;
|
|
HEAPF32[($6 + 28 | 0) >> 2] = Math_fround(0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(-Math_fround(HEAPF32[(btVector3__z_28_29_20const($7 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($8 | 0, $6 + 28 | 0 | 0, $6 + 24 | 0 | 0, btVector3__y_28_29_20const($7 | 0) | 0 | 0);
|
|
$21 = HEAP32[($6 + 36 | 0) >> 2] | 0;
|
|
$22 = btVector3__z_28_29_20const($7 | 0) | 0;
|
|
HEAPF32[($6 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(-Math_fround(HEAPF32[(btVector3__x_28_29_20const($7 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($21 | 0, $22 | 0, $6 + 20 | 0 | 0, $6 + 16 | 0 | 0);
|
|
$34 = HEAP32[($6 + 32 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(-Math_fround(HEAPF32[(btVector3__y_28_29_20const($7 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
$38 = btVector3__x_28_29_20const($7 | 0) | 0;
|
|
HEAPF32[($6 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($34 | 0, $6 + 12 | 0 | 0, $38 | 0, $6 + 8 | 0 | 0);
|
|
__stack_pointer = $6 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHingeConstraint__setFrames_28btTransform_20const__2c_20btTransform_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btTransform__operator__28btTransform_20const__29($6 + 552 | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
btTransform__operator__28btTransform_20const__29($6 + 616 | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($6);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_2_1() {
|
|
var $2 = 0;
|
|
$2 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $2;
|
|
HEAPF32[($2 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($2 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($2 + 4 | 0) >> 2] = Math_fround(1.0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(115408 | 0, $2 + 12 | 0 | 0, $2 + 8 | 0 | 0, $2 + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $2 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHingeConstraint__setMotorTarget_28float_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $6 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
btAngularLimit__fit_28float__29_20const($6 + 688 | 0 | 0, $5 + 24 | 0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btHingeConstraint__getHingeAngle_28btTransform_20const__2c_20btTransform_20const__29($6 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($6 + 32 | 0) >> 2] | 0 | 0) | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 24 | 0) >> 2]) - Math_fround(HEAPF32[($5 + 16 | 0) >> 2]));
|
|
HEAPF32[($6 + 680 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 12 | 0) >> 2]) / Math_fround(HEAPF32[($5 + 20 | 0) >> 2]));
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHingeConstraint__setParam_28int_2c_20float_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $24 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : {
|
|
if ((HEAP32[$6 >> 2] | 0 | 0) == (-1 | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
if (!((HEAP32[$6 >> 2] | 0 | 0) == (5 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
}
|
|
$24 = (HEAP32[($6 + 8 | 0) >> 2] | 0) + -1 | 0;
|
|
label$4 : {
|
|
label$5 : {
|
|
switch ($24 | 0) {
|
|
case 1:
|
|
HEAPF32[($7 + 764 | 0) >> 2] = Math_fround(HEAPF32[($6 + 4 | 0) >> 2]);
|
|
HEAP32[($7 + 748 | 0) >> 2] = HEAP32[($7 + 748 | 0) >> 2] | 0 | 2 | 0;
|
|
break label$4;
|
|
case 3:
|
|
HEAPF32[($7 + 760 | 0) >> 2] = Math_fround(HEAPF32[($6 + 4 | 0) >> 2]);
|
|
HEAP32[($7 + 748 | 0) >> 2] = HEAP32[($7 + 748 | 0) >> 2] | 0 | 1 | 0;
|
|
break label$4;
|
|
case 2:
|
|
HEAPF32[($7 + 752 | 0) >> 2] = Math_fround(HEAPF32[($6 + 4 | 0) >> 2]);
|
|
HEAP32[($7 + 748 | 0) >> 2] = HEAP32[($7 + 748 | 0) >> 2] | 0 | 4 | 0;
|
|
break label$4;
|
|
case 0:
|
|
HEAPF32[($7 + 756 | 0) >> 2] = Math_fround(HEAPF32[($6 + 4 | 0) >> 2]);
|
|
HEAP32[($7 + 748 | 0) >> 2] = HEAP32[($7 + 748 | 0) >> 2] | 0 | 8 | 0;
|
|
break label$4;
|
|
default:
|
|
break label$5;
|
|
};
|
|
}
|
|
__assert_fail(86177 | 0, 71702 | 0, 1076 | 0, 77248 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
break label$1;
|
|
}
|
|
__assert_fail(86177 | 0, 71702 | 0, 1081 | 0, 77248 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHingeConstraint__getParam_28int_2c_20int_29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $25 = 0, $67 = Math_fround(0);
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[$5 >> 2] = Math_fround(0 | 0);
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : {
|
|
if ((HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) == (-1 | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
if (!((HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) == (5 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
}
|
|
$25 = (HEAP32[($5 + 8 | 0) >> 2] | 0) + -1 | 0;
|
|
label$4 : {
|
|
label$5 : {
|
|
switch ($25 | 0) {
|
|
case 1:
|
|
label$10 : {
|
|
if ((HEAP32[($6 + 748 | 0) >> 2] | 0) & 2 | 0) {
|
|
break label$10
|
|
}
|
|
__assert_fail(84189 | 0, 71702 | 0, 1094 | 0, 77257 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAPF32[$5 >> 2] = Math_fround(HEAPF32[($6 + 764 | 0) >> 2]);
|
|
break label$4;
|
|
case 3:
|
|
label$11 : {
|
|
if ((HEAP32[($6 + 748 | 0) >> 2] | 0) & 1 | 0) {
|
|
break label$11
|
|
}
|
|
__assert_fail(84223 | 0, 71702 | 0, 1098 | 0, 77257 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAPF32[$5 >> 2] = Math_fround(HEAPF32[($6 + 760 | 0) >> 2]);
|
|
break label$4;
|
|
case 2:
|
|
label$12 : {
|
|
if ((HEAP32[($6 + 748 | 0) >> 2] | 0) & 4 | 0) {
|
|
break label$12
|
|
}
|
|
__assert_fail(84320 | 0, 71702 | 0, 1102 | 0, 77257 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAPF32[$5 >> 2] = Math_fround(HEAPF32[($6 + 752 | 0) >> 2]);
|
|
break label$4;
|
|
case 0:
|
|
label$13 : {
|
|
if ((HEAP32[($6 + 748 | 0) >> 2] | 0) & 8 | 0) {
|
|
break label$13
|
|
}
|
|
__assert_fail(84286 | 0, 71702 | 0, 1106 | 0, 77257 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAPF32[$5 >> 2] = Math_fround(HEAPF32[($6 + 756 | 0) >> 2]);
|
|
break label$4;
|
|
default:
|
|
break label$5;
|
|
};
|
|
}
|
|
__assert_fail(86177 | 0, 71702 | 0, 1110 | 0, 77257 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
break label$1;
|
|
}
|
|
__assert_fail(86177 | 0, 71702 | 0, 1115 | 0, 77257 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$67 = Math_fround(HEAPF32[$5 >> 2]);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return Math_fround($67);
|
|
}
|
|
|
|
function btHingeConstraint___btHingeConstraint_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btTypedConstraint___btTypedConstraint_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btHingeConstraint___btHingeConstraint_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btHingeConstraint___btHingeConstraint_28_29($4 | 0) | 0;
|
|
btHingeConstraint__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHingeConstraint__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btHingeConstraint__calculateSerializeBufferSize_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 220 | 0;
|
|
}
|
|
|
|
function btHingeConstraint__serialize_28void__2c_20btSerializer__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $38 = Math_fround(0), $42 = Math_fround(0), $46 = Math_fround(0), $50 = Math_fround(0), $54 = Math_fround(0);
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
btTypedConstraint__serialize_28void__2c_20btSerializer__29_20const($6 | 0, HEAP32[$5 >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
btTransform__serialize_28btTransformFloatData__29_20const($6 + 552 | 0 | 0, (HEAP32[$5 >> 2] | 0) + 52 | 0 | 0);
|
|
btTransform__serialize_28btTransformFloatData__29_20const($6 + 616 | 0 | 0, (HEAP32[$5 >> 2] | 0) + 116 | 0 | 0);
|
|
HEAP32[((HEAP32[$5 >> 2] | 0) + 184 | 0) >> 2] = (HEAPU8[($6 + 736 | 0) >> 0] | 0) & 1 | 0;
|
|
HEAP32[((HEAP32[$5 >> 2] | 0) + 188 | 0) >> 2] = (HEAPU8[($6 + 737 | 0) >> 0] | 0) & 1 | 0;
|
|
HEAPF32[((HEAP32[$5 >> 2] | 0) + 196 | 0) >> 2] = Math_fround(HEAPF32[($6 + 684 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[$5 >> 2] | 0) + 192 | 0) >> 2] = Math_fround(HEAPF32[($6 + 680 | 0) >> 2]);
|
|
HEAP32[((HEAP32[$5 >> 2] | 0) + 180 | 0) >> 2] = (HEAPU8[($6 + 740 | 0) >> 0] | 0) & 1 | 0;
|
|
$38 = Math_fround(btAngularLimit__getLow_28_29_20const($6 + 688 | 0 | 0));
|
|
HEAPF32[((HEAP32[$5 >> 2] | 0) + 200 | 0) >> 2] = $38;
|
|
$42 = Math_fround(btAngularLimit__getHigh_28_29_20const($6 + 688 | 0 | 0));
|
|
HEAPF32[((HEAP32[$5 >> 2] | 0) + 204 | 0) >> 2] = $42;
|
|
$46 = Math_fround(btAngularLimit__getSoftness_28_29_20const($6 + 688 | 0 | 0));
|
|
HEAPF32[((HEAP32[$5 >> 2] | 0) + 208 | 0) >> 2] = $46;
|
|
$50 = Math_fround(btAngularLimit__getBiasFactor_28_29_20const($6 + 688 | 0 | 0));
|
|
HEAPF32[((HEAP32[$5 >> 2] | 0) + 212 | 0) >> 2] = $50;
|
|
$54 = Math_fround(btAngularLimit__getRelaxationFactor_28_29_20const($6 + 688 | 0 | 0));
|
|
HEAPF32[((HEAP32[$5 >> 2] | 0) + 216 | 0) >> 2] = $54;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return 83264 | 0;
|
|
}
|
|
|
|
function btAngularLimit__getSoftness_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2]));
|
|
}
|
|
|
|
function btHingeConstraint__getFlags_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 748 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btHingeConstraint_cpp() {
|
|
__cxx_global_var_init_70();
|
|
__cxx_global_var_init_2_1();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_71() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(115424 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btPoint2PointConstraint__btPoint2PointConstraint_28btRigidBody__2c_20btRigidBody__2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $8 = 0, $16 = 0, $19 = 0, $20 = 0, $22 = 0, $29 = 0, $32 = 0, $37 = 0, $40 = 0, $18 = 0, $116 = 0, $126 = 0, $135 = 0, $145 = 0, $48 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 8 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $8;
|
|
btTypedConstraint__btTypedConstraint_28btTypedConstraintType_2c_20btRigidBody__2c_20btRigidBody__29($8 | 0, 3 | 0, HEAP32[($7 + 20 | 0) >> 2] | 0 | 0, HEAP32[($7 + 16 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$8 >> 2] = 102276 + 8 | 0;
|
|
$16 = $8 + 48 | 0;
|
|
$18 = $16 + 252 | 0;
|
|
$19 = $16;
|
|
label$1 : while (1) {
|
|
$20 = $19;
|
|
btJacobianEntry__btJacobianEntry_28_29($20 | 0) | 0;
|
|
$22 = $20 + 84 | 0;
|
|
$19 = $22;
|
|
if (!(($22 | 0) == ($18 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
$29 = $8 + 300 | 0;
|
|
i64toi32_i32$2 = HEAP32[($7 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$116 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $29;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $116;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$32 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $32 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$126 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $29 + $32 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $126;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$37 = $8 + 316 | 0;
|
|
i64toi32_i32$2 = HEAP32[($7 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$135 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $37;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $135;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$40 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $40 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$145 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $37 + $40 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $145;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($8 + 332 | 0) >> 2] = 0;
|
|
HEAP8[($8 + 344 | 0) >> 0] = 0;
|
|
btConstraintSetting__btConstraintSetting_28_29($8 + 348 | 0 | 0) | 0;
|
|
$48 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return $48 | 0;
|
|
}
|
|
|
|
function btConstraintSetting__btConstraintSetting_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[$4 >> 2] = Math_fround(.30000001192092896);
|
|
HEAPF32[($4 + 4 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($4 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btPoint2PointConstraint__buildJacobian_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $47 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$3 = __stack_pointer - 208 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 204 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 204 | 0) >> 2] | 0;
|
|
HEAPF32[($4 + 36 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 184 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 180 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($3 + 176 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 188 | 0 | 0, $3 + 184 | 0 | 0, $3 + 180 | 0 | 0, $3 + 176 | 0 | 0) | 0;
|
|
HEAP32[($3 + 172 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($3 + 172 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($3 + 188 | 0 | 0) | 0) + ((HEAP32[($3 + 172 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = Math_fround(1.0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$47 = ($4 + 48 | 0) + Math_imul(HEAP32[($3 + 172 | 0) >> 2] | 0, 84) | 0;
|
|
btMatrix3x3__transpose_28_29_20const($3 + 124 | 0 | 0, btTransform__getBasis_28_29_20const(btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($4 + 28 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
btMatrix3x3__transpose_28_29_20const($3 + 76 | 0 | 0, btTransform__getBasis_28_29_20const(btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($4 + 32 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($3 + 44 | 0 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($4 + 28 | 0) >> 2] | 0 | 0) | 0 | 0, $4 + 300 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($3 + 60 | 0 | 0, $3 + 44 | 0 | 0, btRigidBody__getCenterOfMassPosition_28_29_20const(HEAP32[($4 + 28 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($3 + 12 | 0 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($4 + 32 | 0) >> 2] | 0 | 0) | 0 | 0, $4 + 316 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($3 + 28 | 0 | 0, $3 + 12 | 0 | 0, btRigidBody__getCenterOfMassPosition_28_29_20const(HEAP32[($4 + 32 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btJacobianEntry__btJacobianEntry_28btMatrix3x3_20const__2c_20btMatrix3x3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20btVector3_20const__2c_20float_29($47 | 0, $3 + 124 | 0 | 0, $3 + 76 | 0 | 0, $3 + 60 | 0 | 0, $3 + 28 | 0 | 0, $3 + 188 | 0 | 0, btRigidBody__getInvInertiaDiagLocal_28_29_20const(HEAP32[($4 + 28 | 0) >> 2] | 0 | 0) | 0 | 0, Math_fround(Math_fround(btRigidBody__getInvMass_28_29_20const(HEAP32[($4 + 28 | 0) >> 2] | 0 | 0))), btRigidBody__getInvInertiaDiagLocal_28_29_20const(HEAP32[($4 + 32 | 0) >> 2] | 0 | 0) | 0 | 0, Math_fround(Math_fround(btRigidBody__getInvMass_28_29_20const(HEAP32[($4 + 32 | 0) >> 2] | 0 | 0)))) | 0;
|
|
(wasm2js_i32$0 = (btVector3__operator_20float__28_29($3 + 188 | 0 | 0) | 0) + ((HEAP32[($3 + 172 | 0) >> 2] | 0) << 2 | 0) | 0, wasm2js_f32$0 = Math_fround(0 | 0)), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAP32[($3 + 172 | 0) >> 2] = (HEAP32[($3 + 172 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $3 + 208 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPoint2PointConstraint__getInfo1_28btTypedConstraint__btConstraintInfo1__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btPoint2PointConstraint__getInfo1NonVirtual_28btTypedConstraint__btConstraintInfo1__29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPoint2PointConstraint__getInfo1NonVirtual_28btTypedConstraint__btConstraintInfo1__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 344 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] = 0;
|
|
HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] = 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] = 3;
|
|
HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] = 3;
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btPoint2PointConstraint__getInfo2_28btTypedConstraint__btConstraintInfo2__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btPoint2PointConstraint__getInfo2NonVirtual_28btTypedConstraint__btConstraintInfo2__2c_20btTransform_20const__2c_20btTransform_20const__29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) | 0 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPoint2PointConstraint__getInfo2NonVirtual_28btTypedConstraint__btConstraintInfo2__2c_20btTransform_20const__2c_20btTransform_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $135 = Math_fround(0), $151 = Math_fround(0), $179 = Math_fround(0), $182 = 0;
|
|
$6 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 108 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 104 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 100 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 96 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 108 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($7 + 344 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
__assert_fail(81148 | 0, 71573 | 0, 99 | 0, 77382 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAPF32[(HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[((HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + (((HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0) + 1 | 0) << 2 | 0) | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[((HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) + ((((HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0) << 1 | 0) + 2 | 0) << 2 | 0) | 0) >> 2] = Math_fround(1.0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($6 + 80 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($6 + 100 | 0) >> 2] | 0 | 0) | 0 | 0, btPoint2PointConstraint__getPivotInA_28_29_20const($7 | 0) | 0 | 0);
|
|
HEAP32[($6 + 76 | 0) >> 2] = HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 72 | 0) >> 2] = (HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + ((HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
HEAP32[($6 + 68 | 0) >> 2] = (HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 12 | 0) >> 2] | 0) + (((HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0) << 1 | 0) << 2 | 0) | 0;
|
|
operator__28btVector3_20const__29($6 + 52 | 0 | 0, $6 + 80 | 0 | 0);
|
|
btVector3__getSkewSymmetricMatrix_28btVector3__2c_20btVector3__2c_20btVector3__29_20const($6 + 52 | 0 | 0, HEAP32[($6 + 76 | 0) >> 2] | 0 | 0, HEAP32[($6 + 72 | 0) >> 2] | 0 | 0, HEAP32[($6 + 68 | 0) >> 2] | 0 | 0);
|
|
HEAPF32[(HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[((HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0) + (((HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0) + 1 | 0) << 2 | 0) | 0) >> 2] = Math_fround(-1.0);
|
|
HEAPF32[((HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 16 | 0) >> 2] | 0) + ((((HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0) << 1 | 0) + 2 | 0) << 2 | 0) | 0) >> 2] = Math_fround(-1.0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($6 + 36 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($6 + 96 | 0) >> 2] | 0 | 0) | 0 | 0, btPoint2PointConstraint__getPivotInB_28_29_20const($7 | 0) | 0 | 0);
|
|
HEAP32[($6 + 32 | 0) >> 2] = HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = (HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + ((HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = (HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) + (((HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0) << 1 | 0) << 2 | 0) | 0;
|
|
btVector3__getSkewSymmetricMatrix_28btVector3__2c_20btVector3__2c_20btVector3__29_20const($6 + 36 | 0 | 0, HEAP32[($6 + 32 | 0) >> 2] | 0 | 0, HEAP32[($6 + 28 | 0) >> 2] | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0);
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((HEAP32[($7 + 332 | 0) >> 2] | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$135 = Math_fround(HEAPF32[($7 + 336 | 0) >> 2]);
|
|
break label$2;
|
|
}
|
|
$135 = Math_fround(HEAPF32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 4 | 0) >> 2]);
|
|
}
|
|
HEAPF32[($6 + 20 | 0) >> 2] = $135;
|
|
HEAPF32[($6 + 16 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[(HEAP32[($6 + 104 | 0) >> 2] | 0) >> 2]) * Math_fround(HEAPF32[($6 + 20 | 0) >> 2]));
|
|
HEAP32[($6 + 12 | 0) >> 2] = 0;
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$151 = Math_fround(HEAPF32[($6 + 16 | 0) >> 2]);
|
|
$179 = Math_fround(Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 36 | 0 | 0) | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]) + Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(btTransform__getOrigin_28_29_20const(HEAP32[($6 + 96 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])) - Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 80 | 0 | 0) | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]));
|
|
$182 = btVector3__operator_20float_20const__28_29_20const(btTransform__getOrigin_28_29_20const(HEAP32[($6 + 100 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
HEAPF32[((HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0) + (Math_imul(HEAP32[($6 + 12 | 0) >> 2] | 0, HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround($151 * Math_fround($179 - Math_fround(HEAPF32[($182 + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2])));
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
label$6 : {
|
|
if (!((HEAP32[($7 + 332 | 0) >> 2] | 0) & 2 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAP32[($6 + 12 | 0) >> 2] = 0;
|
|
label$7 : {
|
|
label$8 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0) + (Math_imul(HEAP32[($6 + 12 | 0) >> 2] | 0, HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($7 + 340 | 0) >> 2]);
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$8;
|
|
};
|
|
}
|
|
}
|
|
HEAPF32[($6 + 8 | 0) >> 2] = Math_fround(HEAPF32[($7 + 356 | 0) >> 2]);
|
|
HEAP32[($6 + 12 | 0) >> 2] = 0;
|
|
label$9 : {
|
|
label$10 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (3 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
label$11 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 356 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
HEAPF32[((HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 36 | 0) >> 2] | 0) + (Math_imul(HEAP32[($6 + 12 | 0) >> 2] | 0, HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($6 + 8 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 40 | 0) >> 2] | 0) + (Math_imul(HEAP32[($6 + 12 | 0) >> 2] | 0, HEAP32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = Math_fround(HEAPF32[($6 + 8 | 0) >> 2]);
|
|
}
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$10;
|
|
};
|
|
}
|
|
HEAPF32[((HEAP32[($6 + 104 | 0) >> 2] | 0) + 48 | 0) >> 2] = Math_fround(HEAPF32[($7 + 352 | 0) >> 2]);
|
|
__stack_pointer = $6 + 112 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPoint2PointConstraint__getPivotInA_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 300 | 0 | 0;
|
|
}
|
|
|
|
function btPoint2PointConstraint__getPivotInB_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 316 | 0 | 0;
|
|
}
|
|
|
|
function btPoint2PointConstraint__setParam_28int_2c_20float_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $21 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[$6 >> 2] | 0 | 0) != (-1 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
__assert_fail(86177 | 0, 71573 | 0, 179 | 0, 77248 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$21 = (HEAP32[($6 + 8 | 0) >> 2] | 0) + -1 | 0;
|
|
label$2 : {
|
|
label$3 : {
|
|
switch ($21 | 0) {
|
|
case 0:
|
|
case 1:
|
|
HEAPF32[($7 + 336 | 0) >> 2] = Math_fround(HEAPF32[($6 + 4 | 0) >> 2]);
|
|
HEAP32[($7 + 332 | 0) >> 2] = HEAP32[($7 + 332 | 0) >> 2] | 0 | 1 | 0;
|
|
break label$2;
|
|
case 2:
|
|
case 3:
|
|
HEAPF32[($7 + 340 | 0) >> 2] = Math_fround(HEAPF32[($6 + 4 | 0) >> 2]);
|
|
HEAP32[($7 + 332 | 0) >> 2] = HEAP32[($7 + 332 | 0) >> 2] | 0 | 2 | 0;
|
|
break label$2;
|
|
default:
|
|
break label$3;
|
|
};
|
|
}
|
|
__assert_fail(86177 | 0, 71573 | 0, 196 | 0, 77248 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPoint2PointConstraint__getParam_28int_2c_20int_29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $21 = 0, $43 = Math_fround(0);
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[$5 >> 2] = Math_fround(3402823466385288598117041.0e14);
|
|
label$1 : {
|
|
if (!((HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) != (-1 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
__assert_fail(86177 | 0, 71573 | 0, 207 | 0, 77257 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$21 = (HEAP32[($5 + 8 | 0) >> 2] | 0) + -1 | 0;
|
|
label$2 : {
|
|
label$3 : {
|
|
switch ($21 | 0) {
|
|
case 0:
|
|
case 1:
|
|
label$6 : {
|
|
if ((HEAP32[($6 + 332 | 0) >> 2] | 0) & 1 | 0) {
|
|
break label$6
|
|
}
|
|
__assert_fail(84162 | 0, 71573 | 0, 215 | 0, 77257 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAPF32[$5 >> 2] = Math_fround(HEAPF32[($6 + 336 | 0) >> 2]);
|
|
break label$2;
|
|
case 2:
|
|
case 3:
|
|
label$7 : {
|
|
if ((HEAP32[($6 + 332 | 0) >> 2] | 0) & 2 | 0) {
|
|
break label$7
|
|
}
|
|
__assert_fail(84354 | 0, 71573 | 0, 220 | 0, 77257 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAPF32[$5 >> 2] = Math_fround(HEAPF32[($6 + 340 | 0) >> 2]);
|
|
break label$2;
|
|
default:
|
|
break label$3;
|
|
};
|
|
}
|
|
__assert_fail(86177 | 0, 71573 | 0, 224 | 0, 77257 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$43 = Math_fround(HEAPF32[$5 >> 2]);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return Math_fround($43);
|
|
}
|
|
|
|
function btPoint2PointConstraint___btPoint2PointConstraint_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btTypedConstraint___btTypedConstraint_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btPoint2PointConstraint___btPoint2PointConstraint_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btPoint2PointConstraint___btPoint2PointConstraint_28_29($4 | 0) | 0;
|
|
btPoint2PointConstraint__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPoint2PointConstraint__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPoint2PointConstraint__calculateSerializeBufferSize_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 84 | 0;
|
|
}
|
|
|
|
function btPoint2PointConstraint__serialize_28void__2c_20btSerializer__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
btTypedConstraint__serialize_28void__2c_20btSerializer__29_20const($6 | 0, HEAP32[$5 >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
btVector3__serialize_28btVector3FloatData__29_20const($6 + 300 | 0 | 0, (HEAP32[$5 >> 2] | 0) + 52 | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const($6 + 316 | 0 | 0, (HEAP32[$5 >> 2] | 0) + 68 | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return 83231 | 0;
|
|
}
|
|
|
|
function btPoint2PointConstraint__getFlags_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 332 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btPoint2PointConstraint_cpp() {
|
|
__cxx_global_var_init_71();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_72() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(115428 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__resolveSingleConstraintRowGeneric_28btSolverBody__2c_20btSolverBody__2c_20btSolverConstraint_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $12 = Math_fround(0);
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$12 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0](HEAP32[($6 + 8 | 0) >> 2] | 0, HEAP32[($6 + 4 | 0) >> 2] | 0, HEAP32[$6 >> 2] | 0));
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return Math_fround($12);
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__resolveSingleConstraintRowLowerLimit_28btSolverBody__2c_20btSolverBody__2c_20btSolverConstraint_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $12 = Math_fround(0);
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$12 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0](HEAP32[($6 + 8 | 0) >> 2] | 0, HEAP32[($6 + 4 | 0) >> 2] | 0, HEAP32[$6 >> 2] | 0));
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return Math_fround($12);
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__btSequentialImpulseConstraintSolver_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btConstraintSolver__btConstraintSolver_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 102372 + 8 | 0;
|
|
btAlignedObjectArray_btSolverBody___btAlignedObjectArray_28_29($4 + 4 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btSolverConstraint___btAlignedObjectArray_28_29($4 + 24 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btSolverConstraint___btAlignedObjectArray_28_29($4 + 44 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btSolverConstraint___btAlignedObjectArray_28_29($4 + 64 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btSolverConstraint___btAlignedObjectArray_28_29($4 + 84 | 0 | 0) | 0;
|
|
btAlignedObjectArray_int___btAlignedObjectArray_28_29($4 + 104 | 0 | 0) | 0;
|
|
btAlignedObjectArray_int___btAlignedObjectArray_28_29($4 + 124 | 0 | 0) | 0;
|
|
btAlignedObjectArray_int___btAlignedObjectArray_28_29($4 + 144 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___btAlignedObjectArray_28_29($4 + 164 | 0 | 0) | 0;
|
|
btAlignedObjectArray_int___btAlignedObjectArray_28_29($4 + 192 | 0 | 0) | 0;
|
|
HEAP32[($4 + 232 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 224 | 0) >> 2] = 0;
|
|
btSequentialImpulseConstraintSolver__setupSolverFunctions_28bool_29($4 | 0, 0 & 1 | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConstraintSolver__btConstraintSolver_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 102512 + 8 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverBody___btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btSolverBody_2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btSolverBody___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverConstraint___btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btSolverConstraint_2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btSolverConstraint___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btTypedConstraint__btConstraintInfo1_2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__setupSolverFunctions_28bool_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP8[($4 + 11 | 0) >> 0] = $1;
|
|
$6 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 212 | 0) >> 2] = 1081;
|
|
HEAP32[($6 + 216 | 0) >> 2] = 1082;
|
|
HEAP32[($6 + 220 | 0) >> 2] = 1083;
|
|
label$1 : {
|
|
if (!((HEAPU8[($4 + 11 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btSolverBody_2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverBody___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btSolverConstraint_2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverConstraint___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btTypedConstraint__btConstraintInfo1_2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function gResolveSingleConstraintRowGeneric_scalar_reference_28btSolverBody__2c_20btSolverBody__2c_20btSolverConstraint_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $87 = 0, $103 = 0, $119 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 60 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 56 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 52 | 0) >> 2] = $2;
|
|
HEAPF32[($5 + 48 | 0) >> 2] = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 100 | 0) >> 2])) * Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 116 | 0) >> 2])) + Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 112 | 0) >> 2]));
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(btVector3__dot_28btVector3_20const__29_20const((HEAP32[($5 + 52 | 0) >> 2] | 0) + 16 | 0 | 0, btSolverBody__internalGetDeltaLinearVelocity_28_29(HEAP32[($5 + 60 | 0) >> 2] | 0 | 0) | 0 | 0)) + Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($5 + 52 | 0) >> 2] | 0 | 0, btSolverBody__internalGetDeltaAngularVelocity_28_29(HEAP32[($5 + 60 | 0) >> 2] | 0 | 0) | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(btVector3__dot_28btVector3_20const__29_20const((HEAP32[($5 + 52 | 0) >> 2] | 0) + 48 | 0 | 0, btSolverBody__internalGetDeltaLinearVelocity_28_29(HEAP32[($5 + 56 | 0) >> 2] | 0 | 0) | 0 | 0)) + Math_fround(btVector3__dot_28btVector3_20const__29_20const((HEAP32[($5 + 52 | 0) >> 2] | 0) + 32 | 0 | 0, btSolverBody__internalGetDeltaAngularVelocity_28_29(HEAP32[($5 + 56 | 0) >> 2] | 0 | 0) | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($5 + 48 | 0) >> 2] = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($5 + 44 | 0) >> 2])) * Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 108 | 0) >> 2])) + Math_fround(HEAPF32[($5 + 48 | 0) >> 2]));
|
|
HEAPF32[($5 + 48 | 0) >> 2] = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($5 + 40 | 0) >> 2])) * Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 108 | 0) >> 2])) + Math_fround(HEAPF32[($5 + 48 | 0) >> 2]));
|
|
HEAPF32[($5 + 36 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 100 | 0) >> 2]) + Math_fround(HEAPF32[($5 + 48 | 0) >> 2]));
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 36 | 0) >> 2]) < Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 120 | 0) >> 2]) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($5 + 48 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 120 | 0) >> 2]) - Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 100 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 100 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 120 | 0) >> 2]);
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 36 | 0) >> 2]) > Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 124 | 0) >> 2]) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAPF32[($5 + 48 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 124 | 0) >> 2]) - Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 100 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 100 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 124 | 0) >> 2]);
|
|
break label$3;
|
|
}
|
|
HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 100 | 0) >> 2] = Math_fround(HEAPF32[($5 + 36 | 0) >> 2]);
|
|
}
|
|
}
|
|
$87 = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($5 + 20 | 0 | 0, (HEAP32[($5 + 52 | 0) >> 2] | 0) + 16 | 0 | 0, btSolverBody__internalGetInvMass_28_29_20const(HEAP32[($5 + 60 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btSolverBody__internalApplyImpulse_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($87 | 0, $5 + 20 | 0 | 0, (HEAP32[($5 + 52 | 0) >> 2] | 0) + 64 | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 48 | 0) >> 2])));
|
|
$103 = HEAP32[($5 + 56 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($5 + 4 | 0 | 0, (HEAP32[($5 + 52 | 0) >> 2] | 0) + 48 | 0 | 0, btSolverBody__internalGetInvMass_28_29_20const(HEAP32[($5 + 56 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btSolverBody__internalApplyImpulse_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($103 | 0, $5 + 4 | 0 | 0, (HEAP32[($5 + 52 | 0) >> 2] | 0) + 80 | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 48 | 0) >> 2])));
|
|
$119 = Math_fround(HEAPF32[($5 + 48 | 0) >> 2]);
|
|
__stack_pointer = $5 + 64 | 0;
|
|
return Math_fround($119);
|
|
}
|
|
|
|
function gResolveSingleConstraintRowLowerLimit_scalar_reference_28btSolverBody__2c_20btSolverBody__2c_20btSolverConstraint_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $73 = 0, $89 = 0, $105 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 60 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 56 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 52 | 0) >> 2] = $2;
|
|
HEAPF32[($5 + 48 | 0) >> 2] = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 100 | 0) >> 2])) * Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 116 | 0) >> 2])) + Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 112 | 0) >> 2]));
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(btVector3__dot_28btVector3_20const__29_20const((HEAP32[($5 + 52 | 0) >> 2] | 0) + 16 | 0 | 0, btSolverBody__internalGetDeltaLinearVelocity_28_29(HEAP32[($5 + 60 | 0) >> 2] | 0 | 0) | 0 | 0)) + Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($5 + 52 | 0) >> 2] | 0 | 0, btSolverBody__internalGetDeltaAngularVelocity_28_29(HEAP32[($5 + 60 | 0) >> 2] | 0 | 0) | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(btVector3__dot_28btVector3_20const__29_20const((HEAP32[($5 + 52 | 0) >> 2] | 0) + 48 | 0 | 0, btSolverBody__internalGetDeltaLinearVelocity_28_29(HEAP32[($5 + 56 | 0) >> 2] | 0 | 0) | 0 | 0)) + Math_fround(btVector3__dot_28btVector3_20const__29_20const((HEAP32[($5 + 52 | 0) >> 2] | 0) + 32 | 0 | 0, btSolverBody__internalGetDeltaAngularVelocity_28_29(HEAP32[($5 + 56 | 0) >> 2] | 0 | 0) | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($5 + 48 | 0) >> 2] = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($5 + 44 | 0) >> 2])) * Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 108 | 0) >> 2])) + Math_fround(HEAPF32[($5 + 48 | 0) >> 2]));
|
|
HEAPF32[($5 + 48 | 0) >> 2] = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($5 + 40 | 0) >> 2])) * Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 108 | 0) >> 2])) + Math_fround(HEAPF32[($5 + 48 | 0) >> 2]));
|
|
HEAPF32[($5 + 36 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 100 | 0) >> 2]) + Math_fround(HEAPF32[($5 + 48 | 0) >> 2]));
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 36 | 0) >> 2]) < Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 120 | 0) >> 2]) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($5 + 48 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 120 | 0) >> 2]) - Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 100 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 100 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 120 | 0) >> 2]);
|
|
break label$1;
|
|
}
|
|
HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 100 | 0) >> 2] = Math_fround(HEAPF32[($5 + 36 | 0) >> 2]);
|
|
}
|
|
$73 = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($5 + 20 | 0 | 0, (HEAP32[($5 + 52 | 0) >> 2] | 0) + 16 | 0 | 0, btSolverBody__internalGetInvMass_28_29_20const(HEAP32[($5 + 60 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btSolverBody__internalApplyImpulse_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($73 | 0, $5 + 20 | 0 | 0, (HEAP32[($5 + 52 | 0) >> 2] | 0) + 64 | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 48 | 0) >> 2])));
|
|
$89 = HEAP32[($5 + 56 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($5 + 4 | 0 | 0, (HEAP32[($5 + 52 | 0) >> 2] | 0) + 48 | 0 | 0, btSolverBody__internalGetInvMass_28_29_20const(HEAP32[($5 + 56 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btSolverBody__internalApplyImpulse_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($89 | 0, $5 + 4 | 0 | 0, (HEAP32[($5 + 52 | 0) >> 2] | 0) + 80 | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 48 | 0) >> 2])));
|
|
$105 = Math_fround(HEAPF32[($5 + 48 | 0) >> 2]);
|
|
__stack_pointer = $5 + 64 | 0;
|
|
return Math_fround($105);
|
|
}
|
|
|
|
function gResolveSplitPenetrationImpulse_scalar_reference_28btSolverBody__2c_20btSolverBody__2c_20btSolverConstraint_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $87 = 0, $103 = 0, $119 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 60 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 56 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 52 | 0) >> 2] = $2;
|
|
HEAPF32[($5 + 48 | 0) >> 2] = Math_fround(0 | 0);
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 128 | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[(0 + 115432 | 0) >> 2] = (HEAP32[(0 + 115432 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAPF32[($5 + 48 | 0) >> 2] = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 96 | 0) >> 2])) * Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 116 | 0) >> 2])) + Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 128 | 0) >> 2]));
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(btVector3__dot_28btVector3_20const__29_20const((HEAP32[($5 + 52 | 0) >> 2] | 0) + 16 | 0 | 0, btSolverBody__internalGetPushVelocity_28_29(HEAP32[($5 + 60 | 0) >> 2] | 0 | 0) | 0 | 0)) + Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($5 + 52 | 0) >> 2] | 0 | 0, btSolverBody__internalGetTurnVelocity_28_29(HEAP32[($5 + 60 | 0) >> 2] | 0 | 0) | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(btVector3__dot_28btVector3_20const__29_20const((HEAP32[($5 + 52 | 0) >> 2] | 0) + 48 | 0 | 0, btSolverBody__internalGetPushVelocity_28_29(HEAP32[($5 + 56 | 0) >> 2] | 0 | 0) | 0 | 0)) + Math_fround(btVector3__dot_28btVector3_20const__29_20const((HEAP32[($5 + 52 | 0) >> 2] | 0) + 32 | 0 | 0, btSolverBody__internalGetTurnVelocity_28_29(HEAP32[($5 + 56 | 0) >> 2] | 0 | 0) | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($5 + 48 | 0) >> 2] = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($5 + 44 | 0) >> 2])) * Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 108 | 0) >> 2])) + Math_fround(HEAPF32[($5 + 48 | 0) >> 2]));
|
|
HEAPF32[($5 + 48 | 0) >> 2] = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($5 + 40 | 0) >> 2])) * Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 108 | 0) >> 2])) + Math_fround(HEAPF32[($5 + 48 | 0) >> 2]));
|
|
HEAPF32[($5 + 36 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 96 | 0) >> 2]) + Math_fround(HEAPF32[($5 + 48 | 0) >> 2]));
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 36 | 0) >> 2]) < Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 120 | 0) >> 2]) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAPF32[($5 + 48 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 120 | 0) >> 2]) - Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 96 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 96 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 120 | 0) >> 2]);
|
|
break label$2;
|
|
}
|
|
HEAPF32[((HEAP32[($5 + 52 | 0) >> 2] | 0) + 96 | 0) >> 2] = Math_fround(HEAPF32[($5 + 36 | 0) >> 2]);
|
|
}
|
|
$87 = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($5 + 20 | 0 | 0, (HEAP32[($5 + 52 | 0) >> 2] | 0) + 16 | 0 | 0, btSolverBody__internalGetInvMass_28_29_20const(HEAP32[($5 + 60 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btSolverBody__internalApplyPushImpulse_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($87 | 0, $5 + 20 | 0 | 0, (HEAP32[($5 + 52 | 0) >> 2] | 0) + 64 | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 48 | 0) >> 2])));
|
|
$103 = HEAP32[($5 + 56 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($5 + 4 | 0 | 0, (HEAP32[($5 + 52 | 0) >> 2] | 0) + 48 | 0 | 0, btSolverBody__internalGetInvMass_28_29_20const(HEAP32[($5 + 56 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btSolverBody__internalApplyPushImpulse_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($103 | 0, $5 + 4 | 0 | 0, (HEAP32[($5 + 52 | 0) >> 2] | 0) + 80 | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 48 | 0) >> 2])));
|
|
}
|
|
$119 = Math_fround(HEAPF32[($5 + 48 | 0) >> 2]);
|
|
__stack_pointer = $5 + 64 | 0;
|
|
return Math_fround($119);
|
|
}
|
|
|
|
function btSolverBody__internalGetDeltaLinearVelocity_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 64 | 0 | 0;
|
|
}
|
|
|
|
function btSolverBody__internalGetDeltaAngularVelocity_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 80 | 0 | 0;
|
|
}
|
|
|
|
function btSolverBody__internalGetInvMass_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 128 | 0 | 0;
|
|
}
|
|
|
|
function btSolverBody__internalApplyImpulse_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $7 = 0, $35 = 0;
|
|
$6 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 76 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 72 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 68 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 64 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 76 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($7 + 240 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 32 | 0 | 0, HEAP32[($6 + 72 | 0) >> 2] | 0 | 0, $6 + 64 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($6 + 48 | 0 | 0, $6 + 32 | 0 | 0, $7 + 112 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($7 + 64 | 0 | 0, $6 + 48 | 0 | 0) | 0;
|
|
$35 = HEAP32[($6 + 68 | 0) >> 2] | 0;
|
|
operator__28float_20const__2c_20btVector3_20const__29($6 | 0, $6 + 64 | 0 | 0, $7 + 96 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($6 + 16 | 0 | 0, $35 | 0, $6 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($7 + 80 | 0 | 0, $6 + 16 | 0 | 0) | 0;
|
|
}
|
|
__stack_pointer = $6 + 80 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSolverBody__internalGetPushVelocity_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 144 | 0 | 0;
|
|
}
|
|
|
|
function btSolverBody__internalGetTurnVelocity_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 160 | 0 | 0;
|
|
}
|
|
|
|
function btSolverBody__internalApplyPushImpulse_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $7 = 0, $35 = 0;
|
|
$6 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 76 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 72 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 68 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 64 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 76 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($7 + 240 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 32 | 0 | 0, HEAP32[($6 + 72 | 0) >> 2] | 0 | 0, $6 + 64 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($6 + 48 | 0 | 0, $6 + 32 | 0 | 0, $7 + 112 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($7 + 144 | 0 | 0, $6 + 48 | 0 | 0) | 0;
|
|
$35 = HEAP32[($6 + 68 | 0) >> 2] | 0;
|
|
operator__28float_20const__2c_20btVector3_20const__29($6 | 0, $6 + 64 | 0 | 0, $7 + 96 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($6 + 16 | 0 | 0, $35 | 0, $6 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($7 + 160 | 0 | 0, $6 + 16 | 0 | 0) | 0;
|
|
}
|
|
__stack_pointer = $6 + 80 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver___btSequentialImpulseConstraintSolver_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 102372 + 8 | 0;
|
|
btAlignedObjectArray_int____btAlignedObjectArray_28_29($4 + 192 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btTypedConstraint__btConstraintInfo1____btAlignedObjectArray_28_29($4 + 164 | 0 | 0) | 0;
|
|
btAlignedObjectArray_int____btAlignedObjectArray_28_29($4 + 144 | 0 | 0) | 0;
|
|
btAlignedObjectArray_int____btAlignedObjectArray_28_29($4 + 124 | 0 | 0) | 0;
|
|
btAlignedObjectArray_int____btAlignedObjectArray_28_29($4 + 104 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btSolverConstraint____btAlignedObjectArray_28_29($4 + 84 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btSolverConstraint____btAlignedObjectArray_28_29($4 + 64 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btSolverConstraint____btAlignedObjectArray_28_29($4 + 44 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btSolverConstraint____btAlignedObjectArray_28_29($4 + 24 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btSolverBody____btAlignedObjectArray_28_29($4 + 4 | 0 | 0) | 0;
|
|
btConstraintSolver___btConstraintSolver_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint__btConstraintInfo1____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverConstraint____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btSolverConstraint___clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverBody____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btSolverBody___clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btConstraintSolver___btConstraintSolver_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverConstraint___clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btSolverConstraint___destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btSolverConstraint___size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btSolverConstraint___deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btSolverConstraint___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverBody___clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btSolverBody___destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btSolverBody___size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btSolverBody___deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btSolverBody___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver___btSequentialImpulseConstraintSolver_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[1084 | 0]($4) | 0;
|
|
btSequentialImpulseConstraintSolver__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__btRand2_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 232 | 0) >> 2] = (Math_imul(HEAP32[($4 + 232 | 0) >> 2] | 0, 1664525) + 1013904223 | 0) & -1 | 0;
|
|
return HEAP32[($4 + 232 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__btRandInt2_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $70 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btSequentialImpulseConstraintSolver__btRand2_28_29($5 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0) >>> 0 <= 65536 >>> 0 & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$4 >> 2] = (HEAP32[$4 >> 2] | 0) ^ ((HEAP32[$4 >> 2] | 0) >>> 16 | 0) | 0;
|
|
label$2 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0) >>> 0 <= 256 >>> 0 & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[$4 >> 2] = (HEAP32[$4 >> 2] | 0) ^ ((HEAP32[$4 >> 2] | 0) >>> 8 | 0) | 0;
|
|
label$3 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0) >>> 0 <= 16 >>> 0 & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[$4 >> 2] = (HEAP32[$4 >> 2] | 0) ^ ((HEAP32[$4 >> 2] | 0) >>> 4 | 0) | 0;
|
|
label$4 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0) >>> 0 <= 4 >>> 0 & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP32[$4 >> 2] = (HEAP32[$4 >> 2] | 0) ^ ((HEAP32[$4 >> 2] | 0) >>> 2 | 0) | 0;
|
|
label$5 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0) >>> 0 <= 2 >>> 0 & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAP32[$4 >> 2] = (HEAP32[$4 >> 2] | 0) ^ ((HEAP32[$4 >> 2] | 0) >>> 1 | 0) | 0;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
$70 = ((HEAP32[$4 >> 2] | 0) >>> 0) % ((HEAP32[($4 + 4 | 0) >> 2] | 0) >>> 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $70 | 0;
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__initSolverBody_28btSolverBody__2c_20btCollisionObject__2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $16 = 0, $133 = 0, $135 = 0, $143 = 0, $145 = 0, $153 = 0, $155 = 0, $163 = 0, $165 = 0, $190 = 0, $192 = 0, $216 = 0, $218 = 0, $20 = 0, $37 = 0, $54 = 0, $71 = 0, $95 = 0, $97 = 0, $130 = 0, $616 = 0, $626 = 0, $140 = 0, $639 = 0, $649 = 0, $150 = 0, $662 = 0, $672 = 0, $160 = 0, $685 = 0, $695 = 0, $170 = 0, $740 = 0, $753 = 0, $792 = 0, $805 = 0, $225 = 0, $251 = 0, $266 = 0, $281 = 0, $299 = 0, $317 = 0, $335 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 288 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 284 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 280 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 276 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 272 | 0) >> 2] = $3;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($6 + 276 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$16 = btRigidBody__upcast_28btCollisionObject__29(HEAP32[($6 + 276 | 0) >> 2] | 0 | 0) | 0;
|
|
break label$1;
|
|
}
|
|
$16 = 0;
|
|
}
|
|
HEAP32[($6 + 268 | 0) >> 2] = $16;
|
|
$20 = btSolverBody__internalGetDeltaLinearVelocity_28_29(HEAP32[($6 + 280 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($6 + 264 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 260 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 256 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($20 | 0, $6 + 264 | 0 | 0, $6 + 260 | 0 | 0, $6 + 256 | 0 | 0);
|
|
$37 = btSolverBody__internalGetDeltaAngularVelocity_28_29(HEAP32[($6 + 280 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($6 + 252 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 248 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 244 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($37 | 0, $6 + 252 | 0 | 0, $6 + 248 | 0 | 0, $6 + 244 | 0 | 0);
|
|
$54 = btSolverBody__internalGetPushVelocity_28_29(HEAP32[($6 + 280 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($6 + 240 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 236 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 232 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($54 | 0, $6 + 240 | 0 | 0, $6 + 236 | 0 | 0, $6 + 232 | 0 | 0);
|
|
$71 = btSolverBody__internalGetTurnVelocity_28_29(HEAP32[($6 + 280 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($6 + 228 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 224 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 220 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($71 | 0, $6 + 228 | 0 | 0, $6 + 224 | 0 | 0, $6 + 220 | 0 | 0);
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAP32[($6 + 268 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$95 = btCollisionObject__getWorldTransform_28_29(HEAP32[($6 + 268 | 0) >> 2] | 0 | 0) | 0;
|
|
btTransform__operator__28btTransform_20const__29(HEAP32[($6 + 280 | 0) >> 2] | 0 | 0, $95 | 0) | 0;
|
|
$97 = HEAP32[($6 + 280 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btRigidBody__getInvMass_28_29_20const(HEAP32[($6 + 268 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 184 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btRigidBody__getInvMass_28_29_20const(HEAP32[($6 + 268 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 180 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btRigidBody__getInvMass_28_29_20const(HEAP32[($6 + 268 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 176 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 188 | 0 | 0, $6 + 184 | 0 | 0, $6 + 180 | 0 | 0, $6 + 176 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($6 + 204 | 0 | 0, $6 + 188 | 0 | 0, btRigidBody__getLinearFactor_28_29_20const(HEAP32[($6 + 268 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btSolverBody__internalSetInvMass_28btVector3_20const__29($97 | 0, $6 + 204 | 0 | 0);
|
|
HEAP32[((HEAP32[($6 + 280 | 0) >> 2] | 0) + 240 | 0) >> 2] = HEAP32[($6 + 268 | 0) >> 2] | 0;
|
|
$130 = btRigidBody__getAngularFactor_28_29_20const(HEAP32[($6 + 268 | 0) >> 2] | 0 | 0) | 0;
|
|
$133 = (HEAP32[($6 + 280 | 0) >> 2] | 0) + 96 | 0;
|
|
i64toi32_i32$2 = $130;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$616 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $133;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $616;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$135 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $135 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$626 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $133 + $135 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $626;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$140 = btRigidBody__getLinearFactor_28_29_20const(HEAP32[($6 + 268 | 0) >> 2] | 0 | 0) | 0;
|
|
$143 = (HEAP32[($6 + 280 | 0) >> 2] | 0) + 112 | 0;
|
|
i64toi32_i32$2 = $140;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$639 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $143;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $639;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$145 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $145 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$649 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $143 + $145 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $649;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$150 = btRigidBody__getLinearVelocity_28_29_20const(HEAP32[($6 + 268 | 0) >> 2] | 0 | 0) | 0;
|
|
$153 = (HEAP32[($6 + 280 | 0) >> 2] | 0) + 176 | 0;
|
|
i64toi32_i32$2 = $150;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$662 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $153;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $662;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$155 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $155 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$672 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $153 + $155 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $672;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$160 = btRigidBody__getAngularVelocity_28_29_20const(HEAP32[($6 + 268 | 0) >> 2] | 0 | 0) | 0;
|
|
$163 = (HEAP32[($6 + 280 | 0) >> 2] | 0) + 192 | 0;
|
|
i64toi32_i32$2 = $160;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$685 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $163;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $685;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$165 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $165 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$695 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $163 + $165 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $695;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$170 = btRigidBody__getTotalForce_28_29_20const(HEAP32[($6 + 268 | 0) >> 2] | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btRigidBody__getInvMass_28_29_20const(HEAP32[($6 + 268 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 140 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 144 | 0 | 0, $170 | 0, $6 + 140 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 160 | 0 | 0, $6 + 144 | 0 | 0, $6 + 272 | 0 | 0);
|
|
$190 = (HEAP32[($6 + 280 | 0) >> 2] | 0) + 208 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 160 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 164 | 0) >> 2] | 0;
|
|
$740 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $190;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $740;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$192 = 8;
|
|
i64toi32_i32$2 = ($6 + 160 | 0) + $192 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$753 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $190 + $192 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $753;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btMatrix3x3_20const__29($6 + 108 | 0 | 0, btRigidBody__getTotalTorque_28_29_20const(HEAP32[($6 + 268 | 0) >> 2] | 0 | 0) | 0 | 0, btRigidBody__getInvInertiaTensorWorld_28_29_20const(HEAP32[($6 + 268 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 124 | 0 | 0, $6 + 108 | 0 | 0, $6 + 272 | 0 | 0);
|
|
$216 = (HEAP32[($6 + 280 | 0) >> 2] | 0) + 224 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 124 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 128 | 0) >> 2] | 0;
|
|
$792 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $216;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $792;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$218 = 8;
|
|
i64toi32_i32$2 = ($6 + 124 | 0) + $218 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$805 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $216 + $218 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $805;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$3;
|
|
}
|
|
btTransform__setIdentity_28_29(HEAP32[($6 + 280 | 0) >> 2] | 0 | 0);
|
|
$225 = HEAP32[($6 + 280 | 0) >> 2] | 0;
|
|
HEAPF32[($6 + 88 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 84 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 80 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 92 | 0 | 0, $6 + 88 | 0 | 0, $6 + 84 | 0 | 0, $6 + 80 | 0 | 0) | 0;
|
|
btSolverBody__internalSetInvMass_28btVector3_20const__29($225 | 0, $6 + 92 | 0 | 0);
|
|
HEAP32[((HEAP32[($6 + 280 | 0) >> 2] | 0) + 240 | 0) >> 2] = 0;
|
|
$251 = (HEAP32[($6 + 280 | 0) >> 2] | 0) + 96 | 0;
|
|
HEAPF32[($6 + 76 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($6 + 72 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($6 + 68 | 0) >> 2] = Math_fround(1.0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($251 | 0, $6 + 76 | 0 | 0, $6 + 72 | 0 | 0, $6 + 68 | 0 | 0);
|
|
$266 = (HEAP32[($6 + 280 | 0) >> 2] | 0) + 112 | 0;
|
|
HEAPF32[($6 + 64 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($6 + 60 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($6 + 56 | 0) >> 2] = Math_fround(1.0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($266 | 0, $6 + 64 | 0 | 0, $6 + 60 | 0 | 0, $6 + 56 | 0 | 0);
|
|
$281 = (HEAP32[($6 + 280 | 0) >> 2] | 0) + 176 | 0;
|
|
HEAPF32[($6 + 52 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 48 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 44 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($281 | 0, $6 + 52 | 0 | 0, $6 + 48 | 0 | 0, $6 + 44 | 0 | 0);
|
|
$299 = (HEAP32[($6 + 280 | 0) >> 2] | 0) + 192 | 0;
|
|
HEAPF32[($6 + 40 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 36 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 32 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($299 | 0, $6 + 40 | 0 | 0, $6 + 36 | 0 | 0, $6 + 32 | 0 | 0);
|
|
$317 = (HEAP32[($6 + 280 | 0) >> 2] | 0) + 208 | 0;
|
|
HEAPF32[($6 + 28 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 24 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($317 | 0, $6 + 28 | 0 | 0, $6 + 24 | 0 | 0, $6 + 20 | 0 | 0);
|
|
$335 = (HEAP32[($6 + 280 | 0) >> 2] | 0) + 224 | 0;
|
|
HEAPF32[($6 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($335 | 0, $6 + 16 | 0 | 0, $6 + 12 | 0 | 0, $6 + 8 | 0 | 0);
|
|
}
|
|
__stack_pointer = $6 + 288 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__upcast_28btCollisionObject__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $10 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((btCollisionObject__getInternalType_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0) & 2 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($3 + 12 | 0) >> 2] = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[($3 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$10 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btRigidBody__getLinearFactor_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 408 | 0 | 0;
|
|
}
|
|
|
|
function btSolverBody__internalSetInvMass_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, $8 = 0, $10 = 0, $32 = 0, $42 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$8 = (HEAP32[($4 + 12 | 0) >> 2] | 0) + 128 | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$32 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $8;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $32;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$10 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $10 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$42 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8 + $10 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $42;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__getAngularFactor_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 604 | 0 | 0;
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__restitutionCurve_28float_2c_20float_2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $20 = Math_fround(0);
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $0;
|
|
HEAPF32[($6 + 20 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 16 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 12 | 0) >> 2] = $3;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[($6 + 20 | 0) >> 2])))) < Math_fround(HEAPF32[($6 + 12 | 0) >> 2]) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($6 + 28 | 0) >> 2] = Math_fround(0 | 0);
|
|
break label$1;
|
|
}
|
|
HEAPF32[($6 + 8 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($6 + 16 | 0) >> 2]) * Math_fround(-Math_fround(HEAPF32[($6 + 20 | 0) >> 2])));
|
|
HEAPF32[($6 + 28 | 0) >> 2] = Math_fround(HEAPF32[($6 + 8 | 0) >> 2]);
|
|
}
|
|
$20 = Math_fround(HEAPF32[($6 + 28 | 0) >> 2]);
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return Math_fround($20);
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__applyAnisotropicFriction_28btCollisionObject__2c_20btVector3__2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $38 = 0, $40 = 0, $130 = 0, $140 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 36 | 0) >> 2] = $2;
|
|
label$1 : {
|
|
if (!((HEAP32[($5 + 44 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
if (!((btCollisionObject__hasAnisotropicFriction_28int_29_20const(HEAP32[($5 + 44 | 0) >> 2] | 0 | 0, HEAP32[($5 + 36 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
operator__28btVector3_20const__2c_20btMatrix3x3_20const__29($5 + 20 | 0 | 0, HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, btTransform__getBasis_28_29(btCollisionObject__getWorldTransform_28_29(HEAP32[($5 + 44 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btCollisionObject__getAnisotropicFriction_28_29_20const(HEAP32[($5 + 44 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
btVector3__operator___28btVector3_20const__29_2($5 + 20 | 0 | 0, HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) | 0;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($5 | 0, btTransform__getBasis_28_29(btCollisionObject__getWorldTransform_28_29(HEAP32[($5 + 44 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, $5 + 20 | 0 | 0);
|
|
$38 = HEAP32[($5 + 40 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[$5 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
$130 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $38;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $130;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$40 = 8;
|
|
i64toi32_i32$2 = $5 + $40 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$140 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $38 + $40 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $140;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionObject__hasAnisotropicFriction_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return ((HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 180 | 0) >> 2] | 0) & (HEAP32[($4 + 8 | 0) >> 2] | 0) | 0 | 0) != (0 | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function btCollisionObject__getAnisotropicFriction_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 164 | 0 | 0;
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__setupFrictionConstraint_28btSolverConstraint__2c_20btVector3_20const__2c_20int_2c_20int_2c_20btManifoldPoint__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btCollisionObject__2c_20btCollisionObject__2c_20float_2c_20btContactSolverInfo_20const__2c_20float_2c_20float_29($0, $1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
$9 = $9 | 0;
|
|
$10 = Math_fround($10);
|
|
$11 = $11 | 0;
|
|
$12 = Math_fround($12);
|
|
$13 = Math_fround($13);
|
|
var $16 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $17 = 0, $61 = 0, $63 = 0, $74 = 0, $76 = 0, $100 = 0, $102 = 0, $128 = 0, $130 = 0, $145 = 0, $147 = 0, $171 = 0, $173 = 0, $209 = 0, $246 = 0, $321 = 0, $322 = 0, $405 = 0, $406 = 0, $631 = 0, $641 = 0, $661 = 0, $674 = 0, $713 = 0, $726 = 0, $770 = 0, $783 = 0, $806 = 0, $819 = 0, $858 = 0, $871 = 0, $945 = 0, $949 = 0, $1019 = 0, $1023 = 0, $272 = 0, $310 = Math_fround(0), $311 = 0, $1167 = 0, $1171 = 0, $354 = 0, $392 = Math_fround(0), $395 = 0, $1325 = 0, $1329 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$16 = __stack_pointer - 432 | 0;
|
|
__stack_pointer = $16;
|
|
HEAP32[($16 + 428 | 0) >> 2] = $0;
|
|
HEAP32[($16 + 424 | 0) >> 2] = $1;
|
|
HEAP32[($16 + 420 | 0) >> 2] = $2;
|
|
HEAP32[($16 + 416 | 0) >> 2] = $3;
|
|
HEAP32[($16 + 412 | 0) >> 2] = $4;
|
|
HEAP32[($16 + 408 | 0) >> 2] = $5;
|
|
HEAP32[($16 + 404 | 0) >> 2] = $6;
|
|
HEAP32[($16 + 400 | 0) >> 2] = $7;
|
|
HEAP32[($16 + 396 | 0) >> 2] = $8;
|
|
HEAP32[($16 + 392 | 0) >> 2] = $9;
|
|
HEAPF32[($16 + 388 | 0) >> 2] = $10;
|
|
HEAP32[($16 + 384 | 0) >> 2] = $11;
|
|
HEAPF32[($16 + 380 | 0) >> 2] = $12;
|
|
HEAPF32[($16 + 376 | 0) >> 2] = $13;
|
|
$17 = HEAP32[($16 + 428 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $16, wasm2js_i32$1 = btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($17 + 4 | 0 | 0, HEAP32[($16 + 416 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 372 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $16, wasm2js_i32$1 = btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($17 + 4 | 0 | 0, HEAP32[($16 + 412 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 368 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $16, wasm2js_i32$1 = HEAP32[((btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($17 + 4 | 0 | 0, HEAP32[($16 + 416 | 0) >> 2] | 0 | 0) | 0) + 240 | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 364 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $16, wasm2js_i32$1 = HEAP32[((btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($17 + 4 | 0 | 0, HEAP32[($16 + 412 | 0) >> 2] | 0 | 0) | 0) + 240 | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 360 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[((HEAP32[($16 + 424 | 0) >> 2] | 0) + 144 | 0) >> 2] = HEAP32[($16 + 416 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($16 + 424 | 0) >> 2] | 0) + 148 | 0) >> 2] = HEAP32[($16 + 412 | 0) >> 2] | 0;
|
|
HEAPF32[((HEAP32[($16 + 424 | 0) >> 2] | 0) + 104 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($16 + 408 | 0) >> 2] | 0) + 84 | 0) >> 2]);
|
|
HEAP32[((HEAP32[($16 + 424 | 0) >> 2] | 0) + 132 | 0) >> 2] = 0;
|
|
HEAPF32[((HEAP32[($16 + 424 | 0) >> 2] | 0) + 100 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[((HEAP32[($16 + 424 | 0) >> 2] | 0) + 96 | 0) >> 2] = Math_fround(0 | 0);
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($16 + 364 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$61 = (HEAP32[($16 + 424 | 0) >> 2] | 0) + 16 | 0;
|
|
i64toi32_i32$2 = HEAP32[($16 + 420 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$631 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $61;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $631;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$63 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $63 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$641 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $61 + $63 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $641;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__cross_28btVector3_20const__29_20const($16 + 344 | 0 | 0, HEAP32[($16 + 404 | 0) >> 2] | 0 | 0, (HEAP32[($16 + 424 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
$74 = HEAP32[($16 + 424 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $16;
|
|
i64toi32_i32$0 = HEAP32[($16 + 344 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($16 + 348 | 0) >> 2] | 0;
|
|
$661 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $74;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $661;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$76 = 8;
|
|
i64toi32_i32$2 = ($16 + 344 | 0) + $76 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$674 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $74 + $76 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $674;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($16 + 312 | 0 | 0, btRigidBody__getInvInertiaTensorWorld_28_29_20const(HEAP32[($16 + 364 | 0) >> 2] | 0 | 0) | 0 | 0, $16 + 344 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($16 + 328 | 0 | 0, $16 + 312 | 0 | 0, btRigidBody__getAngularFactor_28_29_20const(HEAP32[($16 + 364 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$100 = (HEAP32[($16 + 424 | 0) >> 2] | 0) + 64 | 0;
|
|
i64toi32_i32$2 = $16;
|
|
i64toi32_i32$0 = HEAP32[($16 + 328 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($16 + 332 | 0) >> 2] | 0;
|
|
$713 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $100;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $713;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$102 = 8;
|
|
i64toi32_i32$2 = ($16 + 328 | 0) + $102 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$726 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $100 + $102 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $726;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$1;
|
|
}
|
|
btVector3__setZero_28_29((HEAP32[($16 + 424 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
btVector3__setZero_28_29(HEAP32[($16 + 424 | 0) >> 2] | 0 | 0);
|
|
btVector3__setZero_28_29((HEAP32[($16 + 424 | 0) >> 2] | 0) + 64 | 0 | 0);
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAP32[($16 + 360 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
operator__28btVector3_20const__29($16 + 296 | 0 | 0, HEAP32[($16 + 420 | 0) >> 2] | 0 | 0);
|
|
$128 = (HEAP32[($16 + 424 | 0) >> 2] | 0) + 48 | 0;
|
|
i64toi32_i32$2 = $16;
|
|
i64toi32_i32$0 = HEAP32[($16 + 296 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($16 + 300 | 0) >> 2] | 0;
|
|
$770 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $128;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $770;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$130 = 8;
|
|
i64toi32_i32$2 = ($16 + 296 | 0) + $130 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$783 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $128 + $130 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $783;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__cross_28btVector3_20const__29_20const($16 + 280 | 0 | 0, HEAP32[($16 + 400 | 0) >> 2] | 0 | 0, (HEAP32[($16 + 424 | 0) >> 2] | 0) + 48 | 0 | 0);
|
|
$145 = (HEAP32[($16 + 424 | 0) >> 2] | 0) + 32 | 0;
|
|
i64toi32_i32$2 = $16;
|
|
i64toi32_i32$0 = HEAP32[($16 + 280 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($16 + 284 | 0) >> 2] | 0;
|
|
$806 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $145;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $806;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$147 = 8;
|
|
i64toi32_i32$2 = ($16 + 280 | 0) + $147 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$819 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $145 + $147 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $819;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($16 + 248 | 0 | 0, btRigidBody__getInvInertiaTensorWorld_28_29_20const(HEAP32[($16 + 360 | 0) >> 2] | 0 | 0) | 0 | 0, $16 + 280 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($16 + 264 | 0 | 0, $16 + 248 | 0 | 0, btRigidBody__getAngularFactor_28_29_20const(HEAP32[($16 + 360 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$171 = (HEAP32[($16 + 424 | 0) >> 2] | 0) + 80 | 0;
|
|
i64toi32_i32$2 = $16;
|
|
i64toi32_i32$0 = HEAP32[($16 + 264 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($16 + 268 | 0) >> 2] | 0;
|
|
$858 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $171;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $858;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$173 = 8;
|
|
i64toi32_i32$2 = ($16 + 264 | 0) + $173 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$871 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $171 + $173 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $871;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$3;
|
|
}
|
|
btVector3__setZero_28_29((HEAP32[($16 + 424 | 0) >> 2] | 0) + 48 | 0 | 0);
|
|
btVector3__setZero_28_29((HEAP32[($16 + 424 | 0) >> 2] | 0) + 32 | 0 | 0);
|
|
btVector3__setZero_28_29((HEAP32[($16 + 424 | 0) >> 2] | 0) + 80 | 0 | 0);
|
|
}
|
|
btVector3__btVector3_28_29($16 + 232 | 0 | 0) | 0;
|
|
HEAPF32[($16 + 228 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 224 | 0) >> 2] = Math_fround(0 | 0);
|
|
label$5 : {
|
|
if (!((HEAP32[($16 + 364 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btVector3__cross_28btVector3_20const__29_20const($16 + 208 | 0 | 0, (HEAP32[($16 + 424 | 0) >> 2] | 0) + 64 | 0 | 0, HEAP32[($16 + 404 | 0) >> 2] | 0 | 0);
|
|
$209 = 8;
|
|
i64toi32_i32$2 = ($16 + 208 | 0) + $209 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$945 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($16 + 232 | 0) + $209 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $945;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $16;
|
|
i64toi32_i32$1 = HEAP32[($16 + 208 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($16 + 212 | 0) >> 2] | 0;
|
|
$949 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $16;
|
|
HEAP32[($16 + 232 | 0) >> 2] = $949;
|
|
HEAP32[($16 + 236 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $16, wasm2js_f32$0 = Math_fround(Math_fround(btRigidBody__getInvMass_28_29_20const(HEAP32[($16 + 364 | 0) >> 2] | 0 | 0)) + Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($16 + 420 | 0) >> 2] | 0 | 0, $16 + 232 | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 228 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
label$6 : {
|
|
if (!((HEAP32[($16 + 360 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
operator__28btVector3_20const__29($16 + 176 | 0 | 0, (HEAP32[($16 + 424 | 0) >> 2] | 0) + 80 | 0 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($16 + 192 | 0 | 0, $16 + 176 | 0 | 0, HEAP32[($16 + 400 | 0) >> 2] | 0 | 0);
|
|
$246 = 8;
|
|
i64toi32_i32$2 = ($16 + 192 | 0) + $246 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1019 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($16 + 232 | 0) + $246 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1019;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $16;
|
|
i64toi32_i32$1 = HEAP32[($16 + 192 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($16 + 196 | 0) >> 2] | 0;
|
|
$1023 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $16;
|
|
HEAP32[($16 + 232 | 0) >> 2] = $1023;
|
|
HEAP32[($16 + 236 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $16, wasm2js_f32$0 = Math_fround(Math_fround(btRigidBody__getInvMass_28_29_20const(HEAP32[($16 + 360 | 0) >> 2] | 0 | 0)) + Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($16 + 420 | 0) >> 2] | 0 | 0, $16 + 232 | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 224 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
HEAPF32[($16 + 172 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($16 + 388 | 0) >> 2]) / Math_fround(Math_fround(HEAPF32[($16 + 228 | 0) >> 2]) + Math_fround(HEAPF32[($16 + 224 | 0) >> 2])));
|
|
HEAPF32[((HEAP32[($16 + 424 | 0) >> 2] | 0) + 108 | 0) >> 2] = Math_fround(HEAPF32[($16 + 172 | 0) >> 2]);
|
|
$272 = (HEAP32[($16 + 424 | 0) >> 2] | 0) + 16 | 0;
|
|
label$7 : {
|
|
label$8 : {
|
|
if (!((HEAP32[($16 + 364 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($16 + 148 | 0 | 0, (HEAP32[($16 + 372 | 0) >> 2] | 0) + 176 | 0 | 0, (HEAP32[($16 + 372 | 0) >> 2] | 0) + 208 | 0 | 0);
|
|
break label$7;
|
|
}
|
|
HEAPF32[($16 + 144 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 140 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 136 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($16 + 148 | 0 | 0, $16 + 144 | 0 | 0, $16 + 140 | 0 | 0, $16 + 136 | 0 | 0) | 0;
|
|
}
|
|
$310 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($272 | 0, $16 + 148 | 0 | 0));
|
|
$311 = HEAP32[($16 + 424 | 0) >> 2] | 0;
|
|
label$9 : {
|
|
label$10 : {
|
|
if (!((HEAP32[($16 + 364 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
$321 = (HEAP32[($16 + 372 | 0) >> 2] | 0) + 192 | 0;
|
|
$322 = 8;
|
|
i64toi32_i32$2 = $321 + $322 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1167 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($16 + 120 | 0) + $322 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1167;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $321;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1171 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $16;
|
|
HEAP32[($16 + 120 | 0) >> 2] = $1171;
|
|
HEAP32[($16 + 124 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$9;
|
|
}
|
|
HEAPF32[($16 + 116 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 112 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 108 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($16 + 120 | 0 | 0, $16 + 116 | 0 | 0, $16 + 112 | 0 | 0, $16 + 108 | 0 | 0) | 0;
|
|
}
|
|
(wasm2js_i32$0 = $16, wasm2js_f32$0 = Math_fround($310 + Math_fround(btVector3__dot_28btVector3_20const__29_20const($311 | 0, $16 + 120 | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 164 | 0) >> 2] = wasm2js_f32$0;
|
|
$354 = (HEAP32[($16 + 424 | 0) >> 2] | 0) + 48 | 0;
|
|
label$11 : {
|
|
label$12 : {
|
|
if (!((HEAP32[($16 + 360 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($16 + 88 | 0 | 0, (HEAP32[($16 + 368 | 0) >> 2] | 0) + 176 | 0 | 0, (HEAP32[($16 + 368 | 0) >> 2] | 0) + 208 | 0 | 0);
|
|
break label$11;
|
|
}
|
|
HEAPF32[($16 + 84 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 80 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 76 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($16 + 88 | 0 | 0, $16 + 84 | 0 | 0, $16 + 80 | 0 | 0, $16 + 76 | 0 | 0) | 0;
|
|
}
|
|
$392 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($354 | 0, $16 + 88 | 0 | 0));
|
|
$395 = (HEAP32[($16 + 424 | 0) >> 2] | 0) + 32 | 0;
|
|
label$13 : {
|
|
label$14 : {
|
|
if (!((HEAP32[($16 + 360 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
$405 = (HEAP32[($16 + 368 | 0) >> 2] | 0) + 192 | 0;
|
|
$406 = 8;
|
|
i64toi32_i32$2 = $405 + $406 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1325 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($16 + 56 | 0) + $406 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1325;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $405;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1329 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $16;
|
|
HEAP32[($16 + 56 | 0) >> 2] = $1329;
|
|
HEAP32[($16 + 60 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$13;
|
|
}
|
|
HEAPF32[($16 + 52 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 48 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 44 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($16 + 56 | 0 | 0, $16 + 52 | 0 | 0, $16 + 48 | 0 | 0, $16 + 44 | 0 | 0) | 0;
|
|
}
|
|
(wasm2js_i32$0 = $16, wasm2js_f32$0 = Math_fround($392 + Math_fround(btVector3__dot_28btVector3_20const__29_20const($395 | 0, $16 + 56 | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 104 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($16 + 168 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($16 + 164 | 0) >> 2]) + Math_fround(HEAPF32[($16 + 104 | 0) >> 2]));
|
|
HEAPF32[($16 + 40 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($16 + 380 | 0) >> 2]) - Math_fround(HEAPF32[($16 + 168 | 0) >> 2]));
|
|
HEAPF32[($16 + 36 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($16 + 40 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($16 + 424 | 0) >> 2] | 0) + 108 | 0) >> 2]));
|
|
HEAPF32[($16 + 32 | 0) >> 2] = Math_fround(0 | 0);
|
|
label$15 : {
|
|
if (!((HEAP32[((HEAP32[($16 + 408 | 0) >> 2] | 0) + 128 | 0) >> 2] | 0) & 16 | 0)) {
|
|
break label$15
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($16 + 12 | 0 | 0, btManifoldPoint__getPositionWorldOnA_28_29_20const(HEAP32[($16 + 408 | 0) >> 2] | 0 | 0) | 0 | 0, btManifoldPoint__getPositionWorldOnB_28_29_20const(HEAP32[($16 + 408 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
(wasm2js_i32$0 = $16, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($16 + 12 | 0 | 0, HEAP32[($16 + 420 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($16 + 8 | 0) >> 2] = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($16 + 28 | 0) >> 2])) * Math_fround(HEAPF32[((HEAP32[($16 + 384 | 0) >> 2] | 0) + 44 | 0) >> 2])) / Math_fround(HEAPF32[((HEAP32[($16 + 384 | 0) >> 2] | 0) + 12 | 0) >> 2]));
|
|
HEAPF32[($16 + 32 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($16 + 8 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($16 + 424 | 0) >> 2] | 0) + 108 | 0) >> 2]));
|
|
}
|
|
HEAPF32[((HEAP32[($16 + 424 | 0) >> 2] | 0) + 112 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($16 + 32 | 0) >> 2]) + Math_fround(HEAPF32[($16 + 36 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[($16 + 424 | 0) >> 2] | 0) + 128 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[((HEAP32[($16 + 424 | 0) >> 2] | 0) + 116 | 0) >> 2] = Math_fround(HEAPF32[($16 + 376 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($16 + 424 | 0) >> 2] | 0) + 120 | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[((HEAP32[($16 + 424 | 0) >> 2] | 0) + 104 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[($16 + 424 | 0) >> 2] | 0) + 124 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($16 + 424 | 0) >> 2] | 0) + 104 | 0) >> 2]);
|
|
__stack_pointer = $16 + 432 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btSolverBody___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($4 + 8 | 0) >> 2] | 0, 244) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btManifoldPoint__getPositionWorldOnA_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 48 | 0 | 0;
|
|
}
|
|
|
|
function btManifoldPoint__getPositionWorldOnB_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 32 | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverBody___size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__addFrictionConstraint_28btVector3_20const__2c_20int_2c_20int_2c_20int_2c_20btManifoldPoint__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btCollisionObject__2c_20btCollisionObject__2c_20float_2c_20btContactSolverInfo_20const__2c_20float_2c_20float_29($0, $1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
$9 = $9 | 0;
|
|
$10 = Math_fround($10);
|
|
$11 = $11 | 0;
|
|
$12 = Math_fround($12);
|
|
$13 = Math_fround($13);
|
|
var $16 = 0, $17 = 0, $36 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$16 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $16;
|
|
HEAP32[($16 + 60 | 0) >> 2] = $0;
|
|
HEAP32[($16 + 56 | 0) >> 2] = $1;
|
|
HEAP32[($16 + 52 | 0) >> 2] = $2;
|
|
HEAP32[($16 + 48 | 0) >> 2] = $3;
|
|
HEAP32[($16 + 44 | 0) >> 2] = $4;
|
|
HEAP32[($16 + 40 | 0) >> 2] = $5;
|
|
HEAP32[($16 + 36 | 0) >> 2] = $6;
|
|
HEAP32[($16 + 32 | 0) >> 2] = $7;
|
|
HEAP32[($16 + 28 | 0) >> 2] = $8;
|
|
HEAP32[($16 + 24 | 0) >> 2] = $9;
|
|
HEAPF32[($16 + 20 | 0) >> 2] = $10;
|
|
HEAP32[($16 + 16 | 0) >> 2] = $11;
|
|
HEAPF32[($16 + 12 | 0) >> 2] = $12;
|
|
HEAPF32[($16 + 8 | 0) >> 2] = $13;
|
|
$17 = HEAP32[($16 + 60 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $16, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___expandNonInitializing_28_29($17 + 64 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[((HEAP32[($16 + 4 | 0) >> 2] | 0) + 140 | 0) >> 2] = HEAP32[($16 + 44 | 0) >> 2] | 0;
|
|
btSequentialImpulseConstraintSolver__setupFrictionConstraint_28btSolverConstraint__2c_20btVector3_20const__2c_20int_2c_20int_2c_20btManifoldPoint__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btCollisionObject__2c_20btCollisionObject__2c_20float_2c_20btContactSolverInfo_20const__2c_20float_2c_20float_29($17 | 0, HEAP32[($16 + 4 | 0) >> 2] | 0 | 0, HEAP32[($16 + 56 | 0) >> 2] | 0 | 0, HEAP32[($16 + 52 | 0) >> 2] | 0 | 0, HEAP32[($16 + 48 | 0) >> 2] | 0 | 0, HEAP32[($16 + 40 | 0) >> 2] | 0 | 0, HEAP32[($16 + 36 | 0) >> 2] | 0 | 0, HEAP32[($16 + 32 | 0) >> 2] | 0 | 0, HEAP32[($16 + 28 | 0) >> 2] | 0 | 0, HEAP32[($16 + 24 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($16 + 20 | 0) >> 2])), HEAP32[($16 + 16 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($16 + 12 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($16 + 8 | 0) >> 2])));
|
|
$36 = HEAP32[($16 + 4 | 0) >> 2] | 0;
|
|
__stack_pointer = $16 + 64 | 0;
|
|
return $36 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverConstraint___expandNonInitializing_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0, $22 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___size_28_29_20const($4 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btSolverConstraint___capacity_28_29_20const($4 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btSolverConstraint___reserve_28int_29($4 | 0, btAlignedObjectArray_btSolverConstraint___allocSize_28int_29($4 | 0, btAlignedObjectArray_btSolverConstraint___size_28_29_20const($4 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
$22 = (HEAP32[($4 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($3 + 8 | 0) >> 2] | 0, 152) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $22 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverConstraint___size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverConstraint___capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverConstraint___allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverConstraint___reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btSolverConstraint___capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btSolverConstraint___copy_28int_2c_20int_2c_20btSolverConstraint__29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btSolverConstraint___size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btSolverConstraint___destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btSolverConstraint___size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btSolverConstraint___deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__setupTorsionalFrictionConstraint_28btSolverConstraint__2c_20btVector3_20const__2c_20int_2c_20int_2c_20btManifoldPoint__2c_20float_2c_20btVector3_20const__2c_20btVector3_20const__2c_20btCollisionObject__2c_20btCollisionObject__2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = Math_fround($6);
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
$9 = $9 | 0;
|
|
$10 = $10 | 0;
|
|
$11 = Math_fround($11);
|
|
$12 = Math_fround($12);
|
|
$13 = Math_fround($13);
|
|
var $16 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $17 = 0, $38 = 0, $40 = 0, $54 = 0, $56 = 0, $98 = 0, $100 = 0, $149 = 0, $151 = 0, $157 = 0, $158 = 0, $167 = 0, $169 = 0, $218 = 0, $220 = 0, $363 = 0, $364 = 0, $447 = 0, $448 = 0, $577 = 0, $590 = 0, $609 = 0, $622 = 0, $714 = 0, $727 = 0, $811 = 0, $824 = 0, $839 = 0, $843 = 0, $852 = 0, $865 = 0, $949 = 0, $962 = 0, $296 = Math_fround(0), $305 = Math_fround(0), $314 = 0, $352 = Math_fround(0), $353 = 0, $1235 = 0, $1239 = 0, $396 = 0, $434 = Math_fround(0), $437 = 0, $1393 = 0, $1397 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$16 = __stack_pointer - 448 | 0;
|
|
__stack_pointer = $16;
|
|
HEAP32[($16 + 444 | 0) >> 2] = $0;
|
|
HEAP32[($16 + 440 | 0) >> 2] = $1;
|
|
HEAP32[($16 + 436 | 0) >> 2] = $2;
|
|
HEAP32[($16 + 432 | 0) >> 2] = $3;
|
|
HEAP32[($16 + 428 | 0) >> 2] = $4;
|
|
HEAP32[($16 + 424 | 0) >> 2] = $5;
|
|
HEAPF32[($16 + 420 | 0) >> 2] = $6;
|
|
HEAP32[($16 + 416 | 0) >> 2] = $7;
|
|
HEAP32[($16 + 412 | 0) >> 2] = $8;
|
|
HEAP32[($16 + 408 | 0) >> 2] = $9;
|
|
HEAP32[($16 + 404 | 0) >> 2] = $10;
|
|
HEAPF32[($16 + 400 | 0) >> 2] = $11;
|
|
HEAPF32[($16 + 396 | 0) >> 2] = $12;
|
|
HEAPF32[($16 + 392 | 0) >> 2] = $13;
|
|
$17 = HEAP32[($16 + 444 | 0) >> 2] | 0;
|
|
HEAPF32[($16 + 372 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 368 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 364 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($16 + 376 | 0 | 0, $16 + 372 | 0 | 0, $16 + 368 | 0 | 0, $16 + 364 | 0 | 0) | 0;
|
|
$38 = (HEAP32[($16 + 440 | 0) >> 2] | 0) + 16 | 0;
|
|
i64toi32_i32$2 = $16;
|
|
i64toi32_i32$0 = HEAP32[($16 + 376 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($16 + 380 | 0) >> 2] | 0;
|
|
$577 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $38;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $577;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$40 = 8;
|
|
i64toi32_i32$2 = ($16 + 376 | 0) + $40 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$590 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $38 + $40 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $590;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__29($16 + 348 | 0 | 0, $16 + 376 | 0 | 0);
|
|
$54 = (HEAP32[($16 + 440 | 0) >> 2] | 0) + 48 | 0;
|
|
i64toi32_i32$2 = $16;
|
|
i64toi32_i32$0 = HEAP32[($16 + 348 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($16 + 352 | 0) >> 2] | 0;
|
|
$609 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $54;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $609;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$56 = 8;
|
|
i64toi32_i32$2 = ($16 + 348 | 0) + $56 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$622 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $54 + $56 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $622;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $16, wasm2js_i32$1 = btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($17 + 4 | 0 | 0, HEAP32[($16 + 432 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 344 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $16, wasm2js_i32$1 = btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($17 + 4 | 0 | 0, HEAP32[($16 + 428 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 340 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $16, wasm2js_i32$1 = HEAP32[((btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($17 + 4 | 0 | 0, HEAP32[($16 + 432 | 0) >> 2] | 0 | 0) | 0) + 240 | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 336 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $16, wasm2js_i32$1 = HEAP32[((btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($17 + 4 | 0 | 0, HEAP32[($16 + 428 | 0) >> 2] | 0 | 0) | 0) + 240 | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 332 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[((HEAP32[($16 + 440 | 0) >> 2] | 0) + 144 | 0) >> 2] = HEAP32[($16 + 432 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($16 + 440 | 0) >> 2] | 0) + 148 | 0) >> 2] = HEAP32[($16 + 428 | 0) >> 2] | 0;
|
|
HEAPF32[((HEAP32[($16 + 440 | 0) >> 2] | 0) + 104 | 0) >> 2] = Math_fround(HEAPF32[($16 + 420 | 0) >> 2]);
|
|
HEAP32[((HEAP32[($16 + 440 | 0) >> 2] | 0) + 132 | 0) >> 2] = 0;
|
|
HEAPF32[((HEAP32[($16 + 440 | 0) >> 2] | 0) + 100 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[((HEAP32[($16 + 440 | 0) >> 2] | 0) + 96 | 0) >> 2] = Math_fround(0 | 0);
|
|
operator__28btVector3_20const__29($16 + 316 | 0 | 0, HEAP32[($16 + 436 | 0) >> 2] | 0 | 0);
|
|
$98 = HEAP32[($16 + 440 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $16;
|
|
i64toi32_i32$0 = HEAP32[($16 + 316 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($16 + 320 | 0) >> 2] | 0;
|
|
$714 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $98;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $714;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$100 = 8;
|
|
i64toi32_i32$2 = ($16 + 316 | 0) + $100 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$727 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $98 + $100 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $727;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($16 + 336 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($16 + 284 | 0 | 0, btRigidBody__getInvInertiaTensorWorld_28_29_20const(HEAP32[($16 + 336 | 0) >> 2] | 0 | 0) | 0 | 0, $16 + 316 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($16 + 300 | 0 | 0, $16 + 284 | 0 | 0, btRigidBody__getAngularFactor_28_29_20const(HEAP32[($16 + 336 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
break label$1;
|
|
}
|
|
HEAPF32[($16 + 280 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 276 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 272 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($16 + 300 | 0 | 0, $16 + 280 | 0 | 0, $16 + 276 | 0 | 0, $16 + 272 | 0 | 0) | 0;
|
|
}
|
|
$149 = (HEAP32[($16 + 440 | 0) >> 2] | 0) + 64 | 0;
|
|
i64toi32_i32$2 = $16;
|
|
i64toi32_i32$0 = HEAP32[($16 + 300 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($16 + 304 | 0) >> 2] | 0;
|
|
$811 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $149;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $811;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$151 = 8;
|
|
i64toi32_i32$2 = ($16 + 300 | 0) + $151 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$824 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $149 + $151 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $824;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$157 = HEAP32[($16 + 436 | 0) >> 2] | 0;
|
|
$158 = 8;
|
|
i64toi32_i32$2 = $157 + $158 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$839 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($16 + 256 | 0) + $158 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $839;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $157;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$843 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $16;
|
|
HEAP32[($16 + 256 | 0) >> 2] = $843;
|
|
HEAP32[($16 + 260 | 0) >> 2] = i64toi32_i32$0;
|
|
$167 = (HEAP32[($16 + 440 | 0) >> 2] | 0) + 32 | 0;
|
|
i64toi32_i32$2 = $16;
|
|
i64toi32_i32$0 = HEAP32[($16 + 256 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($16 + 260 | 0) >> 2] | 0;
|
|
$852 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $167;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $852;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$169 = 8;
|
|
i64toi32_i32$2 = ($16 + 256 | 0) + $169 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$865 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $167 + $169 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $865;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAP32[($16 + 332 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($16 + 224 | 0 | 0, btRigidBody__getInvInertiaTensorWorld_28_29_20const(HEAP32[($16 + 332 | 0) >> 2] | 0 | 0) | 0 | 0, $16 + 256 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($16 + 240 | 0 | 0, $16 + 224 | 0 | 0, btRigidBody__getAngularFactor_28_29_20const(HEAP32[($16 + 332 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
break label$3;
|
|
}
|
|
HEAPF32[($16 + 220 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 216 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 212 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($16 + 240 | 0 | 0, $16 + 220 | 0 | 0, $16 + 216 | 0 | 0, $16 + 212 | 0 | 0) | 0;
|
|
}
|
|
$218 = (HEAP32[($16 + 440 | 0) >> 2] | 0) + 80 | 0;
|
|
i64toi32_i32$2 = $16;
|
|
i64toi32_i32$0 = HEAP32[($16 + 240 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($16 + 244 | 0) >> 2] | 0;
|
|
$949 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $218;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $949;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$220 = 8;
|
|
i64toi32_i32$2 = ($16 + 240 | 0) + $220 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$962 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $218 + $220 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $962;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!((HEAP32[($16 + 336 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($16 + 196 | 0 | 0, btRigidBody__getInvInertiaTensorWorld_28_29_20const(HEAP32[($16 + 336 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($16 + 440 | 0) >> 2] | 0 | 0);
|
|
break label$5;
|
|
}
|
|
HEAPF32[($16 + 192 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 188 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 184 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($16 + 196 | 0 | 0, $16 + 192 | 0 | 0, $16 + 188 | 0 | 0, $16 + 184 | 0 | 0) | 0;
|
|
}
|
|
label$7 : {
|
|
label$8 : {
|
|
if (!((HEAP32[($16 + 332 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($16 + 168 | 0 | 0, btRigidBody__getInvInertiaTensorWorld_28_29_20const(HEAP32[($16 + 332 | 0) >> 2] | 0 | 0) | 0 | 0, (HEAP32[($16 + 440 | 0) >> 2] | 0) + 32 | 0 | 0);
|
|
break label$7;
|
|
}
|
|
HEAPF32[($16 + 164 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 160 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 156 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($16 + 168 | 0 | 0, $16 + 164 | 0 | 0, $16 + 160 | 0 | 0, $16 + 156 | 0 | 0) | 0;
|
|
}
|
|
HEAPF32[($16 + 152 | 0) >> 2] = Math_fround(0 | 0);
|
|
$296 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($16 + 196 | 0 | 0, HEAP32[($16 + 440 | 0) >> 2] | 0 | 0));
|
|
HEAPF32[($16 + 152 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($16 + 152 | 0) >> 2]) + $296);
|
|
$305 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($16 + 168 | 0 | 0, (HEAP32[($16 + 440 | 0) >> 2] | 0) + 32 | 0 | 0));
|
|
HEAPF32[($16 + 152 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($16 + 152 | 0) >> 2]) + $305);
|
|
HEAPF32[((HEAP32[($16 + 440 | 0) >> 2] | 0) + 108 | 0) >> 2] = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[($16 + 152 | 0) >> 2]));
|
|
$314 = (HEAP32[($16 + 440 | 0) >> 2] | 0) + 16 | 0;
|
|
label$9 : {
|
|
label$10 : {
|
|
if (!((HEAP32[($16 + 336 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($16 + 128 | 0 | 0, (HEAP32[($16 + 344 | 0) >> 2] | 0) + 176 | 0 | 0, (HEAP32[($16 + 344 | 0) >> 2] | 0) + 208 | 0 | 0);
|
|
break label$9;
|
|
}
|
|
HEAPF32[($16 + 124 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 120 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 116 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($16 + 128 | 0 | 0, $16 + 124 | 0 | 0, $16 + 120 | 0 | 0, $16 + 116 | 0 | 0) | 0;
|
|
}
|
|
$352 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($314 | 0, $16 + 128 | 0 | 0));
|
|
$353 = HEAP32[($16 + 440 | 0) >> 2] | 0;
|
|
label$11 : {
|
|
label$12 : {
|
|
if (!((HEAP32[($16 + 336 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
$363 = (HEAP32[($16 + 344 | 0) >> 2] | 0) + 192 | 0;
|
|
$364 = 8;
|
|
i64toi32_i32$2 = $363 + $364 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1235 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($16 + 96 | 0) + $364 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1235;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $363;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1239 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $16;
|
|
HEAP32[($16 + 96 | 0) >> 2] = $1239;
|
|
HEAP32[($16 + 100 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$11;
|
|
}
|
|
HEAPF32[($16 + 92 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 88 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 84 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($16 + 96 | 0 | 0, $16 + 92 | 0 | 0, $16 + 88 | 0 | 0, $16 + 84 | 0 | 0) | 0;
|
|
}
|
|
(wasm2js_i32$0 = $16, wasm2js_f32$0 = Math_fround($352 + Math_fround(btVector3__dot_28btVector3_20const__29_20const($353 | 0, $16 + 96 | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 144 | 0) >> 2] = wasm2js_f32$0;
|
|
$396 = (HEAP32[($16 + 440 | 0) >> 2] | 0) + 48 | 0;
|
|
label$13 : {
|
|
label$14 : {
|
|
if (!((HEAP32[($16 + 332 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($16 + 64 | 0 | 0, (HEAP32[($16 + 340 | 0) >> 2] | 0) + 176 | 0 | 0, (HEAP32[($16 + 340 | 0) >> 2] | 0) + 208 | 0 | 0);
|
|
break label$13;
|
|
}
|
|
HEAPF32[($16 + 60 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 56 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 52 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($16 + 64 | 0 | 0, $16 + 60 | 0 | 0, $16 + 56 | 0 | 0, $16 + 52 | 0 | 0) | 0;
|
|
}
|
|
$434 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($396 | 0, $16 + 64 | 0 | 0));
|
|
$437 = (HEAP32[($16 + 440 | 0) >> 2] | 0) + 32 | 0;
|
|
label$15 : {
|
|
label$16 : {
|
|
if (!((HEAP32[($16 + 332 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
$447 = (HEAP32[($16 + 340 | 0) >> 2] | 0) + 192 | 0;
|
|
$448 = 8;
|
|
i64toi32_i32$2 = $447 + $448 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1393 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($16 + 32 | 0) + $448 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1393;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $447;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1397 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $16;
|
|
HEAP32[($16 + 32 | 0) >> 2] = $1397;
|
|
HEAP32[($16 + 36 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$15;
|
|
}
|
|
HEAPF32[($16 + 28 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 24 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($16 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($16 + 32 | 0 | 0, $16 + 28 | 0 | 0, $16 + 24 | 0 | 0, $16 + 20 | 0 | 0) | 0;
|
|
}
|
|
(wasm2js_i32$0 = $16, wasm2js_f32$0 = Math_fround($434 + Math_fround(btVector3__dot_28btVector3_20const__29_20const($437 | 0, $16 + 32 | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 80 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($16 + 148 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($16 + 144 | 0) >> 2]) + Math_fround(HEAPF32[($16 + 80 | 0) >> 2]));
|
|
HEAPF32[($16 + 16 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($16 + 396 | 0) >> 2]) - Math_fround(HEAPF32[($16 + 148 | 0) >> 2]));
|
|
HEAPF32[($16 + 12 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($16 + 16 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($16 + 440 | 0) >> 2] | 0) + 108 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[($16 + 440 | 0) >> 2] | 0) + 112 | 0) >> 2] = Math_fround(HEAPF32[($16 + 12 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($16 + 440 | 0) >> 2] | 0) + 116 | 0) >> 2] = Math_fround(HEAPF32[($16 + 392 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($16 + 440 | 0) >> 2] | 0) + 120 | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[((HEAP32[($16 + 440 | 0) >> 2] | 0) + 104 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[($16 + 440 | 0) >> 2] | 0) + 124 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($16 + 440 | 0) >> 2] | 0) + 104 | 0) >> 2]);
|
|
__stack_pointer = $16 + 448 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__addTorsionalFrictionConstraint_28btVector3_20const__2c_20int_2c_20int_2c_20int_2c_20btManifoldPoint__2c_20float_2c_20btVector3_20const__2c_20btVector3_20const__2c_20btCollisionObject__2c_20btCollisionObject__2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = Math_fround($6);
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
$9 = $9 | 0;
|
|
$10 = $10 | 0;
|
|
$11 = Math_fround($11);
|
|
$12 = Math_fround($12);
|
|
$13 = Math_fround($13);
|
|
var $16 = 0, $17 = 0, $36 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$16 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $16;
|
|
HEAP32[($16 + 60 | 0) >> 2] = $0;
|
|
HEAP32[($16 + 56 | 0) >> 2] = $1;
|
|
HEAP32[($16 + 52 | 0) >> 2] = $2;
|
|
HEAP32[($16 + 48 | 0) >> 2] = $3;
|
|
HEAP32[($16 + 44 | 0) >> 2] = $4;
|
|
HEAP32[($16 + 40 | 0) >> 2] = $5;
|
|
HEAPF32[($16 + 36 | 0) >> 2] = $6;
|
|
HEAP32[($16 + 32 | 0) >> 2] = $7;
|
|
HEAP32[($16 + 28 | 0) >> 2] = $8;
|
|
HEAP32[($16 + 24 | 0) >> 2] = $9;
|
|
HEAP32[($16 + 20 | 0) >> 2] = $10;
|
|
HEAPF32[($16 + 16 | 0) >> 2] = $11;
|
|
HEAPF32[($16 + 12 | 0) >> 2] = $12;
|
|
HEAPF32[($16 + 8 | 0) >> 2] = $13;
|
|
$17 = HEAP32[($16 + 60 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $16, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___expandNonInitializing_28_29($17 + 84 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[((HEAP32[($16 + 4 | 0) >> 2] | 0) + 140 | 0) >> 2] = HEAP32[($16 + 44 | 0) >> 2] | 0;
|
|
btSequentialImpulseConstraintSolver__setupTorsionalFrictionConstraint_28btSolverConstraint__2c_20btVector3_20const__2c_20int_2c_20int_2c_20btManifoldPoint__2c_20float_2c_20btVector3_20const__2c_20btVector3_20const__2c_20btCollisionObject__2c_20btCollisionObject__2c_20float_2c_20float_2c_20float_29($17 | 0, HEAP32[($16 + 4 | 0) >> 2] | 0 | 0, HEAP32[($16 + 56 | 0) >> 2] | 0 | 0, HEAP32[($16 + 52 | 0) >> 2] | 0 | 0, HEAP32[($16 + 48 | 0) >> 2] | 0 | 0, HEAP32[($16 + 40 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($16 + 36 | 0) >> 2])), HEAP32[($16 + 32 | 0) >> 2] | 0 | 0, HEAP32[($16 + 28 | 0) >> 2] | 0 | 0, HEAP32[($16 + 24 | 0) >> 2] | 0 | 0, HEAP32[($16 + 20 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($16 + 16 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($16 + 12 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($16 + 8 | 0) >> 2])));
|
|
$36 = HEAP32[($16 + 4 | 0) >> 2] | 0;
|
|
__stack_pointer = $16 + 64 | 0;
|
|
return $36 | 0;
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__getOrInitSolverBody_28btCollisionObject__2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $6 = 0, $100 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 528 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 520 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 516 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 512 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 520 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 508 | 0) >> 2] = -1;
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((btCollisionObject__getCompanionId_28_29_20const(HEAP32[($5 + 516 | 0) >> 2] | 0 | 0) | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btCollisionObject__getCompanionId_28_29_20const(HEAP32[($5 + 516 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 508 | 0) >> 2] = wasm2js_i32$1;
|
|
label$4 : {
|
|
if ((HEAP32[($5 + 508 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btSolverBody___size_28_29_20const($6 + 4 | 0 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
__assert_fail(87662 | 0, 72591 | 0, 807 | 0, 66064 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
break label$2;
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btRigidBody__upcast_28btCollisionObject__29(HEAP32[($5 + 516 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 504 | 0) >> 2] = wasm2js_i32$1;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!((HEAP32[($5 + 504 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
label$7 : {
|
|
if (Math_fround(btRigidBody__getInvMass_28_29_20const(HEAP32[($5 + 504 | 0) >> 2] | 0 | 0)) != Math_fround(0 | 0) & 1 | 0) {
|
|
break label$7
|
|
}
|
|
if (!((btCollisionObject__isKinematicObject_28_29_20const(HEAP32[($5 + 504 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btSolverBody___size_28_29_20const($6 + 4 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 508 | 0) >> 2] = wasm2js_i32$1;
|
|
__memset($5 + 256 | 0 | 0, 0 | 0, 244 | 0) | 0;
|
|
btSolverBody__btSolverBody_28_29($5 + 256 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btSolverBody___expand_28btSolverBody_20const__29($6 + 4 | 0 | 0, $5 + 256 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 500 | 0) >> 2] = wasm2js_i32$1;
|
|
btSequentialImpulseConstraintSolver__initSolverBody_28btSolverBody__2c_20btCollisionObject__2c_20float_29($6 | 0, HEAP32[($5 + 500 | 0) >> 2] | 0 | 0, HEAP32[($5 + 516 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 512 | 0) >> 2])));
|
|
btCollisionObject__setCompanionId_28int_29(HEAP32[($5 + 516 | 0) >> 2] | 0 | 0, HEAP32[($5 + 508 | 0) >> 2] | 0 | 0);
|
|
break label$5;
|
|
}
|
|
label$8 : {
|
|
if (!((HEAP32[($6 + 188 | 0) >> 2] | 0 | 0) < (0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btAlignedObjectArray_btSolverBody___size_28_29_20const($6 + 4 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 188 | 0) >> 2] = wasm2js_i32$1;
|
|
__memset($5 + 8 | 0 | 0, 0 | 0, 244 | 0) | 0;
|
|
btSolverBody__btSolverBody_28_29($5 + 8 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btSolverBody___expand_28btSolverBody_20const__29($6 + 4 | 0 | 0, $5 + 8 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 252 | 0) >> 2] = wasm2js_i32$1;
|
|
btSequentialImpulseConstraintSolver__initSolverBody_28btSolverBody__2c_20btCollisionObject__2c_20float_29($6 | 0, HEAP32[($5 + 252 | 0) >> 2] | 0 | 0, 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 512 | 0) >> 2])));
|
|
}
|
|
HEAP32[($5 + 524 | 0) >> 2] = HEAP32[($6 + 188 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
}
|
|
HEAP32[($5 + 524 | 0) >> 2] = HEAP32[($5 + 508 | 0) >> 2] | 0;
|
|
}
|
|
$100 = HEAP32[($5 + 524 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 528 | 0;
|
|
return $100 | 0;
|
|
}
|
|
|
|
function btCollisionObject__getCompanionId_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 212 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btSolverBody__btSolverBody_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btTransform__btTransform_28_29($4 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 64 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 80 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 96 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 112 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 128 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 144 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 160 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 176 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 192 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 208 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 224 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverBody___expand_28btSolverBody_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $31 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btSolverBody___size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btSolverBody___capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btSolverBody___reserve_28int_29($5 | 0, btAlignedObjectArray_btSolverBody___allocSize_28int_29($5 | 0, btAlignedObjectArray_btSolverBody___size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
btSolverBody__btSolverBody_28btSolverBody_20const__29(btSolverBody__operator_20new_28unsigned_20long_2c_20void__29(244 | 0, (HEAP32[($5 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($4 + 4 | 0) >> 2] | 0, 244) | 0 | 0) | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
$31 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($4 + 4 | 0) >> 2] | 0, 244) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $31 | 0;
|
|
}
|
|
|
|
function btCollisionObject__setCompanionId_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 212 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverBody___capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverBody___allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverBody___reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btSolverBody___capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btSolverBody___allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btSolverBody___copy_28int_2c_20int_2c_20btSolverBody__29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btSolverBody___size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btSolverBody___destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btSolverBody___size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btSolverBody___deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSolverBody__operator_20new_28unsigned_20long_2c_20void__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return HEAP32[($4 + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btSolverBody__btSolverBody_28btSolverBody_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btTransform__btTransform_28btTransform_20const__29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__memcpy($5 + 64 | 0 | 0, (HEAP32[($4 + 8 | 0) >> 2] | 0) + 64 | 0 | 0, 180 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__setupContactConstraint_28btSolverConstraint__2c_20int_2c_20int_2c_20btManifoldPoint__2c_20btContactSolverInfo_20const__2c_20float__2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2, $3, $4, $5, $6, $7, $8) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
var $11 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $12 = 0, $137 = 0, $139 = 0, $201 = 0, $203 = 0, $230 = 0, $269 = 0, $310 = 0, $312 = 0, $316 = 0, $318 = 0, $343 = 0, $345 = 0, $359 = 0, $361 = 0, $416 = 0, $455 = 0, $600 = 0, $601 = 0, $636 = 0, $637 = 0, $672 = 0, $673 = 0, $708 = 0, $709 = 0, $1170 = 0, $1183 = 0, $160 = 0, $1291 = 0, $1304 = 0, $1360 = 0, $1364 = 0, $1437 = 0, $1441 = 0, $1515 = 0, $1525 = 0, $1531 = 0, $1544 = 0, $1585 = 0, $1598 = 0, $1617 = 0, $1630 = 0, $1743 = 0, $1747 = 0, $1819 = 0, $1823 = 0, $514 = 0, $546 = 0, $2107 = 0, $2111 = 0, $2176 = 0, $2180 = 0, $2245 = 0, $2249 = 0, $2314 = 0, $2318 = 0, $736 = 0, $749 = Math_fround(0), $750 = 0, $767 = 0, $780 = Math_fround(0), $783 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$11 = __stack_pointer - 752 | 0;
|
|
__stack_pointer = $11;
|
|
HEAP32[($11 + 748 | 0) >> 2] = $0;
|
|
HEAP32[($11 + 744 | 0) >> 2] = $1;
|
|
HEAP32[($11 + 740 | 0) >> 2] = $2;
|
|
HEAP32[($11 + 736 | 0) >> 2] = $3;
|
|
HEAP32[($11 + 732 | 0) >> 2] = $4;
|
|
HEAP32[($11 + 728 | 0) >> 2] = $5;
|
|
HEAP32[($11 + 724 | 0) >> 2] = $6;
|
|
HEAP32[($11 + 720 | 0) >> 2] = $7;
|
|
HEAP32[($11 + 716 | 0) >> 2] = $8;
|
|
$12 = HEAP32[($11 + 748 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $11, wasm2js_i32$1 = btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($12 + 4 | 0 | 0, HEAP32[($11 + 740 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 712 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $11, wasm2js_i32$1 = btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($12 + 4 | 0 | 0, HEAP32[($11 + 736 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 708 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($11 + 704 | 0) >> 2] = HEAP32[((HEAP32[($11 + 712 | 0) >> 2] | 0) + 240 | 0) >> 2] | 0;
|
|
HEAP32[($11 + 700 | 0) >> 2] = HEAP32[((HEAP32[($11 + 708 | 0) >> 2] | 0) + 240 | 0) >> 2] | 0;
|
|
HEAPF32[(HEAP32[($11 + 724 | 0) >> 2] | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($11 + 728 | 0) >> 2] | 0) + 28 | 0) >> 2]);
|
|
HEAPF32[($11 + 696 | 0) >> 2] = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[((HEAP32[($11 + 728 | 0) >> 2] | 0) + 12 | 0) >> 2]));
|
|
HEAPF32[($11 + 692 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($11 + 728 | 0) >> 2] | 0) + 40 | 0) >> 2]);
|
|
HEAPF32[($11 + 688 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($11 + 728 | 0) >> 2] | 0) + 36 | 0) >> 2]);
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : {
|
|
if ((HEAP32[((HEAP32[($11 + 732 | 0) >> 2] | 0) + 128 | 0) >> 2] | 0) & 2 | 0) {
|
|
break label$3
|
|
}
|
|
if (!((HEAP32[((HEAP32[($11 + 732 | 0) >> 2] | 0) + 128 | 0) >> 2] | 0) & 4 | 0)) {
|
|
break label$2
|
|
}
|
|
}
|
|
label$4 : {
|
|
if (!((HEAP32[((HEAP32[($11 + 732 | 0) >> 2] | 0) + 128 | 0) >> 2] | 0) & 2 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAPF32[($11 + 692 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($11 + 732 | 0) >> 2] | 0) + 152 | 0) >> 2]);
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[((HEAP32[($11 + 732 | 0) >> 2] | 0) + 128 | 0) >> 2] | 0) & 4 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAPF32[($11 + 688 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($11 + 732 | 0) >> 2] | 0) + 156 | 0) >> 2]);
|
|
}
|
|
break label$1;
|
|
}
|
|
label$6 : {
|
|
if (!((HEAP32[((HEAP32[($11 + 732 | 0) >> 2] | 0) + 128 | 0) >> 2] | 0) & 8 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAPF32[($11 + 684 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[((HEAP32[($11 + 728 | 0) >> 2] | 0) + 12 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($11 + 732 | 0) >> 2] | 0) + 152 | 0) >> 2])) + Math_fround(HEAPF32[((HEAP32[($11 + 732 | 0) >> 2] | 0) + 156 | 0) >> 2]));
|
|
label$7 : {
|
|
if (!(Math_fround(HEAPF32[($11 + 684 | 0) >> 2]) < Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAPF32[($11 + 684 | 0) >> 2] = Math_fround(1.1920928955078125e-07);
|
|
}
|
|
HEAPF32[($11 + 692 | 0) >> 2] = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[($11 + 684 | 0) >> 2]));
|
|
HEAPF32[($11 + 688 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[((HEAP32[($11 + 728 | 0) >> 2] | 0) + 12 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($11 + 732 | 0) >> 2] | 0) + 152 | 0) >> 2])) / Math_fround(HEAPF32[($11 + 684 | 0) >> 2]));
|
|
}
|
|
}
|
|
HEAPF32[($11 + 692 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($11 + 692 | 0) >> 2]) * Math_fround(HEAPF32[($11 + 696 | 0) >> 2]));
|
|
btVector3__cross_28btVector3_20const__29_20const($11 + 668 | 0 | 0, HEAP32[($11 + 720 | 0) >> 2] | 0 | 0, (HEAP32[($11 + 732 | 0) >> 2] | 0) + 64 | 0 | 0);
|
|
label$8 : {
|
|
label$9 : {
|
|
if (!((HEAP32[($11 + 704 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($11 + 636 | 0 | 0, btRigidBody__getInvInertiaTensorWorld_28_29_20const(HEAP32[($11 + 704 | 0) >> 2] | 0 | 0) | 0 | 0, $11 + 668 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($11 + 652 | 0 | 0, $11 + 636 | 0 | 0, btRigidBody__getAngularFactor_28_29_20const(HEAP32[($11 + 704 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
break label$8;
|
|
}
|
|
HEAPF32[($11 + 632 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 628 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 624 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($11 + 652 | 0 | 0, $11 + 632 | 0 | 0, $11 + 628 | 0 | 0, $11 + 624 | 0 | 0) | 0;
|
|
}
|
|
$137 = (HEAP32[($11 + 744 | 0) >> 2] | 0) + 64 | 0;
|
|
i64toi32_i32$2 = $11;
|
|
i64toi32_i32$0 = HEAP32[($11 + 652 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($11 + 656 | 0) >> 2] | 0;
|
|
$1170 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $137;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1170;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$139 = 8;
|
|
i64toi32_i32$2 = ($11 + 652 | 0) + $139 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1183 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $137 + $139 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1183;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__cross_28btVector3_20const__29_20const($11 + 608 | 0 | 0, HEAP32[($11 + 716 | 0) >> 2] | 0 | 0, (HEAP32[($11 + 732 | 0) >> 2] | 0) + 64 | 0 | 0);
|
|
label$10 : {
|
|
label$11 : {
|
|
if (!((HEAP32[($11 + 700 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
$160 = btRigidBody__getInvInertiaTensorWorld_28_29_20const(HEAP32[($11 + 700 | 0) >> 2] | 0 | 0) | 0;
|
|
operator__28btVector3_20const__29($11 + 560 | 0 | 0, $11 + 608 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($11 + 576 | 0 | 0, $160 | 0, $11 + 560 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($11 + 592 | 0 | 0, $11 + 576 | 0 | 0, btRigidBody__getAngularFactor_28_29_20const(HEAP32[($11 + 700 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
break label$10;
|
|
}
|
|
HEAPF32[($11 + 556 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 552 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 548 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($11 + 592 | 0 | 0, $11 + 556 | 0 | 0, $11 + 552 | 0 | 0, $11 + 548 | 0 | 0) | 0;
|
|
}
|
|
$201 = (HEAP32[($11 + 744 | 0) >> 2] | 0) + 80 | 0;
|
|
i64toi32_i32$2 = $11;
|
|
i64toi32_i32$0 = HEAP32[($11 + 592 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($11 + 596 | 0) >> 2] | 0;
|
|
$1291 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $201;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1291;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$203 = 8;
|
|
i64toi32_i32$2 = ($11 + 592 | 0) + $203 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1304 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $201 + $203 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1304;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__btVector3_28_29($11 + 528 | 0 | 0) | 0;
|
|
HEAPF32[($11 + 524 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 520 | 0) >> 2] = Math_fround(0 | 0);
|
|
label$12 : {
|
|
if (!((HEAP32[($11 + 704 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
btVector3__cross_28btVector3_20const__29_20const($11 + 504 | 0 | 0, (HEAP32[($11 + 744 | 0) >> 2] | 0) + 64 | 0 | 0, HEAP32[($11 + 720 | 0) >> 2] | 0 | 0);
|
|
$230 = 8;
|
|
i64toi32_i32$2 = ($11 + 504 | 0) + $230 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1360 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($11 + 528 | 0) + $230 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1360;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $11;
|
|
i64toi32_i32$1 = HEAP32[($11 + 504 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($11 + 508 | 0) >> 2] | 0;
|
|
$1364 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11;
|
|
HEAP32[($11 + 528 | 0) >> 2] = $1364;
|
|
HEAP32[($11 + 532 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $11, wasm2js_f32$0 = Math_fround(Math_fround(btRigidBody__getInvMass_28_29_20const(HEAP32[($11 + 704 | 0) >> 2] | 0 | 0)) + Math_fround(btVector3__dot_28btVector3_20const__29_20const((HEAP32[($11 + 732 | 0) >> 2] | 0) + 64 | 0 | 0, $11 + 528 | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 524 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
label$13 : {
|
|
if (!((HEAP32[($11 + 700 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
operator__28btVector3_20const__29($11 + 472 | 0 | 0, (HEAP32[($11 + 744 | 0) >> 2] | 0) + 80 | 0 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($11 + 488 | 0 | 0, $11 + 472 | 0 | 0, HEAP32[($11 + 716 | 0) >> 2] | 0 | 0);
|
|
$269 = 8;
|
|
i64toi32_i32$2 = ($11 + 488 | 0) + $269 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1437 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($11 + 528 | 0) + $269 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1437;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $11;
|
|
i64toi32_i32$1 = HEAP32[($11 + 488 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($11 + 492 | 0) >> 2] | 0;
|
|
$1441 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11;
|
|
HEAP32[($11 + 528 | 0) >> 2] = $1441;
|
|
HEAP32[($11 + 532 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $11, wasm2js_f32$0 = Math_fround(Math_fround(btRigidBody__getInvMass_28_29_20const(HEAP32[($11 + 700 | 0) >> 2] | 0 | 0)) + Math_fround(btVector3__dot_28btVector3_20const__29_20const((HEAP32[($11 + 732 | 0) >> 2] | 0) + 64 | 0 | 0, $11 + 528 | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 520 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
HEAPF32[($11 + 468 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[(HEAP32[($11 + 724 | 0) >> 2] | 0) >> 2]) / Math_fround(Math_fround(Math_fround(HEAPF32[($11 + 524 | 0) >> 2]) + Math_fround(HEAPF32[($11 + 520 | 0) >> 2])) + Math_fround(HEAPF32[($11 + 692 | 0) >> 2])));
|
|
HEAPF32[((HEAP32[($11 + 744 | 0) >> 2] | 0) + 108 | 0) >> 2] = Math_fround(HEAPF32[($11 + 468 | 0) >> 2]);
|
|
label$14 : {
|
|
label$15 : {
|
|
if (!((HEAP32[($11 + 704 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
$310 = (HEAP32[($11 + 744 | 0) >> 2] | 0) + 16 | 0;
|
|
i64toi32_i32$2 = (HEAP32[($11 + 732 | 0) >> 2] | 0) + 64 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1515 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $310;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1515;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$312 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $312 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1525 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $310 + $312 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1525;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$316 = HEAP32[($11 + 744 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $11;
|
|
i64toi32_i32$0 = HEAP32[($11 + 668 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($11 + 672 | 0) >> 2] | 0;
|
|
$1531 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $316;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1531;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$318 = 8;
|
|
i64toi32_i32$2 = ($11 + 668 | 0) + $318 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1544 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $316 + $318 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1544;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$14;
|
|
}
|
|
btVector3__setZero_28_29((HEAP32[($11 + 744 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
btVector3__setZero_28_29(HEAP32[($11 + 744 | 0) >> 2] | 0 | 0);
|
|
}
|
|
label$16 : {
|
|
label$17 : {
|
|
if (!((HEAP32[($11 + 700 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
operator__28btVector3_20const__29($11 + 452 | 0 | 0, (HEAP32[($11 + 732 | 0) >> 2] | 0) + 64 | 0 | 0);
|
|
$343 = (HEAP32[($11 + 744 | 0) >> 2] | 0) + 48 | 0;
|
|
i64toi32_i32$2 = $11;
|
|
i64toi32_i32$0 = HEAP32[($11 + 452 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($11 + 456 | 0) >> 2] | 0;
|
|
$1585 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $343;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1585;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$345 = 8;
|
|
i64toi32_i32$2 = ($11 + 452 | 0) + $345 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1598 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $343 + $345 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1598;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__29($11 + 436 | 0 | 0, $11 + 608 | 0 | 0);
|
|
$359 = (HEAP32[($11 + 744 | 0) >> 2] | 0) + 32 | 0;
|
|
i64toi32_i32$2 = $11;
|
|
i64toi32_i32$0 = HEAP32[($11 + 436 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($11 + 440 | 0) >> 2] | 0;
|
|
$1617 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $359;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1617;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$361 = 8;
|
|
i64toi32_i32$2 = ($11 + 436 | 0) + $361 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1630 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $359 + $361 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1630;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$16;
|
|
}
|
|
btVector3__setZero_28_29((HEAP32[($11 + 744 | 0) >> 2] | 0) + 48 | 0 | 0);
|
|
btVector3__setZero_28_29((HEAP32[($11 + 744 | 0) >> 2] | 0) + 32 | 0 | 0);
|
|
}
|
|
HEAPF32[($11 + 432 | 0) >> 2] = Math_fround(0 | 0);
|
|
(wasm2js_i32$0 = $11, wasm2js_f32$0 = Math_fround(Math_fround(btManifoldPoint__getDistance_28_29_20const(HEAP32[($11 + 732 | 0) >> 2] | 0 | 0)) + Math_fround(HEAPF32[((HEAP32[($11 + 728 | 0) >> 2] | 0) + 64 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 428 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28_29($11 + 408 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($11 + 392 | 0 | 0) | 0;
|
|
label$18 : {
|
|
label$19 : {
|
|
if (!((HEAP32[($11 + 704 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
btRigidBody__getVelocityInLocalPoint_28btVector3_20const__29_20const($11 + 376 | 0 | 0, HEAP32[($11 + 704 | 0) >> 2] | 0 | 0, HEAP32[($11 + 720 | 0) >> 2] | 0 | 0);
|
|
break label$18;
|
|
}
|
|
HEAPF32[($11 + 372 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 368 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 364 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($11 + 376 | 0 | 0, $11 + 372 | 0 | 0, $11 + 368 | 0 | 0, $11 + 364 | 0 | 0) | 0;
|
|
}
|
|
$416 = 8;
|
|
i64toi32_i32$2 = ($11 + 376 | 0) + $416 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1743 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($11 + 408 | 0) + $416 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1743;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $11;
|
|
i64toi32_i32$1 = HEAP32[($11 + 376 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($11 + 380 | 0) >> 2] | 0;
|
|
$1747 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11;
|
|
HEAP32[($11 + 408 | 0) >> 2] = $1747;
|
|
HEAP32[($11 + 412 | 0) >> 2] = i64toi32_i32$0;
|
|
label$20 : {
|
|
label$21 : {
|
|
if (!((HEAP32[($11 + 700 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$21
|
|
}
|
|
btRigidBody__getVelocityInLocalPoint_28btVector3_20const__29_20const($11 + 348 | 0 | 0, HEAP32[($11 + 700 | 0) >> 2] | 0 | 0, HEAP32[($11 + 716 | 0) >> 2] | 0 | 0);
|
|
break label$20;
|
|
}
|
|
HEAPF32[($11 + 344 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 340 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 336 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($11 + 348 | 0 | 0, $11 + 344 | 0 | 0, $11 + 340 | 0 | 0, $11 + 336 | 0 | 0) | 0;
|
|
}
|
|
$455 = 8;
|
|
i64toi32_i32$2 = ($11 + 348 | 0) + $455 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1819 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($11 + 392 | 0) + $455 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1819;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $11;
|
|
i64toi32_i32$1 = HEAP32[($11 + 348 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($11 + 352 | 0) >> 2] | 0;
|
|
$1823 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11;
|
|
HEAP32[($11 + 392 | 0) >> 2] = $1823;
|
|
HEAP32[($11 + 396 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($11 + 320 | 0 | 0, $11 + 408 | 0 | 0, $11 + 392 | 0 | 0);
|
|
(wasm2js_i32$0 = $11, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const((HEAP32[($11 + 732 | 0) >> 2] | 0) + 64 | 0 | 0, $11 + 320 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 316 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[((HEAP32[($11 + 744 | 0) >> 2] | 0) + 104 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($11 + 732 | 0) >> 2] | 0) + 84 | 0) >> 2]);
|
|
(wasm2js_i32$0 = $11, wasm2js_f32$0 = Math_fround(btSequentialImpulseConstraintSolver__restitutionCurve_28float_2c_20float_2c_20float_29($12 | 0, Math_fround(Math_fround(HEAPF32[($11 + 316 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[((HEAP32[($11 + 732 | 0) >> 2] | 0) + 96 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[((HEAP32[($11 + 728 | 0) >> 2] | 0) + 96 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 432 | 0) >> 2] = wasm2js_f32$0;
|
|
label$22 : {
|
|
if (!(Math_fround(HEAPF32[($11 + 432 | 0) >> 2]) <= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$22
|
|
}
|
|
HEAPF32[($11 + 432 | 0) >> 2] = Math_fround(0 | 0);
|
|
}
|
|
label$23 : {
|
|
label$24 : {
|
|
if (!((HEAP32[((HEAP32[($11 + 728 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0) & 4 | 0)) {
|
|
break label$24
|
|
}
|
|
HEAPF32[((HEAP32[($11 + 744 | 0) >> 2] | 0) + 100 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($11 + 732 | 0) >> 2] | 0) + 132 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($11 + 728 | 0) >> 2] | 0) + 68 | 0) >> 2]));
|
|
label$25 : {
|
|
if (!((HEAP32[($11 + 704 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$25
|
|
}
|
|
$514 = HEAP32[($11 + 712 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($11 + 284 | 0 | 0, (HEAP32[($11 + 744 | 0) >> 2] | 0) + 16 | 0 | 0, btSolverBody__internalGetInvMass_28_29_20const(HEAP32[($11 + 712 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($11 + 300 | 0 | 0, $11 + 284 | 0 | 0, btRigidBody__getLinearFactor_28_29_20const(HEAP32[($11 + 704 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btSolverBody__internalApplyImpulse_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($514 | 0, $11 + 300 | 0 | 0, (HEAP32[($11 + 744 | 0) >> 2] | 0) + 64 | 0 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($11 + 744 | 0) >> 2] | 0) + 100 | 0) >> 2])));
|
|
}
|
|
label$26 : {
|
|
if (!((HEAP32[($11 + 700 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$26
|
|
}
|
|
$546 = HEAP32[($11 + 708 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__29($11 + 236 | 0 | 0, (HEAP32[($11 + 744 | 0) >> 2] | 0) + 48 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($11 + 252 | 0 | 0, $11 + 236 | 0 | 0, btSolverBody__internalGetInvMass_28_29_20const(HEAP32[($11 + 708 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($11 + 268 | 0 | 0, $11 + 252 | 0 | 0, btRigidBody__getLinearFactor_28_29_20const(HEAP32[($11 + 700 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__29($11 + 220 | 0 | 0, (HEAP32[($11 + 744 | 0) >> 2] | 0) + 80 | 0 | 0);
|
|
btSolverBody__internalApplyImpulse_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($546 | 0, $11 + 268 | 0 | 0, $11 + 220 | 0 | 0, Math_fround(Math_fround(-Math_fround(HEAPF32[((HEAP32[($11 + 744 | 0) >> 2] | 0) + 100 | 0) >> 2]))));
|
|
}
|
|
break label$23;
|
|
}
|
|
HEAPF32[((HEAP32[($11 + 744 | 0) >> 2] | 0) + 100 | 0) >> 2] = Math_fround(0 | 0);
|
|
}
|
|
HEAPF32[((HEAP32[($11 + 744 | 0) >> 2] | 0) + 96 | 0) >> 2] = Math_fround(0 | 0);
|
|
label$27 : {
|
|
label$28 : {
|
|
if (!((HEAP32[((HEAP32[($11 + 712 | 0) >> 2] | 0) + 240 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$28
|
|
}
|
|
$600 = (HEAP32[($11 + 712 | 0) >> 2] | 0) + 208 | 0;
|
|
$601 = 8;
|
|
i64toi32_i32$2 = $600 + $601 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2107 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($11 + 200 | 0) + $601 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2107;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $600;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2111 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11;
|
|
HEAP32[($11 + 200 | 0) >> 2] = $2111;
|
|
HEAP32[($11 + 204 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$27;
|
|
}
|
|
HEAPF32[($11 + 196 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 192 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 188 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($11 + 200 | 0 | 0, $11 + 196 | 0 | 0, $11 + 192 | 0 | 0, $11 + 188 | 0 | 0) | 0;
|
|
}
|
|
label$29 : {
|
|
label$30 : {
|
|
if (!((HEAP32[((HEAP32[($11 + 712 | 0) >> 2] | 0) + 240 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$30
|
|
}
|
|
$636 = (HEAP32[($11 + 712 | 0) >> 2] | 0) + 224 | 0;
|
|
$637 = 8;
|
|
i64toi32_i32$2 = $636 + $637 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2176 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($11 + 168 | 0) + $637 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2176;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $636;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2180 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11;
|
|
HEAP32[($11 + 168 | 0) >> 2] = $2180;
|
|
HEAP32[($11 + 172 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$29;
|
|
}
|
|
HEAPF32[($11 + 164 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 160 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 156 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($11 + 168 | 0 | 0, $11 + 164 | 0 | 0, $11 + 160 | 0 | 0, $11 + 156 | 0 | 0) | 0;
|
|
}
|
|
label$31 : {
|
|
label$32 : {
|
|
if (!((HEAP32[((HEAP32[($11 + 708 | 0) >> 2] | 0) + 240 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$32
|
|
}
|
|
$672 = (HEAP32[($11 + 708 | 0) >> 2] | 0) + 208 | 0;
|
|
$673 = 8;
|
|
i64toi32_i32$2 = $672 + $673 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2245 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($11 + 136 | 0) + $673 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2245;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $672;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2249 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11;
|
|
HEAP32[($11 + 136 | 0) >> 2] = $2249;
|
|
HEAP32[($11 + 140 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$31;
|
|
}
|
|
HEAPF32[($11 + 132 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 128 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 124 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($11 + 136 | 0 | 0, $11 + 132 | 0 | 0, $11 + 128 | 0 | 0, $11 + 124 | 0 | 0) | 0;
|
|
}
|
|
label$33 : {
|
|
label$34 : {
|
|
if (!((HEAP32[((HEAP32[($11 + 708 | 0) >> 2] | 0) + 240 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$34
|
|
}
|
|
$708 = (HEAP32[($11 + 708 | 0) >> 2] | 0) + 224 | 0;
|
|
$709 = 8;
|
|
i64toi32_i32$2 = $708 + $709 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2314 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($11 + 104 | 0) + $709 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2314;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $708;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2318 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11;
|
|
HEAP32[($11 + 104 | 0) >> 2] = $2318;
|
|
HEAP32[($11 + 108 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$33;
|
|
}
|
|
HEAPF32[($11 + 100 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 96 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 92 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($11 + 104 | 0 | 0, $11 + 100 | 0 | 0, $11 + 96 | 0 | 0, $11 + 92 | 0 | 0) | 0;
|
|
}
|
|
$736 = (HEAP32[($11 + 744 | 0) >> 2] | 0) + 16 | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($11 + 72 | 0 | 0, (HEAP32[($11 + 712 | 0) >> 2] | 0) + 176 | 0 | 0, $11 + 200 | 0 | 0);
|
|
$749 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($736 | 0, $11 + 72 | 0 | 0));
|
|
$750 = HEAP32[($11 + 744 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($11 + 56 | 0 | 0, (HEAP32[($11 + 712 | 0) >> 2] | 0) + 192 | 0 | 0, $11 + 168 | 0 | 0);
|
|
(wasm2js_i32$0 = $11, wasm2js_f32$0 = Math_fround($749 + Math_fround(btVector3__dot_28btVector3_20const__29_20const($750 | 0, $11 + 56 | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 88 | 0) >> 2] = wasm2js_f32$0;
|
|
$767 = (HEAP32[($11 + 744 | 0) >> 2] | 0) + 48 | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($11 + 36 | 0 | 0, (HEAP32[($11 + 708 | 0) >> 2] | 0) + 176 | 0 | 0, $11 + 136 | 0 | 0);
|
|
$780 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($767 | 0, $11 + 36 | 0 | 0));
|
|
$783 = (HEAP32[($11 + 744 | 0) >> 2] | 0) + 32 | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($11 + 20 | 0 | 0, (HEAP32[($11 + 708 | 0) >> 2] | 0) + 192 | 0 | 0, $11 + 104 | 0 | 0);
|
|
(wasm2js_i32$0 = $11, wasm2js_f32$0 = Math_fround($780 + Math_fround(btVector3__dot_28btVector3_20const__29_20const($783 | 0, $11 + 20 | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 52 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($11 + 16 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($11 + 88 | 0) >> 2]) + Math_fround(HEAPF32[($11 + 52 | 0) >> 2]));
|
|
HEAPF32[($11 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 8 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($11 + 432 | 0) >> 2]) - Math_fround(HEAPF32[($11 + 16 | 0) >> 2]));
|
|
label$35 : {
|
|
label$36 : {
|
|
if (!(Math_fround(HEAPF32[($11 + 428 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$36
|
|
}
|
|
HEAPF32[($11 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 8 | 0) >> 2] = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($11 + 428 | 0) >> 2])) * Math_fround(HEAPF32[($11 + 696 | 0) >> 2])) + Math_fround(HEAPF32[($11 + 8 | 0) >> 2]));
|
|
break label$35;
|
|
}
|
|
HEAPF32[($11 + 12 | 0) >> 2] = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($11 + 428 | 0) >> 2])) * Math_fround(HEAPF32[($11 + 688 | 0) >> 2])) * Math_fround(HEAPF32[($11 + 696 | 0) >> 2]));
|
|
}
|
|
HEAPF32[($11 + 4 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($11 + 12 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($11 + 744 | 0) >> 2] | 0) + 108 | 0) >> 2]));
|
|
HEAPF32[$11 >> 2] = Math_fround(Math_fround(HEAPF32[($11 + 8 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($11 + 744 | 0) >> 2] | 0) + 108 | 0) >> 2]));
|
|
label$37 : {
|
|
label$38 : {
|
|
label$39 : {
|
|
if (!(HEAP32[((HEAP32[($11 + 728 | 0) >> 2] | 0) + 52 | 0) >> 2] | 0)) {
|
|
break label$39
|
|
}
|
|
if (!(Math_fround(HEAPF32[($11 + 428 | 0) >> 2]) > Math_fround(HEAPF32[((HEAP32[($11 + 728 | 0) >> 2] | 0) + 56 | 0) >> 2]) & 1 | 0)) {
|
|
break label$38
|
|
}
|
|
}
|
|
HEAPF32[((HEAP32[($11 + 744 | 0) >> 2] | 0) + 112 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($11 + 4 | 0) >> 2]) + Math_fround(HEAPF32[$11 >> 2]));
|
|
HEAPF32[((HEAP32[($11 + 744 | 0) >> 2] | 0) + 128 | 0) >> 2] = Math_fround(0 | 0);
|
|
break label$37;
|
|
}
|
|
HEAPF32[((HEAP32[($11 + 744 | 0) >> 2] | 0) + 112 | 0) >> 2] = Math_fround(HEAPF32[$11 >> 2]);
|
|
HEAPF32[((HEAP32[($11 + 744 | 0) >> 2] | 0) + 128 | 0) >> 2] = Math_fround(HEAPF32[($11 + 4 | 0) >> 2]);
|
|
}
|
|
HEAPF32[((HEAP32[($11 + 744 | 0) >> 2] | 0) + 116 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($11 + 692 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($11 + 744 | 0) >> 2] | 0) + 108 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[($11 + 744 | 0) >> 2] | 0) + 120 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[((HEAP32[($11 + 744 | 0) >> 2] | 0) + 124 | 0) >> 2] = Math_fround(1.0e10);
|
|
__stack_pointer = $11 + 752 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__getVelocityInLocalPoint_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
btVector3__cross_28btVector3_20const__29_20const($5 + 8 | 0 | 0, $6 + 388 | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($0 | 0, $6 + 372 | 0 | 0, $5 + 8 | 0 | 0);
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__setFrictionConstraintImpulse_28btSolverConstraint__2c_20int_2c_20int_2c_20btManifoldPoint__2c_20btContactSolverInfo_20const__29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, $9 = 0, $44 = 0, $47 = 0, $79 = 0, $151 = 0, $154 = 0, $178 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$8 = __stack_pointer - 224 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 220 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 216 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 212 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 208 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 204 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 200 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 220 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($9 + 4 | 0 | 0, HEAP32[($8 + 212 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 196 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($9 + 4 | 0 | 0, HEAP32[($8 + 208 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 192 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($8 + 188 | 0) >> 2] = HEAP32[((HEAP32[($8 + 196 | 0) >> 2] | 0) + 240 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 184 | 0) >> 2] = HEAP32[((HEAP32[($8 + 192 | 0) >> 2] | 0) + 240 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___operator_5b_5d_28int_29($9 + 64 | 0 | 0, HEAP32[((HEAP32[($8 + 216 | 0) >> 2] | 0) + 140 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 180 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[((HEAP32[($8 + 200 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0) & 4 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[((HEAP32[($8 + 180 | 0) >> 2] | 0) + 100 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($8 + 204 | 0) >> 2] | 0) + 136 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($8 + 200 | 0) >> 2] | 0) + 68 | 0) >> 2]));
|
|
label$3 : {
|
|
if (!((HEAP32[($8 + 188 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$44 = HEAP32[($8 + 196 | 0) >> 2] | 0;
|
|
$47 = (HEAP32[($8 + 180 | 0) >> 2] | 0) + 16 | 0;
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btRigidBody__getInvMass_28_29_20const(HEAP32[($8 + 188 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 144 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($8 + 148 | 0 | 0, $47 | 0, $8 + 144 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($8 + 164 | 0 | 0, $8 + 148 | 0 | 0, btRigidBody__getLinearFactor_28_29_20const(HEAP32[($8 + 188 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btSolverBody__internalApplyImpulse_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($44 | 0, $8 + 164 | 0 | 0, (HEAP32[($8 + 180 | 0) >> 2] | 0) + 64 | 0 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($8 + 180 | 0) >> 2] | 0) + 100 | 0) >> 2])));
|
|
}
|
|
label$4 : {
|
|
if (!((HEAP32[($8 + 184 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$79 = HEAP32[($8 + 192 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__29($8 + 96 | 0 | 0, (HEAP32[($8 + 180 | 0) >> 2] | 0) + 48 | 0 | 0);
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btRigidBody__getInvMass_28_29_20const(HEAP32[($8 + 184 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 92 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($8 + 112 | 0 | 0, $8 + 96 | 0 | 0, $8 + 92 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($8 + 128 | 0 | 0, $8 + 112 | 0 | 0, btRigidBody__getLinearFactor_28_29_20const(HEAP32[($8 + 184 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__29($8 + 76 | 0 | 0, (HEAP32[($8 + 180 | 0) >> 2] | 0) + 80 | 0 | 0);
|
|
btSolverBody__internalApplyImpulse_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($79 | 0, $8 + 128 | 0 | 0, $8 + 76 | 0 | 0, Math_fround(Math_fround(-Math_fround(HEAPF32[((HEAP32[($8 + 180 | 0) >> 2] | 0) + 100 | 0) >> 2]))));
|
|
}
|
|
break label$1;
|
|
}
|
|
HEAPF32[((HEAP32[($8 + 180 | 0) >> 2] | 0) + 100 | 0) >> 2] = Math_fround(0 | 0);
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[((HEAP32[($8 + 200 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0) & 16 | 0)) {
|
|
break label$5
|
|
}
|
|
(wasm2js_i32$0 = $8, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___operator_5b_5d_28int_29($9 + 64 | 0 | 0, (HEAP32[((HEAP32[($8 + 216 | 0) >> 2] | 0) + 140 | 0) >> 2] | 0) + 1 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 72 | 0) >> 2] = wasm2js_i32$1;
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!((HEAP32[((HEAP32[($8 + 200 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0) & 4 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAPF32[((HEAP32[($8 + 72 | 0) >> 2] | 0) + 100 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($8 + 204 | 0) >> 2] | 0) + 140 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($8 + 200 | 0) >> 2] | 0) + 68 | 0) >> 2]));
|
|
label$8 : {
|
|
if (!((HEAP32[($8 + 188 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
$151 = HEAP32[($8 + 196 | 0) >> 2] | 0;
|
|
$154 = (HEAP32[($8 + 72 | 0) >> 2] | 0) + 16 | 0;
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btRigidBody__getInvMass_28_29_20const(HEAP32[($8 + 188 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 52 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($8 + 56 | 0 | 0, $154 | 0, $8 + 52 | 0 | 0);
|
|
btSolverBody__internalApplyImpulse_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($151 | 0, $8 + 56 | 0 | 0, (HEAP32[($8 + 72 | 0) >> 2] | 0) + 64 | 0 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($8 + 72 | 0) >> 2] | 0) + 100 | 0) >> 2])));
|
|
}
|
|
label$9 : {
|
|
if (!((HEAP32[($8 + 184 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
$178 = HEAP32[($8 + 192 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__29($8 + 20 | 0 | 0, (HEAP32[($8 + 72 | 0) >> 2] | 0) + 48 | 0 | 0);
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btRigidBody__getInvMass_28_29_20const(HEAP32[($8 + 184 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($8 + 36 | 0 | 0, $8 + 20 | 0 | 0, $8 + 16 | 0 | 0);
|
|
operator__28btVector3_20const__29($8 | 0, (HEAP32[($8 + 72 | 0) >> 2] | 0) + 80 | 0 | 0);
|
|
btSolverBody__internalApplyImpulse_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($178 | 0, $8 + 36 | 0 | 0, $8 | 0, Math_fround(Math_fround(-Math_fround(HEAPF32[((HEAP32[($8 + 72 | 0) >> 2] | 0) + 100 | 0) >> 2]))));
|
|
}
|
|
break label$6;
|
|
}
|
|
HEAPF32[((HEAP32[($8 + 72 | 0) >> 2] | 0) + 100 | 0) >> 2] = Math_fround(0 | 0);
|
|
}
|
|
}
|
|
__stack_pointer = $8 + 224 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverConstraint___operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btSolverConstraint___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($4 + 8 | 0) >> 2] | 0, 152) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__convertContact_28btPersistentManifold__2c_20btContactSolverInfo_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, i64toi32_i32$2 = 0, $227 = 0, $197 = 0, $104 = 0, $120 = 0, $198 = 0, $207 = Math_fround(0), $266 = Math_fround(0), $294 = Math_fround(0), $323 = 0, $325 = 0, $382 = Math_fround(0), $396 = 0, $398 = 0, $433 = Math_fround(0), $471 = Math_fround(0), $504 = Math_fround(0), $513 = 0, $825 = 0, $829 = 0, $860 = 0, $864 = 0, $181 = 0, $1284 = 0, $1297 = 0, $1443 = 0, $1453 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 272 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 268 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 264 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 260 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 268 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 256 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 252 | 0) >> 2] = 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btPersistentManifold__getBody0_28_29_20const(HEAP32[($5 + 264 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 256 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btPersistentManifold__getBody1_28_29_20const(HEAP32[($5 + 264 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 252 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btSequentialImpulseConstraintSolver__getOrInitSolverBody_28btCollisionObject__2c_20float_29($6 | 0, HEAP32[($5 + 256 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 260 | 0) >> 2] | 0) + 12 | 0) >> 2]))) | 0), HEAP32[(wasm2js_i32$0 + 248 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btSequentialImpulseConstraintSolver__getOrInitSolverBody_28btCollisionObject__2c_20float_29($6 | 0, HEAP32[($5 + 252 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 260 | 0) >> 2] | 0) + 12 | 0) >> 2]))) | 0), HEAP32[(wasm2js_i32$0 + 244 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($6 + 4 | 0 | 0, HEAP32[($5 + 248 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 240 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($6 + 4 | 0 | 0, HEAP32[($5 + 244 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 236 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((HEAP32[($5 + 240 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
if (!((btVector3__fuzzyZero_28_29_20const((HEAP32[($5 + 240 | 0) >> 2] | 0) + 128 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if (!((HEAP32[($5 + 236 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
if (!((btVector3__fuzzyZero_28_29_20const((HEAP32[($5 + 236 | 0) >> 2] | 0) + 128 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
}
|
|
break label$1;
|
|
}
|
|
HEAP32[($5 + 232 | 0) >> 2] = 1;
|
|
HEAP32[($5 + 228 | 0) >> 2] = 0;
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 228 | 0) >> 2] | 0 | 0) < (btPersistentManifold__getNumContacts_28_29_20const(HEAP32[($5 + 264 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btPersistentManifold__getContactPoint_28int_29(HEAP32[($5 + 264 | 0) >> 2] | 0 | 0, HEAP32[($5 + 228 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 224 | 0) >> 2] = wasm2js_i32$1;
|
|
label$5 : {
|
|
if (!(Math_fround(btManifoldPoint__getDistance_28_29_20const(HEAP32[($5 + 224 | 0) >> 2] | 0 | 0)) <= Math_fround(btPersistentManifold__getContactProcessingThreshold_28_29_20const(HEAP32[($5 + 264 | 0) >> 2] | 0 | 0)) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btVector3__btVector3_28_29($5 + 208 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 192 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___size_28_29_20const($6 + 24 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 184 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___expandNonInitializing_28_29($6 + 24 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 180 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[((HEAP32[($5 + 180 | 0) >> 2] | 0) + 144 | 0) >> 2] = HEAP32[($5 + 248 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 180 | 0) >> 2] | 0) + 148 | 0) >> 2] = HEAP32[($5 + 244 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 180 | 0) >> 2] | 0) + 132 | 0) >> 2] = HEAP32[($5 + 224 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btManifoldPoint__getPositionWorldOnA_28_29_20const(HEAP32[($5 + 224 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 176 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btManifoldPoint__getPositionWorldOnB_28_29_20const(HEAP32[($5 + 224 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 172 | 0) >> 2] = wasm2js_i32$1;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 156 | 0 | 0, HEAP32[($5 + 176 | 0) >> 2] | 0 | 0, btTransform__getOrigin_28_29(btCollisionObject__getWorldTransform_28_29(HEAP32[($5 + 256 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
$104 = 8;
|
|
i64toi32_i32$2 = ($5 + 156 | 0) + $104 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$825 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 208 | 0) + $104 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $825;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[($5 + 156 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 160 | 0) >> 2] | 0;
|
|
$829 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 208 | 0) >> 2] = $829;
|
|
HEAP32[($5 + 212 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 140 | 0 | 0, HEAP32[($5 + 172 | 0) >> 2] | 0 | 0, btTransform__getOrigin_28_29(btCollisionObject__getWorldTransform_28_29(HEAP32[($5 + 252 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
$120 = 8;
|
|
i64toi32_i32$2 = ($5 + 140 | 0) + $120 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$860 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 192 | 0) + $120 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $860;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[($5 + 140 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 144 | 0) >> 2] | 0;
|
|
$864 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 192 | 0) >> 2] = $864;
|
|
HEAP32[($5 + 196 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__btVector3_28_29($5 + 124 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 108 | 0 | 0) | 0;
|
|
btSolverBody__getVelocityInLocalPointNoDelta_28btVector3_20const__2c_20btVector3__29_20const(HEAP32[($5 + 240 | 0) >> 2] | 0 | 0, $5 + 208 | 0 | 0, $5 + 124 | 0 | 0);
|
|
btSolverBody__getVelocityInLocalPointNoDelta_28btVector3_20const__2c_20btVector3__29_20const(HEAP32[($5 + 236 | 0) >> 2] | 0 | 0, $5 + 192 | 0 | 0, $5 + 108 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 92 | 0 | 0, $5 + 124 | 0 | 0, $5 + 108 | 0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const((HEAP32[($5 + 224 | 0) >> 2] | 0) + 64 | 0 | 0, $5 + 92 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 88 | 0) >> 2] = wasm2js_f32$0;
|
|
btSequentialImpulseConstraintSolver__setupContactConstraint_28btSolverConstraint__2c_20int_2c_20int_2c_20btManifoldPoint__2c_20btContactSolverInfo_20const__2c_20float__2c_20btVector3_20const__2c_20btVector3_20const__29($6 | 0, HEAP32[($5 + 180 | 0) >> 2] | 0 | 0, HEAP32[($5 + 248 | 0) >> 2] | 0 | 0, HEAP32[($5 + 244 | 0) >> 2] | 0 | 0, HEAP32[($5 + 224 | 0) >> 2] | 0 | 0, HEAP32[($5 + 260 | 0) >> 2] | 0 | 0, $5 + 188 | 0 | 0, $5 + 208 | 0 | 0, $5 + 192 | 0 | 0);
|
|
$181 = btAlignedObjectArray_btSolverConstraint___size_28_29_20const($6 + 64 | 0 | 0) | 0;
|
|
HEAP32[((HEAP32[($5 + 180 | 0) >> 2] | 0) + 140 | 0) >> 2] = $181;
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[((HEAP32[($5 + 224 | 0) >> 2] | 0) + 88 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
if (!((HEAP32[($5 + 232 | 0) >> 2] | 0 | 0) > (0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$197 = HEAP32[($5 + 224 | 0) >> 2] | 0;
|
|
$198 = 64;
|
|
$207 = Math_fround(0.0);
|
|
btSequentialImpulseConstraintSolver__addTorsionalFrictionConstraint_28btVector3_20const__2c_20int_2c_20int_2c_20int_2c_20btManifoldPoint__2c_20float_2c_20btVector3_20const__2c_20btVector3_20const__2c_20btCollisionObject__2c_20btCollisionObject__2c_20float_2c_20float_2c_20float_29($6 | 0, $197 + $198 | 0 | 0, HEAP32[($5 + 248 | 0) >> 2] | 0 | 0, HEAP32[($5 + 244 | 0) >> 2] | 0 | 0, HEAP32[($5 + 184 | 0) >> 2] | 0 | 0, $197 | 0, Math_fround(Math_fround(HEAPF32[($197 + 92 | 0) >> 2])), $5 + 208 | 0 | 0, $5 + 192 | 0 | 0, HEAP32[($5 + 256 | 0) >> 2] | 0 | 0, HEAP32[($5 + 252 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 188 | 0) >> 2])), Math_fround($207), Math_fround($207)) | 0;
|
|
btVector3__btVector3_28_29($5 + 72 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 56 | 0 | 0) | 0;
|
|
void_20btPlaneSpace1_btVector3__28btVector3_20const__2c_20btVector3__2c_20btVector3__29((HEAP32[($5 + 224 | 0) >> 2] | 0) + $198 | 0 | 0, $5 + 72 | 0 | 0, $5 + 56 | 0 | 0);
|
|
btVector3__normalize_28_29($5 + 72 | 0 | 0) | 0;
|
|
btVector3__normalize_28_29($5 + 56 | 0 | 0) | 0;
|
|
$227 = 2;
|
|
btSequentialImpulseConstraintSolver__applyAnisotropicFriction_28btCollisionObject__2c_20btVector3__2c_20int_29(HEAP32[($5 + 256 | 0) >> 2] | 0 | 0, $5 + 72 | 0 | 0, $227 | 0);
|
|
btSequentialImpulseConstraintSolver__applyAnisotropicFriction_28btCollisionObject__2c_20btVector3__2c_20int_29(HEAP32[($5 + 252 | 0) >> 2] | 0 | 0, $5 + 72 | 0 | 0, $227 | 0);
|
|
btSequentialImpulseConstraintSolver__applyAnisotropicFriction_28btCollisionObject__2c_20btVector3__2c_20int_29(HEAP32[($5 + 256 | 0) >> 2] | 0 | 0, $5 + 56 | 0 | 0, $227 | 0);
|
|
btSequentialImpulseConstraintSolver__applyAnisotropicFriction_28btCollisionObject__2c_20btVector3__2c_20int_29(HEAP32[($5 + 252 | 0) >> 2] | 0 | 0, $5 + 56 | 0 | 0, $227 | 0);
|
|
label$7 : {
|
|
if (!(+Math_fround(btVector3__length_28_29_20const($5 + 72 | 0 | 0)) > .001 & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
$266 = Math_fround(0 | 0);
|
|
btSequentialImpulseConstraintSolver__addTorsionalFrictionConstraint_28btVector3_20const__2c_20int_2c_20int_2c_20int_2c_20btManifoldPoint__2c_20float_2c_20btVector3_20const__2c_20btVector3_20const__2c_20btCollisionObject__2c_20btCollisionObject__2c_20float_2c_20float_2c_20float_29($6 | 0, $5 + 72 | 0 | 0, HEAP32[($5 + 248 | 0) >> 2] | 0 | 0, HEAP32[($5 + 244 | 0) >> 2] | 0 | 0, HEAP32[($5 + 184 | 0) >> 2] | 0 | 0, HEAP32[($5 + 224 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 224 | 0) >> 2] | 0) + 88 | 0) >> 2])), $5 + 208 | 0 | 0, $5 + 192 | 0 | 0, HEAP32[($5 + 256 | 0) >> 2] | 0 | 0, HEAP32[($5 + 252 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 188 | 0) >> 2])), Math_fround($266), Math_fround($266)) | 0;
|
|
}
|
|
label$8 : {
|
|
if (!(+Math_fround(btVector3__length_28_29_20const($5 + 56 | 0 | 0)) > .001 & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
$294 = Math_fround(0 | 0);
|
|
btSequentialImpulseConstraintSolver__addTorsionalFrictionConstraint_28btVector3_20const__2c_20int_2c_20int_2c_20int_2c_20btManifoldPoint__2c_20float_2c_20btVector3_20const__2c_20btVector3_20const__2c_20btCollisionObject__2c_20btCollisionObject__2c_20float_2c_20float_2c_20float_29($6 | 0, $5 + 56 | 0 | 0, HEAP32[($5 + 248 | 0) >> 2] | 0 | 0, HEAP32[($5 + 244 | 0) >> 2] | 0 | 0, HEAP32[($5 + 184 | 0) >> 2] | 0 | 0, HEAP32[($5 + 224 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 224 | 0) >> 2] | 0) + 88 | 0) >> 2])), $5 + 208 | 0 | 0, $5 + 192 | 0 | 0, HEAP32[($5 + 256 | 0) >> 2] | 0 | 0, HEAP32[($5 + 252 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 188 | 0) >> 2])), Math_fround($294), Math_fround($294)) | 0;
|
|
}
|
|
}
|
|
label$9 : {
|
|
label$10 : {
|
|
label$11 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 260 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0) & 32 | 0)) {
|
|
break label$11
|
|
}
|
|
if ((HEAP32[((HEAP32[($5 + 224 | 0) >> 2] | 0) + 128 | 0) >> 2] | 0) & 1 | 0) {
|
|
break label$10
|
|
}
|
|
}
|
|
operator__28btVector3_20const__2c_20float_20const__29($5 + 24 | 0 | 0, (HEAP32[($5 + 224 | 0) >> 2] | 0) + 64 | 0 | 0, $5 + 88 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 40 | 0 | 0, $5 + 92 | 0 | 0, $5 + 24 | 0 | 0);
|
|
$323 = (HEAP32[($5 + 224 | 0) >> 2] | 0) + 168 | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 40 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 44 | 0) >> 2] | 0;
|
|
$1284 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $323;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1284;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$325 = 8;
|
|
i64toi32_i32$2 = ($5 + 40 | 0) + $325 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1297 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $323 + $325 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1297;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const((HEAP32[($5 + 224 | 0) >> 2] | 0) + 168 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
label$12 : {
|
|
label$13 : {
|
|
if ((HEAP32[((HEAP32[($5 + 260 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0) & 64 | 0) {
|
|
break label$13
|
|
}
|
|
if (!(Math_fround(HEAPF32[($5 + 20 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(1.0) / Math_fround(btSqrt_28float_29(Math_fround(Math_fround(HEAPF32[($5 + 20 | 0) >> 2])))))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__operator___28float_20const__29_1((HEAP32[($5 + 224 | 0) >> 2] | 0) + 168 | 0 | 0, $5 + 16 | 0 | 0) | 0;
|
|
btSequentialImpulseConstraintSolver__applyAnisotropicFriction_28btCollisionObject__2c_20btVector3__2c_20int_29(HEAP32[($5 + 256 | 0) >> 2] | 0 | 0, (HEAP32[($5 + 224 | 0) >> 2] | 0) + 168 | 0 | 0, 1 | 0);
|
|
btSequentialImpulseConstraintSolver__applyAnisotropicFriction_28btCollisionObject__2c_20btVector3__2c_20int_29(HEAP32[($5 + 252 | 0) >> 2] | 0 | 0, (HEAP32[($5 + 224 | 0) >> 2] | 0) + 168 | 0 | 0, 1 | 0);
|
|
$382 = Math_fround(0 | 0);
|
|
btSequentialImpulseConstraintSolver__addFrictionConstraint_28btVector3_20const__2c_20int_2c_20int_2c_20int_2c_20btManifoldPoint__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btCollisionObject__2c_20btCollisionObject__2c_20float_2c_20btContactSolverInfo_20const__2c_20float_2c_20float_29($6 | 0, (HEAP32[($5 + 224 | 0) >> 2] | 0) + 168 | 0 | 0, HEAP32[($5 + 248 | 0) >> 2] | 0 | 0, HEAP32[($5 + 244 | 0) >> 2] | 0 | 0, HEAP32[($5 + 184 | 0) >> 2] | 0 | 0, HEAP32[($5 + 224 | 0) >> 2] | 0 | 0, $5 + 208 | 0 | 0, $5 + 192 | 0 | 0, HEAP32[($5 + 256 | 0) >> 2] | 0 | 0, HEAP32[($5 + 252 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 188 | 0) >> 2])), HEAP32[($5 + 260 | 0) >> 2] | 0 | 0, Math_fround($382), Math_fround($382)) | 0;
|
|
label$14 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 260 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0) & 16 | 0)) {
|
|
break label$14
|
|
}
|
|
btVector3__cross_28btVector3_20const__29_20const($5 | 0, (HEAP32[($5 + 224 | 0) >> 2] | 0) + 168 | 0 | 0, (HEAP32[($5 + 224 | 0) >> 2] | 0) + 64 | 0 | 0);
|
|
$396 = (HEAP32[($5 + 224 | 0) >> 2] | 0) + 184 | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[$5 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
$1443 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $396;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1443;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$398 = 8;
|
|
i64toi32_i32$2 = $5 + $398 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1453 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $396 + $398 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1453;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__normalize_28_29((HEAP32[($5 + 224 | 0) >> 2] | 0) + 184 | 0 | 0) | 0;
|
|
btSequentialImpulseConstraintSolver__applyAnisotropicFriction_28btCollisionObject__2c_20btVector3__2c_20int_29(HEAP32[($5 + 256 | 0) >> 2] | 0 | 0, (HEAP32[($5 + 224 | 0) >> 2] | 0) + 184 | 0 | 0, 1 | 0);
|
|
btSequentialImpulseConstraintSolver__applyAnisotropicFriction_28btCollisionObject__2c_20btVector3__2c_20int_29(HEAP32[($5 + 252 | 0) >> 2] | 0 | 0, (HEAP32[($5 + 224 | 0) >> 2] | 0) + 184 | 0 | 0, 1 | 0);
|
|
$433 = Math_fround(0 | 0);
|
|
btSequentialImpulseConstraintSolver__addFrictionConstraint_28btVector3_20const__2c_20int_2c_20int_2c_20int_2c_20btManifoldPoint__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btCollisionObject__2c_20btCollisionObject__2c_20float_2c_20btContactSolverInfo_20const__2c_20float_2c_20float_29($6 | 0, (HEAP32[($5 + 224 | 0) >> 2] | 0) + 184 | 0 | 0, HEAP32[($5 + 248 | 0) >> 2] | 0 | 0, HEAP32[($5 + 244 | 0) >> 2] | 0 | 0, HEAP32[($5 + 184 | 0) >> 2] | 0 | 0, HEAP32[($5 + 224 | 0) >> 2] | 0 | 0, $5 + 208 | 0 | 0, $5 + 192 | 0 | 0, HEAP32[($5 + 256 | 0) >> 2] | 0 | 0, HEAP32[($5 + 252 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 188 | 0) >> 2])), HEAP32[($5 + 260 | 0) >> 2] | 0 | 0, Math_fround($433), Math_fround($433)) | 0;
|
|
}
|
|
break label$12;
|
|
}
|
|
void_20btPlaneSpace1_btVector3__28btVector3_20const__2c_20btVector3__2c_20btVector3__29((HEAP32[($5 + 224 | 0) >> 2] | 0) + 64 | 0 | 0, (HEAP32[($5 + 224 | 0) >> 2] | 0) + 168 | 0 | 0, (HEAP32[($5 + 224 | 0) >> 2] | 0) + 184 | 0 | 0);
|
|
btSequentialImpulseConstraintSolver__applyAnisotropicFriction_28btCollisionObject__2c_20btVector3__2c_20int_29(HEAP32[($5 + 256 | 0) >> 2] | 0 | 0, (HEAP32[($5 + 224 | 0) >> 2] | 0) + 168 | 0 | 0, 1 | 0);
|
|
btSequentialImpulseConstraintSolver__applyAnisotropicFriction_28btCollisionObject__2c_20btVector3__2c_20int_29(HEAP32[($5 + 252 | 0) >> 2] | 0 | 0, (HEAP32[($5 + 224 | 0) >> 2] | 0) + 168 | 0 | 0, 1 | 0);
|
|
$471 = Math_fround(0 | 0);
|
|
btSequentialImpulseConstraintSolver__addFrictionConstraint_28btVector3_20const__2c_20int_2c_20int_2c_20int_2c_20btManifoldPoint__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btCollisionObject__2c_20btCollisionObject__2c_20float_2c_20btContactSolverInfo_20const__2c_20float_2c_20float_29($6 | 0, (HEAP32[($5 + 224 | 0) >> 2] | 0) + 168 | 0 | 0, HEAP32[($5 + 248 | 0) >> 2] | 0 | 0, HEAP32[($5 + 244 | 0) >> 2] | 0 | 0, HEAP32[($5 + 184 | 0) >> 2] | 0 | 0, HEAP32[($5 + 224 | 0) >> 2] | 0 | 0, $5 + 208 | 0 | 0, $5 + 192 | 0 | 0, HEAP32[($5 + 256 | 0) >> 2] | 0 | 0, HEAP32[($5 + 252 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 188 | 0) >> 2])), HEAP32[($5 + 260 | 0) >> 2] | 0 | 0, Math_fround($471), Math_fround($471)) | 0;
|
|
label$15 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 260 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0) & 16 | 0)) {
|
|
break label$15
|
|
}
|
|
btSequentialImpulseConstraintSolver__applyAnisotropicFriction_28btCollisionObject__2c_20btVector3__2c_20int_29(HEAP32[($5 + 256 | 0) >> 2] | 0 | 0, (HEAP32[($5 + 224 | 0) >> 2] | 0) + 184 | 0 | 0, 1 | 0);
|
|
btSequentialImpulseConstraintSolver__applyAnisotropicFriction_28btCollisionObject__2c_20btVector3__2c_20int_29(HEAP32[($5 + 252 | 0) >> 2] | 0 | 0, (HEAP32[($5 + 224 | 0) >> 2] | 0) + 184 | 0 | 0, 1 | 0);
|
|
$504 = Math_fround(0 | 0);
|
|
btSequentialImpulseConstraintSolver__addFrictionConstraint_28btVector3_20const__2c_20int_2c_20int_2c_20int_2c_20btManifoldPoint__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btCollisionObject__2c_20btCollisionObject__2c_20float_2c_20btContactSolverInfo_20const__2c_20float_2c_20float_29($6 | 0, (HEAP32[($5 + 224 | 0) >> 2] | 0) + 184 | 0 | 0, HEAP32[($5 + 248 | 0) >> 2] | 0 | 0, HEAP32[($5 + 244 | 0) >> 2] | 0 | 0, HEAP32[($5 + 184 | 0) >> 2] | 0 | 0, HEAP32[($5 + 224 | 0) >> 2] | 0 | 0, $5 + 208 | 0 | 0, $5 + 192 | 0 | 0, HEAP32[($5 + 256 | 0) >> 2] | 0 | 0, HEAP32[($5 + 252 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 188 | 0) >> 2])), HEAP32[($5 + 260 | 0) >> 2] | 0 | 0, Math_fround($504), Math_fround($504)) | 0;
|
|
}
|
|
label$16 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 260 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0) & 16 | 0)) {
|
|
break label$16
|
|
}
|
|
if (!((HEAP32[((HEAP32[($5 + 260 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0) & 64 | 0)) {
|
|
break label$16
|
|
}
|
|
$513 = HEAP32[($5 + 224 | 0) >> 2] | 0;
|
|
HEAP32[($513 + 128 | 0) >> 2] = HEAP32[($513 + 128 | 0) >> 2] | 0 | 1 | 0;
|
|
}
|
|
}
|
|
break label$9;
|
|
}
|
|
btSequentialImpulseConstraintSolver__addFrictionConstraint_28btVector3_20const__2c_20int_2c_20int_2c_20int_2c_20btManifoldPoint__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btCollisionObject__2c_20btCollisionObject__2c_20float_2c_20btContactSolverInfo_20const__2c_20float_2c_20float_29($6 | 0, (HEAP32[($5 + 224 | 0) >> 2] | 0) + 168 | 0 | 0, HEAP32[($5 + 248 | 0) >> 2] | 0 | 0, HEAP32[($5 + 244 | 0) >> 2] | 0 | 0, HEAP32[($5 + 184 | 0) >> 2] | 0 | 0, HEAP32[($5 + 224 | 0) >> 2] | 0 | 0, $5 + 208 | 0 | 0, $5 + 192 | 0 | 0, HEAP32[($5 + 256 | 0) >> 2] | 0 | 0, HEAP32[($5 + 252 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 188 | 0) >> 2])), HEAP32[($5 + 260 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 224 | 0) >> 2] | 0) + 144 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 224 | 0) >> 2] | 0) + 160 | 0) >> 2]))) | 0;
|
|
label$17 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 260 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0) & 16 | 0)) {
|
|
break label$17
|
|
}
|
|
btSequentialImpulseConstraintSolver__addFrictionConstraint_28btVector3_20const__2c_20int_2c_20int_2c_20int_2c_20btManifoldPoint__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btCollisionObject__2c_20btCollisionObject__2c_20float_2c_20btContactSolverInfo_20const__2c_20float_2c_20float_29($6 | 0, (HEAP32[($5 + 224 | 0) >> 2] | 0) + 184 | 0 | 0, HEAP32[($5 + 248 | 0) >> 2] | 0 | 0, HEAP32[($5 + 244 | 0) >> 2] | 0 | 0, HEAP32[($5 + 184 | 0) >> 2] | 0 | 0, HEAP32[($5 + 224 | 0) >> 2] | 0 | 0, $5 + 208 | 0 | 0, $5 + 192 | 0 | 0, HEAP32[($5 + 256 | 0) >> 2] | 0 | 0, HEAP32[($5 + 252 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 188 | 0) >> 2])), HEAP32[($5 + 260 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 224 | 0) >> 2] | 0) + 148 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[((HEAP32[($5 + 224 | 0) >> 2] | 0) + 160 | 0) >> 2]))) | 0;
|
|
}
|
|
}
|
|
btSequentialImpulseConstraintSolver__setFrictionConstraintImpulse_28btSolverConstraint__2c_20int_2c_20int_2c_20btManifoldPoint__2c_20btContactSolverInfo_20const__29($6 | 0, HEAP32[($5 + 180 | 0) >> 2] | 0 | 0, HEAP32[($5 + 248 | 0) >> 2] | 0 | 0, HEAP32[($5 + 244 | 0) >> 2] | 0 | 0, HEAP32[($5 + 224 | 0) >> 2] | 0 | 0, HEAP32[($5 + 260 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 228 | 0) >> 2] = (HEAP32[($5 + 228 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
__stack_pointer = $5 + 272 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPersistentManifold__getContactProcessingThreshold_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 852 | 0) >> 2]));
|
|
}
|
|
|
|
function btSolverBody__getVelocityInLocalPointNoDelta_28btVector3_20const__2c_20btVector3__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, i64toi32_i32$2 = 0, $44 = 0, $46 = 0, $154 = 0, $167 = 0, $52 = 0;
|
|
$5 = __stack_pointer - 96 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 92 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 88 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 84 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 92 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($6 + 240 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($5 + 52 | 0 | 0, $6 + 176 | 0 | 0, $6 + 208 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($5 + 20 | 0 | 0, $6 + 192 | 0 | 0, $6 + 224 | 0 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($5 + 36 | 0 | 0, $5 + 20 | 0 | 0, HEAP32[($5 + 88 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($5 + 68 | 0 | 0, $5 + 52 | 0 | 0, $5 + 36 | 0 | 0);
|
|
$44 = HEAP32[($5 + 84 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 68 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 72 | 0) >> 2] | 0;
|
|
$154 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $44;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $154;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$46 = 8;
|
|
i64toi32_i32$2 = ($5 + 68 | 0) + $46 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$167 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $44 + $46 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $167;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$1;
|
|
}
|
|
$52 = HEAP32[($5 + 84 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($52 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0, $5 + 8 | 0 | 0);
|
|
}
|
|
__stack_pointer = $5 + 96 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__convertContacts_28btPersistentManifold___2c_20int_2c_20btContactSolverInfo_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($6 + 8 | 0) >> 2] = HEAP32[((HEAP32[($6 + 24 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
btSequentialImpulseConstraintSolver__convertContact_28btPersistentManifold__2c_20btContactSolverInfo_20const__29($7 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__solveGroupCacheFriendlySetup_28btCollisionObject___2c_20int_2c_20btPersistentManifold___2c_20int_2c_20btTypedConstraint___2c_20int_2c_20btContactSolverInfo_20const__2c_20btIDebugDraw__29($0, $1, $2, $3, $4, $5, $6, $7, $8) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
var $11 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $12 = 0, $152 = 0, $194 = 0, $219 = 0, $251 = 0, $323 = 0, $407 = 0, $676 = 0, $759 = 0, $761 = 0, $788 = 0, $790 = 0, $884 = Math_fround(0), $899 = 0, $900 = 0, $935 = 0, $936 = 0, $971 = 0, $972 = 0, $1007 = 0, $1008 = 0, $1539 = 0, $1543 = 0, $1624 = 0, $1628 = 0, $1678 = 0, $1682 = 0, $483 = 0, $500 = 0, $517 = 0, $534 = 0, $551 = 0, $568 = 0, $585 = 0, $602 = 0, $714 = Math_fround(0), $736 = Math_fround(0), $2805 = 0, $2818 = 0, $2866 = 0, $2879 = 0, $798 = 0, $815 = 0, $843 = Math_fround(0), $852 = Math_fround(0), $861 = Math_fround(0), $3099 = 0, $3103 = 0, $3168 = 0, $3172 = 0, $3237 = 0, $3241 = 0, $3306 = 0, $3310 = 0, $1035 = 0, $1047 = Math_fround(0), $1048 = 0, $1064 = 0, $1076 = Math_fround(0), $1079 = 0, $1128 = 0, $1174 = 0, $1190 = 0, $1206 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$11 = __stack_pointer - 1040 | 0;
|
|
__stack_pointer = $11;
|
|
HEAP32[($11 + 1036 | 0) >> 2] = $0;
|
|
HEAP32[($11 + 1032 | 0) >> 2] = $1;
|
|
HEAP32[($11 + 1028 | 0) >> 2] = $2;
|
|
HEAP32[($11 + 1024 | 0) >> 2] = $3;
|
|
HEAP32[($11 + 1020 | 0) >> 2] = $4;
|
|
HEAP32[($11 + 1016 | 0) >> 2] = $5;
|
|
HEAP32[($11 + 1012 | 0) >> 2] = $6;
|
|
HEAP32[($11 + 1008 | 0) >> 2] = $7;
|
|
HEAP32[($11 + 1004 | 0) >> 2] = $8;
|
|
$12 = HEAP32[($11 + 1036 | 0) >> 2] | 0;
|
|
HEAP32[($12 + 188 | 0) >> 2] = -1;
|
|
CProfileSample__CProfileSample_28char_20const__29($11 + 1003 | 0 | 0, 71285 | 0) | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[((HEAP32[($11 + 1008 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0 | 0) != (HEAP32[($12 + 224 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP8[($11 + 1002 | 0) >> 0] = ((((HEAP32[((HEAP32[($11 + 1008 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0) & 256 | 0 | 0) != (0 | 0) ^ -1 | 0) ^ -1 | 0) & 1 | 0;
|
|
btSequentialImpulseConstraintSolver__setupSolverFunctions_28bool_29($12 | 0, (HEAPU8[($11 + 1002 | 0) >> 0] | 0) & 1 | 0 | 0);
|
|
HEAP32[($12 + 224 | 0) >> 2] = HEAP32[((HEAP32[($11 + 1008 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($12 + 184 | 0) >> 2] = 0;
|
|
HEAP32[($11 + 996 | 0) >> 2] = 0;
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($11 + 996 | 0) >> 2] | 0 | 0) < (HEAP32[($11 + 1028 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btCollisionObject__setCompanionId_28int_29(HEAP32[((HEAP32[($11 + 1032 | 0) >> 2] | 0) + ((HEAP32[($11 + 996 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0, -1 | 0);
|
|
HEAP32[($11 + 996 | 0) >> 2] = (HEAP32[($11 + 996 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
btAlignedObjectArray_btSolverBody___reserve_28int_29($12 + 4 | 0 | 0, (HEAP32[($11 + 1028 | 0) >> 2] | 0) + 1 | 0 | 0);
|
|
__memset($11 + 752 | 0 | 0, 0 | 0, 244 | 0) | 0;
|
|
btSolverBody__btSolverBody_28_29($11 + 752 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btSolverBody___resize_28int_2c_20btSolverBody_20const__29($12 + 4 | 0 | 0, 0 | 0, $11 + 752 | 0 | 0);
|
|
HEAP32[($11 + 748 | 0) >> 2] = 0;
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((HEAP32[($11 + 748 | 0) >> 2] | 0 | 0) < (HEAP32[($11 + 1028 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
(wasm2js_i32$0 = $11, wasm2js_i32$1 = btSequentialImpulseConstraintSolver__getOrInitSolverBody_28btCollisionObject__2c_20float_29($12 | 0, HEAP32[((HEAP32[($11 + 1032 | 0) >> 2] | 0) + ((HEAP32[($11 + 748 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($11 + 1008 | 0) >> 2] | 0) + 12 | 0) >> 2]))) | 0), HEAP32[(wasm2js_i32$0 + 744 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $11, wasm2js_i32$1 = btRigidBody__upcast_28btCollisionObject__29(HEAP32[((HEAP32[($11 + 1032 | 0) >> 2] | 0) + ((HEAP32[($11 + 748 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 740 | 0) >> 2] = wasm2js_i32$1;
|
|
label$6 : {
|
|
if (!((HEAP32[($11 + 740 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
if (!(Math_fround(btRigidBody__getInvMass_28_29_20const(HEAP32[($11 + 740 | 0) >> 2] | 0 | 0)) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
(wasm2js_i32$0 = $11, wasm2js_i32$1 = btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($12 + 4 | 0 | 0, HEAP32[($11 + 744 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 736 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAPF32[($11 + 716 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 712 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 708 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($11 + 720 | 0 | 0, $11 + 716 | 0 | 0, $11 + 712 | 0 | 0, $11 + 708 | 0 | 0) | 0;
|
|
label$7 : {
|
|
if (!((btRigidBody__getFlags_28_29_20const(HEAP32[($11 + 740 | 0) >> 2] | 0 | 0) | 0) & 2 | 0)) {
|
|
break label$7
|
|
}
|
|
btRigidBody__computeGyroscopicForceExplicit_28float_29_20const($11 + 692 | 0 | 0, HEAP32[($11 + 740 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($11 + 1008 | 0) >> 2] | 0) + 84 | 0) >> 2])));
|
|
$152 = 8;
|
|
i64toi32_i32$2 = ($11 + 692 | 0) + $152 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1539 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($11 + 720 | 0) + $152 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1539;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $11;
|
|
i64toi32_i32$1 = HEAP32[($11 + 692 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($11 + 696 | 0) >> 2] | 0;
|
|
$1543 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11;
|
|
HEAP32[($11 + 720 | 0) >> 2] = $1543;
|
|
HEAP32[($11 + 724 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btMatrix3x3_20const__29($11 + 660 | 0 | 0, $11 + 720 | 0 | 0, btRigidBody__getInvInertiaTensorWorld_28_29_20const(HEAP32[($11 + 740 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($11 + 676 | 0 | 0, $11 + 660 | 0 | 0, (HEAP32[($11 + 1008 | 0) >> 2] | 0) + 12 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29((HEAP32[($11 + 736 | 0) >> 2] | 0) + 224 | 0 | 0, $11 + 676 | 0 | 0) | 0;
|
|
}
|
|
label$8 : {
|
|
if (!((btRigidBody__getFlags_28_29_20const(HEAP32[($11 + 740 | 0) >> 2] | 0 | 0) | 0) & 4 | 0)) {
|
|
break label$8
|
|
}
|
|
btRigidBody__computeGyroscopicImpulseImplicit_World_28float_29_20const($11 + 644 | 0 | 0, HEAP32[($11 + 740 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($11 + 1008 | 0) >> 2] | 0) + 12 | 0) >> 2])));
|
|
$194 = 8;
|
|
i64toi32_i32$2 = ($11 + 644 | 0) + $194 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1624 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($11 + 720 | 0) + $194 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1624;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $11;
|
|
i64toi32_i32$1 = HEAP32[($11 + 644 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($11 + 648 | 0) >> 2] | 0;
|
|
$1628 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11;
|
|
HEAP32[($11 + 720 | 0) >> 2] = $1628;
|
|
HEAP32[($11 + 724 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__operator___28btVector3_20const__29_1((HEAP32[($11 + 736 | 0) >> 2] | 0) + 224 | 0 | 0, $11 + 720 | 0 | 0) | 0;
|
|
}
|
|
label$9 : {
|
|
if (!((btRigidBody__getFlags_28_29_20const(HEAP32[($11 + 740 | 0) >> 2] | 0 | 0) | 0) & 8 | 0)) {
|
|
break label$9
|
|
}
|
|
btRigidBody__computeGyroscopicImpulseImplicit_Body_28float_29_20const($11 + 628 | 0 | 0, HEAP32[($11 + 740 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($11 + 1008 | 0) >> 2] | 0) + 12 | 0) >> 2])));
|
|
$219 = 8;
|
|
i64toi32_i32$2 = ($11 + 628 | 0) + $219 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1678 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($11 + 720 | 0) + $219 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1678;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $11;
|
|
i64toi32_i32$1 = HEAP32[($11 + 628 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($11 + 632 | 0) >> 2] | 0;
|
|
$1682 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11;
|
|
HEAP32[($11 + 720 | 0) >> 2] = $1682;
|
|
HEAP32[($11 + 724 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__operator___28btVector3_20const__29_1((HEAP32[($11 + 736 | 0) >> 2] | 0) + 224 | 0 | 0, $11 + 720 | 0 | 0) | 0;
|
|
}
|
|
}
|
|
HEAP32[($11 + 748 | 0) >> 2] = (HEAP32[($11 + 748 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
HEAP32[($11 + 624 | 0) >> 2] = 0;
|
|
label$10 : {
|
|
label$11 : while (1) {
|
|
if (!((HEAP32[($11 + 624 | 0) >> 2] | 0 | 0) < (HEAP32[($11 + 1012 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
HEAP32[($11 + 620 | 0) >> 2] = HEAP32[((HEAP32[($11 + 1016 | 0) >> 2] | 0) + ((HEAP32[($11 + 624 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
$251 = HEAP32[($11 + 620 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$251 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($251);
|
|
btTypedConstraint__internalSetAppliedImpulse_28float_29(HEAP32[($11 + 620 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(0 | 0)));
|
|
HEAP32[($11 + 624 | 0) >> 2] = (HEAP32[($11 + 624 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$11;
|
|
};
|
|
}
|
|
HEAP32[($11 + 616 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___resizeNoInitialize_28int_29($12 + 164 | 0 | 0, HEAP32[($11 + 1012 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($11 + 612 | 0) >> 2] = 0;
|
|
label$12 : {
|
|
label$13 : while (1) {
|
|
if (!((HEAP32[($11 + 612 | 0) >> 2] | 0 | 0) < (HEAP32[($11 + 1012 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
(wasm2js_i32$0 = $11, wasm2js_i32$1 = btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___operator_5b_5d_28int_29($12 + 164 | 0 | 0, HEAP32[($11 + 612 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 608 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $11, wasm2js_i32$1 = btTypedConstraint__getJointFeedback_28_29(HEAP32[((HEAP32[($11 + 1016 | 0) >> 2] | 0) + ((HEAP32[($11 + 612 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 604 | 0) >> 2] = wasm2js_i32$1;
|
|
label$14 : {
|
|
if (!((HEAP32[($11 + 604 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
btVector3__setZero_28_29(HEAP32[($11 + 604 | 0) >> 2] | 0 | 0);
|
|
btVector3__setZero_28_29((HEAP32[($11 + 604 | 0) >> 2] | 0) + 16 | 0 | 0);
|
|
btVector3__setZero_28_29((HEAP32[($11 + 604 | 0) >> 2] | 0) + 32 | 0 | 0);
|
|
btVector3__setZero_28_29((HEAP32[($11 + 604 | 0) >> 2] | 0) + 48 | 0 | 0);
|
|
}
|
|
label$15 : {
|
|
if (!((btTypedConstraint__isEnabled_28_29_20const(HEAP32[((HEAP32[($11 + 1016 | 0) >> 2] | 0) + ((HEAP32[($11 + 612 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
}
|
|
label$16 : {
|
|
label$17 : {
|
|
if (!((btTypedConstraint__isEnabled_28_29_20const(HEAP32[((HEAP32[($11 + 1016 | 0) >> 2] | 0) + ((HEAP32[($11 + 612 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
$323 = HEAP32[((HEAP32[($11 + 1016 | 0) >> 2] | 0) + ((HEAP32[($11 + 612 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$323 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($323, HEAP32[($11 + 608 | 0) >> 2] | 0);
|
|
break label$16;
|
|
}
|
|
HEAP32[(HEAP32[($11 + 608 | 0) >> 2] | 0) >> 2] = 0;
|
|
HEAP32[((HEAP32[($11 + 608 | 0) >> 2] | 0) + 4 | 0) >> 2] = 0;
|
|
}
|
|
HEAP32[($11 + 616 | 0) >> 2] = (HEAP32[($11 + 616 | 0) >> 2] | 0) + (HEAP32[(HEAP32[($11 + 608 | 0) >> 2] | 0) >> 2] | 0) | 0;
|
|
HEAP32[($11 + 612 | 0) >> 2] = (HEAP32[($11 + 612 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$13;
|
|
};
|
|
}
|
|
btAlignedObjectArray_btSolverConstraint___resizeNoInitialize_28int_29($12 + 44 | 0 | 0, HEAP32[($11 + 616 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($11 + 600 | 0) >> 2] = 0;
|
|
HEAP32[($11 + 612 | 0) >> 2] = 0;
|
|
label$18 : {
|
|
label$19 : while (1) {
|
|
if (!((HEAP32[($11 + 612 | 0) >> 2] | 0 | 0) < (HEAP32[($11 + 1012 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$18
|
|
}
|
|
(wasm2js_i32$0 = $11, wasm2js_i32$1 = btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___operator_5b_5d_28int_29($12 + 164 | 0 | 0, HEAP32[($11 + 612 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 596 | 0) >> 2] = wasm2js_i32$1;
|
|
label$20 : {
|
|
if (!(HEAP32[(HEAP32[($11 + 596 | 0) >> 2] | 0) >> 2] | 0)) {
|
|
break label$20
|
|
}
|
|
label$21 : {
|
|
if ((HEAP32[($11 + 600 | 0) >> 2] | 0 | 0) < (HEAP32[($11 + 616 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$21
|
|
}
|
|
__assert_fail(68995 | 0, 72591 | 0, 1455 | 0, 71285 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $11, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___operator_5b_5d_28int_29($12 + 44 | 0 | 0, HEAP32[($11 + 600 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 592 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($11 + 588 | 0) >> 2] = HEAP32[((HEAP32[($11 + 1016 | 0) >> 2] | 0) + ((HEAP32[($11 + 612 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $11, wasm2js_i32$1 = btTypedConstraint__getRigidBodyA_28_29(HEAP32[($11 + 588 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 584 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $11, wasm2js_i32$1 = btTypedConstraint__getRigidBodyB_28_29(HEAP32[($11 + 588 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 580 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $11, wasm2js_i32$1 = btSequentialImpulseConstraintSolver__getOrInitSolverBody_28btCollisionObject__2c_20float_29($12 | 0, HEAP32[($11 + 584 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($11 + 1008 | 0) >> 2] | 0) + 12 | 0) >> 2]))) | 0), HEAP32[(wasm2js_i32$0 + 576 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $11, wasm2js_i32$1 = btSequentialImpulseConstraintSolver__getOrInitSolverBody_28btCollisionObject__2c_20float_29($12 | 0, HEAP32[($11 + 580 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($11 + 1008 | 0) >> 2] | 0) + 12 | 0) >> 2]))) | 0), HEAP32[(wasm2js_i32$0 + 572 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $11, wasm2js_i32$1 = btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($12 + 4 | 0 | 0, HEAP32[($11 + 576 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 568 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $11, wasm2js_i32$1 = btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($12 + 4 | 0 | 0, HEAP32[($11 + 572 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 564 | 0) >> 2] = wasm2js_i32$1;
|
|
label$22 : {
|
|
label$23 : {
|
|
if (!((btTypedConstraint__getOverrideNumSolverIterations_28_29_20const(HEAP32[($11 + 588 | 0) >> 2] | 0 | 0) | 0 | 0) > (0 | 0) & 1 | 0)) {
|
|
break label$23
|
|
}
|
|
$407 = btTypedConstraint__getOverrideNumSolverIterations_28_29_20const(HEAP32[($11 + 588 | 0) >> 2] | 0 | 0) | 0;
|
|
break label$22;
|
|
}
|
|
$407 = HEAP32[((HEAP32[($11 + 1008 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($11 + 560 | 0) >> 2] = $407;
|
|
label$24 : {
|
|
if (!((HEAP32[($11 + 560 | 0) >> 2] | 0 | 0) > (HEAP32[($12 + 184 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$24
|
|
}
|
|
HEAP32[($12 + 184 | 0) >> 2] = HEAP32[($11 + 560 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($11 + 556 | 0) >> 2] = 0;
|
|
label$25 : {
|
|
label$26 : while (1) {
|
|
if (!((HEAP32[($11 + 556 | 0) >> 2] | 0 | 0) < (HEAP32[(HEAP32[($11 + 596 | 0) >> 2] | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$25
|
|
}
|
|
__memset((HEAP32[($11 + 592 | 0) >> 2] | 0) + Math_imul(HEAP32[($11 + 556 | 0) >> 2] | 0, 152) | 0 | 0, 0 | 0, 152 | 0) | 0;
|
|
HEAPF32[(((HEAP32[($11 + 592 | 0) >> 2] | 0) + Math_imul(HEAP32[($11 + 556 | 0) >> 2] | 0, 152) | 0) + 120 | 0) >> 2] = Math_fround(-3402823466385288598117041.0e14);
|
|
HEAPF32[(((HEAP32[($11 + 592 | 0) >> 2] | 0) + Math_imul(HEAP32[($11 + 556 | 0) >> 2] | 0, 152) | 0) + 124 | 0) >> 2] = Math_fround(3402823466385288598117041.0e14);
|
|
HEAPF32[(((HEAP32[($11 + 592 | 0) >> 2] | 0) + Math_imul(HEAP32[($11 + 556 | 0) >> 2] | 0, 152) | 0) + 100 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[(((HEAP32[($11 + 592 | 0) >> 2] | 0) + Math_imul(HEAP32[($11 + 556 | 0) >> 2] | 0, 152) | 0) + 96 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP32[(((HEAP32[($11 + 592 | 0) >> 2] | 0) + Math_imul(HEAP32[($11 + 556 | 0) >> 2] | 0, 152) | 0) + 144 | 0) >> 2] = HEAP32[($11 + 576 | 0) >> 2] | 0;
|
|
HEAP32[(((HEAP32[($11 + 592 | 0) >> 2] | 0) + Math_imul(HEAP32[($11 + 556 | 0) >> 2] | 0, 152) | 0) + 148 | 0) >> 2] = HEAP32[($11 + 572 | 0) >> 2] | 0;
|
|
HEAP32[(((HEAP32[($11 + 592 | 0) >> 2] | 0) + Math_imul(HEAP32[($11 + 556 | 0) >> 2] | 0, 152) | 0) + 136 | 0) >> 2] = HEAP32[($11 + 560 | 0) >> 2] | 0;
|
|
HEAP32[($11 + 556 | 0) >> 2] = (HEAP32[($11 + 556 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$26;
|
|
};
|
|
}
|
|
$483 = btSolverBody__internalGetDeltaLinearVelocity_28_29(HEAP32[($11 + 568 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($11 + 552 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 548 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 544 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($483 | 0, $11 + 552 | 0 | 0, $11 + 548 | 0 | 0, $11 + 544 | 0 | 0);
|
|
$500 = btSolverBody__internalGetDeltaAngularVelocity_28_29(HEAP32[($11 + 568 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($11 + 540 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 536 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 532 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($500 | 0, $11 + 540 | 0 | 0, $11 + 536 | 0 | 0, $11 + 532 | 0 | 0);
|
|
$517 = btSolverBody__internalGetPushVelocity_28_29(HEAP32[($11 + 568 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($11 + 528 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 524 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 520 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($517 | 0, $11 + 528 | 0 | 0, $11 + 524 | 0 | 0, $11 + 520 | 0 | 0);
|
|
$534 = btSolverBody__internalGetTurnVelocity_28_29(HEAP32[($11 + 568 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($11 + 516 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 512 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 508 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($534 | 0, $11 + 516 | 0 | 0, $11 + 512 | 0 | 0, $11 + 508 | 0 | 0);
|
|
$551 = btSolverBody__internalGetDeltaLinearVelocity_28_29(HEAP32[($11 + 564 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($11 + 504 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 500 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 496 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($551 | 0, $11 + 504 | 0 | 0, $11 + 500 | 0 | 0, $11 + 496 | 0 | 0);
|
|
$568 = btSolverBody__internalGetDeltaAngularVelocity_28_29(HEAP32[($11 + 564 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($11 + 492 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 488 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 484 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($568 | 0, $11 + 492 | 0 | 0, $11 + 488 | 0 | 0, $11 + 484 | 0 | 0);
|
|
$585 = btSolverBody__internalGetPushVelocity_28_29(HEAP32[($11 + 564 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($11 + 480 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 476 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 472 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($585 | 0, $11 + 480 | 0 | 0, $11 + 476 | 0 | 0, $11 + 472 | 0 | 0);
|
|
$602 = btSolverBody__internalGetTurnVelocity_28_29(HEAP32[($11 + 564 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAPF32[($11 + 468 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 464 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 460 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($602 | 0, $11 + 468 | 0 | 0, $11 + 464 | 0 | 0, $11 + 460 | 0 | 0);
|
|
HEAPF32[($11 + 408 | 0) >> 2] = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[((HEAP32[($11 + 1008 | 0) >> 2] | 0) + 12 | 0) >> 2]));
|
|
HEAPF32[($11 + 412 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($11 + 1008 | 0) >> 2] | 0) + 32 | 0) >> 2]);
|
|
(wasm2js_i32$0 = $11, wasm2js_i32$1 = btVector3__operator_20float__28_29((HEAP32[($11 + 592 | 0) >> 2] | 0) + 16 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 416 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $11, wasm2js_i32$1 = btVector3__operator_20float__28_29(HEAP32[($11 + 592 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 420 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $11, wasm2js_i32$1 = btVector3__operator_20float__28_29((HEAP32[($11 + 592 | 0) >> 2] | 0) + 48 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 424 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $11, wasm2js_i32$1 = btVector3__operator_20float__28_29((HEAP32[($11 + 592 | 0) >> 2] | 0) + 32 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 428 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($11 + 432 | 0) >> 2] = 38;
|
|
label$27 : {
|
|
if (((HEAP32[($11 + 432 | 0) >> 2] | 0) << 2 | 0 | 0) == (152 | 0) & 1 | 0) {
|
|
break label$27
|
|
}
|
|
__assert_fail(86267 | 0, 72591 | 0, 1508 | 0, 71285 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($11 + 436 | 0) >> 2] = (HEAP32[($11 + 592 | 0) >> 2] | 0) + 112 | 0;
|
|
HEAPF32[((HEAP32[($11 + 592 | 0) >> 2] | 0) + 116 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($11 + 1008 | 0) >> 2] | 0) + 40 | 0) >> 2]);
|
|
HEAPF32[($11 + 456 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($11 + 1008 | 0) >> 2] | 0) + 4 | 0) >> 2]);
|
|
HEAP32[($11 + 440 | 0) >> 2] = (HEAP32[($11 + 592 | 0) >> 2] | 0) + 116 | 0;
|
|
HEAP32[($11 + 444 | 0) >> 2] = (HEAP32[($11 + 592 | 0) >> 2] | 0) + 120 | 0;
|
|
HEAP32[($11 + 448 | 0) >> 2] = (HEAP32[($11 + 592 | 0) >> 2] | 0) + 124 | 0;
|
|
HEAP32[($11 + 452 | 0) >> 2] = HEAP32[((HEAP32[($11 + 1008 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0;
|
|
$676 = HEAP32[((HEAP32[($11 + 1016 | 0) >> 2] | 0) + ((HEAP32[($11 + 612 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$676 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($676, $11 + 408 | 0);
|
|
HEAP32[($11 + 556 | 0) >> 2] = 0;
|
|
label$28 : {
|
|
label$29 : while (1) {
|
|
if (!((HEAP32[($11 + 556 | 0) >> 2] | 0 | 0) < (HEAP32[(HEAP32[($11 + 596 | 0) >> 2] | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$28
|
|
}
|
|
HEAP32[($11 + 404 | 0) >> 2] = (HEAP32[($11 + 592 | 0) >> 2] | 0) + Math_imul(HEAP32[($11 + 556 | 0) >> 2] | 0, 152) | 0;
|
|
label$30 : {
|
|
if (!(Math_fround(HEAPF32[((HEAP32[($11 + 404 | 0) >> 2] | 0) + 124 | 0) >> 2]) >= Math_fround(btTypedConstraint__getBreakingImpulseThreshold_28_29_20const(HEAP32[((HEAP32[($11 + 1016 | 0) >> 2] | 0) + ((HEAP32[($11 + 612 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0)) & 1 | 0)) {
|
|
break label$30
|
|
}
|
|
$714 = Math_fround(btTypedConstraint__getBreakingImpulseThreshold_28_29_20const(HEAP32[((HEAP32[($11 + 1016 | 0) >> 2] | 0) + ((HEAP32[($11 + 612 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0));
|
|
HEAPF32[((HEAP32[($11 + 404 | 0) >> 2] | 0) + 124 | 0) >> 2] = $714;
|
|
}
|
|
label$31 : {
|
|
if (!(Math_fround(HEAPF32[((HEAP32[($11 + 404 | 0) >> 2] | 0) + 120 | 0) >> 2]) <= Math_fround(-Math_fround(btTypedConstraint__getBreakingImpulseThreshold_28_29_20const(HEAP32[((HEAP32[($11 + 1016 | 0) >> 2] | 0) + ((HEAP32[($11 + 612 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0))) & 1 | 0)) {
|
|
break label$31
|
|
}
|
|
$736 = Math_fround(-Math_fround(btTypedConstraint__getBreakingImpulseThreshold_28_29_20const(HEAP32[((HEAP32[($11 + 1016 | 0) >> 2] | 0) + ((HEAP32[($11 + 612 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0)));
|
|
HEAPF32[((HEAP32[($11 + 404 | 0) >> 2] | 0) + 120 | 0) >> 2] = $736;
|
|
}
|
|
HEAP32[((HEAP32[($11 + 404 | 0) >> 2] | 0) + 132 | 0) >> 2] = HEAP32[($11 + 588 | 0) >> 2] | 0;
|
|
HEAP32[($11 + 400 | 0) >> 2] = HEAP32[($11 + 404 | 0) >> 2] | 0;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($11 + 368 | 0 | 0, btRigidBody__getInvInertiaTensorWorld_28_29_20const(btTypedConstraint__getRigidBodyA_28_29(HEAP32[($11 + 588 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, HEAP32[($11 + 400 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($11 + 384 | 0 | 0, $11 + 368 | 0 | 0, btRigidBody__getAngularFactor_28_29_20const(btTypedConstraint__getRigidBodyA_28_29(HEAP32[($11 + 588 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
$759 = (HEAP32[($11 + 404 | 0) >> 2] | 0) + 64 | 0;
|
|
i64toi32_i32$2 = $11;
|
|
i64toi32_i32$0 = HEAP32[($11 + 384 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($11 + 388 | 0) >> 2] | 0;
|
|
$2805 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $759;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2805;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$761 = 8;
|
|
i64toi32_i32$2 = ($11 + 384 | 0) + $761 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2818 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $759 + $761 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $2818;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($11 + 364 | 0) >> 2] = (HEAP32[($11 + 404 | 0) >> 2] | 0) + 32 | 0;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($11 + 332 | 0 | 0, btRigidBody__getInvInertiaTensorWorld_28_29_20const(btTypedConstraint__getRigidBodyB_28_29(HEAP32[($11 + 588 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, HEAP32[($11 + 364 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($11 + 348 | 0 | 0, $11 + 332 | 0 | 0, btRigidBody__getAngularFactor_28_29_20const(btTypedConstraint__getRigidBodyB_28_29(HEAP32[($11 + 588 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
$788 = (HEAP32[($11 + 404 | 0) >> 2] | 0) + 80 | 0;
|
|
i64toi32_i32$2 = $11;
|
|
i64toi32_i32$0 = HEAP32[($11 + 348 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($11 + 352 | 0) >> 2] | 0;
|
|
$2866 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $788;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2866;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$790 = 8;
|
|
i64toi32_i32$2 = ($11 + 348 | 0) + $790 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2879 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $788 + $790 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $2879;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$798 = (HEAP32[($11 + 404 | 0) >> 2] | 0) + 16 | 0;
|
|
(wasm2js_i32$0 = $11, wasm2js_f32$0 = Math_fround(btRigidBody__getInvMass_28_29_20const(HEAP32[($11 + 584 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 312 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($11 + 316 | 0 | 0, $798 | 0, $11 + 312 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($11 + 296 | 0 | 0, btRigidBody__getInvInertiaTensorWorld_28_29_20const(HEAP32[($11 + 584 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($11 + 404 | 0) >> 2] | 0 | 0);
|
|
$815 = (HEAP32[($11 + 404 | 0) >> 2] | 0) + 48 | 0;
|
|
(wasm2js_i32$0 = $11, wasm2js_f32$0 = Math_fround(btRigidBody__getInvMass_28_29_20const(HEAP32[($11 + 580 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 276 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($11 + 280 | 0 | 0, $815 | 0, $11 + 276 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($11 + 260 | 0 | 0, btRigidBody__getInvInertiaTensorWorld_28_29_20const(HEAP32[($11 + 580 | 0) >> 2] | 0 | 0) | 0 | 0, (HEAP32[($11 + 404 | 0) >> 2] | 0) + 32 | 0 | 0);
|
|
(wasm2js_i32$0 = $11, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($11 + 316 | 0 | 0, (HEAP32[($11 + 404 | 0) >> 2] | 0) + 16 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 256 | 0) >> 2] = wasm2js_f32$0;
|
|
$843 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($11 + 296 | 0 | 0, HEAP32[($11 + 404 | 0) >> 2] | 0 | 0));
|
|
HEAPF32[($11 + 256 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($11 + 256 | 0) >> 2]) + $843);
|
|
$852 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($11 + 280 | 0 | 0, (HEAP32[($11 + 404 | 0) >> 2] | 0) + 48 | 0 | 0));
|
|
HEAPF32[($11 + 256 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($11 + 256 | 0) >> 2]) + $852);
|
|
$861 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($11 + 260 | 0 | 0, (HEAP32[($11 + 404 | 0) >> 2] | 0) + 32 | 0 | 0));
|
|
HEAPF32[($11 + 256 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($11 + 256 | 0) >> 2]) + $861);
|
|
(wasm2js_i32$0 = $11, wasm2js_f32$0 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[($11 + 256 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 252 | 0) >> 2] = wasm2js_f32$0;
|
|
label$32 : {
|
|
if (Math_fround(HEAPF32[($11 + 252 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0) {
|
|
break label$32
|
|
}
|
|
__assert_fail(84262 | 0, 72591 | 0, 1555 | 0, 71285 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAPF32[($11 + 248 | 0) >> 2] = Math_fround(1.0);
|
|
label$33 : {
|
|
label$34 : {
|
|
if (!(Math_fround(HEAPF32[($11 + 252 | 0) >> 2]) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$34
|
|
}
|
|
$884 = Math_fround(Math_fround(HEAPF32[($11 + 248 | 0) >> 2]) / Math_fround(HEAPF32[($11 + 256 | 0) >> 2]));
|
|
break label$33;
|
|
}
|
|
$884 = Math_fround(0 | 0);
|
|
}
|
|
HEAPF32[((HEAP32[($11 + 404 | 0) >> 2] | 0) + 108 | 0) >> 2] = $884;
|
|
label$35 : {
|
|
label$36 : {
|
|
if (!((HEAP32[((HEAP32[($11 + 568 | 0) >> 2] | 0) + 240 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$36
|
|
}
|
|
$899 = (HEAP32[($11 + 568 | 0) >> 2] | 0) + 208 | 0;
|
|
$900 = 8;
|
|
i64toi32_i32$2 = $899 + $900 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$3099 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($11 + 224 | 0) + $900 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $3099;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $899;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$3103 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11;
|
|
HEAP32[($11 + 224 | 0) >> 2] = $3103;
|
|
HEAP32[($11 + 228 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$35;
|
|
}
|
|
HEAPF32[($11 + 220 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 216 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 212 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($11 + 224 | 0 | 0, $11 + 220 | 0 | 0, $11 + 216 | 0 | 0, $11 + 212 | 0 | 0) | 0;
|
|
}
|
|
label$37 : {
|
|
label$38 : {
|
|
if (!((HEAP32[((HEAP32[($11 + 568 | 0) >> 2] | 0) + 240 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$38
|
|
}
|
|
$935 = (HEAP32[($11 + 568 | 0) >> 2] | 0) + 224 | 0;
|
|
$936 = 8;
|
|
i64toi32_i32$2 = $935 + $936 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$3168 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($11 + 192 | 0) + $936 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $3168;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $935;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$3172 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11;
|
|
HEAP32[($11 + 192 | 0) >> 2] = $3172;
|
|
HEAP32[($11 + 196 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$37;
|
|
}
|
|
HEAPF32[($11 + 188 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 184 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 180 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($11 + 192 | 0 | 0, $11 + 188 | 0 | 0, $11 + 184 | 0 | 0, $11 + 180 | 0 | 0) | 0;
|
|
}
|
|
label$39 : {
|
|
label$40 : {
|
|
if (!((HEAP32[((HEAP32[($11 + 564 | 0) >> 2] | 0) + 240 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$40
|
|
}
|
|
$971 = (HEAP32[($11 + 564 | 0) >> 2] | 0) + 208 | 0;
|
|
$972 = 8;
|
|
i64toi32_i32$2 = $971 + $972 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$3237 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($11 + 160 | 0) + $972 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $3237;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $971;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$3241 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11;
|
|
HEAP32[($11 + 160 | 0) >> 2] = $3241;
|
|
HEAP32[($11 + 164 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$39;
|
|
}
|
|
HEAPF32[($11 + 156 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 152 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 148 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($11 + 160 | 0 | 0, $11 + 156 | 0 | 0, $11 + 152 | 0 | 0, $11 + 148 | 0 | 0) | 0;
|
|
}
|
|
label$41 : {
|
|
label$42 : {
|
|
if (!((HEAP32[((HEAP32[($11 + 564 | 0) >> 2] | 0) + 240 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$42
|
|
}
|
|
$1007 = (HEAP32[($11 + 564 | 0) >> 2] | 0) + 224 | 0;
|
|
$1008 = 8;
|
|
i64toi32_i32$2 = $1007 + $1008 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$3306 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($11 + 128 | 0) + $1008 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $3306;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $1007;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$3310 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $11;
|
|
HEAP32[($11 + 128 | 0) >> 2] = $3310;
|
|
HEAP32[($11 + 132 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$41;
|
|
}
|
|
HEAPF32[($11 + 124 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 120 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 116 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($11 + 128 | 0 | 0, $11 + 124 | 0 | 0, $11 + 120 | 0 | 0, $11 + 116 | 0 | 0) | 0;
|
|
}
|
|
$1035 = (HEAP32[($11 + 404 | 0) >> 2] | 0) + 16 | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($11 + 96 | 0 | 0, btRigidBody__getLinearVelocity_28_29_20const(HEAP32[($11 + 584 | 0) >> 2] | 0 | 0) | 0 | 0, $11 + 224 | 0 | 0);
|
|
$1047 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($1035 | 0, $11 + 96 | 0 | 0));
|
|
$1048 = HEAP32[($11 + 404 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($11 + 80 | 0 | 0, btRigidBody__getAngularVelocity_28_29_20const(HEAP32[($11 + 584 | 0) >> 2] | 0 | 0) | 0 | 0, $11 + 192 | 0 | 0);
|
|
(wasm2js_i32$0 = $11, wasm2js_f32$0 = Math_fround($1047 + Math_fround(btVector3__dot_28btVector3_20const__29_20const($1048 | 0, $11 + 80 | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 112 | 0) >> 2] = wasm2js_f32$0;
|
|
$1064 = (HEAP32[($11 + 404 | 0) >> 2] | 0) + 48 | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($11 + 60 | 0 | 0, btRigidBody__getLinearVelocity_28_29_20const(HEAP32[($11 + 580 | 0) >> 2] | 0 | 0) | 0 | 0, $11 + 160 | 0 | 0);
|
|
$1076 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($1064 | 0, $11 + 60 | 0 | 0));
|
|
$1079 = (HEAP32[($11 + 404 | 0) >> 2] | 0) + 32 | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($11 + 44 | 0 | 0, btRigidBody__getAngularVelocity_28_29_20const(HEAP32[($11 + 580 | 0) >> 2] | 0 | 0) | 0 | 0, $11 + 128 | 0 | 0);
|
|
(wasm2js_i32$0 = $11, wasm2js_f32$0 = Math_fround($1076 + Math_fround(btVector3__dot_28btVector3_20const__29_20const($1079 | 0, $11 + 44 | 0 | 0)))), HEAPF32[(wasm2js_i32$0 + 76 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($11 + 244 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($11 + 112 | 0) >> 2]) + Math_fround(HEAPF32[($11 + 76 | 0) >> 2]));
|
|
HEAPF32[($11 + 40 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($11 + 36 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($11 + 404 | 0) >> 2] | 0) + 112 | 0) >> 2]);
|
|
HEAPF32[($11 + 32 | 0) >> 2] = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($11 + 244 | 0) >> 2])) * Math_fround(HEAPF32[($11 + 456 | 0) >> 2])) + Math_fround(HEAPF32[($11 + 40 | 0) >> 2]));
|
|
HEAPF32[($11 + 28 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($11 + 36 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($11 + 404 | 0) >> 2] | 0) + 108 | 0) >> 2]));
|
|
HEAPF32[($11 + 24 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($11 + 32 | 0) >> 2]) * Math_fround(HEAPF32[((HEAP32[($11 + 404 | 0) >> 2] | 0) + 108 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[($11 + 404 | 0) >> 2] | 0) + 112 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($11 + 28 | 0) >> 2]) + Math_fround(HEAPF32[($11 + 24 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[($11 + 404 | 0) >> 2] | 0) + 100 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP32[($11 + 556 | 0) >> 2] = (HEAP32[($11 + 556 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$29;
|
|
};
|
|
}
|
|
}
|
|
$1128 = HEAP32[(btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___operator_5b_5d_28int_29($12 + 164 | 0 | 0, HEAP32[($11 + 612 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
HEAP32[($11 + 600 | 0) >> 2] = (HEAP32[($11 + 600 | 0) >> 2] | 0) + $1128 | 0;
|
|
HEAP32[($11 + 612 | 0) >> 2] = (HEAP32[($11 + 612 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$19;
|
|
};
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$12 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($12, HEAP32[($11 + 1024 | 0) >> 2] | 0, HEAP32[($11 + 1020 | 0) >> 2] | 0, HEAP32[($11 + 1008 | 0) >> 2] | 0);
|
|
(wasm2js_i32$0 = $11, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___size_28_29_20const($12 + 44 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $11, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___size_28_29_20const($12 + 24 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $11, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___size_28_29_20const($12 + 64 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_int___resizeNoInitialize_28int_29($12 + 124 | 0 | 0, HEAP32[($11 + 20 | 0) >> 2] | 0 | 0);
|
|
label$43 : {
|
|
label$44 : {
|
|
if (!((HEAP32[((HEAP32[($11 + 1008 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0) & 16 | 0)) {
|
|
break label$44
|
|
}
|
|
btAlignedObjectArray_int___resizeNoInitialize_28int_29($12 + 104 | 0 | 0, (HEAP32[($11 + 16 | 0) >> 2] | 0) << 1 | 0 | 0);
|
|
break label$43;
|
|
}
|
|
btAlignedObjectArray_int___resizeNoInitialize_28int_29($12 + 104 | 0 | 0, HEAP32[($11 + 16 | 0) >> 2] | 0 | 0);
|
|
}
|
|
btAlignedObjectArray_int___resizeNoInitialize_28int_29($12 + 144 | 0 | 0, HEAP32[($11 + 12 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($11 + 8 | 0) >> 2] = 0;
|
|
label$45 : {
|
|
label$46 : while (1) {
|
|
if (!((HEAP32[($11 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($11 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$45
|
|
}
|
|
$1174 = HEAP32[($11 + 8 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($12 + 124 | 0 | 0, HEAP32[($11 + 8 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $1174), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[($11 + 8 | 0) >> 2] = (HEAP32[($11 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$46;
|
|
};
|
|
}
|
|
HEAP32[($11 + 8 | 0) >> 2] = 0;
|
|
label$47 : {
|
|
label$48 : while (1) {
|
|
if (!((HEAP32[($11 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($11 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$47
|
|
}
|
|
$1190 = HEAP32[($11 + 8 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($12 + 104 | 0 | 0, HEAP32[($11 + 8 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $1190), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[($11 + 8 | 0) >> 2] = (HEAP32[($11 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$48;
|
|
};
|
|
}
|
|
HEAP32[($11 + 8 | 0) >> 2] = 0;
|
|
label$49 : {
|
|
label$50 : while (1) {
|
|
if (!((HEAP32[($11 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($11 + 12 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$49
|
|
}
|
|
$1206 = HEAP32[($11 + 8 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($12 + 144 | 0 | 0, HEAP32[($11 + 8 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $1206), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[($11 + 8 | 0) >> 2] = (HEAP32[($11 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$50;
|
|
};
|
|
}
|
|
CProfileSample___CProfileSample_28_29($11 + 1003 | 0 | 0) | 0;
|
|
__stack_pointer = $11 + 1040 | 0;
|
|
return Math_fround(Math_fround(0 | 0));
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverBody___resize_28int_2c_20btSolverBody_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btSolverBody___size_28_29_20const($6 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) > (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btAlignedObjectArray_btSolverBody___reserve_28int_29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
btSolverBody__btSolverBody_28btSolverBody_20const__29(btSolverBody__operator_20new_28unsigned_20long_2c_20void__29(244 | 0, (HEAP32[($6 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($5 + 8 | 0) >> 2] | 0, 244) | 0 | 0) | 0 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTypedConstraint__internalSetAppliedImpulse_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 36 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___resizeNoInitialize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) > (btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___reserve_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 4 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 3 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btTypedConstraint__getJointFeedback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 44 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btTypedConstraint__isEnabled_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAPU8[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 20 | 0) >> 0] | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverConstraint___resizeNoInitialize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) > (btAlignedObjectArray_btSolverConstraint___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btSolverConstraint___reserve_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 4 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTypedConstraint__getOverrideNumSolverIterations_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 24 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btTypedConstraint__getBreakingImpulseThreshold_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 16 | 0) >> 2]));
|
|
}
|
|
|
|
function btAlignedObjectArray_int___resizeNoInitialize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) > (btAlignedObjectArray_int___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_int___reserve_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 4 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverBody___allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btSolverBody_2c_2016u___allocate_28int_2c_20btSolverBody_20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverBody___copy_28int_2c_20int_2c_20btSolverBody__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btSolverBody__btSolverBody_28btSolverBody_20const__29(btSolverBody__operator_20new_28unsigned_20long_2c_20void__29(244 | 0, (HEAP32[($6 + 16 | 0) >> 2] | 0) + Math_imul(HEAP32[($6 + 12 | 0) >> 2] | 0, 244) | 0 | 0) | 0 | 0, (HEAP32[($7 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($6 + 12 | 0) >> 2] | 0, 244) | 0 | 0) | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverBody___destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverBody___deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btSolverBody_2c_2016u___deallocate_28btSolverBody__29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___copy_28int_2c_20int_2c_20btTypedConstraint__btConstraintInfo1__29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__solveSingleIteration_28int_2c_20btCollisionObject___2c_20int_2c_20btPersistentManifold___2c_20int_2c_20btTypedConstraint___2c_20int_2c_20btContactSolverInfo_20const__2c_20btIDebugDraw__29($0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
$9 = $9 | 0;
|
|
var $12 = 0, $13 = 0, $243 = 0, $50 = 0, $55 = 0, $92 = 0, $97 = 0, $126 = 0, $131 = 0, $570 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$12 = __stack_pointer - 224 | 0;
|
|
__stack_pointer = $12;
|
|
HEAP32[($12 + 220 | 0) >> 2] = $0;
|
|
HEAP32[($12 + 216 | 0) >> 2] = $1;
|
|
HEAP32[($12 + 212 | 0) >> 2] = $2;
|
|
HEAP32[($12 + 208 | 0) >> 2] = $3;
|
|
HEAP32[($12 + 204 | 0) >> 2] = $4;
|
|
HEAP32[($12 + 200 | 0) >> 2] = $5;
|
|
HEAP32[($12 + 196 | 0) >> 2] = $6;
|
|
HEAP32[($12 + 192 | 0) >> 2] = $7;
|
|
HEAP32[($12 + 188 | 0) >> 2] = $8;
|
|
HEAP32[($12 + 184 | 0) >> 2] = $9;
|
|
$13 = HEAP32[($12 + 220 | 0) >> 2] | 0;
|
|
HEAPF32[($12 + 180 | 0) >> 2] = Math_fround(0 | 0);
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___size_28_29_20const($13 + 44 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 176 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___size_28_29_20const($13 + 24 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 172 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___size_28_29_20const($13 + 64 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 168 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[((HEAP32[($12 + 188 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($12 + 164 | 0) >> 2] = 0;
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($12 + 164 | 0) >> 2] | 0 | 0) < (HEAP32[($12 + 176 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($13 + 124 | 0 | 0, HEAP32[($12 + 164 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 160 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = btSequentialImpulseConstraintSolver__btRandInt2_28int_29($13 | 0, (HEAP32[($12 + 164 | 0) >> 2] | 0) + 1 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 156 | 0) >> 2] = wasm2js_i32$1;
|
|
$50 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($13 + 124 | 0 | 0, HEAP32[($12 + 156 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($13 + 124 | 0 | 0, HEAP32[($12 + 164 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $50), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$55 = HEAP32[($12 + 160 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($13 + 124 | 0 | 0, HEAP32[($12 + 156 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $55), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[($12 + 164 | 0) >> 2] = (HEAP32[($12 + 164 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
label$4 : {
|
|
if (!((HEAP32[($12 + 216 | 0) >> 2] | 0 | 0) < (HEAP32[((HEAP32[($12 + 188 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP32[($12 + 152 | 0) >> 2] = 0;
|
|
label$5 : {
|
|
label$6 : while (1) {
|
|
if (!((HEAP32[($12 + 152 | 0) >> 2] | 0 | 0) < (HEAP32[($12 + 172 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($13 + 104 | 0 | 0, HEAP32[($12 + 152 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 148 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = btSequentialImpulseConstraintSolver__btRandInt2_28int_29($13 | 0, (HEAP32[($12 + 152 | 0) >> 2] | 0) + 1 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 144 | 0) >> 2] = wasm2js_i32$1;
|
|
$92 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($13 + 104 | 0 | 0, HEAP32[($12 + 144 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($13 + 104 | 0 | 0, HEAP32[($12 + 152 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $92), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$97 = HEAP32[($12 + 148 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($13 + 104 | 0 | 0, HEAP32[($12 + 144 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $97), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[($12 + 152 | 0) >> 2] = (HEAP32[($12 + 152 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$6;
|
|
};
|
|
}
|
|
HEAP32[($12 + 140 | 0) >> 2] = 0;
|
|
label$7 : {
|
|
label$8 : while (1) {
|
|
if (!((HEAP32[($12 + 140 | 0) >> 2] | 0 | 0) < (HEAP32[($12 + 168 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($13 + 144 | 0 | 0, HEAP32[($12 + 140 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 136 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = btSequentialImpulseConstraintSolver__btRandInt2_28int_29($13 | 0, (HEAP32[($12 + 140 | 0) >> 2] | 0) + 1 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 132 | 0) >> 2] = wasm2js_i32$1;
|
|
$126 = HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($13 + 144 | 0 | 0, HEAP32[($12 + 132 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($13 + 144 | 0 | 0, HEAP32[($12 + 140 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $126), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$131 = HEAP32[($12 + 136 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_int___operator_5b_5d_28int_29($13 + 144 | 0 | 0, HEAP32[($12 + 132 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $131), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[($12 + 140 | 0) >> 2] = (HEAP32[($12 + 140 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$8;
|
|
};
|
|
}
|
|
}
|
|
}
|
|
HEAP32[($12 + 128 | 0) >> 2] = 0;
|
|
label$9 : {
|
|
label$10 : while (1) {
|
|
if (!((HEAP32[($12 + 128 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btSolverConstraint___size_28_29_20const($13 + 44 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___operator_5b_5d_28int_29($13 + 44 | 0 | 0, HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($13 + 124 | 0 | 0, HEAP32[($12 + 128 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 124 | 0) >> 2] = wasm2js_i32$1;
|
|
label$11 : {
|
|
if (!((HEAP32[($12 + 216 | 0) >> 2] | 0 | 0) < (HEAP32[((HEAP32[($12 + 124 | 0) >> 2] | 0) + 136 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
(wasm2js_i32$0 = $12, wasm2js_f32$0 = Math_fround(btSequentialImpulseConstraintSolver__resolveSingleConstraintRowGeneric_28btSolverBody__2c_20btSolverBody__2c_20btSolverConstraint_20const__29($13 | 0, btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($13 + 4 | 0 | 0, HEAP32[((HEAP32[($12 + 124 | 0) >> 2] | 0) + 144 | 0) >> 2] | 0 | 0) | 0 | 0, btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($13 + 4 | 0 | 0, HEAP32[((HEAP32[($12 + 124 | 0) >> 2] | 0) + 148 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($12 + 124 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 120 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($12 + 180 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($12 + 120 | 0) >> 2]) * Math_fround(HEAPF32[($12 + 120 | 0) >> 2])) + Math_fround(HEAPF32[($12 + 180 | 0) >> 2]));
|
|
}
|
|
HEAP32[($12 + 128 | 0) >> 2] = (HEAP32[($12 + 128 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$10;
|
|
};
|
|
}
|
|
label$12 : {
|
|
if (!((HEAP32[($12 + 216 | 0) >> 2] | 0 | 0) < (HEAP32[((HEAP32[($12 + 188 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
HEAP32[($12 + 116 | 0) >> 2] = 0;
|
|
label$13 : {
|
|
label$14 : while (1) {
|
|
if (!((HEAP32[($12 + 116 | 0) >> 2] | 0 | 0) < (HEAP32[($12 + 192 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
label$15 : {
|
|
if (!((btTypedConstraint__isEnabled_28_29_20const(HEAP32[((HEAP32[($12 + 196 | 0) >> 2] | 0) + ((HEAP32[($12 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = btSequentialImpulseConstraintSolver__getOrInitSolverBody_28btCollisionObject__2c_20float_29($13 | 0, btTypedConstraint__getRigidBodyA_28_29(HEAP32[((HEAP32[($12 + 196 | 0) >> 2] | 0) + ((HEAP32[($12 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0) | 0 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($12 + 188 | 0) >> 2] | 0) + 12 | 0) >> 2]))) | 0), HEAP32[(wasm2js_i32$0 + 112 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = btSequentialImpulseConstraintSolver__getOrInitSolverBody_28btCollisionObject__2c_20float_29($13 | 0, btTypedConstraint__getRigidBodyB_28_29(HEAP32[((HEAP32[($12 + 196 | 0) >> 2] | 0) + ((HEAP32[($12 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0) | 0 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($12 + 188 | 0) >> 2] | 0) + 12 | 0) >> 2]))) | 0), HEAP32[(wasm2js_i32$0 + 108 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($13 + 4 | 0 | 0, HEAP32[($12 + 112 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 104 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($13 + 4 | 0 | 0, HEAP32[($12 + 108 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 100 | 0) >> 2] = wasm2js_i32$1;
|
|
$243 = HEAP32[((HEAP32[($12 + 196 | 0) >> 2] | 0) + ((HEAP32[($12 + 116 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$243 >> 2] | 0) + 24 | 0) >> 2] | 0 | 0]($243, HEAP32[($12 + 104 | 0) >> 2] | 0, HEAP32[($12 + 100 | 0) >> 2] | 0, Math_fround(HEAPF32[((HEAP32[($12 + 188 | 0) >> 2] | 0) + 12 | 0) >> 2]));
|
|
}
|
|
HEAP32[($12 + 116 | 0) >> 2] = (HEAP32[($12 + 116 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$14;
|
|
};
|
|
}
|
|
label$16 : {
|
|
label$17 : {
|
|
if (!((HEAP32[((HEAP32[($12 + 188 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0) & 512 | 0)) {
|
|
break label$17
|
|
}
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___size_28_29_20const($13 + 24 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 96 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($12 + 92 | 0) >> 2] = (HEAP32[((HEAP32[($12 + 188 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0) & 16 | 0 ? 2 : 1;
|
|
HEAP32[($12 + 88 | 0) >> 2] = 0;
|
|
label$18 : {
|
|
label$19 : while (1) {
|
|
if (!((HEAP32[($12 + 88 | 0) >> 2] | 0 | 0) < (HEAP32[($12 + 96 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$18
|
|
}
|
|
HEAPF32[($12 + 84 | 0) >> 2] = Math_fround(0 | 0);
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___operator_5b_5d_28int_29($13 + 24 | 0 | 0, HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($13 + 104 | 0 | 0, HEAP32[($12 + 88 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 80 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $12, wasm2js_f32$0 = Math_fround(btSequentialImpulseConstraintSolver__resolveSingleConstraintRowLowerLimit_28btSolverBody__2c_20btSolverBody__2c_20btSolverConstraint_20const__29($13 | 0, btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($13 + 4 | 0 | 0, HEAP32[((HEAP32[($12 + 80 | 0) >> 2] | 0) + 144 | 0) >> 2] | 0 | 0) | 0 | 0, btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($13 + 4 | 0 | 0, HEAP32[((HEAP32[($12 + 80 | 0) >> 2] | 0) + 148 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($12 + 80 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 76 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($12 + 180 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($12 + 76 | 0) >> 2]) * Math_fround(HEAPF32[($12 + 76 | 0) >> 2])) + Math_fround(HEAPF32[($12 + 180 | 0) >> 2]));
|
|
HEAPF32[($12 + 84 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($12 + 80 | 0) >> 2] | 0) + 100 | 0) >> 2]);
|
|
HEAP8[($12 + 75 | 0) >> 0] = 1;
|
|
label$20 : {
|
|
if (!((HEAPU8[($12 + 75 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$20
|
|
}
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___operator_5b_5d_28int_29($13 + 64 | 0 | 0, HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($13 + 144 | 0 | 0, Math_imul(HEAP32[($12 + 88 | 0) >> 2] | 0, HEAP32[($12 + 92 | 0) >> 2] | 0) | 0) | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 68 | 0) >> 2] = wasm2js_i32$1;
|
|
label$21 : {
|
|
if (!(Math_fround(HEAPF32[($12 + 84 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$21
|
|
}
|
|
HEAPF32[((HEAP32[($12 + 68 | 0) >> 2] | 0) + 120 | 0) >> 2] = Math_fround(-Math_fround(Math_fround(HEAPF32[((HEAP32[($12 + 68 | 0) >> 2] | 0) + 104 | 0) >> 2]) * Math_fround(HEAPF32[($12 + 84 | 0) >> 2])));
|
|
HEAPF32[((HEAP32[($12 + 68 | 0) >> 2] | 0) + 124 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($12 + 68 | 0) >> 2] | 0) + 104 | 0) >> 2]) * Math_fround(HEAPF32[($12 + 84 | 0) >> 2]));
|
|
(wasm2js_i32$0 = $12, wasm2js_f32$0 = Math_fround(btSequentialImpulseConstraintSolver__resolveSingleConstraintRowGeneric_28btSolverBody__2c_20btSolverBody__2c_20btSolverConstraint_20const__29($13 | 0, btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($13 + 4 | 0 | 0, HEAP32[((HEAP32[($12 + 68 | 0) >> 2] | 0) + 144 | 0) >> 2] | 0 | 0) | 0 | 0, btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($13 + 4 | 0 | 0, HEAP32[((HEAP32[($12 + 68 | 0) >> 2] | 0) + 148 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($12 + 68 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 64 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($12 + 180 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($12 + 64 | 0) >> 2]) * Math_fround(HEAPF32[($12 + 64 | 0) >> 2])) + Math_fround(HEAPF32[($12 + 180 | 0) >> 2]));
|
|
}
|
|
label$22 : {
|
|
if (!((HEAP32[((HEAP32[($12 + 188 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0) & 16 | 0)) {
|
|
break label$22
|
|
}
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___operator_5b_5d_28int_29($13 + 64 | 0 | 0, HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($13 + 144 | 0 | 0, Math_imul(HEAP32[($12 + 88 | 0) >> 2] | 0, HEAP32[($12 + 92 | 0) >> 2] | 0) + 1 | 0 | 0) | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 60 | 0) >> 2] = wasm2js_i32$1;
|
|
label$23 : {
|
|
if (!(Math_fround(HEAPF32[($12 + 84 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$23
|
|
}
|
|
HEAPF32[((HEAP32[($12 + 60 | 0) >> 2] | 0) + 120 | 0) >> 2] = Math_fround(-Math_fround(Math_fround(HEAPF32[((HEAP32[($12 + 60 | 0) >> 2] | 0) + 104 | 0) >> 2]) * Math_fround(HEAPF32[($12 + 84 | 0) >> 2])));
|
|
HEAPF32[((HEAP32[($12 + 60 | 0) >> 2] | 0) + 124 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($12 + 60 | 0) >> 2] | 0) + 104 | 0) >> 2]) * Math_fround(HEAPF32[($12 + 84 | 0) >> 2]));
|
|
(wasm2js_i32$0 = $12, wasm2js_f32$0 = Math_fround(btSequentialImpulseConstraintSolver__resolveSingleConstraintRowGeneric_28btSolverBody__2c_20btSolverBody__2c_20btSolverConstraint_20const__29($13 | 0, btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($13 + 4 | 0 | 0, HEAP32[((HEAP32[($12 + 60 | 0) >> 2] | 0) + 144 | 0) >> 2] | 0 | 0) | 0 | 0, btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($13 + 4 | 0 | 0, HEAP32[((HEAP32[($12 + 60 | 0) >> 2] | 0) + 148 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($12 + 60 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 56 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($12 + 180 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($12 + 56 | 0) >> 2]) * Math_fround(HEAPF32[($12 + 56 | 0) >> 2])) + Math_fround(HEAPF32[($12 + 180 | 0) >> 2]));
|
|
}
|
|
}
|
|
}
|
|
HEAP32[($12 + 88 | 0) >> 2] = (HEAP32[($12 + 88 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$19;
|
|
};
|
|
}
|
|
break label$16;
|
|
}
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___size_28_29_20const($13 + 24 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 52 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($12 + 48 | 0) >> 2] = 0;
|
|
label$24 : {
|
|
label$25 : while (1) {
|
|
if (!((HEAP32[($12 + 48 | 0) >> 2] | 0 | 0) < (HEAP32[($12 + 52 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$24
|
|
}
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___operator_5b_5d_28int_29($13 + 24 | 0 | 0, HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($13 + 104 | 0 | 0, HEAP32[($12 + 48 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $12, wasm2js_f32$0 = Math_fround(btSequentialImpulseConstraintSolver__resolveSingleConstraintRowLowerLimit_28btSolverBody__2c_20btSolverBody__2c_20btSolverConstraint_20const__29($13 | 0, btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($13 + 4 | 0 | 0, HEAP32[((HEAP32[($12 + 44 | 0) >> 2] | 0) + 144 | 0) >> 2] | 0 | 0) | 0 | 0, btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($13 + 4 | 0 | 0, HEAP32[((HEAP32[($12 + 44 | 0) >> 2] | 0) + 148 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($12 + 44 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($12 + 180 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($12 + 40 | 0) >> 2]) * Math_fround(HEAPF32[($12 + 40 | 0) >> 2])) + Math_fround(HEAPF32[($12 + 180 | 0) >> 2]));
|
|
HEAP32[($12 + 48 | 0) >> 2] = (HEAP32[($12 + 48 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$25;
|
|
};
|
|
}
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___size_28_29_20const($13 + 64 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($12 + 48 | 0) >> 2] = 0;
|
|
label$26 : {
|
|
label$27 : while (1) {
|
|
if (!((HEAP32[($12 + 48 | 0) >> 2] | 0 | 0) < (HEAP32[($12 + 36 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$26
|
|
}
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___operator_5b_5d_28int_29($13 + 64 | 0 | 0, HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($13 + 144 | 0 | 0, HEAP32[($12 + 48 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $12, wasm2js_f32$0 = Math_fround(HEAPF32[((btAlignedObjectArray_btSolverConstraint___operator_5b_5d_28int_29($13 + 24 | 0 | 0, HEAP32[((HEAP32[($12 + 32 | 0) >> 2] | 0) + 140 | 0) >> 2] | 0 | 0) | 0) + 100 | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
label$28 : {
|
|
if (!(Math_fround(HEAPF32[($12 + 28 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$28
|
|
}
|
|
HEAPF32[((HEAP32[($12 + 32 | 0) >> 2] | 0) + 120 | 0) >> 2] = Math_fround(-Math_fround(Math_fround(HEAPF32[((HEAP32[($12 + 32 | 0) >> 2] | 0) + 104 | 0) >> 2]) * Math_fround(HEAPF32[($12 + 28 | 0) >> 2])));
|
|
HEAPF32[((HEAP32[($12 + 32 | 0) >> 2] | 0) + 124 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($12 + 32 | 0) >> 2] | 0) + 104 | 0) >> 2]) * Math_fround(HEAPF32[($12 + 28 | 0) >> 2]));
|
|
(wasm2js_i32$0 = $12, wasm2js_f32$0 = Math_fround(btSequentialImpulseConstraintSolver__resolveSingleConstraintRowGeneric_28btSolverBody__2c_20btSolverBody__2c_20btSolverConstraint_20const__29($13 | 0, btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($13 + 4 | 0 | 0, HEAP32[((HEAP32[($12 + 32 | 0) >> 2] | 0) + 144 | 0) >> 2] | 0 | 0) | 0 | 0, btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($13 + 4 | 0 | 0, HEAP32[((HEAP32[($12 + 32 | 0) >> 2] | 0) + 148 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($12 + 32 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($12 + 180 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($12 + 24 | 0) >> 2]) * Math_fround(HEAPF32[($12 + 24 | 0) >> 2])) + Math_fround(HEAPF32[($12 + 180 | 0) >> 2]));
|
|
}
|
|
HEAP32[($12 + 48 | 0) >> 2] = (HEAP32[($12 + 48 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$27;
|
|
};
|
|
}
|
|
}
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___size_28_29_20const($13 + 84 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($12 + 16 | 0) >> 2] = 0;
|
|
label$29 : {
|
|
label$30 : while (1) {
|
|
if (!((HEAP32[($12 + 16 | 0) >> 2] | 0 | 0) < (HEAP32[($12 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$29
|
|
}
|
|
(wasm2js_i32$0 = $12, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___operator_5b_5d_28int_29($13 + 84 | 0 | 0, HEAP32[($12 + 16 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $12, wasm2js_f32$0 = Math_fround(HEAPF32[((btAlignedObjectArray_btSolverConstraint___operator_5b_5d_28int_29($13 + 24 | 0 | 0, HEAP32[((HEAP32[($12 + 12 | 0) >> 2] | 0) + 140 | 0) >> 2] | 0 | 0) | 0) + 100 | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
label$31 : {
|
|
if (!(Math_fround(HEAPF32[($12 + 8 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$31
|
|
}
|
|
HEAPF32[($12 + 4 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[((HEAP32[($12 + 12 | 0) >> 2] | 0) + 104 | 0) >> 2]) * Math_fround(HEAPF32[($12 + 8 | 0) >> 2]));
|
|
label$32 : {
|
|
if (!(Math_fround(HEAPF32[($12 + 4 | 0) >> 2]) > Math_fround(HEAPF32[((HEAP32[($12 + 12 | 0) >> 2] | 0) + 104 | 0) >> 2]) & 1 | 0)) {
|
|
break label$32
|
|
}
|
|
HEAPF32[($12 + 4 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($12 + 12 | 0) >> 2] | 0) + 104 | 0) >> 2]);
|
|
}
|
|
HEAPF32[((HEAP32[($12 + 12 | 0) >> 2] | 0) + 120 | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($12 + 4 | 0) >> 2]));
|
|
HEAPF32[((HEAP32[($12 + 12 | 0) >> 2] | 0) + 124 | 0) >> 2] = Math_fround(HEAPF32[($12 + 4 | 0) >> 2]);
|
|
(wasm2js_i32$0 = $12, wasm2js_f32$0 = Math_fround(btSequentialImpulseConstraintSolver__resolveSingleConstraintRowGeneric_28btSolverBody__2c_20btSolverBody__2c_20btSolverConstraint_20const__29($13 | 0, btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($13 + 4 | 0 | 0, HEAP32[((HEAP32[($12 + 12 | 0) >> 2] | 0) + 144 | 0) >> 2] | 0 | 0) | 0 | 0, btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($13 + 4 | 0 | 0, HEAP32[((HEAP32[($12 + 12 | 0) >> 2] | 0) + 148 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($12 + 12 | 0) >> 2] | 0 | 0))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($12 + 180 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[$12 >> 2]) * Math_fround(HEAPF32[$12 >> 2])) + Math_fround(HEAPF32[($12 + 180 | 0) >> 2]));
|
|
}
|
|
HEAP32[($12 + 16 | 0) >> 2] = (HEAP32[($12 + 16 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$30;
|
|
};
|
|
}
|
|
}
|
|
$570 = Math_fround(HEAPF32[($12 + 180 | 0) >> 2]);
|
|
__stack_pointer = $12 + 224 | 0;
|
|
return Math_fround($570);
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__solveGroupCacheFriendlySplitImpulseIterations_28btCollisionObject___2c_20int_2c_20btPersistentManifold___2c_20int_2c_20btTypedConstraint___2c_20int_2c_20btContactSolverInfo_20const__2c_20btIDebugDraw__29($0, $1, $2, $3, $4, $5, $6, $7, $8) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
var $11 = 0, $12 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$11 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $11;
|
|
HEAP32[($11 + 60 | 0) >> 2] = $0;
|
|
HEAP32[($11 + 56 | 0) >> 2] = $1;
|
|
HEAP32[($11 + 52 | 0) >> 2] = $2;
|
|
HEAP32[($11 + 48 | 0) >> 2] = $3;
|
|
HEAP32[($11 + 44 | 0) >> 2] = $4;
|
|
HEAP32[($11 + 40 | 0) >> 2] = $5;
|
|
HEAP32[($11 + 36 | 0) >> 2] = $6;
|
|
HEAP32[($11 + 32 | 0) >> 2] = $7;
|
|
HEAP32[($11 + 28 | 0) >> 2] = $8;
|
|
$12 = HEAP32[($11 + 60 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!(HEAP32[((HEAP32[($11 + 32 | 0) >> 2] | 0) + 52 | 0) >> 2] | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($11 + 24 | 0) >> 2] = 0;
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($11 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[((HEAP32[($11 + 32 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($11 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
(wasm2js_i32$0 = $11, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___size_28_29_20const($12 + 24 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($11 + 12 | 0) >> 2] = 0;
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((HEAP32[($11 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($11 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
(wasm2js_i32$0 = $11, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___operator_5b_5d_28int_29($12 + 24 | 0 | 0, HEAP32[(btAlignedObjectArray_int___operator_5b_5d_28int_29($12 + 104 | 0 | 0, HEAP32[($11 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $11, wasm2js_f32$0 = Math_fround(btSequentialImpulseConstraintSolver__resolveSplitPenetrationImpulse_28btSolverBody__2c_20btSolverBody__2c_20btSolverConstraint_20const__29($12 | 0, btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($12 + 4 | 0 | 0, HEAP32[((HEAP32[($11 + 8 | 0) >> 2] | 0) + 144 | 0) >> 2] | 0 | 0) | 0 | 0, btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($12 + 4 | 0 | 0, HEAP32[((HEAP32[($11 + 8 | 0) >> 2] | 0) + 148 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($11 + 8 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($11 + 20 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($11 + 4 | 0) >> 2]) * Math_fround(HEAPF32[($11 + 4 | 0) >> 2])) + Math_fround(HEAPF32[($11 + 20 | 0) >> 2]));
|
|
HEAP32[($11 + 12 | 0) >> 2] = (HEAP32[($11 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
label$6 : {
|
|
label$7 : {
|
|
if (Math_fround(HEAPF32[($11 + 20 | 0) >> 2]) <= Math_fround(HEAPF32[((HEAP32[($11 + 32 | 0) >> 2] | 0) + 92 | 0) >> 2]) & 1 | 0) {
|
|
break label$7
|
|
}
|
|
if (!((HEAP32[($11 + 24 | 0) >> 2] | 0 | 0) >= ((HEAP32[((HEAP32[($11 + 32 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0) - 1 | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
}
|
|
break label$2;
|
|
}
|
|
HEAP32[($11 + 24 | 0) >> 2] = (HEAP32[($11 + 24 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
}
|
|
__stack_pointer = $11 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__resolveSplitPenetrationImpulse_28btSolverBody__2c_20btSolverBody__2c_20btSolverConstraint_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $12 = Math_fround(0);
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$12 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + 220 | 0) >> 2] | 0 | 0](HEAP32[($6 + 8 | 0) >> 2] | 0, HEAP32[($6 + 4 | 0) >> 2] | 0, HEAP32[$6 >> 2] | 0));
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return Math_fround($12);
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__solveGroupCacheFriendlyIterations_28btCollisionObject___2c_20int_2c_20btPersistentManifold___2c_20int_2c_20btTypedConstraint___2c_20int_2c_20btContactSolverInfo_20const__2c_20btIDebugDraw__29($0, $1, $2, $3, $4, $5, $6, $7, $8) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
var $11 = 0, $12 = 0, $36 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$11 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $11;
|
|
HEAP32[($11 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($11 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($11 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($11 + 32 | 0) >> 2] = $3;
|
|
HEAP32[($11 + 28 | 0) >> 2] = $4;
|
|
HEAP32[($11 + 24 | 0) >> 2] = $5;
|
|
HEAP32[($11 + 20 | 0) >> 2] = $6;
|
|
HEAP32[($11 + 16 | 0) >> 2] = $7;
|
|
HEAP32[($11 + 12 | 0) >> 2] = $8;
|
|
$12 = HEAP32[($11 + 44 | 0) >> 2] | 0;
|
|
CProfileSample__CProfileSample_28char_20const__29($11 + 11 | 0 | 0, 69692 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$12 >> 2] | 0) + 32 | 0) >> 2] | 0 | 0]($12, HEAP32[($11 + 40 | 0) >> 2] | 0, HEAP32[($11 + 36 | 0) >> 2] | 0, HEAP32[($11 + 32 | 0) >> 2] | 0, HEAP32[($11 + 28 | 0) >> 2] | 0, HEAP32[($11 + 24 | 0) >> 2] | 0, HEAP32[($11 + 20 | 0) >> 2] | 0, HEAP32[($11 + 16 | 0) >> 2] | 0, HEAP32[($11 + 12 | 0) >> 2] | 0);
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($12 + 184 | 0) >> 2] | 0 | 0) > (HEAP32[((HEAP32[($11 + 16 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$36 = HEAP32[($12 + 184 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
$36 = HEAP32[((HEAP32[($11 + 16 | 0) >> 2] | 0) + 20 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($11 + 4 | 0) >> 2] = $36;
|
|
HEAP32[$11 >> 2] = 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[$11 >> 2] | 0 | 0) < (HEAP32[($11 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
(wasm2js_i32$0 = $12, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$12 >> 2] | 0) + 40 | 0) >> 2] | 0 | 0]($12, HEAP32[$11 >> 2] | 0, HEAP32[($11 + 40 | 0) >> 2] | 0, HEAP32[($11 + 36 | 0) >> 2] | 0, HEAP32[($11 + 32 | 0) >> 2] | 0, HEAP32[($11 + 28 | 0) >> 2] | 0, HEAP32[($11 + 24 | 0) >> 2] | 0, HEAP32[($11 + 20 | 0) >> 2] | 0, HEAP32[($11 + 16 | 0) >> 2] | 0, HEAP32[($11 + 12 | 0) >> 2] | 0))), HEAPF32[(wasm2js_i32$0 + 228 | 0) >> 2] = wasm2js_f32$0;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (Math_fround(HEAPF32[($12 + 228 | 0) >> 2]) <= Math_fround(HEAPF32[((HEAP32[($11 + 16 | 0) >> 2] | 0) + 92 | 0) >> 2]) & 1 | 0) {
|
|
break label$6
|
|
}
|
|
if (!((HEAP32[$11 >> 2] | 0 | 0) >= ((HEAP32[($11 + 4 | 0) >> 2] | 0) - 1 | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
}
|
|
break label$3;
|
|
}
|
|
HEAP32[$11 >> 2] = (HEAP32[$11 >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
CProfileSample___CProfileSample_28_29($11 + 11 | 0 | 0) | 0;
|
|
__stack_pointer = $11 + 48 | 0;
|
|
return Math_fround(Math_fround(0 | 0));
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__solveGroupCacheFriendlyFinish_28btCollisionObject___2c_20int_2c_20btContactSolverInfo_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $48 = Math_fround(0), $61 = Math_fround(0), $278 = 0, $301 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 288 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 284 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 280 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 276 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 272 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 284 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___size_28_29_20const($7 + 24 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 268 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[((HEAP32[($6 + 272 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0) & 4 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($6 + 260 | 0) >> 2] = 0;
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($6 + 260 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 268 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___operator_5b_5d_28int_29($7 + 24 | 0 | 0, HEAP32[($6 + 260 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 256 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($6 + 252 | 0) >> 2] = HEAP32[((HEAP32[($6 + 256 | 0) >> 2] | 0) + 132 | 0) >> 2] | 0;
|
|
label$4 : {
|
|
if ((HEAP32[($6 + 252 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
__assert_fail(67541 | 0, 72591 | 0, 1882 | 0, 77922 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAPF32[((HEAP32[($6 + 252 | 0) >> 2] | 0) + 132 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($6 + 256 | 0) >> 2] | 0) + 100 | 0) >> 2]);
|
|
$48 = Math_fround(HEAPF32[((btAlignedObjectArray_btSolverConstraint___operator_5b_5d_28int_29($7 + 64 | 0 | 0, HEAP32[((HEAP32[($6 + 256 | 0) >> 2] | 0) + 140 | 0) >> 2] | 0 | 0) | 0) + 100 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($6 + 252 | 0) >> 2] | 0) + 136 | 0) >> 2] = $48;
|
|
label$5 : {
|
|
if (!((HEAP32[((HEAP32[($6 + 272 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0) & 16 | 0)) {
|
|
break label$5
|
|
}
|
|
$61 = Math_fround(HEAPF32[((btAlignedObjectArray_btSolverConstraint___operator_5b_5d_28int_29($7 + 64 | 0 | 0, (HEAP32[((HEAP32[($6 + 256 | 0) >> 2] | 0) + 140 | 0) >> 2] | 0) + 1 | 0 | 0) | 0) + 100 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($6 + 252 | 0) >> 2] | 0) + 140 | 0) >> 2] = $61;
|
|
}
|
|
HEAP32[($6 + 260 | 0) >> 2] = (HEAP32[($6 + 260 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___size_28_29_20const($7 + 44 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 268 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($6 + 260 | 0) >> 2] = 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($6 + 260 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 268 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btAlignedObjectArray_btSolverConstraint___operator_5b_5d_28int_29($7 + 44 | 0 | 0, HEAP32[($6 + 260 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 248 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($6 + 244 | 0) >> 2] = HEAP32[((HEAP32[($6 + 248 | 0) >> 2] | 0) + 132 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btTypedConstraint__getJointFeedback_28_29(HEAP32[($6 + 244 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 240 | 0) >> 2] = wasm2js_i32$1;
|
|
label$8 : {
|
|
if (!((HEAP32[($6 + 240 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 192 | 0 | 0, (HEAP32[($6 + 248 | 0) >> 2] | 0) + 16 | 0 | 0, (HEAP32[($6 + 248 | 0) >> 2] | 0) + 100 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($6 + 208 | 0 | 0, $6 + 192 | 0 | 0, btRigidBody__getLinearFactor_28_29_20const(btTypedConstraint__getRigidBodyA_28_29(HEAP32[($6 + 244 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29_1($6 + 224 | 0 | 0, $6 + 208 | 0 | 0, (HEAP32[($6 + 272 | 0) >> 2] | 0) + 12 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1(HEAP32[($6 + 240 | 0) >> 2] | 0 | 0, $6 + 224 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 144 | 0 | 0, (HEAP32[($6 + 248 | 0) >> 2] | 0) + 48 | 0 | 0, (HEAP32[($6 + 248 | 0) >> 2] | 0) + 100 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($6 + 160 | 0 | 0, $6 + 144 | 0 | 0, btRigidBody__getLinearFactor_28_29_20const(btTypedConstraint__getRigidBodyB_28_29(HEAP32[($6 + 244 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29_1($6 + 176 | 0 | 0, $6 + 160 | 0 | 0, (HEAP32[($6 + 272 | 0) >> 2] | 0) + 12 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1((HEAP32[($6 + 240 | 0) >> 2] | 0) + 32 | 0 | 0, $6 + 176 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($6 + 96 | 0 | 0, HEAP32[($6 + 248 | 0) >> 2] | 0 | 0, btRigidBody__getAngularFactor_28_29_20const(btTypedConstraint__getRigidBodyA_28_29(HEAP32[($6 + 244 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 112 | 0 | 0, $6 + 96 | 0 | 0, (HEAP32[($6 + 248 | 0) >> 2] | 0) + 100 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29_1($6 + 128 | 0 | 0, $6 + 112 | 0 | 0, (HEAP32[($6 + 272 | 0) >> 2] | 0) + 12 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1((HEAP32[($6 + 240 | 0) >> 2] | 0) + 16 | 0 | 0, $6 + 128 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_1($6 + 48 | 0 | 0, (HEAP32[($6 + 248 | 0) >> 2] | 0) + 32 | 0 | 0, btRigidBody__getAngularFactor_28_29_20const(btTypedConstraint__getRigidBodyB_28_29(HEAP32[($6 + 244 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 64 | 0 | 0, $6 + 48 | 0 | 0, (HEAP32[($6 + 248 | 0) >> 2] | 0) + 100 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29_1($6 + 80 | 0 | 0, $6 + 64 | 0 | 0, (HEAP32[($6 + 272 | 0) >> 2] | 0) + 12 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1((HEAP32[($6 + 240 | 0) >> 2] | 0) + 48 | 0 | 0, $6 + 80 | 0 | 0) | 0;
|
|
}
|
|
btTypedConstraint__internalSetAppliedImpulse_28float_29(HEAP32[($6 + 244 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($6 + 248 | 0) >> 2] | 0) + 100 | 0) >> 2])));
|
|
label$9 : {
|
|
if (!(Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[((HEAP32[($6 + 248 | 0) >> 2] | 0) + 100 | 0) >> 2])))) >= Math_fround(btTypedConstraint__getBreakingImpulseThreshold_28_29_20const(HEAP32[($6 + 244 | 0) >> 2] | 0 | 0)) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
btTypedConstraint__setEnabled_28bool_29(HEAP32[($6 + 244 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
}
|
|
HEAP32[($6 + 260 | 0) >> 2] = (HEAP32[($6 + 260 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
HEAP32[($6 + 264 | 0) >> 2] = 0;
|
|
label$10 : {
|
|
label$11 : while (1) {
|
|
if (!((HEAP32[($6 + 264 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btSolverBody___size_28_29_20const($7 + 4 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = HEAP32[((btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($7 + 4 | 0 | 0, HEAP32[($6 + 264 | 0) >> 2] | 0 | 0) | 0) + 240 | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_i32$1;
|
|
label$12 : {
|
|
if (!((HEAP32[($6 + 44 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
label$13 : {
|
|
label$14 : {
|
|
if (!(HEAP32[((HEAP32[($6 + 272 | 0) >> 2] | 0) + 52 | 0) >> 2] | 0)) {
|
|
break label$14
|
|
}
|
|
btSolverBody__writebackVelocityAndTransform_28float_2c_20float_29(btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($7 + 4 | 0 | 0, HEAP32[($6 + 264 | 0) >> 2] | 0 | 0) | 0 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($6 + 272 | 0) >> 2] | 0) + 12 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[((HEAP32[($6 + 272 | 0) >> 2] | 0) + 60 | 0) >> 2])));
|
|
break label$13;
|
|
}
|
|
btSolverBody__writebackVelocity_28_29(btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($7 + 4 | 0 | 0, HEAP32[($6 + 264 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
}
|
|
$278 = HEAP32[((btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($7 + 4 | 0 | 0, HEAP32[($6 + 264 | 0) >> 2] | 0 | 0) | 0) + 240 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 28 | 0 | 0, (btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($7 + 4 | 0 | 0, HEAP32[($6 + 264 | 0) >> 2] | 0 | 0) | 0) + 176 | 0 | 0, (btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($7 + 4 | 0 | 0, HEAP32[($6 + 264 | 0) >> 2] | 0 | 0) | 0) + 208 | 0 | 0);
|
|
btRigidBody__setLinearVelocity_28btVector3_20const__29($278 | 0, $6 + 28 | 0 | 0);
|
|
$301 = HEAP32[((btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($7 + 4 | 0 | 0, HEAP32[($6 + 264 | 0) >> 2] | 0 | 0) | 0) + 240 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 12 | 0 | 0, (btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($7 + 4 | 0 | 0, HEAP32[($6 + 264 | 0) >> 2] | 0 | 0) | 0) + 192 | 0 | 0, (btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($7 + 4 | 0 | 0, HEAP32[($6 + 264 | 0) >> 2] | 0 | 0) | 0) + 224 | 0 | 0);
|
|
btRigidBody__setAngularVelocity_28btVector3_20const__29($301 | 0, $6 + 12 | 0 | 0);
|
|
label$15 : {
|
|
if (!(HEAP32[((HEAP32[($6 + 272 | 0) >> 2] | 0) + 52 | 0) >> 2] | 0)) {
|
|
break label$15
|
|
}
|
|
btCollisionObject__setWorldTransform_28btTransform_20const__29(HEAP32[((btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($7 + 4 | 0 | 0, HEAP32[($6 + 264 | 0) >> 2] | 0 | 0) | 0) + 240 | 0) >> 2] | 0 | 0, btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($7 + 4 | 0 | 0, HEAP32[($6 + 264 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
}
|
|
btCollisionObject__setCompanionId_28int_29(HEAP32[((btAlignedObjectArray_btSolverBody___operator_5b_5d_28int_29($7 + 4 | 0 | 0, HEAP32[($6 + 264 | 0) >> 2] | 0 | 0) | 0) + 240 | 0) >> 2] | 0 | 0, -1 | 0);
|
|
}
|
|
HEAP32[($6 + 264 | 0) >> 2] = (HEAP32[($6 + 264 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$11;
|
|
};
|
|
}
|
|
btAlignedObjectArray_btSolverConstraint___resizeNoInitialize_28int_29($7 + 24 | 0 | 0, 0 | 0);
|
|
btAlignedObjectArray_btSolverConstraint___resizeNoInitialize_28int_29($7 + 44 | 0 | 0, 0 | 0);
|
|
btAlignedObjectArray_btSolverConstraint___resizeNoInitialize_28int_29($7 + 64 | 0 | 0, 0 | 0);
|
|
btAlignedObjectArray_btSolverConstraint___resizeNoInitialize_28int_29($7 + 84 | 0 | 0, 0 | 0);
|
|
btAlignedObjectArray_btSolverBody___resizeNoInitialize_28int_29($7 + 4 | 0 | 0, 0 | 0);
|
|
__stack_pointer = $6 + 288 | 0;
|
|
return Math_fround(Math_fround(0 | 0));
|
|
}
|
|
|
|
function btTypedConstraint__setEnabled_28bool_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP8[($4 + 11 | 0) >> 0] = $1;
|
|
HEAP8[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 20 | 0) >> 0] = (HEAPU8[($4 + 11 | 0) >> 0] | 0) & 1 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSolverBody__writebackVelocityAndTransform_28float_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
var $6 = 0, $5 = 0;
|
|
$5 = __stack_pointer - 96 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 92 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 88 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 84 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 92 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($6 + 240 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btVector3__operator___28btVector3_20const__29_1($6 + 176 | 0 | 0, $6 + 64 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($6 + 192 | 0 | 0, $6 + 80 | 0 | 0) | 0;
|
|
btTransform__btTransform_28_29($5 + 20 | 0 | 0) | 0;
|
|
label$2 : {
|
|
label$3 : {
|
|
if (Math_fround(HEAPF32[(btVector3__operator_20float__28_29($6 + 144 | 0 | 0) | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
if (Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 144 | 0 | 0) | 0) + 4 | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
if (Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 144 | 0 | 0) | 0) + 8 | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
if (Math_fround(HEAPF32[(btVector3__operator_20float__28_29($6 + 160 | 0 | 0) | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
if (Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 160 | 0 | 0) | 0) + 4 | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
if (!(Math_fround(HEAPF32[((btVector3__operator_20float__28_29($6 + 160 | 0 | 0) | 0) + 8 | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
}
|
|
operator__28btVector3_20const__2c_20float_20const__29($5 + 4 | 0 | 0, $6 + 160 | 0 | 0, $5 + 84 | 0 | 0);
|
|
btTransformUtil__integrateTransform_28btTransform_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20btTransform__29($6 | 0, $6 + 144 | 0 | 0, $5 + 4 | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 88 | 0) >> 2])), $5 + 20 | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29($6 | 0, $5 + 20 | 0 | 0) | 0;
|
|
}
|
|
}
|
|
__stack_pointer = $5 + 96 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSolverBody__writebackVelocity_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 240 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btVector3__operator___28btVector3_20const__29_1($4 + 176 | 0 | 0, $4 + 64 | 0 | 0) | 0;
|
|
btVector3__operator___28btVector3_20const__29_1($4 + 192 | 0 | 0, $4 + 80 | 0 | 0) | 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionObject__setWorldTransform_28btTransform_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 304 | 0) >> 2] = (HEAP32[($5 + 304 | 0) >> 2] | 0) + 1 | 0;
|
|
btTransform__operator__28btTransform_20const__29($5 + 4 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverBody___resizeNoInitialize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) > (btAlignedObjectArray_btSolverBody___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btSolverBody___reserve_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 4 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__solveGroup_28btCollisionObject___2c_20int_2c_20btPersistentManifold___2c_20int_2c_20btTypedConstraint___2c_20int_2c_20btContactSolverInfo_20const__2c_20btIDebugDraw__2c_20btDispatcher__29($0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
$7 = $7 | 0;
|
|
$8 = $8 | 0;
|
|
$9 = $9 | 0;
|
|
var $12 = 0, $13 = 0;
|
|
$12 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $12;
|
|
HEAP32[($12 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($12 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($12 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($12 + 32 | 0) >> 2] = $3;
|
|
HEAP32[($12 + 28 | 0) >> 2] = $4;
|
|
HEAP32[($12 + 24 | 0) >> 2] = $5;
|
|
HEAP32[($12 + 20 | 0) >> 2] = $6;
|
|
HEAP32[($12 + 16 | 0) >> 2] = $7;
|
|
HEAP32[($12 + 12 | 0) >> 2] = $8;
|
|
HEAP32[($12 + 8 | 0) >> 2] = $9;
|
|
$13 = HEAP32[($12 + 44 | 0) >> 2] | 0;
|
|
CProfileSample__CProfileSample_28char_20const__29($12 + 7 | 0 | 0, 71314 | 0) | 0;
|
|
Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$13 >> 2] | 0) + 44 | 0) >> 2] | 0 | 0]($13, HEAP32[($12 + 40 | 0) >> 2] | 0, HEAP32[($12 + 36 | 0) >> 2] | 0, HEAP32[($12 + 32 | 0) >> 2] | 0, HEAP32[($12 + 28 | 0) >> 2] | 0, HEAP32[($12 + 24 | 0) >> 2] | 0, HEAP32[($12 + 20 | 0) >> 2] | 0, HEAP32[($12 + 16 | 0) >> 2] | 0, HEAP32[($12 + 12 | 0) >> 2] | 0));
|
|
Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$13 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($13, HEAP32[($12 + 40 | 0) >> 2] | 0, HEAP32[($12 + 36 | 0) >> 2] | 0, HEAP32[($12 + 32 | 0) >> 2] | 0, HEAP32[($12 + 28 | 0) >> 2] | 0, HEAP32[($12 + 24 | 0) >> 2] | 0, HEAP32[($12 + 20 | 0) >> 2] | 0, HEAP32[($12 + 16 | 0) >> 2] | 0, HEAP32[($12 + 12 | 0) >> 2] | 0));
|
|
Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$13 >> 2] | 0) + 36 | 0) >> 2] | 0 | 0]($13, HEAP32[($12 + 40 | 0) >> 2] | 0, HEAP32[($12 + 36 | 0) >> 2] | 0, HEAP32[($12 + 16 | 0) >> 2] | 0));
|
|
CProfileSample___CProfileSample_28_29($12 + 7 | 0 | 0) | 0;
|
|
__stack_pointer = $12 + 48 | 0;
|
|
return Math_fround(Math_fround(0 | 0));
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__reset_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 232 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btConstraintSolver__prepareSolve_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
return;
|
|
}
|
|
|
|
function btConstraintSolver__allSolved_28btContactSolverInfo_20const__2c_20btIDebugDraw__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
return;
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__getSolverType_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 1 | 0;
|
|
}
|
|
|
|
function btConstraintSolver___btConstraintSolver_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btAlignedAllocator_btSolverBody_2c_2016u___deallocate_28btSolverBody__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverConstraint___destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverConstraint___deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btSolverConstraint_2c_2016u___deallocate_28btSolverConstraint__29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btSolverConstraint_2c_2016u___deallocate_28btSolverConstraint__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btTypedConstraint__btConstraintInfo1_2c_2016u___deallocate_28btTypedConstraint__btConstraintInfo1__29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btTypedConstraint__btConstraintInfo1_2c_2016u___deallocate_28btTypedConstraint__btConstraintInfo1__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverConstraint___allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btSolverConstraint_2c_2016u___allocate_28int_2c_20btSolverConstraint_20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btSolverConstraint___copy_28int_2c_20int_2c_20btSolverConstraint__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
__memcpy(btSolverConstraint__operator_20new_28unsigned_20long_2c_20void__29(152 | 0, (HEAP32[($6 + 16 | 0) >> 2] | 0) + Math_imul(HEAP32[($6 + 12 | 0) >> 2] | 0, 152) | 0 | 0) | 0 | 0, (HEAP32[($7 + 12 | 0) >> 2] | 0) + Math_imul(HEAP32[($6 + 12 | 0) >> 2] | 0, 152) | 0 | 0, 152 | 0) | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btSolverConstraint_2c_2016u___allocate_28int_2c_20btSolverConstraint_20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(Math_imul(HEAP32[($5 + 8 | 0) >> 2] | 0, 152) | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btSolverConstraint__operator_20new_28unsigned_20long_2c_20void__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return HEAP32[($4 + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_btSolverBody_2c_2016u___allocate_28int_2c_20btSolverBody_20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(Math_imul(HEAP32[($5 + 8 | 0) >> 2] | 0, 244) | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btTypedConstraint__btConstraintInfo1_2c_2016u___allocate_28int_2c_20btTypedConstraint__btConstraintInfo1_20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint__btConstraintInfo1___copy_28int_2c_20int_2c_20btTypedConstraint__btConstraintInfo1__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, $7 = 0, i64toi32_i32$1 = 0, $85 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
i64toi32_i32$2 = (HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 3 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$85 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = (HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 3 | 0) | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $85;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btTypedConstraint__btConstraintInfo1_2c_2016u___allocate_28int_2c_20btTypedConstraint__btConstraintInfo1_20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 3 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btSequentialImpulseConstraintSolver_cpp() {
|
|
__cxx_global_var_init_72();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_73() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(115436 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btTypedConstraint__getFixedBody_28_29() {
|
|
var $2 = 0, $32 = 0;
|
|
$2 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $2;
|
|
label$1 : {
|
|
if (!(((HEAPU8[(0 + 116116 | 0) >> 0] | 0) & 255 | 0 | 0) == (0 & 255 | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[($2 + 44 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($2 + 40 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($2 + 36 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($2 + 48 | 0 | 0, $2 + 44 | 0 | 0, $2 + 40 | 0 | 0, $2 + 36 | 0 | 0) | 0;
|
|
$32 = 0;
|
|
btRigidBody__btRigidBody_28float_2c_20btMotionState__2c_20btCollisionShape__2c_20btVector3_20const__29(115440 | 0, Math_fround(Math_fround($32 | 0)), $32 | 0, $32 | 0, $2 + 48 | 0 | 0) | 0;
|
|
__cxa_atexit(1099 | 0, 0 | 0, 65536 | 0) | 0;
|
|
HEAP8[(0 + 116116 | 0) >> 0] = 1;
|
|
}
|
|
HEAPF32[($2 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($2 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($2 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($2 + 20 | 0 | 0, $2 + 16 | 0 | 0, $2 + 12 | 0 | 0, $2 + 8 | 0 | 0) | 0;
|
|
btRigidBody__setMassProps_28float_2c_20btVector3_20const__29(115440 | 0, Math_fround(Math_fround(0 | 0)), $2 + 20 | 0 | 0);
|
|
__stack_pointer = $2 + 64 | 0;
|
|
return 115440 | 0;
|
|
}
|
|
|
|
function __cxx_global_array_dtor_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btRigidBody___btRigidBody_28_29(115440 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTypedConstraint__btTypedConstraint_28btTypedConstraintType_2c_20btRigidBody__2c_20btRigidBody__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $7 = 0, $6 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btTypedObject__btTypedObject_28int_29($7 + 4 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$7 >> 2] = 102548 + 8 | 0;
|
|
HEAP32[($7 + 8 | 0) >> 2] = -1;
|
|
HEAP32[($7 + 12 | 0) >> 2] = -1;
|
|
HEAPF32[($7 + 16 | 0) >> 2] = Math_fround(3402823466385288598117041.0e14);
|
|
HEAP8[($7 + 20 | 0) >> 0] = 1;
|
|
HEAP8[($7 + 21 | 0) >> 0] = 0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = -1;
|
|
HEAP32[($7 + 28 | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 32 | 0) >> 2] = HEAP32[$6 >> 2] | 0;
|
|
HEAPF32[($7 + 36 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($7 + 40 | 0) >> 2] = Math_fround(.05000000074505806);
|
|
HEAP32[($7 + 44 | 0) >> 2] = 0;
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btTypedConstraint__getMotorFactor_28float_2c_20float_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
$4 = Math_fround($4);
|
|
$5 = Math_fround($5);
|
|
var $8 = 0;
|
|
$8 = __stack_pointer - 48 | 0;
|
|
HEAP32[($8 + 40 | 0) >> 2] = $0;
|
|
HEAPF32[($8 + 36 | 0) >> 2] = $1;
|
|
HEAPF32[($8 + 32 | 0) >> 2] = $2;
|
|
HEAPF32[($8 + 28 | 0) >> 2] = $3;
|
|
HEAPF32[($8 + 24 | 0) >> 2] = $4;
|
|
HEAPF32[($8 + 20 | 0) >> 2] = $5;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 32 | 0) >> 2]) > Math_fround(HEAPF32[($8 + 28 | 0) >> 2]) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($8 + 44 | 0) >> 2] = Math_fround(1.0);
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 32 | 0) >> 2]) == Math_fround(HEAPF32[($8 + 28 | 0) >> 2]) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAPF32[($8 + 44 | 0) >> 2] = Math_fround(0 | 0);
|
|
break label$1;
|
|
}
|
|
HEAPF32[($8 + 16 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($8 + 12 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($8 + 24 | 0) >> 2]) / Math_fround(HEAPF32[($8 + 20 | 0) >> 2]));
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 12 | 0) >> 2]) < Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 36 | 0) >> 2]) >= Math_fround(HEAPF32[($8 + 32 | 0) >> 2]) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
if (!(Math_fround(HEAPF32[($8 + 36 | 0) >> 2]) < Math_fround(Math_fround(HEAPF32[($8 + 32 | 0) >> 2]) - Math_fround(HEAPF32[($8 + 12 | 0) >> 2])) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAPF32[($8 + 16 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($8 + 32 | 0) >> 2]) - Math_fround(HEAPF32[($8 + 36 | 0) >> 2])) / Math_fround(HEAPF32[($8 + 12 | 0) >> 2]));
|
|
break label$6;
|
|
}
|
|
label$8 : {
|
|
label$9 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 36 | 0) >> 2]) < Math_fround(HEAPF32[($8 + 32 | 0) >> 2]) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
HEAPF32[($8 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
break label$8;
|
|
}
|
|
HEAPF32[($8 + 16 | 0) >> 2] = Math_fround(1.0);
|
|
}
|
|
}
|
|
break label$4;
|
|
}
|
|
label$10 : {
|
|
label$11 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 12 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
label$12 : {
|
|
label$13 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 36 | 0) >> 2]) <= Math_fround(HEAPF32[($8 + 28 | 0) >> 2]) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
if (!(Math_fround(HEAPF32[($8 + 36 | 0) >> 2]) > Math_fround(Math_fround(HEAPF32[($8 + 28 | 0) >> 2]) - Math_fround(HEAPF32[($8 + 12 | 0) >> 2])) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
HEAPF32[($8 + 16 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($8 + 28 | 0) >> 2]) - Math_fround(HEAPF32[($8 + 36 | 0) >> 2])) / Math_fround(HEAPF32[($8 + 12 | 0) >> 2]));
|
|
break label$12;
|
|
}
|
|
label$14 : {
|
|
label$15 : {
|
|
if (!(Math_fround(HEAPF32[($8 + 36 | 0) >> 2]) > Math_fround(HEAPF32[($8 + 28 | 0) >> 2]) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
HEAPF32[($8 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
break label$14;
|
|
}
|
|
HEAPF32[($8 + 16 | 0) >> 2] = Math_fround(1.0);
|
|
}
|
|
}
|
|
break label$10;
|
|
}
|
|
HEAPF32[($8 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
}
|
|
}
|
|
HEAPF32[($8 + 44 | 0) >> 2] = Math_fround(HEAPF32[($8 + 16 | 0) >> 2]);
|
|
}
|
|
return Math_fround(Math_fround(HEAPF32[($8 + 44 | 0) >> 2]));
|
|
}
|
|
|
|
function btTypedConstraint__serialize_28void__2c_20btSerializer__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $8 = 0, $14 = 0, $20 = 0, $24 = 0, $38 = 0, $12 = 0, $18 = 0, $28 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 16 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
$8 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
$12 = FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($8, HEAP32[($6 + 28 | 0) >> 2] | 0) | 0;
|
|
HEAP32[(HEAP32[($5 + 16 | 0) >> 2] | 0) >> 2] = $12;
|
|
$14 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
$18 = FUNCTION_TABLE[HEAP32[((HEAP32[$14 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($14, HEAP32[($6 + 32 | 0) >> 2] | 0) | 0;
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 4 | 0) >> 2] = $18;
|
|
$20 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$20 >> 2] | 0) + 40 | 0) >> 2] | 0 | 0]($20, $6) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$24 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
$28 = FUNCTION_TABLE[HEAP32[((HEAP32[$24 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($24, HEAP32[($5 + 12 | 0) >> 2] | 0) | 0;
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 8 | 0) >> 2] = $28;
|
|
label$1 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$38 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$38 >> 2] | 0) + 48 | 0) >> 2] | 0 | 0]($38, HEAP32[($5 + 12 | 0) >> 2] | 0);
|
|
}
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 12 | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 24 | 0) >> 2] = (HEAPU8[($6 + 21 | 0) >> 0] | 0) & 1 | 0;
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 40 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
HEAPF32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 44 | 0) >> 2] = Math_fround(HEAPF32[($6 + 16 | 0) >> 2]);
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 48 | 0) >> 2] = (HEAPU8[($6 + 20 | 0) >> 0] | 0) & 1 | 0 ? 1 : 0;
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 20 | 0) >> 2] = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 16 | 0) >> 2] = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
HEAPF32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 28 | 0) >> 2] = Math_fround(HEAPF32[($6 + 36 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 32 | 0) >> 2] = Math_fround(HEAPF32[($6 + 40 | 0) >> 2]);
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 36 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = 0;
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (btRigidBody__getNumConstraintRefs_28_29_20const(HEAP32[($6 + 28 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
label$4 : {
|
|
if (!((btRigidBody__getConstraintRef_28int_29(HEAP32[($6 + 28 | 0) >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) == ($6 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 36 | 0) >> 2] = 1;
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = 0;
|
|
label$5 : {
|
|
label$6 : while (1) {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (btRigidBody__getNumConstraintRefs_28_29_20const(HEAP32[($6 + 32 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
label$7 : {
|
|
if (!((btRigidBody__getConstraintRef_28int_29(HEAP32[($6 + 32 | 0) >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) == ($6 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 36 | 0) >> 2] = 1;
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$6;
|
|
};
|
|
}
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return 83291 | 0;
|
|
}
|
|
|
|
function btRigidBody__getNumConstraintRefs_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $7 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$7 = btAlignedObjectArray_btTypedConstraint____size_28_29_20const((HEAP32[($3 + 12 | 0) >> 2] | 0) + 544 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btRigidBody__getConstraintRef_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $10 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$10 = HEAP32[(btAlignedObjectArray_btTypedConstraint____operator_5b_5d_28int_29((HEAP32[($4 + 12 | 0) >> 2] | 0) + 544 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint____size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint____operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btTypedConstraint____size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btRigidBody___btRigidBody_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $17 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
HEAP32[$4 >> 2] = 102668 + 8 | 0;
|
|
label$1 : {
|
|
if (!(btAlignedObjectArray_btTypedConstraint____size_28_29_20const($4 + 544 | 0 | 0) | 0)) {
|
|
break label$1
|
|
}
|
|
__assert_fail(86019 | 0, 78085 | 0, 189 | 0, 66084 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
btAlignedObjectArray_btTypedConstraint_____btAlignedObjectArray_28_29($4 + 544 | 0 | 0) | 0;
|
|
btCollisionObject___btCollisionObject_28_29($4 | 0) | 0;
|
|
$17 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $17 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint_____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btTypedConstraint____clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAngularLimit__set_28float_2c_20float_2c_20float_2c_20float_2c_20float_29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
$4 = Math_fround($4);
|
|
$5 = Math_fround($5);
|
|
var $8 = 0, $9 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$8 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($8 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($8 + 20 | 0) >> 2] = $2;
|
|
HEAPF32[($8 + 16 | 0) >> 2] = $3;
|
|
HEAPF32[($8 + 12 | 0) >> 2] = $4;
|
|
HEAPF32[($8 + 8 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 28 | 0) >> 2] | 0;
|
|
HEAPF32[($9 + 4 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($8 + 20 | 0) >> 2]) - Math_fround(HEAPF32[($8 + 24 | 0) >> 2])) / Math_fround(2.0));
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(btNormalizeAngle_28float_29(Math_fround(Math_fround(Math_fround(HEAPF32[($8 + 24 | 0) >> 2]) + Math_fround(HEAPF32[($9 + 4 | 0) >> 2])))))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($9 + 8 | 0) >> 2] = Math_fround(HEAPF32[($8 + 16 | 0) >> 2]);
|
|
HEAPF32[($9 + 12 | 0) >> 2] = Math_fround(HEAPF32[($8 + 12 | 0) >> 2]);
|
|
HEAPF32[($9 + 16 | 0) >> 2] = Math_fround(HEAPF32[($8 + 8 | 0) >> 2]);
|
|
__stack_pointer = $8 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAngularLimit__test_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $5 = 0, $4 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 24 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP8[($5 + 28 | 0) >> 0] = 0;
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 4 | 0) >> 2]) >= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btNormalizeAngle_28float_29(Math_fround(Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2]) - Math_fround(HEAPF32[$5 >> 2])))))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 4 | 0) >> 2]) < Math_fround(-Math_fround(HEAPF32[($5 + 4 | 0) >> 2])) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP8[($5 + 28 | 0) >> 0] = 1;
|
|
HEAPF32[($5 + 20 | 0) >> 2] = Math_fround(-Math_fround(Math_fround(HEAPF32[($4 + 4 | 0) >> 2]) + Math_fround(HEAPF32[($5 + 4 | 0) >> 2])));
|
|
HEAPF32[($5 + 24 | 0) >> 2] = Math_fround(1.0);
|
|
break label$2;
|
|
}
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 4 | 0) >> 2]) > Math_fround(HEAPF32[($5 + 4 | 0) >> 2]) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP8[($5 + 28 | 0) >> 0] = 1;
|
|
HEAPF32[($5 + 20 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2]) - Math_fround(HEAPF32[($4 + 4 | 0) >> 2]));
|
|
HEAPF32[($5 + 24 | 0) >> 2] = Math_fround(-1.0);
|
|
}
|
|
}
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAngularLimit__fit_28float__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $28 = Math_fround(0), $30 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 4 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btNormalizeAngle_28float_29(Math_fround(Math_fround(Math_fround(HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2]) - Math_fround(HEAPF32[$5 >> 2])))))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
label$2 : {
|
|
if ((btEqual_28float_2c_20float_29(Math_fround(Math_fround(HEAPF32[($4 + 4 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2]))) | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 4 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$28 = Math_fround(btAngularLimit__getHigh_28_29_20const($5 | 0));
|
|
HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] = $28;
|
|
break label$3;
|
|
}
|
|
$30 = Math_fround(btAngularLimit__getLow_28_29_20const($5 | 0));
|
|
HEAPF32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] = $30;
|
|
}
|
|
}
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btEqual_28float_2c_20float_29($0, $1) {
|
|
$0 = Math_fround($0);
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $11 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAPF32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
$11 = 0;
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 12 | 0) >> 2]) <= Math_fround(HEAPF32[($4 + 8 | 0) >> 2]) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$11 = Math_fround(HEAPF32[($4 + 12 | 0) >> 2]) < Math_fround(-Math_fround(HEAPF32[($4 + 8 | 0) >> 2])) ^ -1 | 0;
|
|
}
|
|
return $11 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btAngularLimit__getHigh_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $8 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$8 = Math_fround(btNormalizeAngle_28float_29(Math_fround(Math_fround(Math_fround(HEAPF32[$4 >> 2]) + Math_fround(HEAPF32[($4 + 4 | 0) >> 2])))));
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($8);
|
|
}
|
|
|
|
function btAngularLimit__getLow_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $8 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
$8 = Math_fround(btNormalizeAngle_28float_29(Math_fround(Math_fround(Math_fround(HEAPF32[$4 >> 2]) - Math_fround(HEAPF32[($4 + 4 | 0) >> 2])))));
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($8);
|
|
}
|
|
|
|
function btTypedConstraint___btTypedConstraint_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btTypedConstraint__buildJacobian_28_29($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return;
|
|
}
|
|
|
|
function btTypedConstraint__calculateSerializeBufferSize_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 52 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint____clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btTypedConstraint____destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btTypedConstraint____size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btTypedConstraint____deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btTypedConstraint____init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint____destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint____deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btTypedConstraint__2c_2016u___deallocate_28btTypedConstraint___29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint____init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btTypedConstraint__2c_2016u___deallocate_28btTypedConstraint___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btTypedConstraint_cpp() {
|
|
__cxx_global_var_init_73();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_74() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(116120 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__btRigidBody_28btRigidBody__btRigidBodyConstructionInfo_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btCollisionObject__btCollisionObject_28_29($5 | 0) | 0;
|
|
HEAP32[$5 >> 2] = 102668 + 8 | 0;
|
|
btMatrix3x3__btMatrix3x3_28_29($5 + 324 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 372 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 388 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 408 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 424 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 440 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 456 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 472 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 488 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btTypedConstraint____btAlignedObjectArray_28_29($5 + 544 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 572 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 588 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 604 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 620 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 636 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 652 | 0 | 0) | 0;
|
|
btRigidBody__setupRigidBody_28btRigidBody__btRigidBodyConstructionInfo_20const__29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btTypedConstraint__2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btTypedConstraint____init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btRigidBody__setupRigidBody_28btRigidBody__btRigidBodyConstructionInfo_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $168 = 0, $229 = 0, $249 = 0, $251 = 0, $765 = 0, $775 = 0;
|
|
$4 = __stack_pointer - 144 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 140 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 136 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 140 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 252 | 0) >> 2] = 2;
|
|
HEAPF32[($4 + 132 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 128 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 124 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 372 | 0 | 0, $4 + 132 | 0 | 0, $4 + 128 | 0 | 0, $4 + 124 | 0 | 0);
|
|
HEAPF32[($4 + 120 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 116 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 112 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 388 | 0 | 0, $4 + 120 | 0 | 0, $4 + 116 | 0 | 0, $4 + 112 | 0 | 0);
|
|
HEAPF32[($4 + 108 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($4 + 104 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($4 + 100 | 0) >> 2] = Math_fround(1.0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 604 | 0 | 0, $4 + 108 | 0 | 0, $4 + 104 | 0 | 0, $4 + 100 | 0 | 0);
|
|
HEAPF32[($4 + 96 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($4 + 92 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($4 + 88 | 0) >> 2] = Math_fround(1.0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 408 | 0 | 0, $4 + 96 | 0 | 0, $4 + 92 | 0 | 0, $4 + 88 | 0 | 0);
|
|
HEAPF32[($4 + 84 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 80 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 76 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 424 | 0 | 0, $4 + 84 | 0 | 0, $4 + 80 | 0 | 0, $4 + 76 | 0 | 0);
|
|
HEAPF32[($4 + 72 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 68 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 64 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 440 | 0 | 0, $4 + 72 | 0 | 0, $4 + 68 | 0 | 0, $4 + 64 | 0 | 0);
|
|
HEAPF32[($4 + 60 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 56 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 52 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 472 | 0 | 0, $4 + 60 | 0 | 0, $4 + 56 | 0 | 0, $4 + 52 | 0 | 0);
|
|
HEAPF32[($4 + 48 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 44 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 40 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 488 | 0 | 0, $4 + 48 | 0 | 0, $4 + 44 | 0 | 0, $4 + 40 | 0 | 0);
|
|
btRigidBody__setDamping_28float_2c_20float_29($5 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($4 + 136 | 0) >> 2] | 0) + 92 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[((HEAP32[($4 + 136 | 0) >> 2] | 0) + 96 | 0) >> 2])));
|
|
HEAPF32[($5 + 532 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($4 + 136 | 0) >> 2] | 0) + 116 | 0) >> 2]);
|
|
HEAPF32[($5 + 536 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($4 + 136 | 0) >> 2] | 0) + 120 | 0) >> 2]);
|
|
HEAP32[($5 + 540 | 0) >> 2] = HEAP32[((HEAP32[($4 + 136 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 668 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 672 | 0) >> 2] = 0;
|
|
HEAP8[($5 + 512 | 0) >> 0] = (HEAPU8[((HEAP32[($4 + 136 | 0) >> 2] | 0) + 124 | 0) >> 0] | 0) & 1 | 0;
|
|
HEAPF32[($5 + 516 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($4 + 136 | 0) >> 2] | 0) + 128 | 0) >> 2]);
|
|
HEAPF32[($5 + 520 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($4 + 136 | 0) >> 2] | 0) + 132 | 0) >> 2]);
|
|
HEAPF32[($5 + 524 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($4 + 136 | 0) >> 2] | 0) + 136 | 0) >> 2]);
|
|
HEAPF32[($5 + 528 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($4 + 136 | 0) >> 2] | 0) + 140 | 0) >> 2]);
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 540 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$168 = HEAP32[($5 + 540 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$168 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($168, $5 + 4 | 0);
|
|
break label$1;
|
|
}
|
|
btTransform__operator__28btTransform_20const__29($5 + 4 | 0 | 0, (HEAP32[($4 + 136 | 0) >> 2] | 0) + 8 | 0 | 0) | 0;
|
|
}
|
|
btTransform__operator__28btTransform_20const__29($5 + 68 | 0 | 0, $5 + 4 | 0 | 0) | 0;
|
|
HEAPF32[($4 + 36 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 32 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 28 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 132 | 0 | 0, $4 + 36 | 0 | 0, $4 + 32 | 0 | 0, $4 + 28 | 0 | 0);
|
|
HEAPF32[($4 + 24 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 148 | 0 | 0, $4 + 24 | 0 | 0, $4 + 20 | 0 | 0, $4 + 16 | 0 | 0);
|
|
HEAPF32[($5 + 228 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($4 + 136 | 0) >> 2] | 0) + 100 | 0) >> 2]);
|
|
HEAPF32[($5 + 236 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($4 + 136 | 0) >> 2] | 0) + 104 | 0) >> 2]);
|
|
HEAPF32[($5 + 240 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($4 + 136 | 0) >> 2] | 0) + 108 | 0) >> 2]);
|
|
HEAPF32[($5 + 232 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($4 + 136 | 0) >> 2] | 0) + 112 | 0) >> 2]);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($5, HEAP32[((HEAP32[($4 + 136 | 0) >> 2] | 0) + 72 | 0) >> 2] | 0);
|
|
$229 = HEAP32[(0 + 116128 | 0) >> 2] | 0;
|
|
HEAP32[(0 + 116128 | 0) >> 2] = $229 + 1 | 0;
|
|
HEAP32[($5 + 568 | 0) >> 2] = $229;
|
|
btRigidBody__setMassProps_28float_2c_20btVector3_20const__29($5 | 0, Math_fround(Math_fround(HEAPF32[(HEAP32[($4 + 136 | 0) >> 2] | 0) >> 2])), (HEAP32[($4 + 136 | 0) >> 2] | 0) + 76 | 0 | 0);
|
|
btRigidBody__updateInertiaTensor_28_29($5 | 0);
|
|
HEAP32[($5 + 564 | 0) >> 2] = 8;
|
|
btVector3__setZero_28_29($5 + 572 | 0 | 0);
|
|
btVector3__setZero_28_29($5 + 588 | 0 | 0);
|
|
operator__28float_20const__2c_20btVector3_20const__29($4 | 0, $5 + 404 | 0 | 0, $5 + 408 | 0 | 0);
|
|
$249 = $5 + 620 | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[$4 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
$765 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $249;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $765;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$251 = 8;
|
|
i64toi32_i32$2 = $4 + $251 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$775 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $249 + $251 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $775;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__setZero_28_29($5 + 636 | 0 | 0);
|
|
btVector3__setZero_28_29($5 + 652 | 0 | 0);
|
|
__stack_pointer = $4 + 144 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btTypedConstraint__2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btRigidBody__setDamping_28float_2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $6 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 12 | 0) >> 2] = Math_fround(1.0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(HEAPF32[(float_20const__20btClamped_float__28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 24 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 504 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($5 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 4 | 0) >> 2] = Math_fround(1.0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(HEAPF32[(float_20const__20btClamped_float__28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 20 | 0 | 0, $5 + 8 | 0 | 0, $5 + 4 | 0 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 508 | 0) >> 2] = wasm2js_f32$0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__setMassProps_28float_2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $6 = 0, i64toi32_i32$2 = 0, $33 = 0, $35 = 0, $56 = Math_fround(0), $73 = Math_fround(0), $90 = Math_fround(0), $111 = 0, $113 = 0, $191 = 0, $204 = 0, $42 = 0, $339 = 0, $352 = 0;
|
|
$5 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 60 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 56 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 52 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 60 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 56 | 0) >> 2]) == Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($6 + 204 | 0) >> 2] = HEAP32[($6 + 204 | 0) >> 2] | 0 | 1 | 0;
|
|
HEAPF32[($6 + 404 | 0) >> 2] = Math_fround(0 | 0);
|
|
break label$1;
|
|
}
|
|
HEAP32[($6 + 204 | 0) >> 2] = (HEAP32[($6 + 204 | 0) >> 2] | 0) & -2 | 0;
|
|
HEAPF32[($6 + 404 | 0) >> 2] = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[($5 + 56 | 0) >> 2]));
|
|
}
|
|
operator__28float_20const__2c_20btVector3_20const__29($5 + 36 | 0 | 0, $5 + 56 | 0 | 0, $6 + 440 | 0 | 0);
|
|
$33 = $6 + 424 | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 40 | 0) >> 2] | 0;
|
|
$191 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $33;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $191;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$35 = 8;
|
|
i64toi32_i32$2 = ($5 + 36 | 0) + $35 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$204 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $33 + $35 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $204;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$42 = $6 + 456 | 0;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 52 | 0) >> 2] | 0 | 0) | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$56 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 52 | 0) >> 2] | 0 | 0) | 0) >> 2]));
|
|
break label$3;
|
|
}
|
|
$56 = Math_fround(0 | 0);
|
|
}
|
|
HEAPF32[($5 + 32 | 0) >> 2] = $56;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 52 | 0) >> 2] | 0 | 0) | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$73 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 52 | 0) >> 2] | 0 | 0) | 0) >> 2]));
|
|
break label$5;
|
|
}
|
|
$73 = Math_fround(0 | 0);
|
|
}
|
|
HEAPF32[($5 + 28 | 0) >> 2] = $73;
|
|
label$7 : {
|
|
label$8 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 52 | 0) >> 2] | 0 | 0) | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
$90 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 52 | 0) >> 2] | 0 | 0) | 0) >> 2]));
|
|
break label$7;
|
|
}
|
|
$90 = Math_fround(0 | 0);
|
|
}
|
|
HEAPF32[($5 + 24 | 0) >> 2] = $90;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($42 | 0, $5 + 32 | 0 | 0, $5 + 28 | 0 | 0, $5 + 24 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($5 + 8 | 0 | 0, $6 + 408 | 0 | 0, $6 + 404 | 0 | 0);
|
|
$111 = $6 + 620 | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
$339 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $111;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $339;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$113 = 8;
|
|
i64toi32_i32$2 = ($5 + 8 | 0) + $113 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$352 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $111 + $113 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $352;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $5 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__updateInertiaTensor_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 160 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 156 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 156 | 0) >> 2] | 0;
|
|
btMatrix3x3__scaled_28btVector3_20const__29_20const($3 + 60 | 0 | 0, btTransform__getBasis_28_29($4 + 4 | 0 | 0) | 0 | 0, $4 + 456 | 0 | 0);
|
|
btMatrix3x3__transpose_28_29_20const($3 + 12 | 0 | 0, btTransform__getBasis_28_29($4 + 4 | 0 | 0) | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btMatrix3x3_20const__29($3 + 108 | 0 | 0, $3 + 60 | 0 | 0, $3 + 12 | 0 | 0);
|
|
btMatrix3x3__operator__28btMatrix3x3_20const__29($4 + 324 | 0 | 0, $3 + 108 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 160 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__btRigidBody_28float_2c_20btMotionState__2c_20btCollisionShape__2c_20btVector3_20const__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $8 = 0, $7 = 0;
|
|
$7 = __stack_pointer - 176 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 172 | 0) >> 2] = $0;
|
|
HEAPF32[($7 + 168 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 164 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 160 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 156 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 172 | 0) >> 2] | 0;
|
|
btCollisionObject__btCollisionObject_28_29($8 | 0) | 0;
|
|
HEAP32[$8 >> 2] = 102668 + 8 | 0;
|
|
btMatrix3x3__btMatrix3x3_28_29($8 + 324 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 372 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 388 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 408 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 424 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 440 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 456 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 472 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 488 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btTypedConstraint____btAlignedObjectArray_28_29($8 + 544 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 572 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 588 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 604 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 620 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 636 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($8 + 652 | 0 | 0) | 0;
|
|
btRigidBody__btRigidBodyConstructionInfo__btRigidBodyConstructionInfo_28float_2c_20btMotionState__2c_20btCollisionShape__2c_20btVector3_20const__29($7 + 12 | 0 | 0, Math_fround(Math_fround(HEAPF32[($7 + 168 | 0) >> 2])), HEAP32[($7 + 164 | 0) >> 2] | 0 | 0, HEAP32[($7 + 160 | 0) >> 2] | 0 | 0, HEAP32[($7 + 156 | 0) >> 2] | 0 | 0) | 0;
|
|
btRigidBody__setupRigidBody_28btRigidBody__btRigidBodyConstructionInfo_20const__29($8 | 0, $7 + 12 | 0 | 0);
|
|
__stack_pointer = $7 + 176 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function float_20const__20btClamped_float__28float_20const__2c_20float_20const__2c_20float_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $14 = 0, $23 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($5 + 12 | 0) >> 2] | 0) >> 2]) < Math_fround(HEAPF32[(HEAP32[($5 + 8 | 0) >> 2] | 0) >> 2]) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$14 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[(HEAP32[($5 + 4 | 0) >> 2] | 0) >> 2]) < Math_fround(HEAPF32[(HEAP32[($5 + 12 | 0) >> 2] | 0) >> 2]) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$23 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
break label$3;
|
|
}
|
|
$23 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
}
|
|
$14 = $23;
|
|
}
|
|
return $14 | 0;
|
|
}
|
|
|
|
function btMatrix3x3__scaled_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 36 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 40 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($6 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($6 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($6 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($6 + 16 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($6 + 16 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($6 + 16 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const($6 + 32 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__x_28_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const($6 + 32 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__y_28_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const($6 + 32 | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(btVector3__z_28_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0) | 0) >> 2]))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
btMatrix3x3__btMatrix3x3_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $5 + 32 | 0 | 0, $5 + 28 | 0 | 0, $5 + 24 | 0 | 0, $5 + 20 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0, $5 + 8 | 0 | 0, $5 + 4 | 0 | 0, $5 | 0) | 0;
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__predictIntegratedTransform_28float_2c_20btTransform__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
btTransformUtil__integrateTransform_28btTransform_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20btTransform__29($6 + 4 | 0 | 0, $6 + 372 | 0 | 0, $6 + 388 | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 8 | 0) >> 2])), HEAP32[($5 + 4 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__saveKinematicState_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $5 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, $19 = 0, $42 = 0, $44 = 0, $51 = 0, $53 = 0, $150 = 0, $160 = 0, $170 = 0, $180 = 0;
|
|
$4 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 44 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 40 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 44 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 40 | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((btRigidBody__getMotionState_28_29($5 | 0) | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$19 = btRigidBody__getMotionState_28_29($5 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$19 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($19, $5 + 4 | 0);
|
|
}
|
|
btVector3__btVector3_28_29($4 + 24 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 8 | 0 | 0) | 0;
|
|
btTransformUtil__calculateVelocity_28btTransform_20const__2c_20btTransform_20const__2c_20float_2c_20btVector3__2c_20btVector3__29($5 + 68 | 0 | 0, $5 + 4 | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 40 | 0) >> 2])), $5 + 372 | 0 | 0, $5 + 388 | 0 | 0);
|
|
$42 = $5 + 132 | 0;
|
|
i64toi32_i32$2 = $5 + 372 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$150 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $42;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $150;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$44 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $44 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$160 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $42 + $44 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $160;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$51 = $5 + 148 | 0;
|
|
i64toi32_i32$2 = $5 + 388 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$170 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $51;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $170;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$53 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $53 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$180 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $51 + $53 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $180;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btTransform__operator__28btTransform_20const__29($5 + 68 | 0 | 0, $5 + 4 | 0 | 0) | 0;
|
|
}
|
|
__stack_pointer = $4 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__setGravity_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $5 = 0, $23 = 0, $25 = 0, $33 = 0, $35 = 0, $12 = 0, $90 = 0, $103 = 0, $112 = 0, $122 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 404 | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$12 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
HEAPF32[($4 + 4 | 0) >> 2] = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[($5 + 404 | 0) >> 2]));
|
|
operator__28btVector3_20const__2c_20float_20const__29($4 + 8 | 0 | 0, $12 | 0, $4 + 4 | 0 | 0);
|
|
$23 = $5 + 424 | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$90 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $23;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $90;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$25 = 8;
|
|
i64toi32_i32$2 = ($4 + 8 | 0) + $25 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$103 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $23 + $25 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $103;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
$33 = $5 + 440 | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$112 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $33;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $112;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$35 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $35 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$122 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $33 + $35 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $122;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__applyDamping_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 128 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 124 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 120 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 124 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btPow_28float_2c_20float_29(Math_fround(Math_fround(Math_fround(1.0) - Math_fround(HEAPF32[($5 + 504 | 0) >> 2]))), Math_fround(Math_fround(HEAPF32[($4 + 120 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 116 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__operator___28float_20const__29_1($5 + 372 | 0 | 0, $4 + 116 | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btPow_28float_2c_20float_29(Math_fround(Math_fround(Math_fround(1.0) - Math_fround(HEAPF32[($5 + 508 | 0) >> 2]))), Math_fround(Math_fround(HEAPF32[($4 + 120 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 112 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__operator___28float_20const__29_1($5 + 388 | 0 | 0, $4 + 112 | 0 | 0) | 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($5 + 512 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!(Math_fround(btVector3__length2_28_29_20const($5 + 388 | 0 | 0)) < Math_fround(HEAPF32[($5 + 524 | 0) >> 2]) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if (!(Math_fround(btVector3__length2_28_29_20const($5 + 372 | 0 | 0)) < Math_fround(HEAPF32[($5 + 520 | 0) >> 2]) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btVector3__operator___28float_20const__29_1($5 + 388 | 0 | 0, $5 + 516 | 0 | 0) | 0;
|
|
btVector3__operator___28float_20const__29_1($5 + 372 | 0 | 0, $5 + 516 | 0 | 0) | 0;
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btVector3__length_28_29_20const($5 + 372 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 108 | 0) >> 2] = wasm2js_f32$0;
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 108 | 0) >> 2]) < Math_fround(HEAPF32[($5 + 504 | 0) >> 2]) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAPF32[($4 + 104 | 0) >> 2] = Math_fround(.004999999888241291);
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 108 | 0) >> 2]) > Math_fround(HEAPF32[($4 + 104 | 0) >> 2]) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btVector3__normalized_28_29_20const($4 + 88 | 0 | 0, $5 + 372 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($4 + 72 | 0 | 0, $4 + 88 | 0 | 0, $4 + 104 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29($5 + 372 | 0 | 0, $4 + 72 | 0 | 0) | 0;
|
|
break label$4;
|
|
}
|
|
HEAPF32[($4 + 68 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 64 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 60 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 372 | 0 | 0, $4 + 68 | 0 | 0, $4 + 64 | 0 | 0, $4 + 60 | 0 | 0);
|
|
}
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btVector3__length_28_29_20const($5 + 388 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 56 | 0) >> 2] = wasm2js_f32$0;
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 56 | 0) >> 2]) < Math_fround(HEAPF32[($5 + 508 | 0) >> 2]) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAPF32[($4 + 52 | 0) >> 2] = Math_fround(.004999999888241291);
|
|
label$7 : {
|
|
label$8 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 56 | 0) >> 2]) > Math_fround(HEAPF32[($4 + 52 | 0) >> 2]) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
btVector3__normalized_28_29_20const($4 + 36 | 0 | 0, $5 + 388 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($4 + 20 | 0 | 0, $4 + 36 | 0 | 0, $4 + 52 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29($5 + 388 | 0 | 0, $4 + 20 | 0 | 0) | 0;
|
|
break label$7;
|
|
}
|
|
HEAPF32[($4 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 388 | 0 | 0, $4 + 16 | 0 | 0, $4 + 12 | 0 | 0, $4 + 8 | 0 | 0);
|
|
}
|
|
}
|
|
}
|
|
__stack_pointer = $4 + 128 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPow_28float_2c_20float_29($0, $1) {
|
|
$0 = Math_fround($0);
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $7 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAPF32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
$7 = Math_fround(powf(Math_fround(Math_fround(HEAPF32[($4 + 12 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2]))));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return Math_fround($7);
|
|
}
|
|
|
|
function btRigidBody__applyGravity_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((btCollisionObject__isStaticOrKinematicObject_28_29_20const($4 | 0) | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
break label$1;
|
|
}
|
|
btRigidBody__applyCentralForce_28btVector3_20const__29($4 | 0, $4 + 424 | 0 | 0);
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__proceedToTransform_28btTransform_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btRigidBody__setCenterOfMassTransform_28btTransform_20const__29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__setCenterOfMassTransform_28btTransform_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $5 = 0, $4 = 0, $18 = 0, $20 = 0, $26 = 0, $28 = 0, $80 = 0, $90 = 0, $99 = 0, $109 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((btCollisionObject__isKinematicObject_28_29_20const($5 | 0) | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btTransform__operator__28btTransform_20const__29($5 + 68 | 0 | 0, $5 + 4 | 0 | 0) | 0;
|
|
break label$1;
|
|
}
|
|
btTransform__operator__28btTransform_20const__29($5 + 68 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
}
|
|
$18 = $5 + 132 | 0;
|
|
i64toi32_i32$2 = btRigidBody__getLinearVelocity_28_29_20const($5 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$80 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $18;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $80;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$20 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $20 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$90 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $18 + $20 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $90;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$26 = $5 + 148 | 0;
|
|
i64toi32_i32$2 = btRigidBody__getAngularVelocity_28_29_20const($5 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$99 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $26;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $99;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$28 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $28 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$109 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $26 + $28 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $109;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btTransform__operator__28btTransform_20const__29($5 + 4 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
btRigidBody__updateInertiaTensor_28_29($5 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__getLocalInertia_28_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $7 = 0, $8 = 0, $32 = Math_fround(0), $53 = Math_fround(0), $74 = Math_fround(0), $5 = 0, $115 = 0, $119 = 0;
|
|
$4 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 44 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 44 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($0 | 0) | 0;
|
|
$7 = $5 + 456 | 0;
|
|
$8 = 8;
|
|
i64toi32_i32$2 = $7 + $8 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$115 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 24 | 0) + $8 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $115;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$119 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $119;
|
|
HEAP32[($4 + 28 | 0) >> 2] = i64toi32_i32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__x_28_29_20const($4 + 24 | 0 | 0) | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$32 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[(btVector3__x_28_29_20const($4 + 24 | 0 | 0) | 0) >> 2]));
|
|
break label$1;
|
|
}
|
|
$32 = Math_fround(0 | 0);
|
|
}
|
|
HEAPF32[($4 + 20 | 0) >> 2] = $32;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__y_28_29_20const($4 + 24 | 0 | 0) | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$53 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[(btVector3__y_28_29_20const($4 + 24 | 0 | 0) | 0) >> 2]));
|
|
break label$3;
|
|
}
|
|
$53 = Math_fround(0 | 0);
|
|
}
|
|
HEAPF32[($4 + 16 | 0) >> 2] = $53;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!(Math_fround(HEAPF32[(btVector3__z_28_29_20const($4 + 24 | 0 | 0) | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$74 = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[(btVector3__z_28_29_20const($4 + 24 | 0 | 0) | 0) >> 2]));
|
|
break label$5;
|
|
}
|
|
$74 = Math_fround(0 | 0);
|
|
}
|
|
HEAPF32[($4 + 12 | 0) >> 2] = $74;
|
|
btVector3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $4 + 20 | 0 | 0, $4 + 16 | 0 | 0, $4 + 12 | 0 | 0);
|
|
__stack_pointer = $4 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__computeGyroscopicForceExplicit_28float_29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $6 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 192 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 188 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 184 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 188 | 0) >> 2] | 0;
|
|
btRigidBody__getLocalInertia_28_29_20const($5 + 168 | 0 | 0, $6 | 0);
|
|
btMatrix3x3__scaled_28btVector3_20const__29_20const($5 + 72 | 0 | 0, btTransform__getBasis_28_29_20const(btCollisionObject__getWorldTransform_28_29_20const($6 | 0) | 0 | 0) | 0 | 0, $5 + 168 | 0 | 0);
|
|
btMatrix3x3__transpose_28_29_20const($5 + 24 | 0 | 0, btTransform__getBasis_28_29_20const(btCollisionObject__getWorldTransform_28_29_20const($6 | 0) | 0 | 0) | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btMatrix3x3_20const__29($5 + 120 | 0 | 0, $5 + 72 | 0 | 0, $5 + 24 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($5 + 8 | 0 | 0, $5 + 120 | 0 | 0, btRigidBody__getAngularVelocity_28_29_20const($6 | 0) | 0 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($0 | 0, btRigidBody__getAngularVelocity_28_29_20const($6 | 0) | 0 | 0, $5 + 8 | 0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($0 | 0))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[($5 + 4 | 0) >> 2]) > Math_fround(Math_fround(HEAPF32[($5 + 184 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 184 | 0) >> 2])) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(Math_fround(1.0) / Math_fround(btSqrt_28float_29(Math_fround(Math_fround(HEAPF32[($5 + 4 | 0) >> 2]))))) * Math_fround(HEAPF32[($5 + 184 | 0) >> 2]))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
btVector3__operator___28float_20const__29_1($0 | 0, $5 | 0) | 0;
|
|
}
|
|
__stack_pointer = $5 + 192 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__computeGyroscopicImpulseImplicit_Body_28float_29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $6 = 0, $10 = 0, $11 = 0, $217 = 0, $270 = 0, $274 = 0, $43 = 0, $53 = 0, $629 = 0, $633 = 0;
|
|
$5 = __stack_pointer - 560 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 556 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 552 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 556 | 0) >> 2] | 0;
|
|
btRigidBody__getLocalInertia_28_29_20const($5 + 536 | 0 | 0, $6 | 0);
|
|
$10 = btRigidBody__getAngularVelocity_28_29_20const($6 | 0) | 0;
|
|
$11 = 8;
|
|
i64toi32_i32$2 = $10 + $11 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$270 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 520 | 0) + $11 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $270;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $10;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$274 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 520 | 0) >> 2] = $274;
|
|
HEAP32[($5 + 524 | 0) >> 2] = i64toi32_i32$0;
|
|
btTransform__getRotation_28_29_20const($5 + 504 | 0 | 0, btCollisionObject__getWorldTransform_28_29_20const($6 | 0) | 0 | 0);
|
|
btQuaternion__inverse_28_29_20const($5 + 472 | 0 | 0, $5 + 504 | 0 | 0);
|
|
quatRotate_28btQuaternion_20const__2c_20btVector3_20const__29($5 + 488 | 0 | 0, $5 + 472 | 0 | 0, $5 + 520 | 0 | 0);
|
|
btMatrix3x3__btMatrix3x3_28_29($5 + 424 | 0 | 0) | 0;
|
|
$43 = btVector3__x_28_29_20const($5 + 536 | 0 | 0) | 0;
|
|
HEAPF32[($5 + 420 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 416 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 412 | 0) >> 2] = Math_fround(0 | 0);
|
|
$53 = btVector3__y_28_29_20const($5 + 536 | 0 | 0) | 0;
|
|
HEAPF32[($5 + 408 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 404 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 400 | 0) >> 2] = Math_fround(0 | 0);
|
|
btMatrix3x3__setValue_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($5 + 424 | 0 | 0, $43 | 0, $5 + 420 | 0 | 0, $5 + 416 | 0 | 0, $5 + 412 | 0 | 0, $53 | 0, $5 + 408 | 0 | 0, $5 + 404 | 0 | 0, $5 + 400 | 0 | 0, btVector3__z_28_29_20const($5 + 536 | 0 | 0) | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($5 + 384 | 0 | 0, $5 + 424 | 0 | 0, $5 + 488 | 0 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($5 + 352 | 0 | 0, $5 + 488 | 0 | 0, $5 + 384 | 0 | 0);
|
|
operator__28float_20const__2c_20btVector3_20const__29($5 + 368 | 0 | 0, $5 + 552 | 0 | 0, $5 + 352 | 0 | 0);
|
|
btMatrix3x3__btMatrix3x3_28_29($5 + 304 | 0 | 0) | 0;
|
|
btVector3__getSkewSymmetricMatrix_28btVector3__2c_20btVector3__2c_20btVector3__29_20const($5 + 488 | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($5 + 304 | 0 | 0, 0 | 0) | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($5 + 304 | 0 | 0, 1 | 0) | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($5 + 304 | 0 | 0, 2 | 0) | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($5 + 288 | 0 | 0, $5 + 424 | 0 | 0, $5 + 488 | 0 | 0);
|
|
btMatrix3x3__btMatrix3x3_28_29($5 + 240 | 0 | 0) | 0;
|
|
btVector3__getSkewSymmetricMatrix_28btVector3__2c_20btVector3__2c_20btVector3__29_20const($5 + 288 | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($5 + 240 | 0 | 0, 0 | 0) | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($5 + 240 | 0 | 0, 1 | 0) | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($5 + 240 | 0 | 0, 2 | 0) | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btMatrix3x3_20const__29($5 + 48 | 0 | 0, $5 + 304 | 0 | 0, $5 + 424 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btMatrix3x3_20const__29_1($5 + 96 | 0 | 0, $5 + 48 | 0 | 0, $5 + 240 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20float_20const__29($5 + 144 | 0 | 0, $5 + 96 | 0 | 0, $5 + 552 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btMatrix3x3_20const__29_2($5 + 192 | 0 | 0, $5 + 424 | 0 | 0, $5 + 144 | 0 | 0);
|
|
btMatrix3x3__solve33_28btVector3_20const__29_20const($5 + 32 | 0 | 0, $5 + 192 | 0 | 0, $5 + 368 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 16 | 0 | 0, $5 + 488 | 0 | 0, $5 + 32 | 0 | 0);
|
|
$217 = 8;
|
|
i64toi32_i32$2 = ($5 + 16 | 0) + $217 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$629 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 488 | 0) + $217 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $629;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
$633 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 488 | 0) >> 2] = $633;
|
|
HEAP32[($5 + 492 | 0) >> 2] = i64toi32_i32$0;
|
|
quatRotate_28btQuaternion_20const__2c_20btVector3_20const__29($5 | 0, $5 + 504 | 0 | 0, $5 + 488 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($0 | 0, $5 | 0, $5 + 520 | 0 | 0);
|
|
__stack_pointer = $5 + 560 | 0;
|
|
return;
|
|
}
|
|
|
|
function operator__28btMatrix3x3_20const__2c_20btMatrix3x3_20const__29_1($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 36 | 0) >> 2] = $2;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0) | 0) >> 2]) - Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0) | 0) + 4 | 0) >> 2]) - Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0) | 0) + 4 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0) | 0) + 8 | 0) >> 2]) - Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0) | 0) + 8 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0) | 0) >> 2]) - Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0) | 0) + 4 | 0) >> 2]) - Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0) | 0) + 4 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0) | 0) + 8 | 0) >> 2]) - Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0) | 0) + 8 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0) | 0) >> 2]) - Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0) | 0) + 4 | 0) >> 2]) - Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0) | 0) + 4 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0) | 0) + 8 | 0) >> 2]) - Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0) | 0) + 8 | 0) >> 2]))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
btMatrix3x3__btMatrix3x3_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $5 + 32 | 0 | 0, $5 + 28 | 0 | 0, $5 + 24 | 0 | 0, $5 + 20 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0, $5 + 8 | 0 | 0, $5 + 4 | 0 | 0, $5 | 0) | 0;
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function operator__28btMatrix3x3_20const__2c_20float_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 36 | 0) >> 2] = $2;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(HEAP32[($5 + 36 | 0) >> 2] | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(HEAP32[($5 + 36 | 0) >> 2] | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(HEAP32[($5 + 36 | 0) >> 2] | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(HEAP32[($5 + 36 | 0) >> 2] | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(HEAP32[($5 + 36 | 0) >> 2] | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(HEAP32[($5 + 36 | 0) >> 2] | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__x_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(HEAP32[($5 + 36 | 0) >> 2] | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__y_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(HEAP32[($5 + 36 | 0) >> 2] | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__z_28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0) | 0) >> 2]) * Math_fround(HEAPF32[(HEAP32[($5 + 36 | 0) >> 2] | 0) >> 2]))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
btMatrix3x3__btMatrix3x3_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $5 + 32 | 0 | 0, $5 + 28 | 0 | 0, $5 + 24 | 0 | 0, $5 + 20 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0, $5 + 8 | 0 | 0, $5 + 4 | 0 | 0, $5 | 0) | 0;
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function operator__28btMatrix3x3_20const__2c_20btMatrix3x3_20const__29_2($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 36 | 0) >> 2] = $2;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0) | 0) >> 2]) + Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0) | 0) + 4 | 0) >> 2]) + Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0) | 0) + 4 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0) | 0) + 8 | 0) >> 2]) + Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 0 | 0) | 0 | 0) | 0) + 8 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0) | 0) >> 2]) + Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0) | 0) + 4 | 0) >> 2]) + Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0) | 0) + 4 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0) | 0) + 8 | 0) >> 2]) + Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 1 | 0) | 0 | 0) | 0) + 8 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0) | 0) >> 2]) + Math_fround(HEAPF32[(btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0) | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0) | 0) + 4 | 0) >> 2]) + Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0) | 0) + 4 | 0) >> 2]))), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 40 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0) | 0) + 8 | 0) >> 2]) + Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const(btMatrix3x3__operator_5b_5d_28int_29_20const(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, 2 | 0) | 0 | 0) | 0) + 8 | 0) >> 2]))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
btMatrix3x3__btMatrix3x3_28float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__2c_20float_20const__29($0 | 0, $5 + 32 | 0 | 0, $5 + 28 | 0 | 0, $5 + 24 | 0 | 0, $5 + 20 | 0 | 0, $5 + 16 | 0 | 0, $5 + 12 | 0 | 0, $5 + 8 | 0 | 0, $5 + 4 | 0 | 0, $5 | 0) | 0;
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btMatrix3x3__solve33_28btVector3_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $44 = Math_fround(0), $45 = 0, $59 = Math_fround(0), $61 = Math_fround(0), $76 = Math_fround(0), $78 = Math_fround(0), $93 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 128 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 124 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 120 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 124 | 0) >> 2] | 0;
|
|
btMatrix3x3__getColumn_28int_29_20const($5 + 104 | 0 | 0, $6 | 0, 0 | 0);
|
|
btMatrix3x3__getColumn_28int_29_20const($5 + 88 | 0 | 0, $6 | 0, 1 | 0);
|
|
btMatrix3x3__getColumn_28int_29_20const($5 + 72 | 0 | 0, $6 | 0, 2 | 0);
|
|
btCross_28btVector3_20const__2c_20btVector3_20const__29($5 + 52 | 0 | 0, $5 + 88 | 0 | 0, $5 + 72 | 0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btDot_28btVector3_20const__2c_20btVector3_20const__29($5 + 104 | 0 | 0, $5 + 52 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 68 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
if (!(Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[($5 + 68 | 0) >> 2])))) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[($5 + 68 | 0) >> 2] = Math_fround(Math_fround(1.0) / Math_fround(HEAPF32[($5 + 68 | 0) >> 2]));
|
|
}
|
|
btVector3__btVector3_28_29($0 | 0) | 0;
|
|
$44 = Math_fround(HEAPF32[($5 + 68 | 0) >> 2]);
|
|
$45 = HEAP32[($5 + 120 | 0) >> 2] | 0;
|
|
btCross_28btVector3_20const__2c_20btVector3_20const__29($5 + 36 | 0 | 0, $5 + 88 | 0 | 0, $5 + 72 | 0 | 0);
|
|
$59 = Math_fround($44 * Math_fround(btDot_28btVector3_20const__2c_20btVector3_20const__29($45 | 0, $5 + 36 | 0 | 0)));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($0 | 0) | 0, wasm2js_f32$0 = $59), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$61 = Math_fround(HEAPF32[($5 + 68 | 0) >> 2]);
|
|
btCross_28btVector3_20const__2c_20btVector3_20const__29($5 + 20 | 0 | 0, HEAP32[($5 + 120 | 0) >> 2] | 0 | 0, $5 + 72 | 0 | 0);
|
|
$76 = Math_fround($61 * Math_fround(btDot_28btVector3_20const__2c_20btVector3_20const__29($5 + 104 | 0 | 0, $5 + 20 | 0 | 0)));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($0 | 0) | 0, wasm2js_f32$0 = $76), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$78 = Math_fround(HEAPF32[($5 + 68 | 0) >> 2]);
|
|
btCross_28btVector3_20const__2c_20btVector3_20const__29($5 + 4 | 0 | 0, $5 + 88 | 0 | 0, HEAP32[($5 + 120 | 0) >> 2] | 0 | 0);
|
|
$93 = Math_fround($78 * Math_fround(btDot_28btVector3_20const__2c_20btVector3_20const__29($5 + 104 | 0 | 0, $5 + 4 | 0 | 0)));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($0 | 0) | 0, wasm2js_f32$0 = $93), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
__stack_pointer = $5 + 128 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__computeGyroscopicImpulseImplicit_World_28float_29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $6 = 0, $10 = 0, $11 = 0, $51 = 0, $119 = 0, $173 = 0, $177 = 0, $252 = 0, $256 = 0, $377 = 0, $381 = 0;
|
|
$5 = __stack_pointer - 384 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 380 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 376 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 380 | 0) >> 2] | 0;
|
|
btRigidBody__getLocalInertia_28_29_20const($5 + 360 | 0 | 0, $6 | 0);
|
|
$10 = btRigidBody__getAngularVelocity_28_29_20const($6 | 0) | 0;
|
|
$11 = 8;
|
|
i64toi32_i32$2 = $10 + $11 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$173 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 344 | 0) + $11 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $173;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $10;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$177 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 344 | 0) >> 2] = $177;
|
|
HEAP32[($5 + 348 | 0) >> 2] = i64toi32_i32$0;
|
|
btMatrix3x3__btMatrix3x3_28_29($5 + 296 | 0 | 0) | 0;
|
|
btMatrix3x3__scaled_28btVector3_20const__29_20const($5 + 200 | 0 | 0, btTransform__getBasis_28_29_20const($6 + 4 | 0 | 0) | 0 | 0, $5 + 360 | 0 | 0);
|
|
btMatrix3x3__transpose_28_29_20const($5 + 152 | 0 | 0, btTransform__getBasis_28_29_20const($6 + 4 | 0 | 0) | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btMatrix3x3_20const__29($5 + 248 | 0 | 0, $5 + 200 | 0 | 0, $5 + 152 | 0 | 0);
|
|
btMatrix3x3__operator__28btMatrix3x3_20const__29($5 + 296 | 0 | 0, $5 + 248 | 0 | 0) | 0;
|
|
$51 = 8;
|
|
i64toi32_i32$2 = ($5 + 344 | 0) + $51 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$252 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 136 | 0) + $51 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $252;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[($5 + 344 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 348 | 0) >> 2] | 0;
|
|
$256 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 136 | 0) >> 2] = $256;
|
|
HEAP32[($5 + 140 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($5 + 100 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 96 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 92 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 104 | 0 | 0, $5 + 100 | 0 | 0, $5 + 96 | 0 | 0, $5 + 92 | 0 | 0) | 0;
|
|
evalEulerEqn_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20btMatrix3x3_20const__29($5 + 120 | 0 | 0, $5 + 136 | 0 | 0, $5 + 344 | 0 | 0, $5 + 104 | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 376 | 0) >> 2])), $5 + 296 | 0 | 0);
|
|
evalEulerEqnDeriv_28btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20btMatrix3x3_20const__29($5 + 44 | 0 | 0, $5 + 136 | 0 | 0, $5 + 344 | 0 | 0, Math_fround(Math_fround(HEAPF32[($5 + 376 | 0) >> 2])), $5 + 296 | 0 | 0);
|
|
btVector3__btVector3_28_29($5 + 24 | 0 | 0) | 0;
|
|
btMatrix3x3__solve33_28btVector3_20const__29_20const($5 + 8 | 0 | 0, $5 + 44 | 0 | 0, $5 + 120 | 0 | 0);
|
|
$119 = 8;
|
|
i64toi32_i32$2 = ($5 + 8 | 0) + $119 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$377 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 24 | 0) + $119 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $377;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
$381 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $381;
|
|
HEAP32[($5 + 28 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__operator___28btVector3_20const__29($5 + 136 | 0 | 0, $5 + 24 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($0 | 0, $5 + 136 | 0 | 0, $5 + 344 | 0 | 0);
|
|
__stack_pointer = $5 + 384 | 0;
|
|
return;
|
|
}
|
|
|
|
function evalEulerEqn_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20btMatrix3x3_20const__29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = Math_fround($4);
|
|
$5 = $5 | 0;
|
|
var $8 = 0, $14 = 0;
|
|
$8 = __stack_pointer - 160 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 156 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 152 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 148 | 0) >> 2] = $3;
|
|
HEAPF32[($8 + 144 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 140 | 0) >> 2] = $5;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 108 | 0 | 0, HEAP32[($8 + 140 | 0) >> 2] | 0 | 0, HEAP32[($8 + 156 | 0) >> 2] | 0 | 0);
|
|
$14 = HEAP32[($8 + 156 | 0) >> 2] | 0;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 60 | 0 | 0, HEAP32[($8 + 140 | 0) >> 2] | 0 | 0, HEAP32[($8 + 156 | 0) >> 2] | 0 | 0);
|
|
btVector3__cross_28btVector3_20const__29_20const($8 + 76 | 0 | 0, $14 | 0, $8 + 60 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($8 + 92 | 0 | 0, $8 + 76 | 0 | 0, $8 + 144 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 124 | 0 | 0, $8 + 108 | 0 | 0, $8 + 92 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($8 + 28 | 0 | 0, HEAP32[($8 + 148 | 0) >> 2] | 0 | 0, $8 + 144 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($8 + 12 | 0 | 0, HEAP32[($8 + 140 | 0) >> 2] | 0 | 0, HEAP32[($8 + 152 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($8 + 44 | 0 | 0, $8 + 28 | 0 | 0, $8 + 12 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($0 | 0, $8 + 124 | 0 | 0, $8 + 44 | 0 | 0);
|
|
__stack_pointer = $8 + 160 | 0;
|
|
return;
|
|
}
|
|
|
|
function evalEulerEqnDeriv_28btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20btMatrix3x3_20const__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $53 = 0;
|
|
$7 = __stack_pointer - 288 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 284 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 280 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 276 | 0) >> 2] = $2;
|
|
HEAPF32[($7 + 272 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 268 | 0) >> 2] = $4;
|
|
btMatrix3x3__btMatrix3x3_28_29($7 + 220 | 0 | 0) | 0;
|
|
btMatrix3x3__btMatrix3x3_28_29($7 + 172 | 0 | 0) | 0;
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($7 + 156 | 0 | 0, HEAP32[($7 + 268 | 0) >> 2] | 0 | 0, HEAP32[($7 + 280 | 0) >> 2] | 0 | 0);
|
|
btVector3__getSkewSymmetricMatrix_28btVector3__2c_20btVector3__2c_20btVector3__29_20const(HEAP32[($7 + 280 | 0) >> 2] | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($7 + 220 | 0 | 0, 0 | 0) | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($7 + 220 | 0 | 0, 1 | 0) | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($7 + 220 | 0 | 0, 2 | 0) | 0 | 0);
|
|
btVector3__getSkewSymmetricMatrix_28btVector3__2c_20btVector3__2c_20btVector3__29_20const($7 + 156 | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($7 + 172 | 0 | 0, 0 | 0) | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($7 + 172 | 0 | 0, 1 | 0) | 0 | 0, btMatrix3x3__operator_5b_5d_28int_29($7 + 172 | 0 | 0, 2 | 0) | 0 | 0);
|
|
$53 = HEAP32[($7 + 268 | 0) >> 2] | 0;
|
|
operator__28btMatrix3x3_20const__2c_20btMatrix3x3_20const__29($7 + 12 | 0 | 0, $7 + 220 | 0 | 0, HEAP32[($7 + 268 | 0) >> 2] | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btMatrix3x3_20const__29_1($7 + 60 | 0 | 0, $7 + 12 | 0 | 0, $7 + 172 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20float_20const__29($7 + 108 | 0 | 0, $7 + 60 | 0 | 0, $7 + 272 | 0 | 0);
|
|
operator__28btMatrix3x3_20const__2c_20btMatrix3x3_20const__29_2($0 | 0, $53 | 0, $7 + 108 | 0 | 0);
|
|
__stack_pointer = $7 + 288 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__addConstraintRef_28btTypedConstraint__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btTypedConstraint____findLinearSearch_28btTypedConstraint__20const__29_20const($5 + 544 | 0 | 0, $4 + 24 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 20 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btTypedConstraint____size_28_29_20const($5 + 544 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btTypedConstraint____push_back_28btTypedConstraint__20const__29($5 + 544 | 0 | 0, $4 + 24 | 0 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btTypedConstraint__getRigidBodyA_28_29(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btTypedConstraint__getRigidBodyB_28_29(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) == ($5 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
btCollisionObject__setIgnoreCollisionCheck_28btCollisionObject_20const__2c_20bool_29(HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, 1 & 1 | 0 | 0);
|
|
break label$2;
|
|
}
|
|
btCollisionObject__setIgnoreCollisionCheck_28btCollisionObject_20const__2c_20bool_29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 1 & 1 | 0 | 0);
|
|
}
|
|
}
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint____findLinearSearch_28btTypedConstraint__20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btTypedConstraint____size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[$4 >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$4 >> 2] | 0 | 0) < (btAlignedObjectArray_btTypedConstraint____size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$3 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[$4 >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0) == (HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[$4 >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[$4 >> 2] = (HEAP32[$4 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
$32 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint____push_back_28btTypedConstraint__20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btTypedConstraint____size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btTypedConstraint____capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btTypedConstraint____reserve_28int_29($5 | 0, btAlignedObjectArray_btTypedConstraint____allocSize_28int_29($5 | 0, btAlignedObjectArray_btTypedConstraint____size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint____capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint____allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint____reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btTypedConstraint____capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btTypedConstraint____allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btTypedConstraint____copy_28int_2c_20int_2c_20btTypedConstraint___29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btTypedConstraint____size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btTypedConstraint____destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btTypedConstraint____size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btTypedConstraint____deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__removeConstraintRef_28btTypedConstraint__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btTypedConstraint____findLinearSearch_28btTypedConstraint__20const__29_20const($5 + 544 | 0 | 0, $4 + 24 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 20 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btTypedConstraint____size_28_29_20const($5 + 544 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btTypedConstraint____remove_28btTypedConstraint__20const__29($5 + 544 | 0 | 0, $4 + 24 | 0 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btTypedConstraint__getRigidBodyA_28_29(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btTypedConstraint__getRigidBodyB_28_29(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) == ($5 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
btCollisionObject__setIgnoreCollisionCheck_28btCollisionObject_20const__2c_20bool_29(HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
break label$2;
|
|
}
|
|
btCollisionObject__setIgnoreCollisionCheck_28btCollisionObject_20const__2c_20bool_29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
}
|
|
}
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint____remove_28btTypedConstraint__20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btTypedConstraint____findLinearSearch_28btTypedConstraint__20const__29_20const($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btTypedConstraint____removeAtIndex_28int_29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint____removeAtIndex_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btTypedConstraint____size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btTypedConstraint____swap_28int_2c_20int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, (btAlignedObjectArray_btTypedConstraint____size_28_29_20const($5 | 0) | 0) - 1 | 0 | 0);
|
|
btAlignedObjectArray_btTypedConstraint____pop_back_28_29($5 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__calculateSerializeBufferSize_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = 496;
|
|
return HEAP32[($3 + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btRigidBody__serialize_28void__2c_20btSerializer__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
btCollisionObject__serialize_28void__2c_20btSerializer__29_20const($6 | 0, HEAP32[$5 >> 2] | 0 | 0, HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
btMatrix3x3__serialize_28btMatrix3x3FloatData__29_20const($6 + 324 | 0 | 0, (HEAP32[$5 >> 2] | 0) + 264 | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const($6 + 372 | 0 | 0, (HEAP32[$5 >> 2] | 0) + 312 | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const($6 + 388 | 0 | 0, (HEAP32[$5 >> 2] | 0) + 328 | 0 | 0);
|
|
HEAPF32[((HEAP32[$5 >> 2] | 0) + 456 | 0) >> 2] = Math_fround(HEAPF32[($6 + 404 | 0) >> 2]);
|
|
btVector3__serialize_28btVector3FloatData__29_20const($6 + 604 | 0 | 0, (HEAP32[$5 >> 2] | 0) + 344 | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const($6 + 408 | 0 | 0, (HEAP32[$5 >> 2] | 0) + 360 | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const($6 + 424 | 0 | 0, (HEAP32[$5 >> 2] | 0) + 376 | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const($6 + 440 | 0 | 0, (HEAP32[$5 >> 2] | 0) + 392 | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const($6 + 456 | 0 | 0, (HEAP32[$5 >> 2] | 0) + 408 | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const($6 + 472 | 0 | 0, (HEAP32[$5 >> 2] | 0) + 424 | 0 | 0);
|
|
btVector3__serialize_28btVector3FloatData__29_20const($6 + 488 | 0 | 0, (HEAP32[$5 >> 2] | 0) + 440 | 0 | 0);
|
|
HEAPF32[((HEAP32[$5 >> 2] | 0) + 460 | 0) >> 2] = Math_fround(HEAPF32[($6 + 504 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[$5 >> 2] | 0) + 464 | 0) >> 2] = Math_fround(HEAPF32[($6 + 508 | 0) >> 2]);
|
|
HEAP32[((HEAP32[$5 >> 2] | 0) + 492 | 0) >> 2] = (HEAPU8[($6 + 512 | 0) >> 0] | 0) & 1 | 0;
|
|
HEAPF32[((HEAP32[$5 >> 2] | 0) + 468 | 0) >> 2] = Math_fround(HEAPF32[($6 + 516 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[$5 >> 2] | 0) + 472 | 0) >> 2] = Math_fround(HEAPF32[($6 + 520 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[$5 >> 2] | 0) + 476 | 0) >> 2] = Math_fround(HEAPF32[($6 + 524 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[$5 >> 2] | 0) + 480 | 0) >> 2] = Math_fround(HEAPF32[($6 + 528 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[$5 >> 2] | 0) + 484 | 0) >> 2] = Math_fround(HEAPF32[($6 + 532 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[$5 >> 2] | 0) + 488 | 0) >> 2] = Math_fround(HEAPF32[($6 + 536 | 0) >> 2]);
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return 83210 | 0;
|
|
}
|
|
|
|
function btRigidBody__serializeSingleObject_28btSerializer__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $6 = 0, $20 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0, wasm2js_i32$5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$6 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = ((((wasm2js_i32$3 = $6, wasm2js_i32$4 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($5) | 0), wasm2js_i32$5 = 1), wasm2js_i32$2 = HEAP32[((HEAP32[$6 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$2](wasm2js_i32$3 | 0, wasm2js_i32$4 | 0, wasm2js_i32$5 | 0) | 0)), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5, HEAP32[((HEAP32[($4 + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0, HEAP32[($4 + 8 | 0) >> 2] | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$20 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$20 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($20, HEAP32[($4 + 4 | 0) >> 2] | 0, HEAP32[$4 >> 2] | 0, 1497645650, $5);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody___btRigidBody_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btRigidBody___btRigidBody_28_29($4 | 0) | 0;
|
|
btCollisionObject__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint____allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btTypedConstraint__2c_2016u___allocate_28int_2c_20btTypedConstraint__20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint____copy_28int_2c_20int_2c_20btTypedConstraint___29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[((HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[((HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btTypedConstraint__2c_2016u___allocate_28int_2c_20btTypedConstraint__20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint____swap_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[$5 >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint____pop_back_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) > (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85800 | 0, 78192 | 0, 201 | 0, 77711 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + -1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btRigidBody_cpp() {
|
|
__cxx_global_var_init_74();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_75() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(116132 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btUnionFind___btUnionFind_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btUnionFind__Free_28_29($4 | 0);
|
|
btAlignedObjectArray_btElement____btAlignedObjectArray_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btUnionFind__Free_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedObjectArray_btElement___clear_28_29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btElement____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btElement___clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btElement___clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btElement___destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btElement___size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btElement___deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btElement___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btUnionFind__btUnionFind_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btElement___btAlignedObjectArray_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btElement___btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btElement_2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btElement___init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_btElement_2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btElement___init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btUnionFind__allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $6 = 0, i64toi32_i32$0 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$6 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = 0;
|
|
HEAP32[$4 >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btAlignedObjectArray_btElement___resize_28int_2c_20btElement_20const__29($5 | 0, $6 | 0, $4 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btElement___resize_28int_2c_20btElement_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $162 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btElement___size_28_29_20const($6 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) > (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btAlignedObjectArray_btElement___reserve_28int_29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
i64toi32_i32$2 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$162 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = (HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 3 | 0) | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $162;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btElement___reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btElement___capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btElement___allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btElement___copy_28int_2c_20int_2c_20btElement__29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btElement___size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btElement___destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btElement___size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btElement___deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btElement___destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btElement___deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btElement_2c_2016u___deallocate_28btElement__29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btUnionFind__reset_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $15 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btUnionFind__allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$15 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btElement___operator_5b_5d_28int_29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $15), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btElement___operator_5b_5d_28int_29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = 1), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btUnionFind__sortIslands_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $15 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btAlignedObjectArray_btElement___size_28_29_20const($4 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($3 + 4 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) < (HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$15 = btUnionFind__find_28int_29($4 | 0, HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btElement___operator_5b_5d_28int_29($4 | 0, HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $15), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[($3 + 4 | 0) >> 2] = (HEAP32[($3 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
void_20btAlignedObjectArray_btElement___quickSort_btUnionFindElementSortPredicate__28btUnionFindElementSortPredicate_20const__29($4 | 0, $3 + 3 | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20btAlignedObjectArray_btElement___quickSort_btUnionFindElementSortPredicate__28btUnionFindElementSortPredicate_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btElement___size_28_29_20const($5 | 0) | 0 | 0) > (1 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
void_20btAlignedObjectArray_btElement___quickSortInternal_btUnionFindElementSortPredicate__28btUnionFindElementSortPredicate_20const__2c_20int_2c_20int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 0 | 0, (btAlignedObjectArray_btElement___size_28_29_20const($5 | 0) | 0) - 1 | 0 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20btAlignedObjectArray_btElement___quickSortInternal_btUnionFindElementSortPredicate__28btUnionFindElementSortPredicate_20const__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 20 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = (HEAP32[($7 + 12 | 0) >> 2] | 0) + ((((HEAP32[($6 + 20 | 0) >> 2] | 0) + (HEAP32[($6 + 16 | 0) >> 2] | 0) | 0 | 0) / (2 | 0) | 0) << 3 | 0) | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
HEAP32[$6 >> 2] = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
HEAP32[($6 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
label$1 : while (1) {
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((btUnionFindElementSortPredicate__operator_28_29_28btElement_20const__2c_20btElement_20const__29_20const(HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, (HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 3 | 0) | 0 | 0, $6 | 0) | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((btUnionFindElementSortPredicate__operator_28_29_28btElement_20const__2c_20btElement_20const__29_20const(HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, $6 | 0, (HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 8 | 0) >> 2] | 0) << 3 | 0) | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP32[($6 + 8 | 0) >> 2] = (HEAP32[($6 + 8 | 0) >> 2] | 0) + -1 | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
label$6 : {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) <= (HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
btAlignedObjectArray_btElement___swap_28int_2c_20int_29($7 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = (HEAP32[($6 + 8 | 0) >> 2] | 0) + -1 | 0;
|
|
}
|
|
if ((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) <= (HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
label$7 : {
|
|
if (!((HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
void_20btAlignedObjectArray_btElement___quickSortInternal_btUnionFindElementSortPredicate__28btUnionFindElementSortPredicate_20const__2c_20int_2c_20int_29($7 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0);
|
|
}
|
|
label$8 : {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
void_20btAlignedObjectArray_btElement___quickSortInternal_btUnionFindElementSortPredicate__28btUnionFindElementSortPredicate_20const__2c_20int_2c_20int_29($7 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0);
|
|
}
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btElement___capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btElement___allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btElement_2c_2016u___allocate_28int_2c_20btElement_20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btElement___copy_28int_2c_20int_2c_20btElement__29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, $7 = 0, i64toi32_i32$1 = 0, $85 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
i64toi32_i32$2 = (HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 3 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$85 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = (HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 3 | 0) | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $85;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btElement_2c_2016u___allocate_28int_2c_20btElement_20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 3 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_btElement_2c_2016u___deallocate_28btElement__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btUnionFindElementSortPredicate__operator_28_29_28btElement_20const__2c_20btElement_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
return (HEAP32[(HEAP32[($5 + 8 | 0) >> 2] | 0) >> 2] | 0 | 0) < (HEAP32[(HEAP32[($5 + 4 | 0) >> 2] | 0) >> 2] | 0 | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btElement___swap_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $6 = 0, $55 = 0, $79 = 0, $93 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = (HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 24 | 0) >> 2] | 0) << 3 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$55 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $5;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $55;
|
|
HEAP32[($5 + 12 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = (HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 20 | 0) >> 2] | 0) << 3 | 0) | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$79 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = (HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 24 | 0) >> 2] | 0) << 3 | 0) | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $79;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
$93 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = (HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 20 | 0) >> 2] | 0) << 3 | 0) | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $93;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btUnionFind_cpp() {
|
|
__cxx_global_var_init_75();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_76() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(116136 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btSimulationIslandManager__btSimulationIslandManager_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 102732 + 8 | 0;
|
|
btUnionFind__btUnionFind_28_29($4 + 4 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btPersistentManifold____btAlignedObjectArray_28_29($4 + 24 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btCollisionObject____btAlignedObjectArray_28_29($4 + 44 | 0 | 0) | 0;
|
|
HEAP8[($4 + 64 | 0) >> 0] = 1;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btSimulationIslandManager___btSimulationIslandManager_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 102732 + 8 | 0;
|
|
btAlignedObjectArray_btCollisionObject_____btAlignedObjectArray_28_29($4 + 44 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btPersistentManifold_____btAlignedObjectArray_28_29($4 + 24 | 0 | 0) | 0;
|
|
btUnionFind___btUnionFind_28_29($4 + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btSimulationIslandManager___btSimulationIslandManager_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[1110 | 0]($4) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSimulationIslandManager__initUnionFind_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btUnionFind__reset_28int_29((HEAP32[($4 + 12 | 0) >> 2] | 0) + 4 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSimulationIslandManager__findUnions_28btDispatcher__2c_20btCollisionWorld__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $9 = 0, $14 = 0, $6 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 36 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 44 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btCollisionWorld__getPairCache_28_29(HEAP32[($5 + 36 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
$9 = HEAP32[($5 + 32 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$9 >> 2] | 0) + 36 | 0) >> 2] | 0 | 0]($9) | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!(HEAP32[($5 + 28 | 0) >> 2] | 0)) {
|
|
break label$1
|
|
}
|
|
$14 = HEAP32[($5 + 32 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$14 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($14) | 0), HEAP32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = 0;
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 16 | 0) >> 2] = (HEAP32[($5 + 24 | 0) >> 2] | 0) + ((HEAP32[($5 + 20 | 0) >> 2] | 0) << 4 | 0) | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[(HEAP32[(HEAP32[($5 + 16 | 0) >> 2] | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[(HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) >> 2] | 0;
|
|
label$4 : {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
if (!((btCollisionObject__mergesSimulationIslands_28_29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
if (!((btCollisionObject__mergesSimulationIslands_28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
btUnionFind__unite_28int_2c_20int_29($6 + 4 | 0 | 0, btCollisionObject__getIslandTag_28_29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0 | 0, btCollisionObject__getIslandTag_28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 20 | 0) >> 2] = (HEAP32[($5 + 20 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
}
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionObject__mergesSimulationIslands_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return ((HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 204 | 0) >> 2] | 0) & 7 | 0 | 0) == (0 | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function btSimulationIslandManager__updateActivationState_28btCollisionWorld__2c_20btDispatcher__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $28 = 0, $27 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 16 | 0) >> 2] = 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btCollisionObject____size_28_29_20const(btCollisionWorld__getCollisionObjectArray_28_29(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btCollisionObject____operator_5b_5d_28int_29(btCollisionWorld__getCollisionObjectArray_28_29(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
label$3 : {
|
|
if ((btCollisionObject__isStaticOrKinematicObject_28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
$27 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
$28 = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 16 | 0) >> 2] = $28 + 1 | 0;
|
|
btCollisionObject__setIslandTag_28int_29($27 | 0, $28 | 0);
|
|
}
|
|
btCollisionObject__setCompanionId_28int_29(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, -1 | 0);
|
|
btCollisionObject__setHitFraction_28float_29(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(1.0)));
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
btSimulationIslandManager__initUnionFind_28int_29($6 | 0, HEAP32[($5 + 16 | 0) >> 2] | 0 | 0);
|
|
btSimulationIslandManager__findUnions_28btDispatcher__2c_20btCollisionWorld__29($6 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionWorld__getCollisionObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0 | 0;
|
|
}
|
|
|
|
function btCollisionObject__setIslandTag_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 208 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btSimulationIslandManager__storeIslandActivationState_28btCollisionWorld__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $31 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btCollisionObject____size_28_29_20const(btCollisionWorld__getCollisionObjectArray_28_29(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btCollisionObject____operator_5b_5d_28int_29(btCollisionWorld__getCollisionObjectArray_28_29(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
label$3 : {
|
|
label$4 : {
|
|
if ((btCollisionObject__isStaticOrKinematicObject_28_29_20const(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
btCollisionObject__setIslandTag_28int_29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, btUnionFind__find_28int_29($5 + 4 | 0 | 0, HEAP32[($4 + 20 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
$31 = HEAP32[($4 + 16 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btUnionFind__getElement_28int_29($5 + 4 | 0 | 0, HEAP32[($4 + 20 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $31), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btCollisionObject__setCompanionId_28int_29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, -1 | 0);
|
|
HEAP32[($4 + 20 | 0) >> 2] = (HEAP32[($4 + 20 | 0) >> 2] | 0) + 1 | 0;
|
|
break label$3;
|
|
}
|
|
btCollisionObject__setIslandTag_28int_29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, -1 | 0);
|
|
btCollisionObject__setCompanionId_28int_29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, -2 | 0);
|
|
}
|
|
HEAP32[($4 + 16 | 0) >> 2] = (HEAP32[($4 + 16 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btUnionFind__getElement_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $7 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$7 = btAlignedObjectArray_btElement___operator_5b_5d_28int_29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btSimulationIslandManager__buildIslands_28btDispatcher__2c_20btCollisionWorld__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $47 = 0, $289 = 0, $301 = 0, $383 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 108 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 104 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 100 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 108 | 0) >> 2] | 0;
|
|
CProfileSample__CProfileSample_28char_20const__29($5 + 99 | 0 | 0, 67513 | 0) | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btCollisionWorld__getCollisionObjectArray_28_29(HEAP32[($5 + 100 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 92 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($5 + 88 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btPersistentManifold____resize_28int_2c_20btPersistentManifold__20const__29($6 + 24 | 0 | 0, 0 | 0, $5 + 88 | 0 | 0);
|
|
btUnionFind__sortIslands_28_29(btSimulationIslandManager__getUnionFind_28_29($6 | 0) | 0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btUnionFind__getNumElements_28_29_20const(btSimulationIslandManager__getUnionFind_28_29($6 | 0) | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 84 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($5 + 80 | 0) >> 2] = 1;
|
|
HEAP32[($5 + 76 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($5 + 76 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 84 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = HEAP32[(btUnionFind__getElement_28int_29(btSimulationIslandManager__getUnionFind_28_29($6 | 0) | 0 | 0, HEAP32[($5 + 76 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 72 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($5 + 80 | 0) >> 2] = (HEAP32[($5 + 76 | 0) >> 2] | 0) + 1 | 0;
|
|
label$3 : while (1) {
|
|
$47 = 0;
|
|
label$4 : {
|
|
if (!((HEAP32[($5 + 80 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 84 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$47 = (HEAP32[(btUnionFind__getElement_28int_29(btSimulationIslandManager__getUnionFind_28_29($6 | 0) | 0 | 0, HEAP32[($5 + 80 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) == (HEAP32[($5 + 72 | 0) >> 2] | 0 | 0);
|
|
}
|
|
label$5 : {
|
|
if (!($47 & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAP32[($5 + 80 | 0) >> 2] = (HEAP32[($5 + 80 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
}
|
|
break label$3;
|
|
};
|
|
HEAP8[($5 + 71 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 64 | 0) >> 2] = HEAP32[($5 + 76 | 0) >> 2] | 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($5 + 64 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 80 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = HEAP32[((btUnionFind__getElement_28int_29(btSimulationIslandManager__getUnionFind_28_29($6 | 0) | 0 | 0, HEAP32[($5 + 64 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 60 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btCollisionObject____operator_5b_5d_28int_29(HEAP32[($5 + 92 | 0) >> 2] | 0 | 0, HEAP32[($5 + 60 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 56 | 0) >> 2] = wasm2js_i32$1;
|
|
label$8 : {
|
|
if (!((btCollisionObject__getIslandTag_28_29_20const(HEAP32[($5 + 56 | 0) >> 2] | 0 | 0) | 0 | 0) != (HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
if (!((btCollisionObject__getIslandTag_28_29_20const(HEAP32[($5 + 56 | 0) >> 2] | 0 | 0) | 0 | 0) != (-1 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
}
|
|
label$9 : {
|
|
if ((btCollisionObject__getIslandTag_28_29_20const(HEAP32[($5 + 56 | 0) >> 2] | 0 | 0) | 0 | 0) == (HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$9
|
|
}
|
|
if ((btCollisionObject__getIslandTag_28_29_20const(HEAP32[($5 + 56 | 0) >> 2] | 0 | 0) | 0 | 0) == (-1 | 0) & 1 | 0) {
|
|
break label$9
|
|
}
|
|
__assert_fail(86552 | 0, 72966 | 0, 245 | 0, 70353 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$10 : {
|
|
if (!((btCollisionObject__getIslandTag_28_29_20const(HEAP32[($5 + 56 | 0) >> 2] | 0 | 0) | 0 | 0) == (HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
label$11 : {
|
|
if (!((btCollisionObject__getActivationState_28_29_20const(HEAP32[($5 + 56 | 0) >> 2] | 0 | 0) | 0 | 0) == (1 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
HEAP8[($5 + 71 | 0) >> 0] = 0;
|
|
}
|
|
label$12 : {
|
|
if (!((btCollisionObject__getActivationState_28_29_20const(HEAP32[($5 + 56 | 0) >> 2] | 0 | 0) | 0 | 0) == (4 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
HEAP8[($5 + 71 | 0) >> 0] = 0;
|
|
}
|
|
}
|
|
HEAP32[($5 + 64 | 0) >> 2] = (HEAP32[($5 + 64 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
label$13 : {
|
|
label$14 : {
|
|
if (!((HEAPU8[($5 + 71 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
HEAP32[($5 + 52 | 0) >> 2] = HEAP32[($5 + 76 | 0) >> 2] | 0;
|
|
label$15 : {
|
|
label$16 : while (1) {
|
|
if (!((HEAP32[($5 + 52 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 80 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = HEAP32[((btUnionFind__getElement_28int_29(btSimulationIslandManager__getUnionFind_28_29($6 | 0) | 0 | 0, HEAP32[($5 + 52 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 48 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btCollisionObject____operator_5b_5d_28int_29(HEAP32[($5 + 92 | 0) >> 2] | 0 | 0, HEAP32[($5 + 48 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_i32$1;
|
|
label$17 : {
|
|
if (!((btCollisionObject__getIslandTag_28_29_20const(HEAP32[($5 + 44 | 0) >> 2] | 0 | 0) | 0 | 0) != (HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
if (!((btCollisionObject__getIslandTag_28_29_20const(HEAP32[($5 + 44 | 0) >> 2] | 0 | 0) | 0 | 0) != (-1 | 0) & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
}
|
|
label$18 : {
|
|
if ((btCollisionObject__getIslandTag_28_29_20const(HEAP32[($5 + 44 | 0) >> 2] | 0 | 0) | 0 | 0) == (HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$18
|
|
}
|
|
if ((btCollisionObject__getIslandTag_28_29_20const(HEAP32[($5 + 44 | 0) >> 2] | 0 | 0) | 0 | 0) == (-1 | 0) & 1 | 0) {
|
|
break label$18
|
|
}
|
|
__assert_fail(86552 | 0, 72966 | 0, 272 | 0, 70353 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$19 : {
|
|
if (!((btCollisionObject__getIslandTag_28_29_20const(HEAP32[($5 + 44 | 0) >> 2] | 0 | 0) | 0 | 0) == (HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
btCollisionObject__setActivationState_28int_29_20const(HEAP32[($5 + 44 | 0) >> 2] | 0 | 0, 2 | 0);
|
|
}
|
|
HEAP32[($5 + 52 | 0) >> 2] = (HEAP32[($5 + 52 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$16;
|
|
};
|
|
}
|
|
break label$13;
|
|
}
|
|
HEAP32[($5 + 40 | 0) >> 2] = HEAP32[($5 + 76 | 0) >> 2] | 0;
|
|
label$20 : {
|
|
label$21 : while (1) {
|
|
if (!((HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 80 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$20
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = HEAP32[((btUnionFind__getElement_28int_29(btSimulationIslandManager__getUnionFind_28_29($6 | 0) | 0 | 0, HEAP32[($5 + 40 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btCollisionObject____operator_5b_5d_28int_29(HEAP32[($5 + 92 | 0) >> 2] | 0 | 0, HEAP32[($5 + 36 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
label$22 : {
|
|
if (!((btCollisionObject__getIslandTag_28_29_20const(HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0 | 0) != (HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$22
|
|
}
|
|
if (!((btCollisionObject__getIslandTag_28_29_20const(HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0 | 0) != (-1 | 0) & 1 | 0)) {
|
|
break label$22
|
|
}
|
|
}
|
|
label$23 : {
|
|
if ((btCollisionObject__getIslandTag_28_29_20const(HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0 | 0) == (HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
break label$23
|
|
}
|
|
if ((btCollisionObject__getIslandTag_28_29_20const(HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0 | 0) == (-1 | 0) & 1 | 0) {
|
|
break label$23
|
|
}
|
|
__assert_fail(86552 | 0, 72966 | 0, 293 | 0, 70353 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$24 : {
|
|
if (!((btCollisionObject__getIslandTag_28_29_20const(HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0 | 0) == (HEAP32[($5 + 72 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$24
|
|
}
|
|
label$25 : {
|
|
if (!((btCollisionObject__getActivationState_28_29_20const(HEAP32[($5 + 32 | 0) >> 2] | 0 | 0) | 0 | 0) == (2 | 0) & 1 | 0)) {
|
|
break label$25
|
|
}
|
|
btCollisionObject__setActivationState_28int_29_20const(HEAP32[($5 + 32 | 0) >> 2] | 0 | 0, 3 | 0);
|
|
btCollisionObject__setDeactivationTime_28float_29(HEAP32[($5 + 32 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(0 | 0)));
|
|
}
|
|
}
|
|
HEAP32[($5 + 40 | 0) >> 2] = (HEAP32[($5 + 40 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$21;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($5 + 76 | 0) >> 2] = HEAP32[($5 + 80 | 0) >> 2] | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
$289 = HEAP32[($5 + 104 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$289 >> 2] | 0) + 36 | 0) >> 2] | 0 | 0]($289) | 0), HEAP32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($5 + 28 | 0) >> 2] = 0;
|
|
label$26 : {
|
|
label$27 : while (1) {
|
|
if (!((HEAP32[($5 + 28 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$26
|
|
}
|
|
$301 = HEAP32[($5 + 104 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$301 >> 2] | 0) + 40 | 0) >> 2] | 0 | 0]($301, HEAP32[($5 + 28 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btPersistentManifold__getBody0_28_29_20const(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btPersistentManifold__getBody1_28_29_20const(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
label$28 : {
|
|
label$29 : {
|
|
label$30 : {
|
|
if (!((HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$30
|
|
}
|
|
if ((btCollisionObject__getActivationState_28_29_20const(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) | 0 | 0) != (2 | 0) & 1 | 0) {
|
|
break label$29
|
|
}
|
|
}
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$28
|
|
}
|
|
if (!((btCollisionObject__getActivationState_28_29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0 | 0) != (2 | 0) & 1 | 0)) {
|
|
break label$28
|
|
}
|
|
}
|
|
label$31 : {
|
|
if (!((btCollisionObject__isKinematicObject_28_29_20const(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$31
|
|
}
|
|
if (!((btCollisionObject__getActivationState_28_29_20const(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) | 0 | 0) != (2 | 0) & 1 | 0)) {
|
|
break label$31
|
|
}
|
|
label$32 : {
|
|
if (!((btCollisionObject__hasContactResponse_28_29_20const(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$32
|
|
}
|
|
btCollisionObject__activate_28bool_29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
}
|
|
}
|
|
label$33 : {
|
|
if (!((btCollisionObject__isKinematicObject_28_29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$33
|
|
}
|
|
if (!((btCollisionObject__getActivationState_28_29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0 | 0) != (2 | 0) & 1 | 0)) {
|
|
break label$33
|
|
}
|
|
label$34 : {
|
|
if (!((btCollisionObject__hasContactResponse_28_29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$34
|
|
}
|
|
btCollisionObject__activate_28bool_29_20const(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0, 0 & 1 | 0 | 0);
|
|
}
|
|
}
|
|
label$35 : {
|
|
if (!((HEAPU8[($6 + 64 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$35
|
|
}
|
|
$383 = HEAP32[($5 + 104 | 0) >> 2] | 0;
|
|
label$36 : {
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$383 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($383, HEAP32[($5 + 16 | 0) >> 2] | 0, HEAP32[($5 + 12 | 0) >> 2] | 0) | 0) & 1 | 0)) {
|
|
break label$36
|
|
}
|
|
btAlignedObjectArray_btPersistentManifold____push_back_28btPersistentManifold__20const__29($6 + 24 | 0 | 0, $5 + 20 | 0 | 0);
|
|
}
|
|
}
|
|
}
|
|
HEAP32[($5 + 28 | 0) >> 2] = (HEAP32[($5 + 28 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$27;
|
|
};
|
|
}
|
|
CProfileSample___CProfileSample_28_29($5 + 99 | 0 | 0) | 0;
|
|
__stack_pointer = $5 + 112 | 0;
|
|
return;
|
|
}
|
|
|
|
function btUnionFind__getNumElements_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = btAlignedObjectArray_btElement___size_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function btCollisionObject__setDeactivationTime_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 224 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function btSimulationIslandManager__buildAndProcessIslands_28btDispatcher__2c_20btCollisionWorld__2c_20btSimulationIslandManager__IslandCallback__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $22 = 0, $26 = 0, $30 = 0, $73 = 0, $143 = 0, $166 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0, wasm2js_i32$5 = 0, wasm2js_i32$6 = 0;
|
|
$6 = __stack_pointer - 96 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 92 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 88 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 84 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 80 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 92 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btCollisionWorld__getCollisionObjectArray_28_29(HEAP32[($6 + 84 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 76 | 0) >> 2] = wasm2js_i32$1;
|
|
btSimulationIslandManager__buildIslands_28btDispatcher__2c_20btCollisionWorld__29($7 | 0, HEAP32[($6 + 88 | 0) >> 2] | 0 | 0, HEAP32[($6 + 84 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($6 + 72 | 0) >> 2] = 1;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btUnionFind__getNumElements_28_29_20const(btSimulationIslandManager__getUnionFind_28_29($7 | 0) | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 64 | 0) >> 2] = wasm2js_i32$1;
|
|
CProfileSample__CProfileSample_28char_20const__29($6 + 63 | 0 | 0, 70311 | 0) | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if ((HEAPU8[($7 + 64 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
$22 = HEAP32[($6 + 88 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$22 >> 2] | 0) + 44 | 0) >> 2] | 0 | 0]($22) | 0), HEAP32[(wasm2js_i32$0 + 56 | 0) >> 2] = wasm2js_i32$1;
|
|
$26 = HEAP32[($6 + 88 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$26 >> 2] | 0) + 36 | 0) >> 2] | 0 | 0]($26) | 0), HEAP32[(wasm2js_i32$0 + 52 | 0) >> 2] = wasm2js_i32$1;
|
|
$30 = HEAP32[($6 + 80 | 0) >> 2] | 0;
|
|
((((((wasm2js_i32$1 = $30, wasm2js_i32$2 = btAlignedObjectArray_btCollisionObject____operator_5b_5d_28int_29(HEAP32[($6 + 76 | 0) >> 2] | 0 | 0, 0 | 0) | 0), wasm2js_i32$3 = btAlignedObjectArray_btCollisionObject____size_28_29_20const(HEAP32[($6 + 76 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$4 = HEAP32[($6 + 56 | 0) >> 2] | 0), wasm2js_i32$5 = HEAP32[($6 + 52 | 0) >> 2] | 0), wasm2js_i32$6 = -1), wasm2js_i32$0 = HEAP32[((HEAP32[$30 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, wasm2js_i32$3 | 0, wasm2js_i32$4 | 0, wasm2js_i32$5 | 0, wasm2js_i32$6 | 0);
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$6 = btAlignedObjectArray_btPersistentManifold____size_28_29_20const($7 + 24 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 48 | 0) >> 2] = wasm2js_i32$6;
|
|
void_20btAlignedObjectArray_btPersistentManifold____quickSort_btPersistentManifoldSortPredicate__28btPersistentManifoldSortPredicate_20const__29($7 + 24 | 0 | 0, $6 + 47 | 0 | 0);
|
|
HEAP32[($6 + 40 | 0) >> 2] = 0;
|
|
HEAP32[($6 + 36 | 0) >> 2] = 1;
|
|
HEAP32[($6 + 68 | 0) >> 2] = 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($6 + 68 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 64 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$6 = HEAP32[(btUnionFind__getElement_28int_29(btSimulationIslandManager__getUnionFind_28_29($7 | 0) | 0 | 0, HEAP32[($6 + 68 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$6;
|
|
HEAP8[($6 + 31 | 0) >> 0] = 1;
|
|
HEAP32[($6 + 72 | 0) >> 2] = HEAP32[($6 + 68 | 0) >> 2] | 0;
|
|
label$5 : while (1) {
|
|
$73 = 0;
|
|
label$6 : {
|
|
if (!((HEAP32[($6 + 72 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 64 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$73 = (HEAP32[(btUnionFind__getElement_28int_29(btSimulationIslandManager__getUnionFind_28_29($7 | 0) | 0 | 0, HEAP32[($6 + 72 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) == (HEAP32[($6 + 32 | 0) >> 2] | 0 | 0);
|
|
}
|
|
label$7 : {
|
|
if (!($73 & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$6 = HEAP32[((btUnionFind__getElement_28int_29(btSimulationIslandManager__getUnionFind_28_29($7 | 0) | 0 | 0, HEAP32[($6 + 72 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_i32$6;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$6 = HEAP32[(btAlignedObjectArray_btCollisionObject____operator_5b_5d_28int_29(HEAP32[($6 + 76 | 0) >> 2] | 0 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$6;
|
|
btAlignedObjectArray_btCollisionObject____push_back_28btCollisionObject__20const__29($7 + 44 | 0 | 0, $6 + 20 | 0 | 0);
|
|
label$8 : {
|
|
if (!((btCollisionObject__isActive_28_29_20const(HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
HEAP8[($6 + 31 | 0) >> 0] = 0;
|
|
}
|
|
HEAP32[($6 + 72 | 0) >> 2] = (HEAP32[($6 + 72 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$5;
|
|
}
|
|
break label$5;
|
|
};
|
|
HEAP32[($6 + 16 | 0) >> 2] = 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = 0;
|
|
label$9 : {
|
|
if (!((HEAP32[($6 + 40 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 48 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$6 = getIslandId_28btPersistentManifold_20const__29(HEAP32[(btAlignedObjectArray_btPersistentManifold____operator_5b_5d_28int_29($7 + 24 | 0 | 0, HEAP32[($6 + 40 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$6;
|
|
label$10 : {
|
|
if (!((HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) == (HEAP32[($6 + 32 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$6 = btAlignedObjectArray_btPersistentManifold____operator_5b_5d_28int_29($7 + 24 | 0 | 0, HEAP32[($6 + 40 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$6;
|
|
HEAP32[($6 + 36 | 0) >> 2] = (HEAP32[($6 + 40 | 0) >> 2] | 0) + 1 | 0;
|
|
label$11 : while (1) {
|
|
$143 = 0;
|
|
label$12 : {
|
|
if (!((HEAP32[($6 + 36 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 48 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
$143 = (HEAP32[($6 + 32 | 0) >> 2] | 0 | 0) == (getIslandId_28btPersistentManifold_20const__29(HEAP32[(btAlignedObjectArray_btPersistentManifold____operator_5b_5d_28int_29($7 + 24 | 0 | 0, HEAP32[($6 + 36 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
}
|
|
label$13 : {
|
|
if (!($143 & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
HEAP32[($6 + 36 | 0) >> 2] = (HEAP32[($6 + 36 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$11;
|
|
}
|
|
break label$11;
|
|
};
|
|
HEAP32[($6 + 16 | 0) >> 2] = (HEAP32[($6 + 36 | 0) >> 2] | 0) - (HEAP32[($6 + 40 | 0) >> 2] | 0) | 0;
|
|
}
|
|
}
|
|
label$14 : {
|
|
if ((HEAPU8[($6 + 31 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$14
|
|
}
|
|
$166 = HEAP32[($6 + 80 | 0) >> 2] | 0;
|
|
((((((wasm2js_i32$6 = $166, wasm2js_i32$5 = btAlignedObjectArray_btCollisionObject____operator_5b_5d_28int_29($7 + 44 | 0 | 0, 0 | 0) | 0), wasm2js_i32$4 = btAlignedObjectArray_btCollisionObject____size_28_29_20const($7 + 44 | 0 | 0) | 0), wasm2js_i32$3 = HEAP32[($6 + 12 | 0) >> 2] | 0), wasm2js_i32$2 = HEAP32[($6 + 16 | 0) >> 2] | 0), wasm2js_i32$1 = HEAP32[($6 + 32 | 0) >> 2] | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$166 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$6 | 0, wasm2js_i32$5 | 0, wasm2js_i32$4 | 0, wasm2js_i32$3 | 0, wasm2js_i32$2 | 0, wasm2js_i32$1 | 0);
|
|
}
|
|
label$15 : {
|
|
if (!(HEAP32[($6 + 16 | 0) >> 2] | 0)) {
|
|
break label$15
|
|
}
|
|
HEAP32[($6 + 40 | 0) >> 2] = HEAP32[($6 + 36 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($6 + 4 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btCollisionObject____resize_28int_2c_20btCollisionObject__20const__29($7 + 44 | 0 | 0, 0 | 0, $6 + 4 | 0 | 0);
|
|
HEAP32[($6 + 68 | 0) >> 2] = HEAP32[($6 + 72 | 0) >> 2] | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
}
|
|
CProfileSample___CProfileSample_28_29($6 + 63 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 96 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20btAlignedObjectArray_btPersistentManifold____quickSort_btPersistentManifoldSortPredicate__28btPersistentManifoldSortPredicate_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btPersistentManifold____size_28_29_20const($5 | 0) | 0 | 0) > (1 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
void_20btAlignedObjectArray_btPersistentManifold____quickSortInternal_btPersistentManifoldSortPredicate__28btPersistentManifoldSortPredicate_20const__2c_20int_2c_20int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 0 | 0, (btAlignedObjectArray_btPersistentManifold____size_28_29_20const($5 | 0) | 0) - 1 | 0 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function getIslandId_28btPersistentManifold_20const__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $18 = 0, $22 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btPersistentManifold__getBody0_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btPersistentManifold__getBody1_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((btCollisionObject__getIslandTag_28_29_20const(HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$18 = btCollisionObject__getIslandTag_28_29_20const(HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
break label$1;
|
|
}
|
|
$18 = btCollisionObject__getIslandTag_28_29_20const(HEAP32[$3 >> 2] | 0 | 0) | 0;
|
|
}
|
|
HEAP32[($3 + 8 | 0) >> 2] = $18;
|
|
$22 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $22 | 0;
|
|
}
|
|
|
|
function void_20btAlignedObjectArray_btPersistentManifold____quickSortInternal_btPersistentManifoldSortPredicate__28btPersistentManifoldSortPredicate_20const__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 20 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[((HEAP32[($7 + 12 | 0) >> 2] | 0) + ((((HEAP32[($6 + 20 | 0) >> 2] | 0) + (HEAP32[($6 + 16 | 0) >> 2] | 0) | 0 | 0) / (2 | 0) | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
label$1 : while (1) {
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((btPersistentManifoldSortPredicate__operator_28_29_28btPersistentManifold_20const__2c_20btPersistentManifold_20const__29_20const(HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0, HEAP32[($6 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((btPersistentManifoldSortPredicate__operator_28_29_28btPersistentManifold_20const__2c_20btPersistentManifold_20const__29_20const(HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[($6 + 4 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP32[($6 + 8 | 0) >> 2] = (HEAP32[($6 + 8 | 0) >> 2] | 0) + -1 | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
label$6 : {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) <= (HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
btAlignedObjectArray_btPersistentManifold____swap_28int_2c_20int_29($7 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = (HEAP32[($6 + 8 | 0) >> 2] | 0) + -1 | 0;
|
|
}
|
|
if ((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) <= (HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
label$7 : {
|
|
if (!((HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
void_20btAlignedObjectArray_btPersistentManifold____quickSortInternal_btPersistentManifoldSortPredicate__28btPersistentManifoldSortPredicate_20const__2c_20int_2c_20int_29($7 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0);
|
|
}
|
|
label$8 : {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
void_20btAlignedObjectArray_btPersistentManifold____quickSortInternal_btPersistentManifoldSortPredicate__28btPersistentManifoldSortPredicate_20const__2c_20int_2c_20int_29($7 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0);
|
|
}
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPersistentManifoldSortPredicate__operator_28_29_28btPersistentManifold_20const__2c_20btPersistentManifold_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $14 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$14 = (getIslandId_28btPersistentManifold_20const__29(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) < (getIslandId_28btPersistentManifold_20const__29(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $14 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btSimulationIslandManager_cpp() {
|
|
__cxx_global_var_init_76();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_77() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(116140 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_2_2() {
|
|
var $2 = 0;
|
|
$2 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $2;
|
|
HEAPF32[($2 + 12 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($2 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($2 + 4 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29(116144 | 0, $2 + 12 | 0 | 0, $2 + 8 | 0 | 0, $2 + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $2 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function fabs_5babi_v160004_5d_28float_29($0) {
|
|
$0 = Math_fround($0);
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAPF32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(Math_abs(Math_fround(HEAPF32[($3 + 12 | 0) >> 2]))));
|
|
}
|
|
|
|
function btConeTwistConstraint__GetPointForAngle_28float_2c_20float_29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $7 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 108 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 104 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 100 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 108 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btCos_28float_29(Math_fround(Math_fround(HEAPF32[($6 + 104 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 96 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btSin_28float_29(Math_fround(Math_fround(HEAPF32[($6 + 104 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 92 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($6 + 88 | 0) >> 2] = Math_fround(HEAPF32[($7 + 444 | 0) >> 2]);
|
|
label$1 : {
|
|
if (!(Math_fround(fabs_5babi_v160004_5d_28float_29(Math_fround(Math_fround(HEAPF32[($6 + 96 | 0) >> 2])))) > Math_fround(1.1920928955078125e-07) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAPF32[($6 + 84 | 0) >> 2] = Math_fround(Math_fround(Math_fround(HEAPF32[($6 + 92 | 0) >> 2]) * Math_fround(HEAPF32[($6 + 92 | 0) >> 2])) / Math_fround(Math_fround(HEAPF32[($6 + 96 | 0) >> 2]) * Math_fround(HEAPF32[($6 + 96 | 0) >> 2])));
|
|
HEAPF32[($6 + 80 | 0) >> 2] = Math_fround(Math_fround(1.0) / Math_fround(Math_fround(HEAPF32[($7 + 448 | 0) >> 2]) * Math_fround(HEAPF32[($7 + 448 | 0) >> 2])));
|
|
HEAPF32[($6 + 80 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($6 + 80 | 0) >> 2]) + Math_fround(Math_fround(HEAPF32[($6 + 84 | 0) >> 2]) / Math_fround(Math_fround(HEAPF32[($7 + 444 | 0) >> 2]) * Math_fround(HEAPF32[($7 + 444 | 0) >> 2]))));
|
|
HEAPF32[($6 + 76 | 0) >> 2] = Math_fround(Math_fround(Math_fround(1.0) + Math_fround(HEAPF32[($6 + 84 | 0) >> 2])) / Math_fround(HEAPF32[($6 + 80 | 0) >> 2]));
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(sqrt_5babi_v160004_5d_28float_29(Math_fround(Math_fround(HEAPF32[($6 + 76 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 88 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
HEAPF32[($6 + 56 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 52 | 0) >> 2] = Math_fround(-Math_fround(HEAPF32[($6 + 92 | 0) >> 2]));
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 60 | 0 | 0, $6 + 56 | 0 | 0, $6 + 96 | 0 | 0, $6 + 52 | 0 | 0) | 0;
|
|
btQuaternion__btQuaternion_28btVector3_20const__2c_20float_20const__29($6 + 36 | 0 | 0, $6 + 60 | 0 | 0, $6 + 88 | 0 | 0) | 0;
|
|
HEAPF32[($6 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 20 | 0 | 0, $6 + 100 | 0 | 0, $6 + 16 | 0 | 0, $6 + 12 | 0 | 0) | 0;
|
|
quatRotate_28btQuaternion_20const__2c_20btVector3_20const__29($0 | 0, $6 + 36 | 0 | 0, $6 + 20 | 0 | 0);
|
|
__stack_pointer = $6 + 112 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btConeTwistConstraint_cpp() {
|
|
__cxx_global_var_init_77();
|
|
__cxx_global_var_init_2_2();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_78() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(116160 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btGeneric6DofConstraint__getAngle_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $13 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$13 = Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const((HEAP32[($4 + 12 | 0) >> 2] | 0) + 1192 | 0 | 0) | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return Math_fround($13);
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btGeneric6DofConstraint_cpp() {
|
|
__cxx_global_var_init_78();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_79() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(116164 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__btDiscreteDynamicsWorld_28btDispatcher__2c_20btBroadphaseInterface__2c_20btConstraintSolver__2c_20btCollisionConfiguration__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0, $65 = 0, $71 = 0, $76 = 0, $80 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$7 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 40 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 36 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 32 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 40 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 44 | 0) >> 2] = $8;
|
|
btDynamicsWorld__btDynamicsWorld_28btDispatcher__2c_20btBroadphaseInterface__2c_20btCollisionConfiguration__29($8 | 0, HEAP32[($7 + 36 | 0) >> 2] | 0 | 0, HEAP32[($7 + 32 | 0) >> 2] | 0 | 0, HEAP32[($7 + 24 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$8 >> 2] = 102792 + 8 | 0;
|
|
btAlignedObjectArray_btTypedConstraint____btAlignedObjectArray_28_29($8 + 192 | 0 | 0) | 0;
|
|
HEAP32[($8 + 212 | 0) >> 2] = 0;
|
|
HEAP32[($8 + 216 | 0) >> 2] = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btTypedConstraint____btAlignedObjectArray_28_29($8 + 224 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btRigidBody____btAlignedObjectArray_28_29($8 + 244 | 0 | 0) | 0;
|
|
HEAPF32[($7 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($7 + 16 | 0) >> 2] = Math_fround(-10.0);
|
|
HEAPF32[($7 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($8 + 264 | 0 | 0, $7 + 20 | 0 | 0, $7 + 16 | 0 | 0, $7 + 12 | 0 | 0) | 0;
|
|
HEAPF32[($8 + 280 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($8 + 284 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP8[($8 + 290 | 0) >> 0] = 0;
|
|
HEAP8[($8 + 291 | 0) >> 0] = 0;
|
|
btAlignedObjectArray_btActionInterface____btAlignedObjectArray_28_29($8 + 292 | 0 | 0) | 0;
|
|
HEAP32[($8 + 312 | 0) >> 2] = 0;
|
|
HEAP8[($8 + 316 | 0) >> 0] = 1;
|
|
btAlignedObjectArray_btPersistentManifold____btAlignedObjectArray_28_29($8 + 320 | 0 | 0) | 0;
|
|
btSpinMutex__btSpinMutex_28_29($8 + 340 | 0 | 0) | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if ((HEAP32[($8 + 216 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(236 | 0, 16 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
$65 = btSequentialImpulseConstraintSolver__operator_20new_28unsigned_20long_2c_20void__29(236 | 0, HEAP32[($7 + 8 | 0) >> 2] | 0 | 0) | 0;
|
|
btSequentialImpulseConstraintSolver__btSequentialImpulseConstraintSolver_28_29($65 | 0) | 0;
|
|
HEAP32[($8 + 216 | 0) >> 2] = $65;
|
|
HEAP8[($8 + 289 | 0) >> 0] = 1;
|
|
break label$1;
|
|
}
|
|
HEAP8[($8 + 289 | 0) >> 0] = 0;
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(68 | 0, 16 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
$71 = HEAP32[($7 + 4 | 0) >> 2] | 0;
|
|
btSimulationIslandManager__btSimulationIslandManager_28_29($71 | 0) | 0;
|
|
HEAP32[($8 + 220 | 0) >> 2] = $71;
|
|
HEAP8[($8 + 288 | 0) >> 0] = 1;
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29(88 | 0, 16 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$76 = HEAP32[$7 >> 2] | 0;
|
|
InplaceSolverIslandCallback__InplaceSolverIslandCallback_28btConstraintSolver__2c_20btStackAlloc__2c_20btDispatcher__29($76 | 0, HEAP32[($8 + 216 | 0) >> 2] | 0 | 0, 0 | 0, HEAP32[($7 + 36 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($8 + 212 | 0) >> 2] = $76;
|
|
$80 = HEAP32[($7 + 44 | 0) >> 2] | 0;
|
|
__stack_pointer = $7 + 48 | 0;
|
|
return $80 | 0;
|
|
}
|
|
|
|
function btDynamicsWorld__btDynamicsWorld_28btDispatcher__2c_20btBroadphaseInterface__2c_20btCollisionConfiguration__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__btCollisionWorld_28btDispatcher__2c_20btBroadphaseInterface__2c_20btCollisionConfiguration__29($7 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0, HEAP32[($6 + 4 | 0) >> 2] | 0 | 0, HEAP32[$6 >> 2] | 0 | 0) | 0;
|
|
HEAP32[$7 >> 2] = 103056 + 8 | 0;
|
|
HEAP32[($7 + 80 | 0) >> 2] = 0;
|
|
HEAP32[($7 + 84 | 0) >> 2] = 0;
|
|
HEAP32[($7 + 88 | 0) >> 2] = 0;
|
|
btContactSolverInfo__btContactSolverInfo_28_29($7 + 92 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btRigidBody____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btRigidBody__2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btRigidBody____init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btActionInterface____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedAllocator_btActionInterface__2c_2016u___btAlignedAllocator_28_29($4 | 0) | 0;
|
|
btAlignedObjectArray_btActionInterface____init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btSequentialImpulseConstraintSolver__operator_20new_28unsigned_20long_2c_20void__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return HEAP32[($4 + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function InplaceSolverIslandCallback__InplaceSolverIslandCallback_28btConstraintSolver__2c_20btStackAlloc__2c_20btDispatcher__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $7 = 0, $6 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btSimulationIslandManager__IslandCallback__IslandCallback_28_29($7 | 0) | 0;
|
|
HEAP32[$7 >> 2] = 103204 + 8 | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($7 + 8 | 0) >> 2] = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($7 + 16 | 0) >> 2] = 0;
|
|
HEAP32[($7 + 20 | 0) >> 2] = 0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = HEAP32[$6 >> 2] | 0;
|
|
btAlignedObjectArray_btCollisionObject____btAlignedObjectArray_28_29($7 + 28 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btPersistentManifold____btAlignedObjectArray_28_29($7 + 48 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btTypedConstraint____btAlignedObjectArray_28_29($7 + 68 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btContactSolverInfo__btContactSolverInfo_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[$4 >> 2] = Math_fround(.6000000238418579);
|
|
HEAPF32[($4 + 4 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($4 + 8 | 0) >> 2] = Math_fround(.30000001192092896);
|
|
HEAPF32[($4 + 12 | 0) >> 2] = Math_fround(.01666666753590107);
|
|
HEAPF32[($4 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 24 | 0) >> 2] = Math_fround(20.0);
|
|
HEAP32[($4 + 20 | 0) >> 2] = 10;
|
|
HEAPF32[($4 + 32 | 0) >> 2] = Math_fround(.20000000298023224);
|
|
HEAPF32[($4 + 36 | 0) >> 2] = Math_fround(.20000000298023224);
|
|
HEAPF32[($4 + 40 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 44 | 0) >> 2] = Math_fround(.20000000298023224);
|
|
HEAPF32[($4 + 48 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 28 | 0) >> 2] = Math_fround(1.0);
|
|
HEAP32[($4 + 52 | 0) >> 2] = 1;
|
|
HEAPF32[($4 + 56 | 0) >> 2] = Math_fround(-.03999999910593033);
|
|
HEAPF32[($4 + 60 | 0) >> 2] = Math_fround(.10000000149011612);
|
|
HEAPF32[($4 + 64 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 68 | 0) >> 2] = Math_fround(.8500000238418579);
|
|
HEAP32[($4 + 72 | 0) >> 2] = 260;
|
|
HEAP32[($4 + 76 | 0) >> 2] = 2;
|
|
HEAP32[($4 + 80 | 0) >> 2] = 128;
|
|
HEAPF32[($4 + 84 | 0) >> 2] = Math_fround(100.0);
|
|
HEAPF32[($4 + 88 | 0) >> 2] = Math_fround(1000000015047466219876688.0e6);
|
|
HEAPF32[($4 + 92 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 96 | 0) >> 2] = Math_fround(.20000000298023224);
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedAllocator_btRigidBody__2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btRigidBody____init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btActionInterface__2c_2016u___btAlignedAllocator_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btActionInterface____init_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($4 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
|
|
function btSimulationIslandManager__IslandCallback__IslandCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 103320 + 8 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld___btDiscreteDynamicsWorld_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0, $11 = 0, $22 = 0, $29 = 0, $43 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
HEAP32[$4 >> 2] = 102792 + 8 | 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($4 + 288 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$11 = HEAP32[($4 + 220 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$11 >> 2] | 0) >> 2] | 0 | 0]($11) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 220 | 0) >> 2] | 0 | 0);
|
|
}
|
|
label$2 : {
|
|
if (!((HEAP32[($4 + 212 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$22 = HEAP32[($4 + 212 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$22 >> 2] | 0) >> 2] | 0 | 0]($22) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 212 | 0) >> 2] | 0 | 0);
|
|
}
|
|
label$3 : {
|
|
if (!((HEAPU8[($4 + 289 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$29 = HEAP32[($4 + 216 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$29 >> 2] | 0) >> 2] | 0 | 0]($29) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 216 | 0) >> 2] | 0 | 0);
|
|
}
|
|
btAlignedObjectArray_btPersistentManifold_____btAlignedObjectArray_28_29($4 + 320 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btActionInterface_____btAlignedObjectArray_28_29($4 + 292 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btRigidBody_____btAlignedObjectArray_28_29($4 + 244 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btTypedConstraint_____btAlignedObjectArray_28_29($4 + 224 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btTypedConstraint_____btAlignedObjectArray_28_29($4 + 192 | 0 | 0) | 0;
|
|
btDynamicsWorld___btDynamicsWorld_28_29($4 | 0) | 0;
|
|
$43 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $43 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btActionInterface_____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btActionInterface____clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btRigidBody_____btAlignedObjectArray_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btRigidBody____clear_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btDynamicsWorld___btDynamicsWorld_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld___btCollisionWorld_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btActionInterface____clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btActionInterface____destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btActionInterface____size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btActionInterface____deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btActionInterface____init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btRigidBody____clear_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btRigidBody____destroy_28int_2c_20int_29($4 | 0, 0 | 0, btAlignedObjectArray_btRigidBody____size_28_29_20const($4 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btRigidBody____deallocate_28_29($4 | 0);
|
|
btAlignedObjectArray_btRigidBody____init_28_29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld___btDiscreteDynamicsWorld_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[1114 | 0]($4) | 0;
|
|
btDiscreteDynamicsWorld__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__saveKinematicState_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 24 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 20 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btCollisionObject____size_28_29_20const($5 + 4 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btCollisionObject____operator_5b_5d_28int_29($5 + 4 | 0 | 0, HEAP32[($4 + 20 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btRigidBody__upcast_28btCollisionObject__29(HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
label$3 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
if (!((btCollisionObject__getActivationState_28_29_20const(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0 | 0) != (2 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
label$4 : {
|
|
if (!((btCollisionObject__isKinematicObject_28_29_20const(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
btRigidBody__saveKinematicState_28float_29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 24 | 0) >> 2])));
|
|
}
|
|
}
|
|
HEAP32[($4 + 20 | 0) >> 2] = (HEAP32[($4 + 20 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__debugDrawWorld_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0, $21 = 0, $65 = 0, $82 = 0, $100 = 0, $118 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$3 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 28 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 28 | 0) >> 2] | 0;
|
|
CProfileSample__CProfileSample_28char_20const__29($3 + 27 | 0 | 0, 82255 | 0) | 0;
|
|
btCollisionWorld__debugDrawWorld_28_29($4 | 0);
|
|
HEAP8[($3 + 26 | 0) >> 0] = 0;
|
|
label$1 : {
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($4) | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$21 = FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($4) | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$21 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($21) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
label$2 : {
|
|
if (!((HEAP32[($3 + 20 | 0) >> 2] | 0) & 6144 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP8[($3 + 26 | 0) >> 0] = 1;
|
|
}
|
|
}
|
|
label$3 : {
|
|
if (!((HEAPU8[($3 + 26 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = (FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 104 | 0) >> 2] | 0 | 0]($4) | 0) - 1 | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((HEAP32[($3 + 16 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 108 | 0) >> 2] | 0 | 0]($4, HEAP32[($3 + 16 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 172 | 0) >> 2] | 0 | 0]($4, HEAP32[($3 + 12 | 0) >> 2] | 0);
|
|
HEAP32[($3 + 16 | 0) >> 2] = (HEAP32[($3 + 16 | 0) >> 2] | 0) + -1 | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
}
|
|
label$6 : {
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($4) | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
$65 = FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($4) | 0;
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$65 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($65) | 0) & 16387 | 0)) {
|
|
break label$6
|
|
}
|
|
label$7 : {
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($4) | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
$82 = FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($4) | 0;
|
|
if (!(FUNCTION_TABLE[HEAP32[((HEAP32[$82 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($82) | 0)) {
|
|
break label$7
|
|
}
|
|
HEAP32[($3 + 8 | 0) >> 2] = 0;
|
|
label$8 : {
|
|
label$9 : while (1) {
|
|
if (!((HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btActionInterface____size_28_29_20const($4 + 292 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
$100 = HEAP32[(btAlignedObjectArray_btActionInterface____operator_5b_5d_28int_29($4 + 292 | 0 | 0, HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$100 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($100, HEAP32[($4 + 72 | 0) >> 2] | 0);
|
|
HEAP32[($3 + 8 | 0) >> 2] = (HEAP32[($3 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$9;
|
|
};
|
|
}
|
|
}
|
|
}
|
|
label$10 : {
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($4) | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
$118 = FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($4) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$118 >> 2] | 0) + 104 | 0) >> 2] | 0 | 0]($118);
|
|
}
|
|
CProfileSample___CProfileSample_28_29($3 + 27 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btActionInterface____size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btActionInterface____operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btActionInterface____size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__clearForces_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btRigidBody____size_28_29_20const($4 + 244 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btRigidBody____operator_5b_5d_28int_29($4 + 244 | 0 | 0, HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btRigidBody__clearForces_28_29(HEAP32[($3 + 4 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($3 + 8 | 0) >> 2] = (HEAP32[($3 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__applyGravity_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btRigidBody____size_28_29_20const($4 + 244 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btRigidBody____operator_5b_5d_28int_29($4 + 244 | 0 | 0, HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$3 : {
|
|
if (!((btCollisionObject__isActive_28_29_20const(HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
btRigidBody__applyGravity_28_29(HEAP32[($3 + 4 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($3 + 8 | 0) >> 2] = (HEAP32[($3 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__synchronizeSingleMotionState_28btRigidBody__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $50 = Math_fround(0), $60 = 0, $33 = 0, $35 = 0, $37 = 0;
|
|
$4 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 76 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 72 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 76 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 72 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(66059 | 0, 75653 | 0, 355 | 0, 81262 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if (!((btRigidBody__getMotionState_28_29(HEAP32[($4 + 72 | 0) >> 2] | 0 | 0) | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if ((btCollisionObject__isStaticOrKinematicObject_28_29_20const(HEAP32[($4 + 72 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
btTransform__btTransform_28_29($4 + 8 | 0 | 0) | 0;
|
|
$33 = btCollisionObject__getInterpolationWorldTransform_28_29(HEAP32[($4 + 72 | 0) >> 2] | 0 | 0) | 0;
|
|
$35 = btCollisionObject__getInterpolationLinearVelocity_28_29_20const(HEAP32[($4 + 72 | 0) >> 2] | 0 | 0) | 0;
|
|
$37 = btCollisionObject__getInterpolationAngularVelocity_28_29_20const(HEAP32[($4 + 72 | 0) >> 2] | 0 | 0) | 0;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!((HEAPU8[($5 + 316 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
if (!(Math_fround(HEAPF32[($5 + 284 | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
$50 = Math_fround(Math_fround(HEAPF32[($5 + 280 | 0) >> 2]) - Math_fround(HEAPF32[($5 + 284 | 0) >> 2]));
|
|
break label$3;
|
|
}
|
|
$50 = Math_fround(Math_fround(HEAPF32[($5 + 280 | 0) >> 2]) * Math_fround(btCollisionObject__getHitFraction_28_29_20const(HEAP32[($4 + 72 | 0) >> 2] | 0 | 0)));
|
|
}
|
|
btTransformUtil__integrateTransform_28btTransform_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20btTransform__29($33 | 0, $35 | 0, $37 | 0, Math_fround($50), $4 + 8 | 0 | 0);
|
|
$60 = btRigidBody__getMotionState_28_29(HEAP32[($4 + 72 | 0) >> 2] | 0 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$60 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($60, $4 + 8 | 0);
|
|
}
|
|
__stack_pointer = $4 + 80 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionObject__getInterpolationLinearVelocity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 132 | 0 | 0;
|
|
}
|
|
|
|
function btCollisionObject__getInterpolationAngularVelocity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 148 | 0 | 0;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__synchronizeMotionStates_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$3 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 28 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 28 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 290 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($3 + 24 | 0) >> 2] = 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($3 + 24 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btCollisionObject____size_28_29_20const($4 + 4 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btCollisionObject____operator_5b_5d_28int_29($4 + 4 | 0 | 0, HEAP32[($3 + 24 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btRigidBody__upcast_28btCollisionObject__29(HEAP32[($3 + 20 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$5 : {
|
|
if (!((HEAP32[($3 + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btDiscreteDynamicsWorld__synchronizeSingleMotionState_28btRigidBody__29($4 | 0, HEAP32[($3 + 16 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($3 + 24 | 0) >> 2] = (HEAP32[($3 + 24 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
break label$1;
|
|
}
|
|
HEAP32[($3 + 12 | 0) >> 2] = 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btRigidBody____size_28_29_20const($4 + 244 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btRigidBody____operator_5b_5d_28int_29($4 + 244 | 0 | 0, HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
label$8 : {
|
|
if (!((btCollisionObject__isActive_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
btDiscreteDynamicsWorld__synchronizeSingleMotionState_28btRigidBody__29($4 | 0, HEAP32[($3 + 8 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($3 + 12 | 0) >> 2] = (HEAP32[($3 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
__stack_pointer = $3 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__stepSimulation_28float_2c_20int_2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $7 = 0, $22 = Math_fround(0), $28 = 0, $44 = Math_fround(0), $69 = 0, $91 = 0, $122 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
btDiscreteDynamicsWorld__startProfiling_28float_29($7 | 0, Math_fround(Math_fround(HEAPF32[($6 + 24 | 0) >> 2])));
|
|
HEAP32[($6 + 12 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($6 + 20 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($7 + 284 | 0) >> 2] = Math_fround(HEAPF32[($6 + 16 | 0) >> 2]);
|
|
HEAPF32[($7 + 280 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($7 + 280 | 0) >> 2]) + Math_fround(HEAPF32[($6 + 24 | 0) >> 2]));
|
|
label$3 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 280 | 0) >> 2]) >= Math_fround(HEAPF32[($6 + 16 | 0) >> 2]) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
$22 = Math_fround(Math_fround(HEAPF32[($7 + 280 | 0) >> 2]) / Math_fround(HEAPF32[($6 + 16 | 0) >> 2]));
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!(Math_fround(Math_abs($22)) < Math_fround(2147483648.0))) {
|
|
break label$5
|
|
}
|
|
$28 = ~~$22;
|
|
break label$4;
|
|
}
|
|
$28 = -2147483648;
|
|
}
|
|
HEAP32[($6 + 12 | 0) >> 2] = $28;
|
|
HEAPF32[($7 + 280 | 0) >> 2] = Math_fround(Math_fround(Math_fround(-Math_fround(HEAP32[($6 + 12 | 0) >> 2] | 0 | 0)) * Math_fround(HEAPF32[($6 + 16 | 0) >> 2])) + Math_fround(HEAPF32[($7 + 280 | 0) >> 2]));
|
|
}
|
|
break label$1;
|
|
}
|
|
HEAPF32[($6 + 16 | 0) >> 2] = Math_fround(HEAPF32[($6 + 24 | 0) >> 2]);
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!((HEAPU8[($7 + 316 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
$44 = Math_fround(0 | 0);
|
|
break label$6;
|
|
}
|
|
$44 = Math_fround(HEAPF32[($6 + 24 | 0) >> 2]);
|
|
}
|
|
HEAPF32[($7 + 280 | 0) >> 2] = $44;
|
|
HEAPF32[($7 + 284 | 0) >> 2] = Math_fround(0 | 0);
|
|
label$8 : {
|
|
label$9 : {
|
|
if (!((btFuzzyZero_28float_29(Math_fround(Math_fround(HEAPF32[($6 + 24 | 0) >> 2]))) | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
HEAP32[($6 + 12 | 0) >> 2] = 0;
|
|
HEAP32[($6 + 20 | 0) >> 2] = 0;
|
|
break label$8;
|
|
}
|
|
HEAP32[($6 + 12 | 0) >> 2] = 1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = 1;
|
|
}
|
|
}
|
|
label$10 : {
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($7) | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($7) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
$69 = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = 0, wasm2js_i32$1 = ((FUNCTION_TABLE[HEAP32[((HEAP32[$69 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($69) | 0) & 16 | 0 | 0) != (0 | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 116124 | 0) >> 0] = wasm2js_i32$1;
|
|
}
|
|
label$11 : {
|
|
label$12 : {
|
|
if (!(HEAP32[($6 + 12 | 0) >> 2] | 0)) {
|
|
break label$12
|
|
}
|
|
label$13 : {
|
|
label$14 : {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) > (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
$91 = HEAP32[($6 + 20 | 0) >> 2] | 0;
|
|
break label$13;
|
|
}
|
|
$91 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($6 + 4 | 0) >> 2] = $91;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 168 | 0) >> 2] | 0 | 0]($7, Math_fround(Math_fround(HEAPF32[($6 + 16 | 0) >> 2]) * Math_fround(HEAP32[($6 + 4 | 0) >> 2] | 0 | 0)));
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 176 | 0) >> 2] | 0 | 0]($7);
|
|
HEAP32[$6 >> 2] = 0;
|
|
label$15 : {
|
|
label$16 : while (1) {
|
|
if (!((HEAP32[$6 >> 2] | 0 | 0) < (HEAP32[($6 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 160 | 0) >> 2] | 0 | 0]($7, Math_fround(HEAPF32[($6 + 16 | 0) >> 2]));
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 80 | 0) >> 2] | 0 | 0]($7);
|
|
HEAP32[$6 >> 2] = (HEAP32[$6 >> 2] | 0) + 1 | 0;
|
|
continue label$16;
|
|
};
|
|
}
|
|
break label$11;
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 80 | 0) >> 2] | 0 | 0]($7);
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 120 | 0) >> 2] | 0 | 0]($7);
|
|
$122 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return $122 | 0;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__startProfiling_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
return;
|
|
}
|
|
|
|
function btFuzzyZero_28float_29($0) {
|
|
$0 = Math_fround($0);
|
|
var $3 = 0, $9 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAPF32[($3 + 12 | 0) >> 2] = $0;
|
|
$9 = Math_fround(btFabs_28float_29(Math_fround(Math_fround(HEAPF32[($3 + 12 | 0) >> 2])))) < Math_fround(1.1920928955078125e-07) & 1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__internalSingleStepSimulation_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $5 = 0, $4 = 0, $29 = 0, $38 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$2 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
CProfileSample__CProfileSample_28char_20const__29($4 + 7 | 0 | 0, 76760 | 0) | 0;
|
|
label$1 : {
|
|
if (!((0 | 0) != (HEAP32[($5 + 84 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
FUNCTION_TABLE[HEAP32[($5 + 84 | 0) >> 2] | 0 | 0]($5, Math_fround(HEAPF32[($4 + 8 | 0) >> 2]));
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 140 | 0) >> 2] | 0 | 0]($5, Math_fround(HEAPF32[($4 + 8 | 0) >> 2]));
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btCollisionWorld__getDispatchInfo_28_29($5 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAPF32[(HEAP32[$4 >> 2] | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
HEAP32[((HEAP32[$4 >> 2] | 0) + 4 | 0) >> 2] = 0;
|
|
$29 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
HEAP32[((HEAP32[$4 >> 2] | 0) + 20 | 0) >> 2] = $29;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 164 | 0) >> 2] | 0 | 0]($5, Math_fround(HEAPF32[($4 + 8 | 0) >> 2]));
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 44 | 0) >> 2] | 0 | 0]($5);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 148 | 0) >> 2] | 0 | 0]($5);
|
|
$38 = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
(wasm2js_i32$0 = btDynamicsWorld__getSolverInfo_28_29($5 | 0) | 0, wasm2js_f32$0 = $38), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
((wasm2js_i32$1 = $5, wasm2js_i32$2 = btDynamicsWorld__getSolverInfo_28_29($5 | 0) | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$5 >> 2] | 0) + 152 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0);
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 144 | 0) >> 2] | 0 | 0]($5, Math_fround(HEAPF32[($4 + 8 | 0) >> 2]));
|
|
btDiscreteDynamicsWorld__updateActions_28float_29($5 | 0, Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2])));
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 156 | 0) >> 2] | 0 | 0]($5, Math_fround(HEAPF32[($4 + 8 | 0) >> 2]));
|
|
label$2 : {
|
|
if (!((0 | 0) != (HEAP32[($5 + 80 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
FUNCTION_TABLE[HEAP32[($5 + 80 | 0) >> 2] | 0 | 0]($5, Math_fround(HEAPF32[($4 + 8 | 0) >> 2]));
|
|
}
|
|
CProfileSample___CProfileSample_28_29($4 + 7 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__updateActions_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $5 = 0, $24 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
CProfileSample__CProfileSample_28char_20const__29($4 + 7 | 0 | 0, 69678 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$4 >> 2] | 0 | 0) < (btAlignedObjectArray_btActionInterface____size_28_29_20const($5 + 292 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$24 = HEAP32[(btAlignedObjectArray_btActionInterface____operator_5b_5d_28int_29($5 + 292 | 0 | 0, HEAP32[$4 >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$24 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($24, $5, Math_fround(HEAPF32[($4 + 8 | 0) >> 2]));
|
|
HEAP32[$4 >> 2] = (HEAP32[$4 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
CProfileSample___CProfileSample_28_29($4 + 7 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__setGravity_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $5 = 0, $8 = 0, $10 = 0, $63 = 0, $73 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$8 = $5 + 264 | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$63 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $8;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $63;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$10 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $10 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$73 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8 + $10 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $73;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btRigidBody____size_28_29_20const($5 + 244 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btRigidBody____operator_5b_5d_28int_29($5 + 244 | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
label$3 : {
|
|
if (!((btCollisionObject__isActive_28_29_20const(HEAP32[$4 >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
if ((btRigidBody__getFlags_28_29_20const(HEAP32[$4 >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
btRigidBody__setGravity_28btVector3_20const__29(HEAP32[$4 >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__getGravity_28_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, $9 = 0, $27 = 0, $37 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $1;
|
|
i64toi32_i32$2 = (HEAP32[($4 + 12 | 0) >> 2] | 0) + 264 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$27 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $27;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$9 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $9 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$37 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0 + $9 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $37;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__addCollisionObject_28btCollisionObject__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
btCollisionWorld__addCollisionObject_28btCollisionObject__2c_20int_2c_20int_29(HEAP32[($6 + 12 | 0) >> 2] | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0, HEAP32[($6 + 4 | 0) >> 2] | 0 | 0, HEAP32[$6 >> 2] | 0 | 0);
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__removeCollisionObject_28btCollisionObject__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btRigidBody__upcast_28btCollisionObject__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 92 | 0) >> 2] | 0 | 0]($5, HEAP32[($4 + 4 | 0) >> 2] | 0);
|
|
break label$1;
|
|
}
|
|
btCollisionWorld__removeCollisionObject_28btCollisionObject__29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__removeRigidBody_28btRigidBody__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
btAlignedObjectArray_btRigidBody____remove_28btRigidBody__20const__29($5 + 244 | 0 | 0, $4 + 8 | 0 | 0);
|
|
btCollisionWorld__removeCollisionObject_28btCollisionObject__29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btRigidBody____remove_28btRigidBody__20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btRigidBody____findLinearSearch_28btRigidBody__20const__29_20const($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btRigidBody____removeAtIndex_28int_29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btRigidBody____findLinearSearch_28btRigidBody__20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btRigidBody____size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[$4 >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$4 >> 2] | 0 | 0) < (btAlignedObjectArray_btRigidBody____size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$3 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[$4 >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0) == (HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[$4 >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[$4 >> 2] = (HEAP32[$4 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
$32 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btRigidBody____removeAtIndex_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btRigidBody____size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btRigidBody____swap_28int_2c_20int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, (btAlignedObjectArray_btRigidBody____size_28_29_20const($5 | 0) | 0) - 1 | 0 | 0);
|
|
btAlignedObjectArray_btRigidBody____pop_back_28_29($5 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__addRigidBody_28btRigidBody__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $41 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((btCollisionObject__isStaticOrKinematicObject_28_29_20const(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
if ((btRigidBody__getFlags_28_29_20const(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
btRigidBody__setGravity_28btVector3_20const__29(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0, $5 + 264 | 0 | 0);
|
|
}
|
|
label$2 : {
|
|
if (!((btRigidBody__getCollisionShape_28_29(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if ((btCollisionObject__isStaticObject_28_29_20const(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
btAlignedObjectArray_btRigidBody____push_back_28btRigidBody__20const__29($5 + 244 | 0 | 0, $4 + 24 | 0 | 0);
|
|
break label$3;
|
|
}
|
|
btCollisionObject__setActivationState_28int_29_20const(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0, 2 | 0);
|
|
}
|
|
$41 = 1;
|
|
label$5 : {
|
|
if ((btCollisionObject__isStaticObject_28_29_20const(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$5
|
|
}
|
|
$41 = btCollisionObject__isKinematicObject_28_29_20const(HEAP32[($4 + 24 | 0) >> 2] | 0 | 0) | 0;
|
|
}
|
|
HEAP8[($4 + 23 | 0) >> 0] = ($41 ^ -1 | 0) & 1 | 0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = (HEAPU8[($4 + 23 | 0) >> 0] | 0) & 1 | 0 ? 1 : 2;
|
|
HEAP32[($4 + 12 | 0) >> 2] = (HEAPU8[($4 + 23 | 0) >> 0] | 0) & 1 | 0 ? -1 : -3;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 36 | 0) >> 2] | 0 | 0]($5, HEAP32[($4 + 24 | 0) >> 2] | 0, HEAP32[($4 + 16 | 0) >> 2] | 0, HEAP32[($4 + 12 | 0) >> 2] | 0);
|
|
}
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btRigidBody____push_back_28btRigidBody__20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btRigidBody____size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btRigidBody____capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btRigidBody____reserve_28int_29($5 | 0, btAlignedObjectArray_btRigidBody____allocSize_28int_29($5 | 0, btAlignedObjectArray_btRigidBody____size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btRigidBody____capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btRigidBody____allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btRigidBody____reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btRigidBody____capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btRigidBody____allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btRigidBody____copy_28int_2c_20int_2c_20btRigidBody___29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btRigidBody____size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btRigidBody____destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btRigidBody____size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btRigidBody____deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__addRigidBody_28btRigidBody__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((btCollisionObject__isStaticOrKinematicObject_28_29_20const(HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
if ((btRigidBody__getFlags_28_29_20const(HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
btRigidBody__setGravity_28btVector3_20const__29(HEAP32[($6 + 8 | 0) >> 2] | 0 | 0, $7 + 264 | 0 | 0);
|
|
}
|
|
label$2 : {
|
|
if (!((btRigidBody__getCollisionShape_28_29(HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if ((btCollisionObject__isStaticObject_28_29_20const(HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
btAlignedObjectArray_btRigidBody____push_back_28btRigidBody__20const__29($7 + 244 | 0 | 0, $6 + 8 | 0 | 0);
|
|
break label$3;
|
|
}
|
|
btCollisionObject__setActivationState_28int_29_20const(HEAP32[($6 + 8 | 0) >> 2] | 0 | 0, 2 | 0);
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 36 | 0) >> 2] | 0 | 0]($7, HEAP32[($6 + 8 | 0) >> 2] | 0, HEAP32[($6 + 4 | 0) >> 2] | 0, HEAP32[$6 >> 2] | 0);
|
|
}
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__updateActivationState_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $5 = 0, $62 = 0, $84 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 76 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 72 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 76 | 0) >> 2] | 0;
|
|
CProfileSample__CProfileSample_28char_20const__29($4 + 71 | 0 | 0, 81326 | 0) | 0;
|
|
HEAP32[($4 + 64 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 64 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btRigidBody____size_28_29_20const($5 + 244 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btRigidBody____operator_5b_5d_28int_29($5 + 244 | 0 | 0, HEAP32[($4 + 64 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 60 | 0) >> 2] = wasm2js_i32$1;
|
|
label$3 : {
|
|
if (!((HEAP32[($4 + 60 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
btRigidBody__updateDeactivation_28float_29(HEAP32[($4 + 60 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 72 | 0) >> 2])));
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!((btRigidBody__wantsSleeping_28_29(HEAP32[($4 + 60 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!((btCollisionObject__isStaticOrKinematicObject_28_29_20const(HEAP32[($4 + 60 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
btCollisionObject__setActivationState_28int_29_20const(HEAP32[($4 + 60 | 0) >> 2] | 0 | 0, 2 | 0);
|
|
break label$6;
|
|
}
|
|
label$8 : {
|
|
if (!((btCollisionObject__getActivationState_28_29_20const(HEAP32[($4 + 60 | 0) >> 2] | 0 | 0) | 0 | 0) == (1 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
btCollisionObject__setActivationState_28int_29_20const(HEAP32[($4 + 60 | 0) >> 2] | 0 | 0, 3 | 0);
|
|
}
|
|
label$9 : {
|
|
if (!((btCollisionObject__getActivationState_28_29_20const(HEAP32[($4 + 60 | 0) >> 2] | 0 | 0) | 0 | 0) == (2 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
$62 = HEAP32[($4 + 60 | 0) >> 2] | 0;
|
|
HEAPF32[($4 + 40 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 36 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 32 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 44 | 0 | 0, $4 + 40 | 0 | 0, $4 + 36 | 0 | 0, $4 + 32 | 0 | 0) | 0;
|
|
btRigidBody__setAngularVelocity_28btVector3_20const__29($62 | 0, $4 + 44 | 0 | 0);
|
|
$84 = HEAP32[($4 + 60 | 0) >> 2] | 0;
|
|
HEAPF32[($4 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 8 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 4 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 16 | 0 | 0, $4 + 12 | 0 | 0, $4 + 8 | 0 | 0, $4 + 4 | 0 | 0) | 0;
|
|
btRigidBody__setLinearVelocity_28btVector3_20const__29($84 | 0, $4 + 16 | 0 | 0);
|
|
}
|
|
}
|
|
break label$4;
|
|
}
|
|
label$10 : {
|
|
if (!((btCollisionObject__getActivationState_28_29_20const(HEAP32[($4 + 60 | 0) >> 2] | 0 | 0) | 0 | 0) != (4 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
btCollisionObject__setActivationState_28int_29_20const(HEAP32[($4 + 60 | 0) >> 2] | 0 | 0, 1 | 0);
|
|
}
|
|
}
|
|
}
|
|
HEAP32[($4 + 64 | 0) >> 2] = (HEAP32[($4 + 64 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
CProfileSample___CProfileSample_28_29($4 + 71 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 80 | 0;
|
|
return;
|
|
}
|
|
|
|
function btRigidBody__updateDeactivation_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $5 = 0, $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : {
|
|
if ((btCollisionObject__getActivationState_28_29_20const($5 | 0) | 0 | 0) == (2 | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
if (!((btCollisionObject__getActivationState_28_29_20const($5 | 0) | 0 | 0) == (4 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
}
|
|
break label$1;
|
|
}
|
|
label$4 : {
|
|
if (!(Math_fround(btVector3__length2_28_29_20const(btRigidBody__getLinearVelocity_28_29_20const($5 | 0) | 0 | 0)) < Math_fround(Math_fround(HEAPF32[($5 + 532 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 532 | 0) >> 2])) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
if (!(Math_fround(btVector3__length2_28_29_20const(btRigidBody__getAngularVelocity_28_29_20const($5 | 0) | 0 | 0)) < Math_fround(Math_fround(HEAPF32[($5 + 536 | 0) >> 2]) * Math_fround(HEAPF32[($5 + 536 | 0) >> 2])) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAPF32[($5 + 224 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($5 + 224 | 0) >> 2]) + Math_fround(HEAPF32[($4 + 8 | 0) >> 2]));
|
|
break label$1;
|
|
}
|
|
HEAPF32[($5 + 224 | 0) >> 2] = Math_fround(0 | 0);
|
|
btCollisionObject__setActivationState_28int_29_20const($5 | 0, 0 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__addConstraint_28btTypedConstraint__2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 7 | 0) >> 0] = $2;
|
|
btAlignedObjectArray_btTypedConstraint____push_back_28btTypedConstraint__20const__29((HEAP32[($5 + 12 | 0) >> 2] | 0) + 224 | 0 | 0, $5 + 8 | 0 | 0);
|
|
label$1 : {
|
|
if ((btTypedConstraint__getRigidBodyA_28_29(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) != (btTypedConstraint__getRigidBodyB_28_29(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(88204 | 0, 75653 | 0, 660 | 0, 67767 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($5 + 7 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btRigidBody__addConstraintRef_28btTypedConstraint__29(btTypedConstraint__getRigidBodyA_28_29(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0);
|
|
btRigidBody__addConstraintRef_28btTypedConstraint__29(btTypedConstraint__getRigidBodyB_28_29(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0);
|
|
}
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__removeConstraint_28btTypedConstraint__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedObjectArray_btTypedConstraint____remove_28btTypedConstraint__20const__29((HEAP32[($4 + 12 | 0) >> 2] | 0) + 224 | 0 | 0, $4 + 8 | 0 | 0);
|
|
btRigidBody__removeConstraintRef_28btTypedConstraint__29(btTypedConstraint__getRigidBodyA_28_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
btRigidBody__removeConstraintRef_28btTypedConstraint__29(btTypedConstraint__getRigidBodyB_28_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__addAction_28btActionInterface__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedObjectArray_btActionInterface____push_back_28btActionInterface__20const__29((HEAP32[($4 + 12 | 0) >> 2] | 0) + 292 | 0 | 0, $4 + 8 | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btActionInterface____push_back_28btActionInterface__20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btActionInterface____size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btActionInterface____capacity_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btActionInterface____reserve_28int_29($5 | 0, btAlignedObjectArray_btActionInterface____allocSize_28int_29($5 | 0, btAlignedObjectArray_btActionInterface____size_28_29_20const($5 | 0) | 0 | 0) | 0 | 0);
|
|
}
|
|
HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = (HEAP32[($5 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btActionInterface____capacity_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btActionInterface____allocSize_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $9 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 8 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$9 = (HEAP32[($4 + 8 | 0) >> 2] | 0) << 1 | 0;
|
|
break label$1;
|
|
}
|
|
$9 = 1;
|
|
}
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btActionInterface____reserve_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btActionInterface____capacity_28_29_20const($5 | 0) | 0 | 0) < (HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btActionInterface____allocate_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btActionInterface____copy_28int_2c_20int_2c_20btActionInterface___29_20const($5 | 0, 0 | 0, btAlignedObjectArray_btActionInterface____size_28_29_20const($5 | 0) | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
btAlignedObjectArray_btActionInterface____destroy_28int_2c_20int_29($5 | 0, 0 | 0, btAlignedObjectArray_btActionInterface____size_28_29_20const($5 | 0) | 0 | 0);
|
|
btAlignedObjectArray_btActionInterface____deallocate_28_29($5 | 0);
|
|
HEAP8[($5 + 16 | 0) >> 0] = 1;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__removeAction_28btActionInterface__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedObjectArray_btActionInterface____remove_28btActionInterface__20const__29((HEAP32[($4 + 12 | 0) >> 2] | 0) + 292 | 0 | 0, $4 + 8 | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btActionInterface____remove_28btActionInterface__20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btActionInterface____findLinearSearch_28btActionInterface__20const__29_20const($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btActionInterface____removeAtIndex_28int_29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btActionInterface____findLinearSearch_28btActionInterface__20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btActionInterface____size_28_29_20const($5 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[$4 >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$4 >> 2] | 0 | 0) < (btAlignedObjectArray_btActionInterface____size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$3 : {
|
|
if (!((HEAP32[((HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[$4 >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0) == (HEAP32[(HEAP32[($4 + 8 | 0) >> 2] | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[$4 >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[$4 >> 2] = (HEAP32[$4 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
$32 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btActionInterface____removeAtIndex_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btActionInterface____size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedObjectArray_btActionInterface____swap_28int_2c_20int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, (btAlignedObjectArray_btActionInterface____size_28_29_20const($5 | 0) | 0) - 1 | 0 | 0);
|
|
btAlignedObjectArray_btActionInterface____pop_back_28_29($5 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__addVehicle_28btActionInterface__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($5, HEAP32[($4 + 8 | 0) >> 2] | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__removeVehicle_28btActionInterface__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 68 | 0) >> 2] | 0 | 0]($5, HEAP32[($4 + 8 | 0) >> 2] | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__addCharacter_28btActionInterface__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($5, HEAP32[($4 + 8 | 0) >> 2] | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__removeCharacter_28btActionInterface__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 68 | 0) >> 2] | 0 | 0]($5, HEAP32[($4 + 8 | 0) >> 2] | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__solveConstraints_28btContactSolverInfo__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $5 = 0, $4 = 0, $53 = 0, $65 = 0, $69 = 0, $81 = 0, $14 = 0, $33 = 0, $67 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
CProfileSample__CProfileSample_28char_20const__29($4 + 23 | 0 | 0, 69190 | 0) | 0;
|
|
$14 = btAlignedObjectArray_btTypedConstraint____size_28_29_20const($5 + 224 | 0 | 0) | 0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btTypedConstraint____resize_28int_2c_20btTypedConstraint__20const__29($5 + 192 | 0 | 0, $14 | 0, $4 + 16 | 0 | 0);
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) < (FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 104 | 0) >> 2] | 0 | 0]($5) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$33 = HEAP32[(btAlignedObjectArray_btTypedConstraint____operator_5b_5d_28int_29($5 + 224 | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btTypedConstraint____operator_5b_5d_28int_29($5 + 192 | 0 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $33), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = (HEAP32[($4 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
void_20btAlignedObjectArray_btTypedConstraint____quickSort_btSortConstraintOnIslandPredicate__28btSortConstraintOnIslandPredicate_20const__29($5 + 192 | 0 | 0, $4 + 11 | 0 | 0);
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 104 | 0) >> 2] | 0 | 0]($5) | 0)) {
|
|
break label$4
|
|
}
|
|
$53 = btAlignedObjectArray_btTypedConstraint____operator_5b_5d_28int_29($5 + 192 | 0 | 0, 0 | 0) | 0;
|
|
break label$3;
|
|
}
|
|
$53 = 0;
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = $53;
|
|
InplaceSolverIslandCallback__setup_28btContactSolverInfo__2c_20btTypedConstraint___2c_20int_2c_20btIDebugDraw__29(HEAP32[($5 + 212 | 0) >> 2] | 0 | 0, HEAP32[($4 + 24 | 0) >> 2] | 0 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, btAlignedObjectArray_btTypedConstraint____size_28_29_20const($5 + 192 | 0 | 0) | 0 | 0, FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0 | 0);
|
|
$65 = HEAP32[($5 + 216 | 0) >> 2] | 0;
|
|
$67 = btCollisionWorld__getNumCollisionObjects_28_29_20const(btDiscreteDynamicsWorld__getCollisionWorld_28_29($5 | 0) | 0 | 0) | 0;
|
|
$69 = btCollisionWorld__getDispatcher_28_29(btDiscreteDynamicsWorld__getCollisionWorld_28_29($5 | 0) | 0 | 0) | 0;
|
|
(((wasm2js_i32$1 = $65, wasm2js_i32$2 = $67), wasm2js_i32$3 = FUNCTION_TABLE[HEAP32[((HEAP32[$69 >> 2] | 0) + 36 | 0) >> 2] | 0 | 0]($69) | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$65 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, wasm2js_i32$3 | 0);
|
|
btSimulationIslandManager__buildAndProcessIslands_28btDispatcher__2c_20btCollisionWorld__2c_20btSimulationIslandManager__IslandCallback__29(HEAP32[($5 + 220 | 0) >> 2] | 0 | 0, btCollisionWorld__getDispatcher_28_29(btDiscreteDynamicsWorld__getCollisionWorld_28_29($5 | 0) | 0 | 0) | 0 | 0, btDiscreteDynamicsWorld__getCollisionWorld_28_29($5 | 0) | 0 | 0, HEAP32[($5 + 212 | 0) >> 2] | 0 | 0);
|
|
InplaceSolverIslandCallback__processConstraints_28_29(HEAP32[($5 + 212 | 0) >> 2] | 0 | 0);
|
|
$81 = HEAP32[($5 + 216 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$81 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($81, HEAP32[($4 + 24 | 0) >> 2] | 0, HEAP32[($5 + 72 | 0) >> 2] | 0);
|
|
CProfileSample___CProfileSample_28_29($4 + 23 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint____resize_28int_2c_20btTypedConstraint__20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btTypedConstraint____size_28_29_20const($6 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) > (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btAlignedObjectArray_btTypedConstraint____reserve_28int_29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[(HEAP32[($5 + 20 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20btAlignedObjectArray_btTypedConstraint____quickSort_btSortConstraintOnIslandPredicate__28btSortConstraintOnIslandPredicate_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btTypedConstraint____size_28_29_20const($5 | 0) | 0 | 0) > (1 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
void_20btAlignedObjectArray_btTypedConstraint____quickSortInternal_btSortConstraintOnIslandPredicate__28btSortConstraintOnIslandPredicate_20const__2c_20int_2c_20int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, 0 | 0, (btAlignedObjectArray_btTypedConstraint____size_28_29_20const($5 | 0) | 0) - 1 | 0 | 0);
|
|
}
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function InplaceSolverIslandCallback__setup_28btContactSolverInfo__2c_20btTypedConstraint___2c_20int_2c_20btIDebugDraw__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($7 + 24 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(76208 | 0, 75653 | 0, 121 | 0, 71279 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($8 + 4 | 0) >> 2] = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 12 | 0) >> 2] = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 16 | 0) >> 2] = HEAP32[($7 + 16 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 20 | 0) >> 2] = HEAP32[($7 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 8 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btCollisionObject____resize_28int_2c_20btCollisionObject__20const__29($8 + 28 | 0 | 0, 0 | 0, $7 + 8 | 0 | 0);
|
|
HEAP32[($7 + 4 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btPersistentManifold____resize_28int_2c_20btPersistentManifold__20const__29($8 + 48 | 0 | 0, 0 | 0, $7 + 4 | 0 | 0);
|
|
HEAP32[$7 >> 2] = 0;
|
|
btAlignedObjectArray_btTypedConstraint____resize_28int_2c_20btTypedConstraint__20const__29($8 + 68 | 0 | 0, 0 | 0, $7 | 0);
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__getCollisionWorld_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__getNumCollisionObjects_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $7 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$7 = btAlignedObjectArray_btCollisionObject____size_28_29_20const((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function InplaceSolverIslandCallback__processConstraints_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $12 = 0, $22 = 0, $32 = 0, $35 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0, wasm2js_i32$5 = 0, wasm2js_i32$6 = 0, wasm2js_i32$7 = 0, wasm2js_i32$8 = 0, wasm2js_i32$9 = 0, wasm2js_i32$10 = 0;
|
|
$3 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 28 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 28 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(btAlignedObjectArray_btCollisionObject____size_28_29_20const($4 + 28 | 0 | 0) | 0)) {
|
|
break label$2
|
|
}
|
|
$12 = btAlignedObjectArray_btCollisionObject____operator_5b_5d_28int_29($4 + 28 | 0 | 0, 0 | 0) | 0;
|
|
break label$1;
|
|
}
|
|
$12 = 0;
|
|
}
|
|
HEAP32[($3 + 24 | 0) >> 2] = $12;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(btAlignedObjectArray_btPersistentManifold____size_28_29_20const($4 + 48 | 0 | 0) | 0)) {
|
|
break label$4
|
|
}
|
|
$22 = btAlignedObjectArray_btPersistentManifold____operator_5b_5d_28int_29($4 + 48 | 0 | 0, 0 | 0) | 0;
|
|
break label$3;
|
|
}
|
|
$22 = 0;
|
|
}
|
|
HEAP32[($3 + 20 | 0) >> 2] = $22;
|
|
label$5 : {
|
|
label$6 : {
|
|
if (!(btAlignedObjectArray_btTypedConstraint____size_28_29_20const($4 + 68 | 0 | 0) | 0)) {
|
|
break label$6
|
|
}
|
|
$32 = btAlignedObjectArray_btTypedConstraint____operator_5b_5d_28int_29($4 + 68 | 0 | 0, 0 | 0) | 0;
|
|
break label$5;
|
|
}
|
|
$32 = 0;
|
|
}
|
|
HEAP32[($3 + 16 | 0) >> 2] = $32;
|
|
$35 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
((((((((((wasm2js_i32$1 = $35, wasm2js_i32$2 = HEAP32[($3 + 24 | 0) >> 2] | 0), wasm2js_i32$3 = btAlignedObjectArray_btCollisionObject____size_28_29_20const($4 + 28 | 0 | 0) | 0), wasm2js_i32$4 = HEAP32[($3 + 20 | 0) >> 2] | 0), wasm2js_i32$5 = btAlignedObjectArray_btPersistentManifold____size_28_29_20const($4 + 48 | 0 | 0) | 0), wasm2js_i32$6 = HEAP32[($3 + 16 | 0) >> 2] | 0), wasm2js_i32$7 = btAlignedObjectArray_btTypedConstraint____size_28_29_20const($4 + 68 | 0 | 0) | 0), wasm2js_i32$8 = HEAP32[($4 + 4 | 0) >> 2] | 0), wasm2js_i32$9 = HEAP32[($4 + 20 | 0) >> 2] | 0), wasm2js_i32$10 = HEAP32[($4 + 24 | 0) >> 2] | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$35 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0), Math_fround(FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, wasm2js_i32$3 | 0, wasm2js_i32$4 | 0, wasm2js_i32$5 | 0, wasm2js_i32$6 | 0, wasm2js_i32$7 | 0, wasm2js_i32$8 | 0, wasm2js_i32$9 | 0, wasm2js_i32$10 | 0));
|
|
HEAP32[($3 + 12 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btCollisionObject____resize_28int_2c_20btCollisionObject__20const__29($4 + 28 | 0 | 0, 0 | 0, $3 + 12 | 0 | 0);
|
|
HEAP32[($3 + 8 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btPersistentManifold____resize_28int_2c_20btPersistentManifold__20const__29($4 + 48 | 0 | 0, 0 | 0, $3 + 8 | 0 | 0);
|
|
HEAP32[($3 + 4 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btTypedConstraint____resize_28int_2c_20btTypedConstraint__20const__29($4 + 68 | 0 | 0, 0 | 0, $3 + 4 | 0 | 0);
|
|
__stack_pointer = $3 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function void_20btAlignedObjectArray_btTypedConstraint____quickSortInternal_btSortConstraintOnIslandPredicate__28btSortConstraintOnIslandPredicate_20const__2c_20int_2c_20int_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 20 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[((HEAP32[($7 + 12 | 0) >> 2] | 0) + ((((HEAP32[($6 + 20 | 0) >> 2] | 0) + (HEAP32[($6 + 16 | 0) >> 2] | 0) | 0 | 0) / (2 | 0) | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
label$1 : while (1) {
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((btSortConstraintOnIslandPredicate__operator_28_29_28btTypedConstraint_20const__2c_20btTypedConstraint_20const__29_20const(HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0, HEAP32[($6 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((btSortConstraintOnIslandPredicate__operator_28_29_28btTypedConstraint_20const__2c_20btTypedConstraint_20const__29_20const(HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[($6 + 4 | 0) >> 2] | 0 | 0, HEAP32[((HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP32[($6 + 8 | 0) >> 2] = (HEAP32[($6 + 8 | 0) >> 2] | 0) + -1 | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
label$6 : {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) <= (HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
btAlignedObjectArray_btTypedConstraint____swap_28int_2c_20int_29($7 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0);
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = (HEAP32[($6 + 8 | 0) >> 2] | 0) + -1 | 0;
|
|
}
|
|
if ((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) <= (HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) & 1 | 0) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
label$7 : {
|
|
if (!((HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
void_20btAlignedObjectArray_btTypedConstraint____quickSortInternal_btSortConstraintOnIslandPredicate__28btSortConstraintOnIslandPredicate_20const__2c_20int_2c_20int_29($7 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0);
|
|
}
|
|
label$8 : {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
void_20btAlignedObjectArray_btTypedConstraint____quickSortInternal_btSortConstraintOnIslandPredicate__28btSortConstraintOnIslandPredicate_20const__2c_20int_2c_20int_29($7 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0, HEAP32[($6 + 16 | 0) >> 2] | 0 | 0);
|
|
}
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btCollisionObject____resize_28int_2c_20btCollisionObject__20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btCollisionObject____size_28_29_20const($6 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = (HEAP32[($5 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
break label$1;
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) > (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btAlignedObjectArray_btCollisionObject____reserve_28int_29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[(HEAP32[($5 + 20 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = (HEAP32[($5 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__calculateSimulationIslands_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $9 = 0, $120 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0;
|
|
$3 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 44 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 44 | 0) >> 2] | 0;
|
|
CProfileSample__CProfileSample_28char_20const__29($3 + 43 | 0 | 0, 70326 | 0) | 0;
|
|
$9 = btDiscreteDynamicsWorld__getSimulationIslandManager_28_29($4 | 0) | 0;
|
|
(((wasm2js_i32$1 = $9, wasm2js_i32$2 = btDiscreteDynamicsWorld__getCollisionWorld_28_29($4 | 0) | 0), wasm2js_i32$3 = btCollisionWorld__getDispatcher_28_29(btDiscreteDynamicsWorld__getCollisionWorld_28_29($4 | 0) | 0 | 0) | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$9 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, wasm2js_i32$3 | 0);
|
|
HEAP32[($3 + 36 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($3 + 36 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btPersistentManifold____size_28_29_20const($4 + 320 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$3 = HEAP32[(btAlignedObjectArray_btPersistentManifold____operator_5b_5d_28int_29($4 + 320 | 0 | 0, HEAP32[($3 + 36 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$3;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$3 = btPersistentManifold__getBody0_28_29_20const(HEAP32[($3 + 32 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$3;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$3 = btPersistentManifold__getBody1_28_29_20const(HEAP32[($3 + 32 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_i32$3;
|
|
label$3 : {
|
|
if (!((HEAP32[($3 + 28 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
if ((btCollisionObject__isStaticOrKinematicObject_28_29_20const(HEAP32[($3 + 28 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
if (!((HEAP32[($3 + 24 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
if ((btCollisionObject__isStaticOrKinematicObject_28_29_20const(HEAP32[($3 + 24 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
btUnionFind__unite_28int_2c_20int_29(btSimulationIslandManager__getUnionFind_28_29(btDiscreteDynamicsWorld__getSimulationIslandManager_28_29($4 | 0) | 0 | 0) | 0 | 0, btCollisionObject__getIslandTag_28_29_20const(HEAP32[($3 + 28 | 0) >> 2] | 0 | 0) | 0 | 0, btCollisionObject__getIslandTag_28_29_20const(HEAP32[($3 + 24 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
}
|
|
HEAP32[($3 + 36 | 0) >> 2] = (HEAP32[($3 + 36 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$3 = btAlignedObjectArray_btTypedConstraint____size_28_29_20const($4 + 224 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$3;
|
|
HEAP32[($3 + 20 | 0) >> 2] = 0;
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((HEAP32[($3 + 20 | 0) >> 2] | 0 | 0) < (HEAP32[($3 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$3 = HEAP32[(btAlignedObjectArray_btTypedConstraint____operator_5b_5d_28int_29($4 + 224 | 0 | 0, HEAP32[($3 + 20 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$3;
|
|
label$6 : {
|
|
if (!((btTypedConstraint__isEnabled_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$3 = btTypedConstraint__getRigidBodyA_28_29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$3;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$3 = btTypedConstraint__getRigidBodyB_28_29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$3;
|
|
label$7 : {
|
|
if (!((HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
if ((btCollisionObject__isStaticOrKinematicObject_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$7
|
|
}
|
|
if (!((HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
if ((btCollisionObject__isStaticOrKinematicObject_28_29_20const(HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$7
|
|
}
|
|
btUnionFind__unite_28int_2c_20int_29(btSimulationIslandManager__getUnionFind_28_29(btDiscreteDynamicsWorld__getSimulationIslandManager_28_29($4 | 0) | 0 | 0) | 0 | 0, btCollisionObject__getIslandTag_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0 | 0, btCollisionObject__getIslandTag_28_29_20const(HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
}
|
|
}
|
|
HEAP32[($3 + 20 | 0) >> 2] = (HEAP32[($3 + 20 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
$120 = btDiscreteDynamicsWorld__getSimulationIslandManager_28_29($4 | 0) | 0;
|
|
((wasm2js_i32$3 = $120, wasm2js_i32$2 = btDiscreteDynamicsWorld__getCollisionWorld_28_29($4 | 0) | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$120 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$3 | 0, wasm2js_i32$2 | 0);
|
|
CProfileSample___CProfileSample_28_29($3 + 43 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__getSimulationIslandManager_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 220 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btSimulationIslandManager__getUnionFind_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0 | 0;
|
|
}
|
|
|
|
function btCollisionObject__getIslandTag_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 208 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btUnionFind__unite_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $25 = 0, $18 = 0, $23 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btUnionFind__find_28int_29($6 | 0, HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btUnionFind__find_28int_29($6 | 0, HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) == (HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
break label$1;
|
|
}
|
|
$18 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btElement___operator_5b_5d_28int_29($6 | 0, HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $18), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$23 = HEAP32[((btAlignedObjectArray_btElement___operator_5b_5d_28int_29($6 | 0, HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2] | 0;
|
|
$25 = btAlignedObjectArray_btElement___operator_5b_5d_28int_29($6 | 0, HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[($25 + 4 | 0) >> 2] = (HEAP32[($25 + 4 | 0) >> 2] | 0) + $23 | 0;
|
|
}
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btUnionFind__find_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $20 = 0, $25 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) != (HEAP32[(btAlignedObjectArray_btElement___operator_5b_5d_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btElement___operator_5b_5d_28int_29($5 | 0, HEAP32[(btAlignedObjectArray_btElement___operator_5b_5d_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
$20 = HEAP32[(HEAP32[($4 + 4 | 0) >> 2] | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btElement___operator_5b_5d_28int_29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $20), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = HEAP32[(HEAP32[($4 + 4 | 0) >> 2] | 0) >> 2] | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
$25 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $25 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btElement___operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btElement___size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 3 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__createPredictiveContactsInternal_28btRigidBody___2c_20int_2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $7 = 0, $93 = 0, $186 = 0, $281 = 0, $283 = 0, $289 = 0, $291 = 0, $85 = 0, $88 = 0, $92 = 0, $274 = Math_fround(0), $278 = 0, $878 = 0, $888 = 0, $897 = 0, $910 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 736 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 732 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 728 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 724 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 720 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 732 | 0) >> 2] | 0;
|
|
btTransform__btTransform_28_29($6 + 656 | 0 | 0) | 0;
|
|
HEAP32[($6 + 652 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 652 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 724 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($6 + 648 | 0) >> 2] = HEAP32[((HEAP32[($6 + 728 | 0) >> 2] | 0) + ((HEAP32[($6 + 652 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
btCollisionObject__setHitFraction_28float_29(HEAP32[($6 + 648 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(1.0)));
|
|
label$3 : {
|
|
if (!((btCollisionObject__isActive_28_29_20const(HEAP32[($6 + 648 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
if ((btCollisionObject__isStaticOrKinematicObject_28_29_20const(HEAP32[($6 + 648 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
btRigidBody__predictIntegratedTransform_28float_2c_20btTransform__29(HEAP32[($6 + 648 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 720 | 0) >> 2])), $6 + 656 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 628 | 0 | 0, btTransform__getOrigin_28_29($6 + 656 | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29(btCollisionObject__getWorldTransform_28_29(HEAP32[($6 + 648 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($6 + 628 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 644 | 0) >> 2] = wasm2js_f32$0;
|
|
label$4 : {
|
|
if (!((HEAPU8[((btCollisionWorld__getDispatchInfo_28_29($7 | 0) | 0) + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
if (!(Math_fround(btCollisionObject__getCcdSquareMotionThreshold_28_29_20const(HEAP32[($6 + 648 | 0) >> 2] | 0 | 0)) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
if (!(Math_fround(btCollisionObject__getCcdSquareMotionThreshold_28_29_20const(HEAP32[($6 + 648 | 0) >> 2] | 0 | 0)) < Math_fround(HEAPF32[($6 + 644 | 0) >> 2]) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
CProfileSample__CProfileSample_28char_20const__29($6 + 627 | 0 | 0, 67428 | 0) | 0;
|
|
label$5 : {
|
|
if (!((btCollisionShape__isConvex_28_29_20const(btRigidBody__getCollisionShape_28_29(HEAP32[($6 + 648 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAP32[(0 + 116168 | 0) >> 2] = (HEAP32[(0 + 116168 | 0) >> 2] | 0) + 1 | 0;
|
|
$85 = HEAP32[($6 + 648 | 0) >> 2] | 0;
|
|
$88 = btTransform__getOrigin_28_29(btCollisionObject__getWorldTransform_28_29(HEAP32[($6 + 648 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
$92 = btTransform__getOrigin_28_29($6 + 656 | 0 | 0) | 0;
|
|
$93 = btCollisionWorld__getBroadphase_28_29($7 | 0) | 0;
|
|
btClosestNotMeConvexResultCallback__btClosestNotMeConvexResultCallback_28btCollisionObject__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btOverlappingPairCache__2c_20btDispatcher__29($6 + 524 | 0 | 0, $85 | 0, $88 | 0, $92 | 0, FUNCTION_TABLE[HEAP32[((HEAP32[$93 >> 2] | 0) + 36 | 0) >> 2] | 0 | 0]($93) | 0 | 0, btCollisionWorld__getDispatcher_28_29($7 | 0) | 0 | 0) | 0;
|
|
btSphereShape__btSphereShape_28float_29($6 + 464 | 0 | 0, Math_fround(Math_fround(btCollisionObject__getCcdSweptSphereRadius_28_29_20const(HEAP32[($6 + 648 | 0) >> 2] | 0 | 0)))) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(HEAPF32[((btCollisionWorld__getDispatchInfo_28_29($7 | 0) | 0) + 28 | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 612 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = HEAP32[((btRigidBody__getBroadphaseProxy_28_29(HEAP32[($6 + 648 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 532 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = HEAP32[((btRigidBody__getBroadphaseProxy_28_29(HEAP32[($6 + 648 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 536 | 0) >> 2] = wasm2js_i32$1;
|
|
btTransform__btTransform_28btTransform_20const__29($6 + 400 | 0 | 0, $6 + 656 | 0 | 0) | 0;
|
|
btTransform__setBasis_28btMatrix3x3_20const__29($6 + 400 | 0 | 0, btTransform__getBasis_28_29(btCollisionObject__getWorldTransform_28_29(HEAP32[($6 + 648 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
btCollisionWorld__convexSweepTest_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29_20const($7 | 0, $6 + 464 | 0 | 0, btCollisionObject__getWorldTransform_28_29(HEAP32[($6 + 648 | 0) >> 2] | 0 | 0) | 0 | 0, $6 + 400 | 0 | 0, $6 + 524 | 0 | 0, Math_fround(Math_fround(0 | 0)));
|
|
label$6 : {
|
|
if (!((btCollisionWorld__ConvexResultCallback__hasHit_28_29_20const($6 + 524 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
if (!(Math_fround(HEAPF32[($6 + 528 | 0) >> 2]) < Math_fround(1.0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 368 | 0 | 0, btTransform__getOrigin_28_29($6 + 656 | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29(btCollisionObject__getWorldTransform_28_29(HEAP32[($6 + 648 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 384 | 0 | 0, $6 + 368 | 0 | 0, ($6 + 524 | 0) + 4 | 0 | 0);
|
|
operator__28btVector3_20const__29($6 + 348 | 0 | 0, ($6 + 524 | 0) + 52 | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($6 + 384 | 0 | 0, $6 + 348 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 364 | 0) >> 2] = wasm2js_f32$0;
|
|
$186 = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$186 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($186, HEAP32[($6 + 648 | 0) >> 2] | 0, HEAP32[($6 + 540 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 344 | 0) >> 2] = wasm2js_i32$1;
|
|
btMutexLock_28btSpinMutex__29($7 + 340 | 0 | 0);
|
|
btAlignedObjectArray_btPersistentManifold____push_back_28btPersistentManifold__20const__29($7 + 320 | 0 | 0, $6 + 344 | 0 | 0);
|
|
btMutexUnlock_28btSpinMutex__29($7 + 340 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 328 | 0 | 0, btTransform__getOrigin_28_29(btCollisionObject__getWorldTransform_28_29(HEAP32[($6 + 648 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, $6 + 384 | 0 | 0);
|
|
btTransform__inverse_28_29_20const($6 + 248 | 0 | 0, btCollisionObject__getWorldTransform_28_29_20const(HEAP32[($6 + 540 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($6 + 312 | 0 | 0, $6 + 248 | 0 | 0, $6 + 328 | 0 | 0);
|
|
HEAPF32[($6 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 24 | 0 | 0, $6 + 20 | 0 | 0, $6 + 16 | 0 | 0, $6 + 12 | 0 | 0) | 0;
|
|
btManifoldPoint__btManifoldPoint_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_29($6 + 40 | 0 | 0, $6 + 24 | 0 | 0, $6 + 312 | 0 | 0, ($6 + 524 | 0) + 52 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 364 | 0) >> 2]))) | 0;
|
|
HEAP8[($6 + 11 | 0) >> 0] = 1;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btPersistentManifold__addManifoldPoint_28btManifoldPoint_20const__2c_20bool_29(HEAP32[($6 + 344 | 0) >> 2] | 0 | 0, $6 + 40 | 0 | 0, (HEAPU8[($6 + 11 | 0) >> 0] | 0) & 1 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btPersistentManifold__getContactPoint_28int_29(HEAP32[($6 + 344 | 0) >> 2] | 0 | 0, HEAP32[($6 + 4 | 0) >> 2] | 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
HEAPF32[((HEAP32[$6 >> 2] | 0) + 96 | 0) >> 2] = Math_fround(0 | 0);
|
|
$274 = Math_fround(btManifoldResult__calculateCombinedFriction_28btCollisionObject_20const__2c_20btCollisionObject_20const__29(HEAP32[($6 + 648 | 0) >> 2] | 0 | 0, HEAP32[($6 + 540 | 0) >> 2] | 0 | 0));
|
|
HEAPF32[((HEAP32[$6 >> 2] | 0) + 84 | 0) >> 2] = $274;
|
|
$278 = btTransform__getOrigin_28_29(btCollisionObject__getWorldTransform_28_29(HEAP32[($6 + 648 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
$281 = (HEAP32[$6 >> 2] | 0) + 48 | 0;
|
|
i64toi32_i32$2 = $278;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$878 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $281;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $878;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$283 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $283 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$888 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $281 + $283 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $888;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$289 = (HEAP32[$6 >> 2] | 0) + 32 | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 328 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 332 | 0) >> 2] | 0;
|
|
$897 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $289;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $897;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$291 = 8;
|
|
i64toi32_i32$2 = ($6 + 328 | 0) + $291 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$910 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $289 + $291 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $910;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
btSphereShape___btSphereShape_28_29($6 + 464 | 0 | 0) | 0;
|
|
btClosestNotMeConvexResultCallback___btClosestNotMeConvexResultCallback_28_29($6 + 524 | 0 | 0) | 0;
|
|
}
|
|
CProfileSample___CProfileSample_28_29($6 + 627 | 0 | 0) | 0;
|
|
}
|
|
}
|
|
HEAP32[($6 + 652 | 0) >> 2] = (HEAP32[($6 + 652 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 736 | 0;
|
|
return;
|
|
}
|
|
|
|
function btClosestNotMeConvexResultCallback__btClosestNotMeConvexResultCallback_28btCollisionObject__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btOverlappingPairCache__2c_20btDispatcher__29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, $9 = 0;
|
|
$8 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 12 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 8 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 28 | 0) >> 2] | 0;
|
|
btCollisionWorld__ClosestConvexResultCallback__ClosestConvexResultCallback_28btVector3_20const__2c_20btVector3_20const__29($9 | 0, HEAP32[($8 + 20 | 0) >> 2] | 0 | 0, HEAP32[($8 + 16 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$9 >> 2] = 103340 + 8 | 0;
|
|
HEAP32[($9 + 84 | 0) >> 2] = HEAP32[($8 + 24 | 0) >> 2] | 0;
|
|
HEAPF32[($9 + 88 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAP32[($9 + 92 | 0) >> 2] = HEAP32[($8 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($9 + 96 | 0) >> 2] = HEAP32[($8 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $8 + 32 | 0;
|
|
return $9 | 0;
|
|
}
|
|
|
|
function btClosestNotMeConvexResultCallback___btClosestNotMeConvexResultCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__ClosestConvexResultCallback___ClosestConvexResultCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__releasePredictiveContacts_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $24 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
CProfileSample__CProfileSample_28char_20const__29($3 + 11 | 0 | 0, 70398 | 0) | 0;
|
|
HEAP32[($3 + 4 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btPersistentManifold____size_28_29_20const($4 + 320 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btPersistentManifold____operator_5b_5d_28int_29($4 + 320 | 0 | 0, HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$24 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$24 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($24, HEAP32[$3 >> 2] | 0);
|
|
HEAP32[($3 + 4 | 0) >> 2] = (HEAP32[($3 + 4 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
btAlignedObjectArray_btPersistentManifold____clear_28_29($4 + 320 | 0 | 0);
|
|
CProfileSample___CProfileSample_28_29($3 + 11 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__createPredictiveContacts_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
CProfileSample__CProfileSample_28char_20const__29($4 + 7 | 0 | 0, 69290 | 0) | 0;
|
|
btDiscreteDynamicsWorld__releasePredictiveContacts_28_29($5 | 0);
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btRigidBody____size_28_29_20const($5 + 244 | 0 | 0) | 0 | 0) > (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btDiscreteDynamicsWorld__createPredictiveContactsInternal_28btRigidBody___2c_20int_2c_20float_29($5 | 0, btAlignedObjectArray_btRigidBody____operator_5b_5d_28int_29($5 + 244 | 0 | 0, 0 | 0) | 0 | 0, btAlignedObjectArray_btRigidBody____size_28_29_20const($5 + 244 | 0 | 0) | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2])));
|
|
}
|
|
CProfileSample___CProfileSample_28_29($4 + 7 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__integrateTransformsInternal_28btRigidBody___2c_20int_2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $7 = 0, $93 = 0, $85 = 0, $88 = 0, $92 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 352 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 348 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 344 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 340 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 336 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 348 | 0) >> 2] | 0;
|
|
btTransform__btTransform_28_29($6 + 272 | 0 | 0) | 0;
|
|
HEAP32[($6 + 268 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($6 + 268 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 340 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($6 + 264 | 0) >> 2] = HEAP32[((HEAP32[($6 + 344 | 0) >> 2] | 0) + ((HEAP32[($6 + 268 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
btCollisionObject__setHitFraction_28float_29(HEAP32[($6 + 264 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(1.0)));
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!((btCollisionObject__isActive_28_29_20const(HEAP32[($6 + 264 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
if ((btCollisionObject__isStaticOrKinematicObject_28_29_20const(HEAP32[($6 + 264 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$5
|
|
}
|
|
btRigidBody__predictIntegratedTransform_28float_2c_20btTransform__29(HEAP32[($6 + 264 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 336 | 0) >> 2])), $6 + 272 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 244 | 0 | 0, btTransform__getOrigin_28_29($6 + 272 | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29(btCollisionObject__getWorldTransform_28_29(HEAP32[($6 + 264 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($6 + 244 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 260 | 0) >> 2] = wasm2js_f32$0;
|
|
label$6 : {
|
|
if (!((HEAPU8[((btCollisionWorld__getDispatchInfo_28_29($7 | 0) | 0) + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
if (!(Math_fround(btCollisionObject__getCcdSquareMotionThreshold_28_29_20const(HEAP32[($6 + 264 | 0) >> 2] | 0 | 0)) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
if (!(Math_fround(btCollisionObject__getCcdSquareMotionThreshold_28_29_20const(HEAP32[($6 + 264 | 0) >> 2] | 0 | 0)) < Math_fround(HEAPF32[($6 + 260 | 0) >> 2]) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
CProfileSample__CProfileSample_28char_20const__29($6 + 243 | 0 | 0, 80605 | 0) | 0;
|
|
label$7 : {
|
|
label$8 : {
|
|
if (!((btCollisionShape__isConvex_28_29_20const(btRigidBody__getCollisionShape_28_29(HEAP32[($6 + 264 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
HEAP32[(0 + 116168 | 0) >> 2] = (HEAP32[(0 + 116168 | 0) >> 2] | 0) + 1 | 0;
|
|
$85 = HEAP32[($6 + 264 | 0) >> 2] | 0;
|
|
$88 = btTransform__getOrigin_28_29(btCollisionObject__getWorldTransform_28_29(HEAP32[($6 + 264 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
$92 = btTransform__getOrigin_28_29($6 + 272 | 0 | 0) | 0;
|
|
$93 = btCollisionWorld__getBroadphase_28_29($7 | 0) | 0;
|
|
btClosestNotMeConvexResultCallback__btClosestNotMeConvexResultCallback_28btCollisionObject__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btOverlappingPairCache__2c_20btDispatcher__29($6 + 140 | 0 | 0, $85 | 0, $88 | 0, $92 | 0, FUNCTION_TABLE[HEAP32[((HEAP32[$93 >> 2] | 0) + 36 | 0) >> 2] | 0 | 0]($93) | 0 | 0, btCollisionWorld__getDispatcher_28_29($7 | 0) | 0 | 0) | 0;
|
|
btSphereShape__btSphereShape_28float_29($6 + 80 | 0 | 0, Math_fround(Math_fround(btCollisionObject__getCcdSweptSphereRadius_28_29_20const(HEAP32[($6 + 264 | 0) >> 2] | 0 | 0)))) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(HEAPF32[((btCollisionWorld__getDispatchInfo_28_29($7 | 0) | 0) + 28 | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 228 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = HEAP32[((btRigidBody__getBroadphaseProxy_28_29(HEAP32[($6 + 264 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 148 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = HEAP32[((btRigidBody__getBroadphaseProxy_28_29(HEAP32[($6 + 264 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 152 | 0) >> 2] = wasm2js_i32$1;
|
|
btTransform__btTransform_28btTransform_20const__29($6 + 16 | 0 | 0, $6 + 272 | 0 | 0) | 0;
|
|
btTransform__setBasis_28btMatrix3x3_20const__29($6 + 16 | 0 | 0, btTransform__getBasis_28_29(btCollisionObject__getWorldTransform_28_29(HEAP32[($6 + 264 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
btCollisionWorld__convexSweepTest_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29_20const($7 | 0, $6 + 80 | 0 | 0, btCollisionObject__getWorldTransform_28_29(HEAP32[($6 + 264 | 0) >> 2] | 0 | 0) | 0 | 0, $6 + 16 | 0 | 0, $6 + 140 | 0 | 0, Math_fround(Math_fround(0 | 0)));
|
|
label$9 : {
|
|
label$10 : {
|
|
if (!((btCollisionWorld__ConvexResultCallback__hasHit_28_29_20const($6 + 140 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
if (!(Math_fround(HEAPF32[($6 + 144 | 0) >> 2]) < Math_fround(1.0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
btCollisionObject__setHitFraction_28float_29(HEAP32[($6 + 264 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 144 | 0) >> 2])));
|
|
btRigidBody__predictIntegratedTransform_28float_2c_20btTransform__29(HEAP32[($6 + 264 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(Math_fround(HEAPF32[($6 + 336 | 0) >> 2]) * Math_fround(btCollisionObject__getHitFraction_28_29_20const(HEAP32[($6 + 264 | 0) >> 2] | 0 | 0)))), $6 + 272 | 0 | 0);
|
|
btCollisionObject__setHitFraction_28float_29(HEAP32[($6 + 264 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(0 | 0)));
|
|
btRigidBody__proceedToTransform_28btTransform_20const__29(HEAP32[($6 + 264 | 0) >> 2] | 0 | 0, $6 + 272 | 0 | 0);
|
|
HEAP32[($6 + 12 | 0) >> 2] = 4;
|
|
break label$9;
|
|
}
|
|
HEAP32[($6 + 12 | 0) >> 2] = 0;
|
|
}
|
|
btSphereShape___btSphereShape_28_29($6 + 80 | 0 | 0) | 0;
|
|
btClosestNotMeConvexResultCallback___btClosestNotMeConvexResultCallback_28_29($6 + 140 | 0 | 0) | 0;
|
|
if (HEAP32[($6 + 12 | 0) >> 2] | 0) {
|
|
break label$7
|
|
}
|
|
}
|
|
HEAP32[($6 + 12 | 0) >> 2] = 0;
|
|
}
|
|
CProfileSample___CProfileSample_28_29($6 + 243 | 0 | 0) | 0;
|
|
label$11 : {
|
|
switch (HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) {
|
|
case 1:
|
|
case 2:
|
|
case 3:
|
|
break label$1;
|
|
case 4:
|
|
break label$4;
|
|
default:
|
|
break label$11;
|
|
};
|
|
}
|
|
}
|
|
btRigidBody__proceedToTransform_28btTransform_20const__29(HEAP32[($6 + 264 | 0) >> 2] | 0 | 0, $6 + 272 | 0 | 0);
|
|
}
|
|
}
|
|
HEAP32[($6 + 268 | 0) >> 2] = (HEAP32[($6 + 268 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 352 | 0;
|
|
return;
|
|
}
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__integrateTransforms_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $5 = 0, $146 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 144 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 140 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 136 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 140 | 0) >> 2] | 0;
|
|
CProfileSample__CProfileSample_28char_20const__29($4 + 135 | 0 | 0, 69773 | 0) | 0;
|
|
label$1 : {
|
|
if (!((btAlignedObjectArray_btRigidBody____size_28_29_20const($5 + 244 | 0 | 0) | 0 | 0) > (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btDiscreteDynamicsWorld__integrateTransformsInternal_28btRigidBody___2c_20int_2c_20float_29($5 | 0, btAlignedObjectArray_btRigidBody____operator_5b_5d_28int_29($5 + 244 | 0 | 0, 0 | 0) | 0 | 0, btAlignedObjectArray_btRigidBody____size_28_29_20const($5 + 244 | 0 | 0) | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 136 | 0) >> 2])));
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($5 + 291 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
CProfileSample__CProfileSample_28char_20const__29($4 + 134 | 0 | 0, 76238 | 0) | 0;
|
|
HEAP32[($4 + 128 | 0) >> 2] = 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($4 + 128 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btPersistentManifold____size_28_29_20const($5 + 320 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btPersistentManifold____operator_5b_5d_28int_29($5 + 320 | 0 | 0, HEAP32[($4 + 128 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 124 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btRigidBody__upcast_28btCollisionObject__29(btPersistentManifold__getBody0_28_29_20const(HEAP32[($4 + 124 | 0) >> 2] | 0 | 0) | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 120 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btRigidBody__upcast_28btCollisionObject__29(btPersistentManifold__getBody1_28_29_20const(HEAP32[($4 + 124 | 0) >> 2] | 0 | 0) | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 116 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 112 | 0) >> 2] = 0;
|
|
label$5 : {
|
|
label$6 : while (1) {
|
|
if (!((HEAP32[($4 + 112 | 0) >> 2] | 0 | 0) < (btPersistentManifold__getNumContacts_28_29_20const(HEAP32[($4 + 124 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btPersistentManifold__getContactPoint_28int_29(HEAP32[($4 + 124 | 0) >> 2] | 0 | 0, HEAP32[($4 + 112 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 108 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btManifoldResult__calculateCombinedRestitution_28btCollisionObject_20const__2c_20btCollisionObject_20const__29(HEAP32[($4 + 120 | 0) >> 2] | 0 | 0, HEAP32[($4 + 116 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 104 | 0) >> 2] = wasm2js_f32$0;
|
|
label$7 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 104 | 0) >> 2]) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
if (!(Math_fround(HEAPF32[((HEAP32[($4 + 108 | 0) >> 2] | 0) + 132 | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
operator__28btVector3_20const__29($4 + 56 | 0 | 0, (HEAP32[($4 + 108 | 0) >> 2] | 0) + 64 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($4 + 72 | 0 | 0, $4 + 56 | 0 | 0, (HEAP32[($4 + 108 | 0) >> 2] | 0) + 132 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($4 + 88 | 0 | 0, $4 + 72 | 0 | 0, $4 + 104 | 0 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btManifoldPoint__getPositionWorldOnA_28_29_20const(HEAP32[($4 + 108 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 52 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btManifoldPoint__getPositionWorldOnB_28_29_20const(HEAP32[($4 + 108 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 48 | 0) >> 2] = wasm2js_i32$1;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 32 | 0 | 0, HEAP32[($4 + 52 | 0) >> 2] | 0 | 0, btTransform__getOrigin_28_29(btCollisionObject__getWorldTransform_28_29(HEAP32[($4 + 120 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 16 | 0 | 0, HEAP32[($4 + 48 | 0) >> 2] | 0 | 0, btTransform__getOrigin_28_29(btCollisionObject__getWorldTransform_28_29(HEAP32[($4 + 116 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0);
|
|
label$8 : {
|
|
if (!((HEAP32[($4 + 120 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
btRigidBody__applyImpulse_28btVector3_20const__2c_20btVector3_20const__29(HEAP32[($4 + 120 | 0) >> 2] | 0 | 0, $4 + 88 | 0 | 0, $4 + 32 | 0 | 0);
|
|
}
|
|
label$9 : {
|
|
if (!((HEAP32[($4 + 116 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
$146 = HEAP32[($4 + 116 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__29($4 | 0, $4 + 88 | 0 | 0);
|
|
btRigidBody__applyImpulse_28btVector3_20const__2c_20btVector3_20const__29($146 | 0, $4 | 0, $4 + 16 | 0 | 0);
|
|
}
|
|
}
|
|
HEAP32[($4 + 112 | 0) >> 2] = (HEAP32[($4 + 112 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$6;
|
|
};
|
|
}
|
|
HEAP32[($4 + 128 | 0) >> 2] = (HEAP32[($4 + 128 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
CProfileSample___CProfileSample_28_29($4 + 134 | 0 | 0) | 0;
|
|
}
|
|
CProfileSample___CProfileSample_28_29($4 + 135 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 144 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__predictUnconstraintMotion_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 24 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
CProfileSample__CProfileSample_28char_20const__29($4 + 23 | 0 | 0, 76276 | 0) | 0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btRigidBody____size_28_29_20const($5 + 244 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btRigidBody____operator_5b_5d_28int_29($5 + 244 | 0 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
label$3 : {
|
|
if ((btCollisionObject__isStaticOrKinematicObject_28_29_20const(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
btRigidBody__applyDamping_28float_29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 24 | 0) >> 2])));
|
|
btRigidBody__predictIntegratedTransform_28float_2c_20btTransform__29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 24 | 0) >> 2])), btCollisionObject__getInterpolationWorldTransform_28_29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 16 | 0) >> 2] = (HEAP32[($4 + 16 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
CProfileSample___CProfileSample_28_29($4 + 23 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__debugDrawConstraint_28btTypedConstraint__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $5 = 0, $8 = 0, $18 = 0, $19 = 0, $28 = 0, $42 = 0, $65 = 0, $75 = 0, $76 = 0, $92 = 0, $109 = 0, $117 = 0, $118 = 0, $134 = 0, $154 = 0, $175 = 0, $201 = 0, $251 = 0, $286 = 0, $312 = 0, $349 = 0, $390 = 0, $401 = 0, $421 = 0, $434 = 0, $492 = 0, $493 = 0, $518 = 0, $558 = 0, $575 = 0, $627 = 0, $659 = 0, $802 = 0, $830 = 0, $857 = 0, $858 = 0, $868 = 0, $869 = 0, $878 = 0, $904 = 0, $921 = 0, $973 = 0, $1005 = 0, $1148 = 0, $1176 = 0, $1203 = 0, $1204 = 0, $1214 = 0, $1215 = 0, $1224 = 0, $1250 = 0, $1267 = 0, $1283 = 0, $1346 = 0, $1383 = 0, $1454 = 0, $1458 = 0, $1573 = 0, $1577 = 0, $1610 = 0, $1614 = 0, $1662 = 0, $1666 = 0, $1699 = 0, $1703 = 0, $2159 = 0, $2163 = 0, $2240 = 0, $2244 = 0, $2329 = 0, $2333 = 0, $2450 = 0, $2454 = 0, $2797 = 0, $2801 = 0, $703 = Math_fround(0), $712 = Math_fround(0), $732 = Math_fround(0), $755 = Math_fround(0), $763 = Math_fround(0), $3208 = 0, $3212 = 0, $3232 = 0, $3236 = 0, $3522 = 0, $3526 = 0, $1049 = Math_fround(0), $1058 = Math_fround(0), $1078 = Math_fround(0), $1101 = Math_fround(0), $1109 = Math_fround(0), $3933 = 0, $3937 = 0, $3957 = 0, $3961 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0;
|
|
$4 = __stack_pointer - 1632 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 1628 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 1624 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 1628 | 0) >> 2] | 0;
|
|
$8 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$8 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($4 + 1496 | 0, $8);
|
|
$18 = ($4 + 1496 | 0) + 112 | 0;
|
|
$19 = 8;
|
|
i64toi32_i32$2 = $18 + $19 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1454 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 1480 | 0) + $19 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1454;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $18;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1458 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 1480 | 0) >> 2] = $1458;
|
|
HEAP32[($4 + 1484 | 0) >> 2] = i64toi32_i32$0;
|
|
$28 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = ((FUNCTION_TABLE[HEAP32[((HEAP32[$28 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($28) | 0) & 2048 | 0 | 0) != (0 | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 1479 | 0) >> 0] = wasm2js_i32$1;
|
|
$42 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = ((FUNCTION_TABLE[HEAP32[((HEAP32[$42 >> 2] | 0) + 56 | 0) >> 2] | 0 | 0]($42) | 0) & 4096 | 0 | 0) != (0 | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 1478 | 0) >> 0] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btTypedConstraint__getDbgDrawSize_28_29(HEAP32[($4 + 1624 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 1472 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]) <= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
break label$1;
|
|
}
|
|
$65 = (btTypedConstraint__getConstraintType_28_29_20const(HEAP32[($4 + 1624 | 0) >> 2] | 0 | 0) | 0) + -3 | 0;
|
|
label$3 : {
|
|
label$4 : {
|
|
switch ($65 | 0) {
|
|
case 0:
|
|
HEAP32[($4 + 1468 | 0) >> 2] = HEAP32[($4 + 1624 | 0) >> 2] | 0;
|
|
btTransform__btTransform_28_29($4 + 1404 | 0 | 0) | 0;
|
|
btTransform__setIdentity_28_29($4 + 1404 | 0 | 0);
|
|
$75 = btPoint2PointConstraint__getPivotInA_28_29_20const(HEAP32[($4 + 1468 | 0) >> 2] | 0 | 0) | 0;
|
|
$76 = 8;
|
|
i64toi32_i32$2 = $75 + $76 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1573 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 1384 | 0) + $76 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1573;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $75;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1577 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 1384 | 0) >> 2] = $1577;
|
|
HEAP32[($4 + 1388 | 0) >> 2] = i64toi32_i32$0;
|
|
btTransform__operator__28btVector3_20const__29_20const($4 + 1368 | 0 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(btTypedConstraint__getRigidBodyA_28_29(HEAP32[($4 + 1468 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, $4 + 1384 | 0 | 0);
|
|
$92 = 8;
|
|
i64toi32_i32$2 = ($4 + 1368 | 0) + $92 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1610 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 1384 | 0) + $92 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1610;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$1 = HEAP32[($4 + 1368 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($4 + 1372 | 0) >> 2] | 0;
|
|
$1614 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 1384 | 0) >> 2] = $1614;
|
|
HEAP32[($4 + 1388 | 0) >> 2] = i64toi32_i32$0;
|
|
btTransform__setOrigin_28btVector3_20const__29($4 + 1404 | 0 | 0, $4 + 1384 | 0 | 0);
|
|
$109 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$109 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($109, $4 + 1404 | 0, Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]));
|
|
$117 = btPoint2PointConstraint__getPivotInB_28_29_20const(HEAP32[($4 + 1468 | 0) >> 2] | 0 | 0) | 0;
|
|
$118 = 8;
|
|
i64toi32_i32$2 = $117 + $118 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1662 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 1384 | 0) + $118 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1662;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $117;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1666 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 1384 | 0) >> 2] = $1666;
|
|
HEAP32[($4 + 1388 | 0) >> 2] = i64toi32_i32$0;
|
|
btTransform__operator__28btVector3_20const__29_20const($4 + 1352 | 0 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(btTypedConstraint__getRigidBodyB_28_29(HEAP32[($4 + 1468 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, $4 + 1384 | 0 | 0);
|
|
$134 = 8;
|
|
i64toi32_i32$2 = ($4 + 1352 | 0) + $134 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1699 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 1384 | 0) + $134 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1699;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$1 = HEAP32[($4 + 1352 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($4 + 1356 | 0) >> 2] | 0;
|
|
$1703 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 1384 | 0) >> 2] = $1703;
|
|
HEAP32[($4 + 1388 | 0) >> 2] = i64toi32_i32$0;
|
|
btTransform__setOrigin_28btVector3_20const__29($4 + 1404 | 0 | 0, $4 + 1384 | 0 | 0);
|
|
label$11 : {
|
|
if (!((HEAPU8[($4 + 1479 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
$154 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$154 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($154, $4 + 1404 | 0, Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]));
|
|
}
|
|
break label$3;
|
|
case 1:
|
|
HEAP32[($4 + 1348 | 0) >> 2] = HEAP32[($4 + 1624 | 0) >> 2] | 0;
|
|
btTransform__operator__28btTransform_20const__29_20const($4 + 1284 | 0 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(btHingeConstraint__getRigidBodyA_28_29(HEAP32[($4 + 1348 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, btHingeConstraint__getAFrame_28_29(HEAP32[($4 + 1348 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
label$12 : {
|
|
if (!((HEAPU8[($4 + 1479 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
$175 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$175 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($175, $4 + 1284 | 0, Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]));
|
|
}
|
|
btTransform__operator__28btTransform_20const__29_20const($4 + 1220 | 0 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(btHingeConstraint__getRigidBodyB_28_29(HEAP32[($4 + 1348 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, btHingeConstraint__getBFrame_28_29(HEAP32[($4 + 1348 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29($4 + 1284 | 0 | 0, $4 + 1220 | 0 | 0) | 0;
|
|
label$13 : {
|
|
if (!((HEAPU8[($4 + 1479 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
$201 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$201 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($201, $4 + 1284 | 0, Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]));
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btHingeConstraint__getLowerLimit_28_29_20const(HEAP32[($4 + 1348 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 1216 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btHingeConstraint__getUpperLimit_28_29_20const(HEAP32[($4 + 1348 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 1212 | 0) >> 2] = wasm2js_f32$0;
|
|
label$14 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 1216 | 0) >> 2]) == Math_fround(HEAPF32[($4 + 1212 | 0) >> 2]) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
break label$3;
|
|
}
|
|
HEAP8[($4 + 1211 | 0) >> 0] = 1;
|
|
label$15 : {
|
|
if ((btHingeConstraint__hasLimit_28_29_20const(HEAP32[($4 + 1348 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$15
|
|
}
|
|
HEAPF32[($4 + 1216 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 1212 | 0) >> 2] = Math_fround(6.2831854820251465);
|
|
HEAP8[($4 + 1211 | 0) >> 0] = 0;
|
|
}
|
|
label$16 : {
|
|
if (!((HEAPU8[($4 + 1478 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btTransform__getOrigin_28_29($4 + 1284 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 1204 | 0) >> 2] = wasm2js_i32$1;
|
|
btMatrix3x3__getColumn_28int_29_20const($4 + 1188 | 0 | 0, btTransform__getBasis_28_29($4 + 1284 | 0 | 0) | 0 | 0, 2 | 0);
|
|
btMatrix3x3__getColumn_28int_29_20const($4 + 1172 | 0 | 0, btTransform__getBasis_28_29($4 + 1284 | 0 | 0) | 0 | 0, 0 | 0);
|
|
$251 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$251 >> 2] | 0) + 68 | 0) >> 2] | 0 | 0]($251, HEAP32[($4 + 1204 | 0) >> 2] | 0, $4 + 1188 | 0, $4 + 1172 | 0, Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]), Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]), Math_fround(HEAPF32[($4 + 1216 | 0) >> 2]), Math_fround(HEAPF32[($4 + 1212 | 0) >> 2]), $4 + 1480 | 0, (HEAPU8[($4 + 1211 | 0) >> 0] | 0) & 1 | 0, Math_fround(10.0));
|
|
}
|
|
break label$3;
|
|
case 2:
|
|
HEAP32[($4 + 1168 | 0) >> 2] = HEAP32[($4 + 1624 | 0) >> 2] | 0;
|
|
btTransform__operator__28btTransform_20const__29_20const($4 + 1104 | 0 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(btConeTwistConstraint__getRigidBodyA_28_29_20const(HEAP32[($4 + 1168 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, btConeTwistConstraint__getAFrame_28_29_20const(HEAP32[($4 + 1168 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
label$17 : {
|
|
if (!((HEAPU8[($4 + 1479 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$17
|
|
}
|
|
$286 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$286 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($286, $4 + 1104 | 0, Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]));
|
|
}
|
|
btTransform__operator__28btTransform_20const__29_20const($4 + 1040 | 0 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(btConeTwistConstraint__getRigidBodyB_28_29_20const(HEAP32[($4 + 1168 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, btConeTwistConstraint__getBFrame_28_29_20const(HEAP32[($4 + 1168 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29($4 + 1104 | 0 | 0, $4 + 1040 | 0 | 0) | 0;
|
|
label$18 : {
|
|
if (!((HEAPU8[($4 + 1479 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$18
|
|
}
|
|
$312 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$312 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($312, $4 + 1104 | 0, Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]));
|
|
}
|
|
label$19 : {
|
|
if (!((HEAPU8[($4 + 1478 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
HEAPF32[($4 + 1036 | 0) >> 2] = Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]);
|
|
HEAPF32[($4 + 1032 | 0) >> 2] = Math_fround(Math_fround(Math_fround(6.283185005187988) * Math_fround((HEAP32[(0 + 112852 | 0) >> 2] | 0) - 1 | 0 | 0)) / Math_fround(HEAP32[(0 + 112852 | 0) >> 2] | 0 | 0));
|
|
btConeTwistConstraint__GetPointForAngle_28float_2c_20float_29_20const($4 + 1016 | 0 | 0, HEAP32[($4 + 1168 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 1032 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($4 + 1036 | 0) >> 2])));
|
|
btTransform__operator__28btVector3_20const__29_20const($4 + 1e3 | 0 | 0, $4 + 1104 | 0 | 0, $4 + 1016 | 0 | 0);
|
|
$349 = 8;
|
|
i64toi32_i32$2 = ($4 + 1e3 | 0) + $349 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2159 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 1016 | 0) + $349 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2159;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$1 = HEAP32[($4 + 1e3 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($4 + 1004 | 0) >> 2] | 0;
|
|
$2163 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 1016 | 0) >> 2] = $2163;
|
|
HEAP32[($4 + 1020 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($4 + 996 | 0) >> 2] = 0;
|
|
label$20 : {
|
|
label$21 : while (1) {
|
|
if (!((HEAP32[($4 + 996 | 0) >> 2] | 0 | 0) < (HEAP32[(0 + 112852 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$20
|
|
}
|
|
HEAPF32[($4 + 1032 | 0) >> 2] = Math_fround(Math_fround(Math_fround(6.283185005187988) * Math_fround(HEAP32[($4 + 996 | 0) >> 2] | 0 | 0)) / Math_fround(HEAP32[(0 + 112852 | 0) >> 2] | 0 | 0));
|
|
btConeTwistConstraint__GetPointForAngle_28float_2c_20float_29_20const($4 + 976 | 0 | 0, HEAP32[($4 + 1168 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 1032 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($4 + 1036 | 0) >> 2])));
|
|
btTransform__operator__28btVector3_20const__29_20const($4 + 960 | 0 | 0, $4 + 1104 | 0 | 0, $4 + 976 | 0 | 0);
|
|
$390 = 8;
|
|
i64toi32_i32$2 = ($4 + 960 | 0) + $390 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2240 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 976 | 0) + $390 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2240;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$1 = HEAP32[($4 + 960 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($4 + 964 | 0) >> 2] | 0;
|
|
$2244 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 976 | 0) >> 2] = $2244;
|
|
HEAP32[($4 + 980 | 0) >> 2] = i64toi32_i32$0;
|
|
$401 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$401 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($401, $4 + 1016 | 0, $4 + 976 | 0, $4 + 1480 | 0);
|
|
label$22 : {
|
|
if ((HEAP32[($4 + 996 | 0) >> 2] | 0 | 0) % ((HEAP32[(0 + 112852 | 0) >> 2] | 0 | 0) / (8 | 0) | 0 | 0) | 0) {
|
|
break label$22
|
|
}
|
|
$421 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
((((wasm2js_i32$1 = $421, wasm2js_i32$2 = btTransform__getOrigin_28_29($4 + 1104 | 0 | 0) | 0), wasm2js_i32$3 = $4 + 976 | 0), wasm2js_i32$4 = $4 + 1480 | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$421 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, wasm2js_i32$3 | 0, wasm2js_i32$4 | 0);
|
|
}
|
|
$434 = 8;
|
|
i64toi32_i32$2 = ($4 + 976 | 0) + $434 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2329 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 1016 | 0) + $434 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2329;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$1 = HEAP32[($4 + 976 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($4 + 980 | 0) >> 2] | 0;
|
|
$2333 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 1016 | 0) >> 2] = $2333;
|
|
HEAP32[($4 + 1020 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($4 + 996 | 0) >> 2] = (HEAP32[($4 + 996 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$21;
|
|
};
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btConeTwistConstraint__getTwistSpan_28_29_20const(HEAP32[($4 + 1168 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 956 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btConeTwistConstraint__getTwistAngle_28_29_20const(HEAP32[($4 + 1168 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 952 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$4 = Math_fround(btRigidBody__getInvMass_28_29_20const(btConeTwistConstraint__getRigidBodyB_28_29_20const(HEAP32[($4 + 1168 | 0) >> 2] | 0 | 0) | 0 | 0)) > Math_fround(0 | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 951 | 0) >> 0] = wasm2js_i32$4;
|
|
label$23 : {
|
|
label$24 : {
|
|
if (!((HEAPU8[($4 + 951 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$24
|
|
}
|
|
btTransform__operator__28btTransform_20const__29_20const($4 + 884 | 0 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(btConeTwistConstraint__getRigidBodyB_28_29_20const(HEAP32[($4 + 1168 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, btConeTwistConstraint__getBFrame_28_29_20const(HEAP32[($4 + 1168 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29($4 + 1104 | 0 | 0, $4 + 884 | 0 | 0) | 0;
|
|
break label$23;
|
|
}
|
|
btTransform__operator__28btTransform_20const__29_20const($4 + 820 | 0 | 0, btRigidBody__getCenterOfMassTransform_28_29_20const(btConeTwistConstraint__getRigidBodyA_28_29_20const(HEAP32[($4 + 1168 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, btConeTwistConstraint__getAFrame_28_29_20const(HEAP32[($4 + 1168 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btTransform_20const__29($4 + 1104 | 0 | 0, $4 + 820 | 0 | 0) | 0;
|
|
}
|
|
$492 = btTransform__getOrigin_28_29($4 + 1104 | 0 | 0) | 0;
|
|
$493 = 8;
|
|
i64toi32_i32$2 = $492 + $493 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2450 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 800 | 0) + $493 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2450;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $492;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2454 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 800 | 0) >> 2] = $2454;
|
|
HEAP32[($4 + 804 | 0) >> 2] = i64toi32_i32$0;
|
|
btMatrix3x3__getColumn_28int_29_20const($4 + 784 | 0 | 0, btTransform__getBasis_28_29($4 + 1104 | 0 | 0) | 0 | 0, 0 | 0);
|
|
btMatrix3x3__getColumn_28int_29_20const($4 + 768 | 0 | 0, btTransform__getBasis_28_29($4 + 1104 | 0 | 0) | 0 | 0, 1 | 0);
|
|
$518 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$518 >> 2] | 0) + 68 | 0) >> 2] | 0 | 0]($518, $4 + 800 | 0, $4 + 784 | 0, $4 + 768 | 0, Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]), Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]), Math_fround(Math_fround(-Math_fround(HEAPF32[($4 + 952 | 0) >> 2])) - Math_fround(HEAPF32[($4 + 956 | 0) >> 2])), Math_fround(Math_fround(-Math_fround(HEAPF32[($4 + 952 | 0) >> 2])) + Math_fround(HEAPF32[($4 + 956 | 0) >> 2])), $4 + 1480 | 0, 1 & 1 | 0, Math_fround(10.0));
|
|
}
|
|
break label$3;
|
|
case 3:
|
|
case 6:
|
|
HEAP32[($4 + 764 | 0) >> 2] = HEAP32[($4 + 1624 | 0) >> 2] | 0;
|
|
btTransform__btTransform_28btTransform_20const__29($4 + 700 | 0 | 0, btGeneric6DofConstraint__getCalculatedTransformA_28_29_20const(HEAP32[($4 + 764 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
label$25 : {
|
|
if (!((HEAPU8[($4 + 1479 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$25
|
|
}
|
|
$558 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$558 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($558, $4 + 700 | 0, Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]));
|
|
}
|
|
btTransform__operator__28btTransform_20const__29($4 + 700 | 0 | 0, btGeneric6DofConstraint__getCalculatedTransformB_28_29_20const(HEAP32[($4 + 764 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
label$26 : {
|
|
if (!((HEAPU8[($4 + 1479 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$26
|
|
}
|
|
$575 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$575 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($575, $4 + 700 | 0, Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]));
|
|
}
|
|
label$27 : {
|
|
if (!((HEAPU8[($4 + 1478 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$27
|
|
}
|
|
btTransform__operator__28btTransform_20const__29($4 + 700 | 0 | 0, btGeneric6DofConstraint__getCalculatedTransformA_28_29_20const(HEAP32[($4 + 764 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$4 = btTransform__getOrigin_28_29_20const(btGeneric6DofConstraint__getCalculatedTransformB_28_29_20const(HEAP32[($4 + 764 | 0) >> 2] | 0 | 0) | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 696 | 0) >> 2] = wasm2js_i32$4;
|
|
btMatrix3x3__getColumn_28int_29_20const($4 + 680 | 0 | 0, btTransform__getBasis_28_29($4 + 700 | 0 | 0) | 0 | 0, 2 | 0);
|
|
btMatrix3x3__getColumn_28int_29_20const($4 + 664 | 0 | 0, btTransform__getBasis_28_29($4 + 700 | 0 | 0) | 0 | 0, 0 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(HEAPF32[(btGeneric6DofConstraint__getRotationalLimitMotor_28int_29(HEAP32[($4 + 764 | 0) >> 2] | 0 | 0, 1 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 660 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(HEAPF32[((btGeneric6DofConstraint__getRotationalLimitMotor_28int_29(HEAP32[($4 + 764 | 0) >> 2] | 0 | 0, 1 | 0) | 0) + 4 | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 656 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(HEAPF32[(btGeneric6DofConstraint__getRotationalLimitMotor_28int_29(HEAP32[($4 + 764 | 0) >> 2] | 0 | 0, 2 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 652 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(HEAPF32[((btGeneric6DofConstraint__getRotationalLimitMotor_28int_29(HEAP32[($4 + 764 | 0) >> 2] | 0 | 0, 2 | 0) | 0) + 4 | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 648 | 0) >> 2] = wasm2js_f32$0;
|
|
$627 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$627 >> 2] | 0) + 72 | 0) >> 2] | 0 | 0]($627, HEAP32[($4 + 696 | 0) >> 2] | 0, $4 + 680 | 0, $4 + 664 | 0, Math_fround(Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]) * Math_fround(.8999999761581421)), Math_fround(HEAPF32[($4 + 660 | 0) >> 2]), Math_fround(HEAPF32[($4 + 656 | 0) >> 2]), Math_fround(HEAPF32[($4 + 652 | 0) >> 2]), Math_fround(HEAPF32[($4 + 648 | 0) >> 2]), $4 + 1480 | 0, Math_fround(10.0), 1 & 1 | 0);
|
|
btMatrix3x3__getColumn_28int_29_20const($4 + 632 | 0 | 0, btTransform__getBasis_28_29($4 + 700 | 0 | 0) | 0 | 0, 1 | 0);
|
|
$659 = 8;
|
|
i64toi32_i32$2 = ($4 + 632 | 0) + $659 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$2797 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 664 | 0) + $659 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $2797;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$1 = HEAP32[($4 + 632 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($4 + 636 | 0) >> 2] | 0;
|
|
$2801 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 664 | 0) >> 2] = $2801;
|
|
HEAP32[($4 + 668 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btGeneric6DofConstraint__getAngle_28int_29_20const(HEAP32[($4 + 764 | 0) >> 2] | 0 | 0, 1 | 0))), HEAPF32[(wasm2js_i32$0 + 628 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btGeneric6DofConstraint__getAngle_28int_29_20const(HEAP32[($4 + 764 | 0) >> 2] | 0 | 0, 2 | 0))), HEAPF32[(wasm2js_i32$0 + 624 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btCos_28float_29(Math_fround(Math_fround(HEAPF32[($4 + 628 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 620 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btSin_28float_29(Math_fround(Math_fround(HEAPF32[($4 + 628 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 616 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btCos_28float_29(Math_fround(Math_fround(HEAPF32[($4 + 624 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 612 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btSin_28float_29(Math_fround(Math_fround(HEAPF32[($4 + 624 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 608 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28_29($4 + 592 | 0 | 0) | 0;
|
|
$703 = Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[($4 + 620 | 0) >> 2]) * Math_fround(HEAPF32[($4 + 612 | 0) >> 2])) * Math_fround(HEAPF32[(btVector3__operator_20float__28_29($4 + 664 | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($4 + 620 | 0) >> 2]) * Math_fround(HEAPF32[($4 + 608 | 0) >> 2])) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($4 + 664 | 0 | 0) | 0) + 4 | 0) >> 2])));
|
|
$712 = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($4 + 616 | 0) >> 2])) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($4 + 664 | 0 | 0) | 0) + 8 | 0) >> 2])) + $703);
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($4 + 592 | 0 | 0) | 0, wasm2js_f32$0 = $712), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$732 = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($4 + 608 | 0) >> 2])) * Math_fround(HEAPF32[(btVector3__operator_20float__28_29($4 + 664 | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($4 + 612 | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($4 + 664 | 0 | 0) | 0) + 4 | 0) >> 2])));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($4 + 592 | 0 | 0) | 0, wasm2js_f32$0 = $732), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$755 = Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[($4 + 612 | 0) >> 2]) * Math_fround(HEAPF32[($4 + 616 | 0) >> 2])) * Math_fround(HEAPF32[(btVector3__operator_20float__28_29($4 + 664 | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($4 + 608 | 0) >> 2]) * Math_fround(HEAPF32[($4 + 616 | 0) >> 2])) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($4 + 664 | 0 | 0) | 0) + 4 | 0) >> 2])));
|
|
$763 = Math_fround(Math_fround(Math_fround(HEAPF32[($4 + 620 | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($4 + 664 | 0 | 0) | 0) + 8 | 0) >> 2])) + $755);
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($4 + 592 | 0 | 0) | 0, wasm2js_f32$0 = $763), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
btTransform__operator__28btTransform_20const__29($4 + 700 | 0 | 0, btGeneric6DofConstraint__getCalculatedTransformB_28_29_20const(HEAP32[($4 + 764 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
btMatrix3x3__getColumn_28int_29_20const($4 + 560 | 0 | 0, btTransform__getBasis_28_29($4 + 700 | 0 | 0) | 0 | 0, 0 | 0);
|
|
operator__28btVector3_20const__29($4 + 576 | 0 | 0, $4 + 560 | 0 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(HEAPF32[(btGeneric6DofConstraint__getRotationalLimitMotor_28int_29(HEAP32[($4 + 764 | 0) >> 2] | 0 | 0, 0 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 556 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(HEAPF32[((btGeneric6DofConstraint__getRotationalLimitMotor_28int_29(HEAP32[($4 + 764 | 0) >> 2] | 0 | 0, 0 | 0) | 0) + 4 | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 552 | 0) >> 2] = wasm2js_f32$0;
|
|
label$28 : {
|
|
label$29 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 556 | 0) >> 2]) > Math_fround(HEAPF32[($4 + 552 | 0) >> 2]) & 1 | 0)) {
|
|
break label$29
|
|
}
|
|
$802 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$802 >> 2] | 0) + 68 | 0) >> 2] | 0 | 0]($802, HEAP32[($4 + 696 | 0) >> 2] | 0, $4 + 576 | 0, $4 + 592 | 0, Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]), Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]), Math_fround(-3.1415927410125732), Math_fround(3.1415927410125732), $4 + 1480 | 0, 0 & 1 | 0, Math_fround(10.0));
|
|
break label$28;
|
|
}
|
|
label$30 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 556 | 0) >> 2]) < Math_fround(HEAPF32[($4 + 552 | 0) >> 2]) & 1 | 0)) {
|
|
break label$30
|
|
}
|
|
$830 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$830 >> 2] | 0) + 68 | 0) >> 2] | 0 | 0]($830, HEAP32[($4 + 696 | 0) >> 2] | 0, $4 + 576 | 0, $4 + 592 | 0, Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]), Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]), Math_fround(HEAPF32[($4 + 556 | 0) >> 2]), Math_fround(HEAPF32[($4 + 552 | 0) >> 2]), $4 + 1480 | 0, 1 & 1 | 0, Math_fround(10.0));
|
|
}
|
|
}
|
|
btTransform__operator__28btTransform_20const__29($4 + 700 | 0 | 0, btGeneric6DofConstraint__getCalculatedTransformA_28_29_20const(HEAP32[($4 + 764 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
$857 = btGeneric6DofConstraint__getTranslationalLimitMotor_28_29(HEAP32[($4 + 764 | 0) >> 2] | 0 | 0) | 0;
|
|
$858 = 8;
|
|
i64toi32_i32$2 = $857 + $858 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$3208 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 536 | 0) + $858 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $3208;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $857;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$3212 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 536 | 0) >> 2] = $3212;
|
|
HEAP32[($4 + 540 | 0) >> 2] = i64toi32_i32$0;
|
|
$868 = (btGeneric6DofConstraint__getTranslationalLimitMotor_28_29(HEAP32[($4 + 764 | 0) >> 2] | 0 | 0) | 0) + 16 | 0;
|
|
$869 = 8;
|
|
i64toi32_i32$2 = $868 + $869 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$3232 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 520 | 0) + $869 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $3232;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $868;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$3236 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 520 | 0) >> 2] = $3236;
|
|
HEAP32[($4 + 524 | 0) >> 2] = i64toi32_i32$0;
|
|
$878 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$878 >> 2] | 0) + 80 | 0) >> 2] | 0 | 0]($878, $4 + 536 | 0, $4 + 520 | 0, $4 + 700 | 0, $4 + 1480 | 0);
|
|
}
|
|
break label$3;
|
|
case 9:
|
|
HEAP32[($4 + 516 | 0) >> 2] = HEAP32[($4 + 1624 | 0) >> 2] | 0;
|
|
btTransform__btTransform_28btTransform_20const__29($4 + 452 | 0 | 0, btGeneric6DofSpring2Constraint__getCalculatedTransformA_28_29_20const(HEAP32[($4 + 516 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
label$31 : {
|
|
if (!((HEAPU8[($4 + 1479 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$31
|
|
}
|
|
$904 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$904 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($904, $4 + 452 | 0, Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]));
|
|
}
|
|
btTransform__operator__28btTransform_20const__29($4 + 452 | 0 | 0, btGeneric6DofSpring2Constraint__getCalculatedTransformB_28_29_20const(HEAP32[($4 + 516 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
label$32 : {
|
|
if (!((HEAPU8[($4 + 1479 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$32
|
|
}
|
|
$921 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$921 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($921, $4 + 452 | 0, Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]));
|
|
}
|
|
label$33 : {
|
|
if (!((HEAPU8[($4 + 1478 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$33
|
|
}
|
|
btTransform__operator__28btTransform_20const__29($4 + 452 | 0 | 0, btGeneric6DofSpring2Constraint__getCalculatedTransformA_28_29_20const(HEAP32[($4 + 516 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$4 = btTransform__getOrigin_28_29_20const(btGeneric6DofSpring2Constraint__getCalculatedTransformB_28_29_20const(HEAP32[($4 + 516 | 0) >> 2] | 0 | 0) | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 448 | 0) >> 2] = wasm2js_i32$4;
|
|
btMatrix3x3__getColumn_28int_29_20const($4 + 432 | 0 | 0, btTransform__getBasis_28_29($4 + 452 | 0 | 0) | 0 | 0, 2 | 0);
|
|
btMatrix3x3__getColumn_28int_29_20const($4 + 416 | 0 | 0, btTransform__getBasis_28_29($4 + 452 | 0 | 0) | 0 | 0, 0 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(HEAPF32[(btGeneric6DofSpring2Constraint__getRotationalLimitMotor_28int_29(HEAP32[($4 + 516 | 0) >> 2] | 0 | 0, 1 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 412 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(HEAPF32[((btGeneric6DofSpring2Constraint__getRotationalLimitMotor_28int_29(HEAP32[($4 + 516 | 0) >> 2] | 0 | 0, 1 | 0) | 0) + 4 | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 408 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(HEAPF32[(btGeneric6DofSpring2Constraint__getRotationalLimitMotor_28int_29(HEAP32[($4 + 516 | 0) >> 2] | 0 | 0, 2 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 404 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(HEAPF32[((btGeneric6DofSpring2Constraint__getRotationalLimitMotor_28int_29(HEAP32[($4 + 516 | 0) >> 2] | 0 | 0, 2 | 0) | 0) + 4 | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 400 | 0) >> 2] = wasm2js_f32$0;
|
|
$973 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$973 >> 2] | 0) + 72 | 0) >> 2] | 0 | 0]($973, HEAP32[($4 + 448 | 0) >> 2] | 0, $4 + 432 | 0, $4 + 416 | 0, Math_fround(Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]) * Math_fround(.8999999761581421)), Math_fround(HEAPF32[($4 + 412 | 0) >> 2]), Math_fround(HEAPF32[($4 + 408 | 0) >> 2]), Math_fround(HEAPF32[($4 + 404 | 0) >> 2]), Math_fround(HEAPF32[($4 + 400 | 0) >> 2]), $4 + 1480 | 0, Math_fround(10.0), 1 & 1 | 0);
|
|
btMatrix3x3__getColumn_28int_29_20const($4 + 384 | 0 | 0, btTransform__getBasis_28_29($4 + 452 | 0 | 0) | 0 | 0, 1 | 0);
|
|
$1005 = 8;
|
|
i64toi32_i32$2 = ($4 + 384 | 0) + $1005 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$3522 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 416 | 0) + $1005 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $3522;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$1 = HEAP32[($4 + 384 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($4 + 388 | 0) >> 2] | 0;
|
|
$3526 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 416 | 0) >> 2] = $3526;
|
|
HEAP32[($4 + 420 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btGeneric6DofSpring2Constraint__getAngle_28int_29_20const(HEAP32[($4 + 516 | 0) >> 2] | 0 | 0, 1 | 0))), HEAPF32[(wasm2js_i32$0 + 380 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btGeneric6DofSpring2Constraint__getAngle_28int_29_20const(HEAP32[($4 + 516 | 0) >> 2] | 0 | 0, 2 | 0))), HEAPF32[(wasm2js_i32$0 + 376 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btCos_28float_29(Math_fround(Math_fround(HEAPF32[($4 + 380 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 372 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btSin_28float_29(Math_fround(Math_fround(HEAPF32[($4 + 380 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 368 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btCos_28float_29(Math_fround(Math_fround(HEAPF32[($4 + 376 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 364 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btSin_28float_29(Math_fround(Math_fround(HEAPF32[($4 + 376 | 0) >> 2]))))), HEAPF32[(wasm2js_i32$0 + 360 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28_29($4 + 344 | 0 | 0) | 0;
|
|
$1049 = Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[($4 + 372 | 0) >> 2]) * Math_fround(HEAPF32[($4 + 364 | 0) >> 2])) * Math_fround(HEAPF32[(btVector3__operator_20float__28_29($4 + 416 | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($4 + 372 | 0) >> 2]) * Math_fround(HEAPF32[($4 + 360 | 0) >> 2])) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($4 + 416 | 0 | 0) | 0) + 4 | 0) >> 2])));
|
|
$1058 = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($4 + 368 | 0) >> 2])) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($4 + 416 | 0 | 0) | 0) + 8 | 0) >> 2])) + $1049);
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($4 + 344 | 0 | 0) | 0, wasm2js_f32$0 = $1058), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$1078 = Math_fround(Math_fround(Math_fround(-Math_fround(HEAPF32[($4 + 360 | 0) >> 2])) * Math_fround(HEAPF32[(btVector3__operator_20float__28_29($4 + 416 | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(HEAPF32[($4 + 364 | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($4 + 416 | 0 | 0) | 0) + 4 | 0) >> 2])));
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($4 + 344 | 0 | 0) | 0, wasm2js_f32$0 = $1078), HEAPF32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_f32$0;
|
|
$1101 = Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[($4 + 364 | 0) >> 2]) * Math_fround(HEAPF32[($4 + 368 | 0) >> 2])) * Math_fround(HEAPF32[(btVector3__operator_20float__28_29($4 + 416 | 0 | 0) | 0) >> 2])) + Math_fround(Math_fround(Math_fround(HEAPF32[($4 + 360 | 0) >> 2]) * Math_fround(HEAPF32[($4 + 368 | 0) >> 2])) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($4 + 416 | 0 | 0) | 0) + 4 | 0) >> 2])));
|
|
$1109 = Math_fround(Math_fround(Math_fround(HEAPF32[($4 + 372 | 0) >> 2]) * Math_fround(HEAPF32[((btVector3__operator_20float__28_29($4 + 416 | 0 | 0) | 0) + 8 | 0) >> 2])) + $1101);
|
|
(wasm2js_i32$0 = btVector3__operator_20float__28_29($4 + 344 | 0 | 0) | 0, wasm2js_f32$0 = $1109), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
btTransform__operator__28btTransform_20const__29($4 + 452 | 0 | 0, btGeneric6DofSpring2Constraint__getCalculatedTransformB_28_29_20const(HEAP32[($4 + 516 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
btMatrix3x3__getColumn_28int_29_20const($4 + 312 | 0 | 0, btTransform__getBasis_28_29($4 + 452 | 0 | 0) | 0 | 0, 0 | 0);
|
|
operator__28btVector3_20const__29($4 + 328 | 0 | 0, $4 + 312 | 0 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(HEAPF32[(btGeneric6DofSpring2Constraint__getRotationalLimitMotor_28int_29(HEAP32[($4 + 516 | 0) >> 2] | 0 | 0, 0 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 308 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(HEAPF32[((btGeneric6DofSpring2Constraint__getRotationalLimitMotor_28int_29(HEAP32[($4 + 516 | 0) >> 2] | 0 | 0, 0 | 0) | 0) + 4 | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 304 | 0) >> 2] = wasm2js_f32$0;
|
|
label$34 : {
|
|
label$35 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 308 | 0) >> 2]) > Math_fround(HEAPF32[($4 + 304 | 0) >> 2]) & 1 | 0)) {
|
|
break label$35
|
|
}
|
|
$1148 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$1148 >> 2] | 0) + 68 | 0) >> 2] | 0 | 0]($1148, HEAP32[($4 + 448 | 0) >> 2] | 0, $4 + 328 | 0, $4 + 344 | 0, Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]), Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]), Math_fround(-3.1415927410125732), Math_fround(3.1415927410125732), $4 + 1480 | 0, 0 & 1 | 0, Math_fround(10.0));
|
|
break label$34;
|
|
}
|
|
label$36 : {
|
|
if (!(Math_fround(HEAPF32[($4 + 308 | 0) >> 2]) < Math_fround(HEAPF32[($4 + 304 | 0) >> 2]) & 1 | 0)) {
|
|
break label$36
|
|
}
|
|
$1176 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$1176 >> 2] | 0) + 68 | 0) >> 2] | 0 | 0]($1176, HEAP32[($4 + 448 | 0) >> 2] | 0, $4 + 328 | 0, $4 + 344 | 0, Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]), Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]), Math_fround(HEAPF32[($4 + 308 | 0) >> 2]), Math_fround(HEAPF32[($4 + 304 | 0) >> 2]), $4 + 1480 | 0, 1 & 1 | 0, Math_fround(10.0));
|
|
}
|
|
}
|
|
btTransform__operator__28btTransform_20const__29($4 + 452 | 0 | 0, btGeneric6DofSpring2Constraint__getCalculatedTransformA_28_29_20const(HEAP32[($4 + 516 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
$1203 = btGeneric6DofSpring2Constraint__getTranslationalLimitMotor_28_29(HEAP32[($4 + 516 | 0) >> 2] | 0 | 0) | 0;
|
|
$1204 = 8;
|
|
i64toi32_i32$2 = $1203 + $1204 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$3933 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 288 | 0) + $1204 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $3933;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $1203;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$3937 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 288 | 0) >> 2] = $3937;
|
|
HEAP32[($4 + 292 | 0) >> 2] = i64toi32_i32$0;
|
|
$1214 = (btGeneric6DofSpring2Constraint__getTranslationalLimitMotor_28_29(HEAP32[($4 + 516 | 0) >> 2] | 0 | 0) | 0) + 16 | 0;
|
|
$1215 = 8;
|
|
i64toi32_i32$2 = $1214 + $1215 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$3957 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($4 + 272 | 0) + $1215 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $3957;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $1214;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$3961 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $4;
|
|
HEAP32[($4 + 272 | 0) >> 2] = $3961;
|
|
HEAP32[($4 + 276 | 0) >> 2] = i64toi32_i32$0;
|
|
$1224 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$1224 >> 2] | 0) + 80 | 0) >> 2] | 0 | 0]($1224, $4 + 288 | 0, $4 + 272 | 0, $4 + 452 | 0, $4 + 1480 | 0);
|
|
}
|
|
break label$3;
|
|
case 4:
|
|
HEAP32[($4 + 268 | 0) >> 2] = HEAP32[($4 + 1624 | 0) >> 2] | 0;
|
|
btTransform__btTransform_28btTransform_20const__29($4 + 204 | 0 | 0, btSliderConstraint__getCalculatedTransformA_28_29_20const(HEAP32[($4 + 268 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
label$37 : {
|
|
if (!((HEAPU8[($4 + 1479 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$37
|
|
}
|
|
$1250 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$1250 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($1250, $4 + 204 | 0, Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]));
|
|
}
|
|
btTransform__operator__28btTransform_20const__29($4 + 204 | 0 | 0, btSliderConstraint__getCalculatedTransformB_28_29_20const(HEAP32[($4 + 268 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
label$38 : {
|
|
if (!((HEAPU8[($4 + 1479 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$38
|
|
}
|
|
$1267 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$1267 >> 2] | 0) + 64 | 0) >> 2] | 0 | 0]($1267, $4 + 204 | 0, Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]));
|
|
}
|
|
label$39 : {
|
|
if (!((HEAPU8[($4 + 1478 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$39
|
|
}
|
|
label$40 : {
|
|
label$41 : {
|
|
if (!((btSliderConstraint__getUseLinearReferenceFrameA_28_29(HEAP32[($4 + 268 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$41
|
|
}
|
|
$1283 = btSliderConstraint__getCalculatedTransformA_28_29_20const(HEAP32[($4 + 268 | 0) >> 2] | 0 | 0) | 0;
|
|
break label$40;
|
|
}
|
|
$1283 = btSliderConstraint__getCalculatedTransformB_28_29_20const(HEAP32[($4 + 268 | 0) >> 2] | 0 | 0) | 0;
|
|
}
|
|
btTransform__btTransform_28btTransform_20const__29($4 + 140 | 0 | 0, $1283 | 0) | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btSliderConstraint__getLowerLinLimit_28_29(HEAP32[($4 + 268 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 104 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($4 + 100 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 96 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 108 | 0 | 0, $4 + 104 | 0 | 0, $4 + 100 | 0 | 0, $4 + 96 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($4 + 124 | 0 | 0, $4 + 140 | 0 | 0, $4 + 108 | 0 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btSliderConstraint__getUpperLinLimit_28_29(HEAP32[($4 + 268 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 60 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAPF32[($4 + 56 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 52 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 64 | 0 | 0, $4 + 60 | 0 | 0, $4 + 56 | 0 | 0, $4 + 52 | 0 | 0) | 0;
|
|
btTransform__operator__28btVector3_20const__29_20const($4 + 80 | 0 | 0, $4 + 140 | 0 | 0, $4 + 64 | 0 | 0);
|
|
$1346 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$1346 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($1346, $4 + 124 | 0, $4 + 80 | 0, $4 + 1480 | 0);
|
|
btMatrix3x3__getColumn_28int_29_20const($4 + 36 | 0 | 0, btTransform__getBasis_28_29($4 + 140 | 0 | 0) | 0 | 0, 0 | 0);
|
|
btMatrix3x3__getColumn_28int_29_20const($4 + 20 | 0 | 0, btTransform__getBasis_28_29($4 + 140 | 0 | 0) | 0 | 0, 1 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btSliderConstraint__getLowerAngLimit_28_29(HEAP32[($4 + 268 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btSliderConstraint__getUpperAngLimit_28_29(HEAP32[($4 + 268 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$4 = btTransform__getOrigin_28_29_20const(btSliderConstraint__getCalculatedTransformB_28_29_20const(HEAP32[($4 + 268 | 0) >> 2] | 0 | 0) | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$4;
|
|
$1383 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$1383 >> 2] | 0) + 68 | 0) >> 2] | 0 | 0]($1383, HEAP32[($4 + 8 | 0) >> 2] | 0, $4 + 36 | 0, $4 + 20 | 0, Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]), Math_fround(HEAPF32[($4 + 1472 | 0) >> 2]), Math_fround(HEAPF32[($4 + 16 | 0) >> 2]), Math_fround(HEAPF32[($4 + 12 | 0) >> 2]), $4 + 1480 | 0, 1 & 1 | 0, Math_fround(10.0));
|
|
}
|
|
break label$3;
|
|
default:
|
|
break label$4;
|
|
};
|
|
}
|
|
}
|
|
}
|
|
__stack_pointer = $4 + 1632 | 0;
|
|
return;
|
|
}
|
|
|
|
function btTypedConstraint__getConstraintType_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btHingeConstraint__getAFrame_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 552 | 0 | 0;
|
|
}
|
|
|
|
function btHingeConstraint__getBFrame_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 616 | 0 | 0;
|
|
}
|
|
|
|
function btHingeConstraint__hasLimit_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $12 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$12 = Math_fround(btAngularLimit__getHalfRange_28_29_20const((HEAP32[($3 + 12 | 0) >> 2] | 0) + 688 | 0 | 0)) > Math_fround(0 | 0) & 1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $12 | 0;
|
|
}
|
|
|
|
function btConeTwistConstraint__getRigidBodyA_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btConeTwistConstraint__getAFrame_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 300 | 0 | 0;
|
|
}
|
|
|
|
function btConeTwistConstraint__getRigidBodyB_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btConeTwistConstraint__getBFrame_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 364 | 0 | 0;
|
|
}
|
|
|
|
function btConeTwistConstraint__getTwistSpan_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 452 | 0) >> 2]));
|
|
}
|
|
|
|
function btConeTwistConstraint__getTwistAngle_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 512 | 0) >> 2]));
|
|
}
|
|
|
|
function btGeneric6DofConstraint__getCalculatedTransformA_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 1064 | 0 | 0;
|
|
}
|
|
|
|
function btGeneric6DofConstraint__getCalculatedTransformB_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 1128 | 0 | 0;
|
|
}
|
|
|
|
function btGeneric6DofConstraint__getRotationalLimitMotor_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return ((HEAP32[($4 + 12 | 0) >> 2] | 0) + 868 | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 6 | 0) | 0 | 0;
|
|
}
|
|
|
|
function btGeneric6DofConstraint__getTranslationalLimitMotor_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 680 | 0 | 0;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__getCalculatedTransformA_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 1236 | 0 | 0;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__getCalculatedTransformB_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 1300 | 0 | 0;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__getRotationalLimitMotor_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return ((HEAP32[($4 + 12 | 0) >> 2] | 0) + 968 | 0) + Math_imul(HEAP32[($4 + 8 | 0) >> 2] | 0, 88) | 0 | 0;
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__getAngle_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $13 = Math_fround(0);
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$13 = Math_fround(HEAPF32[((btVector3__operator_20float_20const__28_29_20const((HEAP32[($4 + 12 | 0) >> 2] | 0) + 1364 | 0 | 0) | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2]);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return Math_fround($13);
|
|
}
|
|
|
|
function btGeneric6DofSpring2Constraint__getTranslationalLimitMotor_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 680 | 0 | 0;
|
|
}
|
|
|
|
function btSliderConstraint__getCalculatedTransformA_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 824 | 0 | 0;
|
|
}
|
|
|
|
function btSliderConstraint__getCalculatedTransformB_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAP32[($3 + 12 | 0) >> 2] | 0) + 888 | 0 | 0;
|
|
}
|
|
|
|
function btSliderConstraint__getUseLinearReferenceFrameA_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return (HEAPU8[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 180 | 0) >> 0] | 0) & 1 | 0 | 0;
|
|
}
|
|
|
|
function btSliderConstraint__getLowerLinLimit_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 184 | 0) >> 2]));
|
|
}
|
|
|
|
function btSliderConstraint__getUpperLinLimit_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 188 | 0) >> 2]));
|
|
}
|
|
|
|
function btSliderConstraint__getLowerAngLimit_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 192 | 0) >> 2]));
|
|
}
|
|
|
|
function btSliderConstraint__getUpperAngLimit_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 196 | 0) >> 2]));
|
|
}
|
|
|
|
function btAngularLimit__getHalfRange_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2]));
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__setConstraintSolver_28btConstraintSolver__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($5 + 289 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btAlignedFreeInternal_28void__29(HEAP32[($5 + 216 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP8[($5 + 289 | 0) >> 0] = 0;
|
|
HEAP32[($5 + 216 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($5 + 212 | 0) >> 2] | 0) + 8 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__getConstraintSolver_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 216 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__getNumConstraints_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $7 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$7 = btAlignedObjectArray_btTypedConstraint____size_28_29_20const((HEAP32[($3 + 12 | 0) >> 2] | 0) + 224 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__getConstraint_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $10 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$10 = HEAP32[(btAlignedObjectArray_btTypedConstraint____operator_5b_5d_28int_29((HEAP32[($4 + 12 | 0) >> 2] | 0) + 224 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__getConstraint_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $10 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$10 = HEAP32[(btAlignedObjectArray_btTypedConstraint____operator_5b_5d_28int_29_20const((HEAP32[($4 + 12 | 0) >> 2] | 0) + 224 | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btTypedConstraint____operator_5b_5d_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 176 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btTypedConstraint____size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 177 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__serializeRigidBodies_28btSerializer__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $25 = 0, $29 = 0, $35 = 0, $42 = 0, $67 = 0, $71 = 0, $77 = 0, $84 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 40 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 44 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 36 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($4 + 36 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btCollisionObject____size_28_29_20const($5 + 4 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btCollisionObject____operator_5b_5d_28int_29($5 + 4 | 0 | 0, HEAP32[($4 + 36 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 32 | 0) >> 2] = wasm2js_i32$1;
|
|
label$3 : {
|
|
if (!((btCollisionObject__getInternalType_28_29_20const(HEAP32[($4 + 32 | 0) >> 2] | 0 | 0) | 0) & 2 | 0)) {
|
|
break label$3
|
|
}
|
|
$25 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$25 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($25) | 0), HEAP32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_i32$1;
|
|
$29 = HEAP32[($4 + 40 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$29 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($29, HEAP32[($4 + 28 | 0) >> 2] | 0, 1) | 0), HEAP32[(wasm2js_i32$0 + 24 | 0) >> 2] = wasm2js_i32$1;
|
|
$35 = HEAP32[($4 + 32 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$35 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($35, HEAP32[((HEAP32[($4 + 24 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0, HEAP32[($4 + 40 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
$42 = HEAP32[($4 + 40 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$42 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($42, HEAP32[($4 + 24 | 0) >> 2] | 0, HEAP32[($4 + 20 | 0) >> 2] | 0, 1497645650, HEAP32[($4 + 32 | 0) >> 2] | 0);
|
|
}
|
|
HEAP32[($4 + 36 | 0) >> 2] = (HEAP32[($4 + 36 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
HEAP32[($4 + 36 | 0) >> 2] = 0;
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
if (!((HEAP32[($4 + 36 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btTypedConstraint____size_28_29_20const($5 + 224 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btTypedConstraint____operator_5b_5d_28int_29($5 + 224 | 0 | 0, HEAP32[($4 + 36 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
$67 = HEAP32[($4 + 16 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$67 >> 2] | 0) + 36 | 0) >> 2] | 0 | 0]($67) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$71 = HEAP32[($4 + 40 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$71 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($71, HEAP32[($4 + 12 | 0) >> 2] | 0, 1) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
$77 = HEAP32[($4 + 16 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$77 >> 2] | 0) + 40 | 0) >> 2] | 0 | 0]($77, HEAP32[((HEAP32[($4 + 8 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0, HEAP32[($4 + 40 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
$84 = HEAP32[($4 + 40 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$84 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($84, HEAP32[($4 + 8 | 0) >> 2] | 0, HEAP32[($4 + 4 | 0) >> 2] | 0, 1397641027, HEAP32[($4 + 16 | 0) >> 2] | 0);
|
|
HEAP32[($4 + 36 | 0) >> 2] = (HEAP32[($4 + 36 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$5;
|
|
};
|
|
}
|
|
__stack_pointer = $4 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__serializeDynamicsWorldInfo_28btSerializer__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $7 = 0, $91 = 0, $24 = Math_fround(0), $27 = Math_fround(0), $30 = Math_fround(0), $33 = Math_fround(0), $36 = Math_fround(0), $39 = Math_fround(0), $42 = Math_fround(0), $45 = Math_fround(0), $48 = Math_fround(0), $51 = Math_fround(0), $54 = Math_fround(0), $57 = Math_fround(0), $60 = Math_fround(0), $63 = Math_fround(0), $66 = Math_fround(0), $69 = Math_fround(0), $72 = 0, $75 = 0, $78 = 0, $81 = 0, $84 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = 104;
|
|
$7 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($7, HEAP32[($4 + 20 | 0) >> 2] | 0, 1) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = HEAP32[((HEAP32[($4 + 16 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
__memset(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, 0 | 0, HEAP32[($4 + 20 | 0) >> 2] | 0 | 0) | 0;
|
|
btVector3__serialize_28btVector3FloatData__29_20const($5 + 264 | 0 | 0, (HEAP32[($4 + 12 | 0) >> 2] | 0) + 88 | 0 | 0);
|
|
$24 = Math_fround(HEAPF32[(btDynamicsWorld__getSolverInfo_28_29($5 | 0) | 0) >> 2]);
|
|
HEAPF32[(HEAP32[($4 + 12 | 0) >> 2] | 0) >> 2] = $24;
|
|
$27 = Math_fround(HEAPF32[((btDynamicsWorld__getSolverInfo_28_29($5 | 0) | 0) + 4 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] = $27;
|
|
$30 = Math_fround(HEAPF32[((btDynamicsWorld__getSolverInfo_28_29($5 | 0) | 0) + 8 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] = $30;
|
|
$33 = Math_fround(HEAPF32[((btDynamicsWorld__getSolverInfo_28_29($5 | 0) | 0) + 12 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 12 | 0) >> 2] = $33;
|
|
$36 = Math_fround(HEAPF32[((btDynamicsWorld__getSolverInfo_28_29($5 | 0) | 0) + 16 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 16 | 0) >> 2] = $36;
|
|
$39 = Math_fround(HEAPF32[((btDynamicsWorld__getSolverInfo_28_29($5 | 0) | 0) + 24 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 20 | 0) >> 2] = $39;
|
|
$42 = Math_fround(HEAPF32[((btDynamicsWorld__getSolverInfo_28_29($5 | 0) | 0) + 28 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 24 | 0) >> 2] = $42;
|
|
$45 = Math_fround(HEAPF32[((btDynamicsWorld__getSolverInfo_28_29($5 | 0) | 0) + 32 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 28 | 0) >> 2] = $45;
|
|
$48 = Math_fround(HEAPF32[((btDynamicsWorld__getSolverInfo_28_29($5 | 0) | 0) + 36 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 32 | 0) >> 2] = $48;
|
|
$51 = Math_fround(HEAPF32[((btDynamicsWorld__getSolverInfo_28_29($5 | 0) | 0) + 40 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 36 | 0) >> 2] = $51;
|
|
$54 = Math_fround(HEAPF32[((btDynamicsWorld__getSolverInfo_28_29($5 | 0) | 0) + 56 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 40 | 0) >> 2] = $54;
|
|
$57 = Math_fround(HEAPF32[((btDynamicsWorld__getSolverInfo_28_29($5 | 0) | 0) + 60 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 44 | 0) >> 2] = $57;
|
|
$60 = Math_fround(HEAPF32[((btDynamicsWorld__getSolverInfo_28_29($5 | 0) | 0) + 64 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 48 | 0) >> 2] = $60;
|
|
$63 = Math_fround(HEAPF32[((btDynamicsWorld__getSolverInfo_28_29($5 | 0) | 0) + 68 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 52 | 0) >> 2] = $63;
|
|
$66 = Math_fround(HEAPF32[((btDynamicsWorld__getSolverInfo_28_29($5 | 0) | 0) + 84 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 56 | 0) >> 2] = $66;
|
|
$69 = Math_fround(HEAPF32[((btDynamicsWorld__getSolverInfo_28_29($5 | 0) | 0) + 88 | 0) >> 2]);
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 60 | 0) >> 2] = $69;
|
|
$72 = HEAP32[((btDynamicsWorld__getSolverInfo_28_29($5 | 0) | 0) + 20 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 64 | 0) >> 2] = $72;
|
|
$75 = HEAP32[((btDynamicsWorld__getSolverInfo_28_29($5 | 0) | 0) + 72 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 68 | 0) >> 2] = $75;
|
|
$78 = HEAP32[((btDynamicsWorld__getSolverInfo_28_29($5 | 0) | 0) + 76 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 72 | 0) >> 2] = $78;
|
|
$81 = HEAP32[((btDynamicsWorld__getSolverInfo_28_29($5 | 0) | 0) + 80 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 76 | 0) >> 2] = $81;
|
|
$84 = HEAP32[((btDynamicsWorld__getSolverInfo_28_29($5 | 0) | 0) + 52 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 80 | 0) >> 2] = $84;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 84 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = 83369;
|
|
$91 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$91 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($91, HEAP32[($4 + 16 | 0) >> 2] | 0, HEAP32[($4 + 8 | 0) >> 2] | 0, 1145853764, HEAP32[($4 + 12 | 0) >> 2] | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__serialize_28btSerializer__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $6 = 0, $12 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
$6 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 32 | 0) >> 2] | 0 | 0]($6);
|
|
btDiscreteDynamicsWorld__serializeDynamicsWorldInfo_28btSerializer__29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
btCollisionWorld__serializeCollisionObjects_28btSerializer__29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
btDiscreteDynamicsWorld__serializeRigidBodies_28btSerializer__29($5 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
$12 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$12 >> 2] | 0) + 36 | 0) >> 2] | 0 | 0]($12);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDynamicsWorld___btDynamicsWorld_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btDynamicsWorld__addConstraint_28btTypedConstraint__2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 7 | 0) >> 0] = $2;
|
|
return;
|
|
}
|
|
|
|
function btDynamicsWorld__removeConstraint_28btTypedConstraint__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return;
|
|
}
|
|
|
|
function btDynamicsWorld__getNumConstraints_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 0 | 0;
|
|
}
|
|
|
|
function btDynamicsWorld__getConstraint_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return 0 | 0;
|
|
}
|
|
|
|
function btDynamicsWorld__getConstraint_28int_29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return 0 | 0;
|
|
}
|
|
|
|
function btDynamicsWorld__addVehicle_28btActionInterface__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return;
|
|
}
|
|
|
|
function btDynamicsWorld__removeVehicle_28btActionInterface__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return;
|
|
}
|
|
|
|
function btDynamicsWorld__addCharacter_28btActionInterface__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return;
|
|
}
|
|
|
|
function btDynamicsWorld__removeCharacter_28btActionInterface__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return;
|
|
}
|
|
|
|
function InplaceSolverIslandCallback___InplaceSolverIslandCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 103204 + 8 | 0;
|
|
btAlignedObjectArray_btTypedConstraint_____btAlignedObjectArray_28_29($4 + 68 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btPersistentManifold_____btAlignedObjectArray_28_29($4 + 48 | 0 | 0) | 0;
|
|
btAlignedObjectArray_btCollisionObject_____btAlignedObjectArray_28_29($4 + 28 | 0 | 0) | 0;
|
|
btSimulationIslandManager__IslandCallback___IslandCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btSimulationIslandManager__IslandCallback___IslandCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function InplaceSolverIslandCallback___InplaceSolverIslandCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
InplaceSolverIslandCallback___InplaceSolverIslandCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function InplaceSolverIslandCallback__processIsland_28btCollisionObject___2c_20int_2c_20btPersistentManifold___2c_20int_2c_20int_29($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $8 = 0, $9 = 0, $17 = 0, $94 = 0;
|
|
$8 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $8;
|
|
HEAP32[($8 + 44 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 40 | 0) >> 2] = $1;
|
|
HEAP32[($8 + 36 | 0) >> 2] = $2;
|
|
HEAP32[($8 + 32 | 0) >> 2] = $3;
|
|
HEAP32[($8 + 28 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 24 | 0) >> 2] = $5;
|
|
$9 = HEAP32[($8 + 44 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($8 + 24 | 0) >> 2] | 0 | 0) < (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$17 = HEAP32[($9 + 8 | 0) >> 2] | 0;
|
|
Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$17 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($17, HEAP32[($8 + 40 | 0) >> 2] | 0, HEAP32[($8 + 36 | 0) >> 2] | 0, HEAP32[($8 + 32 | 0) >> 2] | 0, HEAP32[($8 + 28 | 0) >> 2] | 0, HEAP32[($9 + 12 | 0) >> 2] | 0, HEAP32[($9 + 16 | 0) >> 2] | 0, HEAP32[($9 + 4 | 0) >> 2] | 0, HEAP32[($9 + 20 | 0) >> 2] | 0, HEAP32[($9 + 24 | 0) >> 2] | 0));
|
|
break label$1;
|
|
}
|
|
HEAP32[($8 + 20 | 0) >> 2] = 0;
|
|
HEAP32[($8 + 16 | 0) >> 2] = 0;
|
|
HEAP32[($8 + 12 | 0) >> 2] = 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
if (!((HEAP32[($8 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($9 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
label$5 : {
|
|
if (!((btGetConstraintIslandId_28btTypedConstraint_20const__29(HEAP32[((HEAP32[($9 + 12 | 0) >> 2] | 0) + ((HEAP32[($8 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0) | 0 | 0) == (HEAP32[($8 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAP32[($8 + 20 | 0) >> 2] = (HEAP32[($9 + 12 | 0) >> 2] | 0) + ((HEAP32[($8 + 12 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
break label$3;
|
|
}
|
|
HEAP32[($8 + 12 | 0) >> 2] = (HEAP32[($8 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$4;
|
|
};
|
|
}
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($8 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($9 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
label$8 : {
|
|
if (!((btGetConstraintIslandId_28btTypedConstraint_20const__29(HEAP32[((HEAP32[($9 + 12 | 0) >> 2] | 0) + ((HEAP32[($8 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0 | 0) | 0 | 0) == (HEAP32[($8 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
HEAP32[($8 + 16 | 0) >> 2] = (HEAP32[($8 + 16 | 0) >> 2] | 0) + 1 | 0;
|
|
}
|
|
HEAP32[($8 + 12 | 0) >> 2] = (HEAP32[($8 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
label$9 : {
|
|
label$10 : {
|
|
if (!((HEAP32[((HEAP32[($9 + 4 | 0) >> 2] | 0) + 80 | 0) >> 2] | 0 | 0) <= (1 | 0) & 1 | 0)) {
|
|
break label$10
|
|
}
|
|
$94 = HEAP32[($9 + 8 | 0) >> 2] | 0;
|
|
Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$94 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($94, HEAP32[($8 + 40 | 0) >> 2] | 0, HEAP32[($8 + 36 | 0) >> 2] | 0, HEAP32[($8 + 32 | 0) >> 2] | 0, HEAP32[($8 + 28 | 0) >> 2] | 0, HEAP32[($8 + 20 | 0) >> 2] | 0, HEAP32[($8 + 16 | 0) >> 2] | 0, HEAP32[($9 + 4 | 0) >> 2] | 0, HEAP32[($9 + 20 | 0) >> 2] | 0, HEAP32[($9 + 24 | 0) >> 2] | 0));
|
|
break label$9;
|
|
}
|
|
HEAP32[($8 + 12 | 0) >> 2] = 0;
|
|
label$11 : {
|
|
label$12 : while (1) {
|
|
if (!((HEAP32[($8 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($8 + 36 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
btAlignedObjectArray_btCollisionObject____push_back_28btCollisionObject__20const__29($9 + 28 | 0 | 0, (HEAP32[($8 + 40 | 0) >> 2] | 0) + ((HEAP32[($8 + 12 | 0) >> 2] | 0) << 2 | 0) | 0 | 0);
|
|
HEAP32[($8 + 12 | 0) >> 2] = (HEAP32[($8 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$12;
|
|
};
|
|
}
|
|
HEAP32[($8 + 12 | 0) >> 2] = 0;
|
|
label$13 : {
|
|
label$14 : while (1) {
|
|
if (!((HEAP32[($8 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($8 + 28 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
btAlignedObjectArray_btPersistentManifold____push_back_28btPersistentManifold__20const__29($9 + 48 | 0 | 0, (HEAP32[($8 + 32 | 0) >> 2] | 0) + ((HEAP32[($8 + 12 | 0) >> 2] | 0) << 2 | 0) | 0 | 0);
|
|
HEAP32[($8 + 12 | 0) >> 2] = (HEAP32[($8 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$14;
|
|
};
|
|
}
|
|
HEAP32[($8 + 12 | 0) >> 2] = 0;
|
|
label$15 : {
|
|
label$16 : while (1) {
|
|
if (!((HEAP32[($8 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($8 + 16 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
btAlignedObjectArray_btTypedConstraint____push_back_28btTypedConstraint__20const__29($9 + 68 | 0 | 0, (HEAP32[($8 + 20 | 0) >> 2] | 0) + ((HEAP32[($8 + 12 | 0) >> 2] | 0) << 2 | 0) | 0 | 0);
|
|
HEAP32[($8 + 12 | 0) >> 2] = (HEAP32[($8 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$16;
|
|
};
|
|
}
|
|
label$17 : {
|
|
label$18 : {
|
|
if (!(((btAlignedObjectArray_btTypedConstraint____size_28_29_20const($9 + 68 | 0 | 0) | 0) + (btAlignedObjectArray_btPersistentManifold____size_28_29_20const($9 + 48 | 0 | 0) | 0) | 0 | 0) > (HEAP32[((HEAP32[($9 + 4 | 0) >> 2] | 0) + 80 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$18
|
|
}
|
|
InplaceSolverIslandCallback__processConstraints_28_29($9 | 0);
|
|
break label$17;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
__stack_pointer = $8 + 48 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGetConstraintIslandId_28btTypedConstraint_20const__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $18 = 0, $22 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btTypedConstraint__getRigidBodyA_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btTypedConstraint__getRigidBodyB_28_29_20const(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((btCollisionObject__getIslandTag_28_29_20const(HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$18 = btCollisionObject__getIslandTag_28_29_20const(HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
break label$1;
|
|
}
|
|
$18 = btCollisionObject__getIslandTag_28_29_20const(HEAP32[$3 >> 2] | 0 | 0) | 0;
|
|
}
|
|
HEAP32[($3 + 8 | 0) >> 2] = $18;
|
|
$22 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $22 | 0;
|
|
}
|
|
|
|
function btSimulationIslandManager__IslandCallback___IslandCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btTypedConstraint__getRigidBodyA_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 28 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btTypedConstraint__getRigidBodyB_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 32 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btElement___size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btClosestNotMeConvexResultCallback___btClosestNotMeConvexResultCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btClosestNotMeConvexResultCallback___btClosestNotMeConvexResultCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btClosestNotMeConvexResultCallback__needsCollision_28btBroadphaseProxy__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $26 = 0, $42 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[(HEAP32[($4 + 4 | 0) >> 2] | 0) >> 2] | 0 | 0) == (HEAP32[($5 + 84 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP8[($4 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
if ((btCollisionWorld__ConvexResultCallback__needsCollision_28btBroadphaseProxy__29_20const($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
HEAP8[($4 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[$4 >> 2] = HEAP32[(HEAP32[($4 + 4 | 0) >> 2] | 0) >> 2] | 0;
|
|
$26 = HEAP32[($5 + 96 | 0) >> 2] | 0;
|
|
label$4 : {
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$26 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($26, HEAP32[($5 + 84 | 0) >> 2] | 0, HEAP32[$4 >> 2] | 0) | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP8[($4 + 15 | 0) >> 0] = 1 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP8[($4 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
}
|
|
$42 = (HEAPU8[($4 + 15 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $42 | 0;
|
|
}
|
|
|
|
function btClosestNotMeConvexResultCallback__addSingleResult_28btCollisionWorld__LocalConvexResult__2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $7 = 0, $36 = 0, $63 = 0, $186 = 0, $190 = 0, $239 = 0, $243 = 0, $99 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 112 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 104 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 100 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 99 | 0) >> 0] = $2;
|
|
$7 = HEAP32[($5 + 104 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[(HEAP32[($5 + 100 | 0) >> 2] | 0) >> 2] | 0 | 0) == (HEAP32[($7 + 84 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($5 + 108 | 0) >> 2] = Math_fround(1.0);
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
if ((btCollisionObject__hasContactResponse_28_29_20const(HEAP32[(HEAP32[($5 + 100 | 0) >> 2] | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
HEAPF32[($5 + 108 | 0) >> 2] = Math_fround(1.0);
|
|
break label$1;
|
|
}
|
|
btVector3__btVector3_28_29($5 + 80 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($5 + 64 | 0 | 0) | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 48 | 0 | 0, $7 + 36 | 0 | 0, $7 + 20 | 0 | 0);
|
|
$36 = 8;
|
|
i64toi32_i32$2 = ($5 + 48 | 0) + $36 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$186 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 80 | 0) + $36 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $186;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[($5 + 48 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 52 | 0) >> 2] | 0;
|
|
$190 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 80 | 0) >> 2] = $190;
|
|
HEAP32[($5 + 84 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($5 + 28 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 24 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($5 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($5 + 32 | 0 | 0, $5 + 28 | 0 | 0, $5 + 24 | 0 | 0, $5 + 20 | 0 | 0) | 0;
|
|
$63 = 8;
|
|
i64toi32_i32$2 = ($5 + 32 | 0) + $63 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$239 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 64 | 0) + $63 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $239;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[($5 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 36 | 0) >> 2] | 0;
|
|
$243 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 64 | 0) >> 2] = $243;
|
|
HEAP32[($5 + 68 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 4 | 0 | 0, $5 + 80 | 0 | 0, $5 + 64 | 0 | 0);
|
|
label$4 : {
|
|
if (!(Math_fround(btVector3__dot_28btVector3_20const__29_20const((HEAP32[($5 + 100 | 0) >> 2] | 0) + 8 | 0 | 0, $5 + 4 | 0 | 0)) >= Math_fround(-Math_fround(HEAPF32[($7 + 88 | 0) >> 2])) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAPF32[($5 + 108 | 0) >> 2] = Math_fround(1.0);
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btCollisionWorld__ClosestConvexResultCallback__addSingleResult_28btCollisionWorld__LocalConvexResult__2c_20bool_29($7 | 0, HEAP32[($5 + 100 | 0) >> 2] | 0 | 0, (HEAPU8[($5 + 99 | 0) >> 0] | 0) & 1 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 108 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
$99 = Math_fround(HEAPF32[($5 + 108 | 0) >> 2]);
|
|
__stack_pointer = $5 + 112 | 0;
|
|
return Math_fround($99);
|
|
}
|
|
|
|
function btAlignedObjectArray_btRigidBody____destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btRigidBody____deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btRigidBody__2c_2016u___deallocate_28btRigidBody___29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btRigidBody__2c_2016u___deallocate_28btRigidBody___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btActionInterface____destroy_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btActionInterface____deallocate_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($4 + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedAllocator_btActionInterface__2c_2016u___deallocate_28btActionInterface___29($4 | 0, HEAP32[($4 + 12 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btActionInterface__2c_2016u___deallocate_28btActionInterface___29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btRigidBody____swap_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[$5 >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btRigidBody____pop_back_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) > (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85800 | 0, 78192 | 0, 201 | 0, 77711 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + -1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btRigidBody____allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btRigidBody__2c_2016u___allocate_28int_2c_20btRigidBody__20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btRigidBody____copy_28int_2c_20int_2c_20btRigidBody___29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[((HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[((HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btRigidBody__2c_2016u___allocate_28int_2c_20btRigidBody__20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btActionInterface____allocate_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $11 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(HEAP32[($4 + 4 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedAllocator_btActionInterface__2c_2016u___allocate_28int_2c_20btActionInterface__20const___29($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0, 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$1;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$11 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btActionInterface____copy_28int_2c_20int_2c_20btActionInterface___29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($6 + 20 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[((HEAP32[($6 + 16 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[((HEAP32[($7 + 12 | 0) >> 2] | 0) + ((HEAP32[($6 + 12 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
return;
|
|
}
|
|
|
|
function btAlignedAllocator_btActionInterface__2c_2016u___allocate_28int_2c_20btActionInterface__20const___29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $10 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$10 = btAlignedAllocInternal_28unsigned_20long_2c_20int_29((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0 | 0, 16 | 0) | 0;
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $10 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btActionInterface____swap_28int_2c_20int_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$5 >> 2] = HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 8 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 12 | 0) >> 2] | 0) + ((HEAP32[($5 + 4 | 0) >> 2] | 0) << 2 | 0) | 0) >> 2] = HEAP32[$5 >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btActionInterface____pop_back_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) > (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85800 | 0, 78192 | 0, 201 | 0, 77711 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = (HEAP32[($4 + 4 | 0) >> 2] | 0) + -1 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btSortConstraintOnIslandPredicate__operator_28_29_28btTypedConstraint_20const__2c_20btTypedConstraint_20const__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $16 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btGetConstraintIslandId_28btTypedConstraint_20const__29(HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btGetConstraintIslandId_28btTypedConstraint_20const__29(HEAP32[($5 + 24 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
$16 = (HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) < (HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) & 1 | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return $16 | 0;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btDiscreteDynamicsWorld_cpp() {
|
|
__cxx_global_var_init_79();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_80() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(116172 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function cc__ccDiscreteDynamicsWorld__ccDiscreteDynamicsWorld_28btDispatcher__2c_20btBroadphaseInterface__2c_20btConstraintSolver__2c_20btCollisionConfiguration__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0, $19 = 0, $24 = 0, $26 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
btDiscreteDynamicsWorld__btDiscreteDynamicsWorld_28btDispatcher__2c_20btBroadphaseInterface__2c_20btConstraintSolver__2c_20btCollisionConfiguration__29($8 | 0, HEAP32[($7 + 24 | 0) >> 2] | 0 | 0, HEAP32[($7 + 20 | 0) >> 2] | 0 | 0, HEAP32[($7 + 16 | 0) >> 2] | 0 | 0, HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$8 >> 2] = 103416 + 8 | 0;
|
|
cc__ccOverlapFilterCallback__ccOverlapFilterCallback_28_29($8 + 344 | 0 | 0) | 0;
|
|
HEAPF32[($8 + 56 | 0) >> 2] = Math_fround(.009999999776482582);
|
|
$19 = btCollisionWorld__getPairCache_28_29($8 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$19 >> 2] | 0) + 44 | 0) >> 2] | 0 | 0]($19, $8 + 344 | 0);
|
|
$24 = btCollisionWorld__getPairCache_28_29($8 | 0) | 0;
|
|
$26 = operator_20new_28unsigned_20long_29(4 | 0) | 0;
|
|
btGhostPairCallback__btGhostPairCallback_28_29($26 | 0) | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$24 >> 2] | 0) + 60 | 0) >> 2] | 0 | 0]($24, $26);
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function cc__ccOverlapFilterCallback__ccOverlapFilterCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btOverlapFilterCallback__btOverlapFilterCallback_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 103656 + 8 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionWorld__getPairCache_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $5 = 0, $8 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$5 = HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 68 | 0) >> 2] | 0;
|
|
$8 = FUNCTION_TABLE[HEAP32[((HEAP32[$5 >> 2] | 0) + 36 | 0) >> 2] | 0 | 0]($5) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btGhostPairCallback__btGhostPairCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btOverlappingPairCallback__btOverlappingPairCallback_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 103776 + 8 | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btOverlapFilterCallback__btOverlapFilterCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 103756 + 8 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function cc__ccDiscreteDynamicsWorld__applyGravity_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btRigidBody____size_28_29_20const($4 + 244 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btRigidBody____operator_5b_5d_28int_29($4 + 244 | 0 | 0, HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$3 : {
|
|
if (!((btCollisionObject__isActive_28_29_20const(HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
if ((btCollisionObject__isKinematicObject_28_29_20const(HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!(+Math_fround(btRigidBody__getLinearDamping_28_29_20const(HEAP32[($3 + 4 | 0) >> 2] | 0 | 0)) == 1.0 & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btVector3__setZero_28_29(btRigidBody__getTotalForce_28_29_20const(HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
break label$4;
|
|
}
|
|
btRigidBody__applyGravity_28_29(HEAP32[($3 + 4 | 0) >> 2] | 0 | 0);
|
|
}
|
|
label$6 : {
|
|
if (!(+Math_fround(btRigidBody__getAngularDamping_28_29_20const(HEAP32[($3 + 4 | 0) >> 2] | 0 | 0)) == 1.0 & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
btVector3__setZero_28_29(btRigidBody__getTotalTorque_28_29_20const(HEAP32[($3 + 4 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
}
|
|
}
|
|
HEAP32[($3 + 8 | 0) >> 2] = (HEAP32[($3 + 8 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btAlignedObjectArray_btRigidBody____size_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btAlignedObjectArray_btRigidBody____operator_5b_5d_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $32 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(85840 | 0, 78192 | 0, 183 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btRigidBody____size_28_29_20const($5 | 0) | 0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
__assert_fail(87321 | 0, 78192 | 0, 184 | 0, 83901 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
$32 = (HEAP32[($5 + 12 | 0) >> 2] | 0) + ((HEAP32[($4 + 8 | 0) >> 2] | 0) << 2 | 0) | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $32 | 0;
|
|
}
|
|
|
|
function btRigidBody__getLinearDamping_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 504 | 0) >> 2]));
|
|
}
|
|
|
|
function btRigidBody__getAngularDamping_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 508 | 0) >> 2]));
|
|
}
|
|
|
|
function cc__ccDiscreteDynamicsWorld__createPredictiveContacts_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $5 = 0, i64toi32_i32$2 = 0, $177 = 0, $272 = 0, $274 = 0, $280 = 0, $282 = 0, $266 = Math_fround(0), $269 = 0, $856 = 0, $866 = 0, $875 = 0, $888 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$4 = __stack_pointer - 736 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 732 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 728 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 732 | 0) >> 2] | 0;
|
|
CProfileSample__CProfileSample_28char_20const__29($4 + 727 | 0 | 0, 69290 | 0) | 0;
|
|
btDiscreteDynamicsWorld__releasePredictiveContacts_28_29($5 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btAlignedObjectArray_btRigidBody____size_28_29_20const($5 + 244 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 720 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($4 + 720 | 0) >> 2] | 0 | 0) > (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
btTransform__btTransform_28_29($4 + 656 | 0 | 0) | 0;
|
|
HEAP32[($4 + 652 | 0) >> 2] = 0;
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[($4 + 652 | 0) >> 2] | 0 | 0) < (HEAP32[($4 + 720 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[(btAlignedObjectArray_btRigidBody____operator_5b_5d_28int_29($5 + 244 | 0 | 0, HEAP32[($4 + 652 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 648 | 0) >> 2] = wasm2js_i32$1;
|
|
btCollisionObject__setHitFraction_28float_29(HEAP32[($4 + 648 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(1.0)));
|
|
label$4 : {
|
|
if (!((btCollisionObject__isActive_28_29_20const(HEAP32[($4 + 648 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
if ((btCollisionObject__isStaticOrKinematicObject_28_29_20const(HEAP32[($4 + 648 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
btRigidBody__predictIntegratedTransform_28float_2c_20btTransform__29(HEAP32[($4 + 648 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 728 | 0) >> 2])), $4 + 656 | 0 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btCollisionObject__getWorldTransform_28_29(HEAP32[($4 + 648 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 644 | 0) >> 2] = wasm2js_i32$1;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 624 | 0 | 0, btTransform__getOrigin_28_29($4 + 656 | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($4 + 644 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btVector3__length2_28_29_20const($4 + 624 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 640 | 0) >> 2] = wasm2js_f32$0;
|
|
label$5 : {
|
|
if (!((HEAPU8[((btCollisionWorld__getDispatchInfo_28_29($5 | 0) | 0) + 16 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
if (!(Math_fround(btCollisionObject__getCcdSquareMotionThreshold_28_29_20const(HEAP32[($4 + 648 | 0) >> 2] | 0 | 0)) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
if (!(Math_fround(btCollisionObject__getCcdSquareMotionThreshold_28_29_20const(HEAP32[($4 + 648 | 0) >> 2] | 0 | 0)) < Math_fround(HEAPF32[($4 + 640 | 0) >> 2]) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
CProfileSample__CProfileSample_28char_20const__29($4 + 623 | 0 | 0, 67428 | 0) | 0;
|
|
label$6 : {
|
|
if (!((btCollisionShape__isConvex_28_29_20const(btRigidBody__getCollisionShape_28_29(HEAP32[($4 + 648 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
cc__ccNotMeClosestConvexResultCallback__ccNotMeClosestConvexResultCallback_28btCollisionObject__2c_20cc__ccDiscreteDynamicsWorld__2c_20btVector3_20const__2c_20btVector3_20const__29($4 + 524 | 0 | 0, HEAP32[($4 + 648 | 0) >> 2] | 0 | 0, $5 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($4 + 644 | 0) >> 2] | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29($4 + 656 | 0 | 0) | 0 | 0) | 0;
|
|
btSphereShape__btSphereShape_28float_29($4 + 464 | 0 | 0, Math_fround(Math_fround(btCollisionObject__getCcdSweptSphereRadius_28_29_20const(HEAP32[($4 + 648 | 0) >> 2] | 0 | 0)))) | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[((btRigidBody__getBroadphaseProxy_28_29(HEAP32[($4 + 648 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 532 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = HEAP32[((btRigidBody__getBroadphaseProxy_28_29(HEAP32[($4 + 648 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 536 | 0) >> 2] = wasm2js_i32$1;
|
|
btTransform__btTransform_28btTransform_20const__29($4 + 400 | 0 | 0, $4 + 656 | 0 | 0) | 0;
|
|
btTransform__setBasis_28btMatrix3x3_20const__29($4 + 400 | 0 | 0, btTransform__getBasis_28_29_20const(HEAP32[($4 + 644 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btCollisionWorld__convexSweepTest_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29_20const($5 | 0, $4 + 464 | 0 | 0, HEAP32[($4 + 644 | 0) >> 2] | 0 | 0, $4 + 400 | 0 | 0, $4 + 524 | 0 | 0, Math_fround(Math_fround(0 | 0)));
|
|
label$7 : {
|
|
if (!((btCollisionWorld__ConvexResultCallback__hasHit_28_29_20const($4 + 524 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($4 + 368 | 0 | 0, btTransform__getOrigin_28_29($4 + 656 | 0 | 0) | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($4 + 644 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($4 + 384 | 0 | 0, $4 + 368 | 0 | 0, ($4 + 524 | 0) + 4 | 0 | 0);
|
|
operator__28btVector3_20const__29($4 + 348 | 0 | 0, ($4 + 524 | 0) + 52 | 0 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($4 + 384 | 0 | 0, $4 + 348 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 364 | 0) >> 2] = wasm2js_f32$0;
|
|
$177 = HEAP32[($5 + 24 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = FUNCTION_TABLE[HEAP32[((HEAP32[$177 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($177, HEAP32[($4 + 648 | 0) >> 2] | 0, HEAP32[($4 + 540 | 0) >> 2] | 0) | 0), HEAP32[(wasm2js_i32$0 + 344 | 0) >> 2] = wasm2js_i32$1;
|
|
btMutexLock_28btSpinMutex__29($5 + 340 | 0 | 0);
|
|
btAlignedObjectArray_btPersistentManifold____push_back_28btPersistentManifold__20const__29($5 + 320 | 0 | 0, $4 + 344 | 0 | 0);
|
|
btMutexUnlock_28btSpinMutex__29($5 + 340 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($4 + 328 | 0 | 0, btTransform__getOrigin_28_29_20const(HEAP32[($4 + 644 | 0) >> 2] | 0 | 0) | 0 | 0, $4 + 384 | 0 | 0);
|
|
btTransform__inverse_28_29_20const($4 + 248 | 0 | 0, btCollisionObject__getWorldTransform_28_29_20const(HEAP32[($4 + 540 | 0) >> 2] | 0 | 0) | 0 | 0);
|
|
btTransform__operator__28btVector3_20const__29_20const($4 + 312 | 0 | 0, $4 + 248 | 0 | 0, $4 + 328 | 0 | 0);
|
|
HEAPF32[($4 + 20 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 16 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($4 + 12 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($4 + 24 | 0 | 0, $4 + 20 | 0 | 0, $4 + 16 | 0 | 0, $4 + 12 | 0 | 0) | 0;
|
|
btManifoldPoint__btManifoldPoint_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_29($4 + 40 | 0 | 0, $4 + 24 | 0 | 0, $4 + 312 | 0 | 0, ($4 + 524 | 0) + 52 | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 364 | 0) >> 2]))) | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btRigidBody__getCollisionShape_28_29(HEAP32[($4 + 648 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 240 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($4 + 244 | 0) >> 2] = HEAP32[($4 + 608 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btPersistentManifold__addManifoldPoint_28btManifoldPoint_20const__2c_20bool_29(HEAP32[($4 + 344 | 0) >> 2] | 0 | 0, $4 + 40 | 0 | 0, 1 & 1 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = btPersistentManifold__getContactPoint_28int_29(HEAP32[($4 + 344 | 0) >> 2] | 0 | 0, HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAPF32[((HEAP32[($4 + 4 | 0) >> 2] | 0) + 96 | 0) >> 2] = Math_fround(0 | 0);
|
|
$266 = Math_fround(btManifoldResult__calculateCombinedFriction_28btCollisionObject_20const__2c_20btCollisionObject_20const__29(HEAP32[($4 + 648 | 0) >> 2] | 0 | 0, HEAP32[($4 + 540 | 0) >> 2] | 0 | 0));
|
|
HEAPF32[((HEAP32[($4 + 4 | 0) >> 2] | 0) + 84 | 0) >> 2] = $266;
|
|
$269 = btTransform__getOrigin_28_29_20const(HEAP32[($4 + 644 | 0) >> 2] | 0 | 0) | 0;
|
|
$272 = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 48 | 0;
|
|
i64toi32_i32$2 = $269;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$856 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $272;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $856;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$274 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $274 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$866 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $272 + $274 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $866;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$280 = (HEAP32[($4 + 4 | 0) >> 2] | 0) + 32 | 0;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = HEAP32[($4 + 328 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($4 + 332 | 0) >> 2] | 0;
|
|
$875 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $280;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $875;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$282 = 8;
|
|
i64toi32_i32$2 = ($4 + 328 | 0) + $282 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$888 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $280 + $282 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $888;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
btSphereShape___btSphereShape_28_29($4 + 464 | 0 | 0) | 0;
|
|
cc__ccNotMeClosestConvexResultCallback___ccNotMeClosestConvexResultCallback_28_29($4 + 524 | 0 | 0) | 0;
|
|
}
|
|
CProfileSample___CProfileSample_28_29($4 + 623 | 0 | 0) | 0;
|
|
}
|
|
}
|
|
HEAP32[($4 + 652 | 0) >> 2] = (HEAP32[($4 + 652 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
}
|
|
CProfileSample___CProfileSample_28_29($4 + 727 | 0 | 0) | 0;
|
|
__stack_pointer = $4 + 736 | 0;
|
|
return;
|
|
}
|
|
|
|
function cc__ccNotMeClosestConvexResultCallback__ccNotMeClosestConvexResultCallback_28btCollisionObject__2c_20cc__ccDiscreteDynamicsWorld__2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, $8 = 0;
|
|
$7 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($7 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
btCollisionWorld__ClosestConvexResultCallback__ClosestConvexResultCallback_28btVector3_20const__2c_20btVector3_20const__29($8 | 0, HEAP32[($7 + 16 | 0) >> 2] | 0 | 0, HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$8 >> 2] = 103840 + 8 | 0;
|
|
HEAP32[($8 + 84 | 0) >> 2] = 0;
|
|
HEAP32[($8 + 88 | 0) >> 2] = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($8 + 92 | 0) >> 2] = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
__stack_pointer = $7 + 32 | 0;
|
|
return $8 | 0;
|
|
}
|
|
|
|
function btRigidBody__getBroadphaseProxy_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 188 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function cc__ccNotMeClosestConvexResultCallback___ccNotMeClosestConvexResultCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__ClosestConvexResultCallback___ClosestConvexResultCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function cc__ccDiscreteDynamicsWorld___ccDiscreteDynamicsWorld_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
cc__ccOverlapFilterCallback___ccOverlapFilterCallback_28_29($4 + 344 | 0 | 0) | 0;
|
|
btDiscreteDynamicsWorld___btDiscreteDynamicsWorld_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function cc__ccOverlapFilterCallback___ccOverlapFilterCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btOverlapFilterCallback___btOverlapFilterCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function cc__ccDiscreteDynamicsWorld___ccDiscreteDynamicsWorld_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
cc__ccDiscreteDynamicsWorld___ccDiscreteDynamicsWorld_28_29($4 | 0) | 0;
|
|
cc__ccDiscreteDynamicsWorld__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function cc__ccDiscreteDynamicsWorld__operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__getWorldType_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return 2 | 0;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__setNumTasks_28int_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return;
|
|
}
|
|
|
|
function btDiscreteDynamicsWorld__updateVehicles_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
btDiscreteDynamicsWorld__updateActions_28float_29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 8 | 0) >> 2])));
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btOverlapFilterCallback___btOverlapFilterCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function cc__ccOverlapFilterCallback___ccOverlapFilterCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
cc__ccOverlapFilterCallback___ccOverlapFilterCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function cc__ccOverlapFilterCallback__needBroadphaseCollision_28btBroadphaseProxy__2c_20btBroadphaseProxy__29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $21 = 0, $76 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 16 | 0) >> 2] = $2;
|
|
HEAP8[($5 + 15 | 0) >> 0] = ((HEAP32[((HEAP32[($5 + 20 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) & (HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) | 0 | 0) != (0 | 0) & 1 | 0;
|
|
$21 = 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($5 + 15 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$21 = ((HEAP32[((HEAP32[($5 + 16 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) & (HEAP32[((HEAP32[($5 + 20 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0) | 0 | 0) != (0 | 0);
|
|
}
|
|
HEAP8[($5 + 15 | 0) >> 0] = $21 & 1 | 0;
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!((HEAPU8[($5 + 15 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($5 + 8 | 0) >> 2] = HEAP32[(HEAP32[($5 + 20 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = HEAP32[(HEAP32[($5 + 16 | 0) >> 2] | 0) >> 2] | 0;
|
|
label$4 : {
|
|
if (!((btCollisionObject__isStaticObject_28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
if (!((btCollisionObject__isStaticObject_28_29_20const(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP8[($5 + 31 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$2;
|
|
}
|
|
label$5 : {
|
|
if (!((btCollisionObject__getActivationState_28_29_20const(HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) == (2 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
if (!((btCollisionObject__getActivationState_28_29_20const(HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) | 0 | 0) == (2 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAP8[($5 + 31 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$2;
|
|
}
|
|
}
|
|
HEAP8[($5 + 31 | 0) >> 0] = (HEAPU8[($5 + 15 | 0) >> 0] | 0) & 1 | 0;
|
|
}
|
|
$76 = (HEAPU8[($5 + 31 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return $76 | 0;
|
|
}
|
|
|
|
function btOverlapFilterCallback___btOverlapFilterCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btGhostPairCallback___btGhostPairCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btOverlappingPairCallback___btOverlappingPairCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btGhostPairCallback___btGhostPairCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btGhostPairCallback___btGhostPairCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGhostPairCallback__addOverlappingPair_28btBroadphaseProxy__2c_20btBroadphaseProxy__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $21 = 0, $33 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($5 + 16 | 0) >> 2] = HEAP32[(HEAP32[($5 + 24 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[(HEAP32[($5 + 20 | 0) >> 2] | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btGhostObject__upcast_28btCollisionObject__29(HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btGhostObject__upcast_28btCollisionObject__29(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$21 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$21 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($21, HEAP32[($5 + 20 | 0) >> 2] | 0, HEAP32[($5 + 24 | 0) >> 2] | 0);
|
|
}
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$33 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$33 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($33, HEAP32[($5 + 24 | 0) >> 2] | 0, HEAP32[($5 + 20 | 0) >> 2] | 0);
|
|
}
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return 0 | 0;
|
|
}
|
|
|
|
function btGhostObject__upcast_28btCollisionObject__29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $14 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((btCollisionObject__getInternalType_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) == (4 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($3 + 12 | 0) >> 2] = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[($3 + 12 | 0) >> 2] = 0;
|
|
}
|
|
$14 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $14 | 0;
|
|
}
|
|
|
|
function btGhostPairCallback__removeOverlappingPair_28btBroadphaseProxy__2c_20btBroadphaseProxy__2c_20btDispatcher__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $22 = 0, $35 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[(HEAP32[($6 + 24 | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = HEAP32[(HEAP32[($6 + 20 | 0) >> 2] | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btGhostObject__upcast_28btCollisionObject__29(HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btGhostObject__upcast_28btCollisionObject__29(HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
if (!((HEAP32[($6 + 4 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$22 = HEAP32[($6 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$22 >> 2] | 0) + 32 | 0) >> 2] | 0 | 0]($22, HEAP32[($6 + 20 | 0) >> 2] | 0, HEAP32[($6 + 16 | 0) >> 2] | 0, HEAP32[($6 + 24 | 0) >> 2] | 0);
|
|
}
|
|
label$2 : {
|
|
if (!((HEAP32[$6 >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$35 = HEAP32[$6 >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$35 >> 2] | 0) + 32 | 0) >> 2] | 0 | 0]($35, HEAP32[($6 + 24 | 0) >> 2] | 0, HEAP32[($6 + 16 | 0) >> 2] | 0, HEAP32[($6 + 20 | 0) >> 2] | 0);
|
|
}
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return 0 | 0;
|
|
}
|
|
|
|
function btGhostPairCallback__removeOverlappingPairsContainingProxy_28btBroadphaseProxy__2c_20btDispatcher__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $2;
|
|
__assert_fail(86177 | 0, 78520 | 0, 165 | 0, 65616 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function cc__ccNotMeClosestConvexResultCallback___ccNotMeClosestConvexResultCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
cc__ccNotMeClosestConvexResultCallback___ccNotMeClosestConvexResultCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function cc__ccNotMeClosestConvexResultCallback__needsCollision_28btBroadphaseProxy__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $5 = 0, $27 = 0, $43 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[(HEAP32[($4 + 4 | 0) >> 2] | 0) >> 2] | 0 | 0) == (HEAP32[($5 + 88 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP8[($4 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
if ((btCollisionWorld__ConvexResultCallback__needsCollision_28btBroadphaseProxy__29_20const($5 | 0, HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
HEAP8[($4 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP32[$4 >> 2] = HEAP32[(HEAP32[($4 + 4 | 0) >> 2] | 0) >> 2] | 0;
|
|
$27 = btCollisionWorld__getDispatcher_28_29(HEAP32[($5 + 92 | 0) >> 2] | 0 | 0) | 0;
|
|
label$4 : {
|
|
if ((FUNCTION_TABLE[HEAP32[((HEAP32[$27 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($27, HEAP32[($5 + 88 | 0) >> 2] | 0, HEAP32[$4 >> 2] | 0) | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
HEAP8[($4 + 15 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP8[($4 + 15 | 0) >> 0] = 1 & 1 | 0;
|
|
}
|
|
$43 = (HEAPU8[($4 + 15 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $43 | 0;
|
|
}
|
|
|
|
function cc__ccNotMeClosestConvexResultCallback__addSingleResult_28btCollisionWorld__LocalConvexResult__2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $7 = 0, $15 = Math_fround(0);
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 7 | 0) >> 0] = $2;
|
|
$7 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 84 | 0) >> 2] = HEAP32[((HEAP32[((HEAP32[($5 + 8 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
$15 = Math_fround(btCollisionWorld__ClosestConvexResultCallback__addSingleResult_28btCollisionWorld__LocalConvexResult__2c_20bool_29($7 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0, (HEAPU8[($5 + 7 | 0) >> 0] | 0) & 1 | 0 | 0));
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return Math_fround($15);
|
|
}
|
|
|
|
function _GLOBAL__sub_I_ccDiscreteDynamicsWorld_cpp() {
|
|
__cxx_global_var_init_80();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_81() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(116176 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function cc__ccCompoundShape__updateChildTransform_28btCollisionShape__2c_20btTransform_20const__2c_20bool_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $8 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP8[($6 + 19 | 0) >> 0] = $3;
|
|
$8 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = (btAlignedObjectArray_btCompoundShapeChild___size_28_29_20const($8 + 20 | 0 | 0) | 0) - 1 | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
if (!((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) >= (0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$3 : {
|
|
if (!((HEAP32[((btAlignedObjectArray_btCompoundShapeChild___operator_5b_5d_28int_29($8 + 20 | 0 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) | 0) + 64 | 0) >> 2] | 0 | 0) == (HEAP32[($6 + 24 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
btCompoundShape__updateChildTransform_28int_2c_20btTransform_20const__2c_20bool_29($8 | 0, HEAP32[($6 + 12 | 0) >> 2] | 0 | 0, HEAP32[($6 + 20 | 0) >> 2] | 0 | 0, (HEAPU8[($6 + 19 | 0) >> 0] | 0) & 1 | 0 | 0);
|
|
break label$1;
|
|
}
|
|
HEAP32[($6 + 12 | 0) >> 2] = (HEAP32[($6 + 12 | 0) >> 2] | 0) + -1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_ccCompoundShape_cpp() {
|
|
__cxx_global_var_init_81();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_82() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(116180 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function btGhostObject__btGhostObject_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionObject__btCollisionObject_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 103920 + 8 | 0;
|
|
btAlignedObjectArray_btCollisionObject____btAlignedObjectArray_28_29($4 + 324 | 0 | 0) | 0;
|
|
HEAP32[($4 + 252 | 0) >> 2] = 4;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btGhostObject___btGhostObject_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $17 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
HEAP32[$4 >> 2] = 103920 + 8 | 0;
|
|
label$1 : {
|
|
if (!(btAlignedObjectArray_btCollisionObject____size_28_29_20const($4 + 324 | 0 | 0) | 0)) {
|
|
break label$1
|
|
}
|
|
__assert_fail(87492 | 0, 72085 | 0, 29 | 0, 68669 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
btAlignedObjectArray_btCollisionObject_____btAlignedObjectArray_28_29($4 + 324 | 0 | 0) | 0;
|
|
btCollisionObject___btCollisionObject_28_29($4 | 0) | 0;
|
|
$17 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $17 | 0;
|
|
}
|
|
|
|
function btGhostObject___btGhostObject_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[1192 | 0]($4) | 0;
|
|
btCollisionObject__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGhostObject__addOverlappingObjectInternal_28btBroadphaseProxy__2c_20btBroadphaseProxy__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($5 + 16 | 0) >> 2] = HEAP32[(HEAP32[($5 + 24 | 0) >> 2] | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(68684 | 0, 72085 | 0, 36 | 0, 77471 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btCollisionObject____findLinearSearch_28btCollisionObject__20const__29_20const($6 + 324 | 0 | 0, $5 + 16 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btCollisionObject____size_28_29_20const($6 + 324 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btAlignedObjectArray_btCollisionObject____push_back_28btCollisionObject__20const__29($6 + 324 | 0 | 0, $5 + 16 | 0 | 0);
|
|
}
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btGhostObject__removeOverlappingObjectInternal_28btBroadphaseProxy__2c_20btDispatcher__2c_20btBroadphaseProxy__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $44 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[(HEAP32[($6 + 24 | 0) >> 2] | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$1
|
|
}
|
|
__assert_fail(68684 | 0, 72085 | 0, 49 | 0, 77439 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btAlignedObjectArray_btCollisionObject____findLinearSearch_28btCollisionObject__20const__29_20const($7 + 324 | 0 | 0, $6 + 12 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
label$2 : {
|
|
if (!((HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btCollisionObject____size_28_29_20const($7 + 324 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$44 = HEAP32[(btAlignedObjectArray_btCollisionObject____operator_5b_5d_28int_29($7 + 324 | 0 | 0, (btAlignedObjectArray_btCollisionObject____size_28_29_20const($7 + 324 | 0 | 0) | 0) - 1 | 0 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btCollisionObject____operator_5b_5d_28int_29($7 + 324 | 0 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $44), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btCollisionObject____pop_back_28_29($7 + 324 | 0 | 0);
|
|
}
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPairCachingGhostObject__btPairCachingGhostObject_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $12 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btGhostObject__btGhostObject_28_29($4 | 0) | 0;
|
|
HEAP32[$4 >> 2] = 103964 + 8 | 0;
|
|
$12 = btHashedOverlappingPairCache__operator_20new_28unsigned_20long_2c_20void__29(72 | 0, btAlignedAllocInternal_28unsigned_20long_2c_20int_29(72 | 0, 16 | 0) | 0 | 0) | 0;
|
|
btHashedOverlappingPairCache__btHashedOverlappingPairCache_28_29($12 | 0) | 0;
|
|
HEAP32[($4 + 344 | 0) >> 2] = $12;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btPairCachingGhostObject___btPairCachingGhostObject_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0, $8 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 103964 + 8 | 0;
|
|
$8 = HEAP32[($4 + 344 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$8 >> 2] | 0) >> 2] | 0 | 0]($8) | 0;
|
|
btAlignedFreeInternal_28void__29(HEAP32[($4 + 344 | 0) >> 2] | 0 | 0);
|
|
btGhostObject___btGhostObject_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btPairCachingGhostObject___btPairCachingGhostObject_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[1193 | 0]($4) | 0;
|
|
btCollisionObject__operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPairCachingGhostObject__addOverlappingObjectInternal_28btBroadphaseProxy__2c_20btBroadphaseProxy__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, $6 = 0, $15 = 0, $62 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$5 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 20 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 28 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($5 + 20 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$15 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
$15 = btCollisionObject__getBroadphaseHandle_28_29($6 | 0) | 0;
|
|
}
|
|
HEAP32[($5 + 16 | 0) >> 2] = $15;
|
|
label$3 : {
|
|
if ((HEAP32[($5 + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
__assert_fail(65600 | 0, 72085 | 0, 73 | 0, 77471 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = HEAP32[(HEAP32[($5 + 24 | 0) >> 2] | 0) >> 2] | 0;
|
|
label$4 : {
|
|
if ((HEAP32[($5 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
__assert_fail(68684 | 0, 72085 | 0, 76 | 0, 77471 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_i32$1 = btAlignedObjectArray_btCollisionObject____findLinearSearch_28btCollisionObject__20const__29_20const($6 + 324 | 0 | 0, $5 + 12 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
label$5 : {
|
|
if (!((HEAP32[($5 + 8 | 0) >> 2] | 0 | 0) == (btAlignedObjectArray_btCollisionObject____size_28_29_20const($6 + 324 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
btAlignedObjectArray_btCollisionObject____push_back_28btCollisionObject__20const__29($6 + 324 | 0 | 0, $5 + 12 | 0 | 0);
|
|
$62 = HEAP32[($6 + 344 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$62 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($62, HEAP32[($5 + 16 | 0) >> 2] | 0, HEAP32[($5 + 24 | 0) >> 2] | 0) | 0;
|
|
}
|
|
__stack_pointer = $5 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btPairCachingGhostObject__removeOverlappingObjectInternal_28btBroadphaseProxy__2c_20btDispatcher__2c_20btBroadphaseProxy__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $18 = 0, $73 = 0, $66 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 12 | 0) >> 2] = HEAP32[(HEAP32[($6 + 24 | 0) >> 2] | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[($6 + 16 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$18 = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
$18 = btCollisionObject__getBroadphaseHandle_28_29($7 | 0) | 0;
|
|
}
|
|
HEAP32[($6 + 8 | 0) >> 2] = $18;
|
|
label$3 : {
|
|
if ((HEAP32[($6 + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
__assert_fail(65600 | 0, 72085 | 0, 89 | 0, 77439 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
label$4 : {
|
|
if ((HEAP32[($6 + 12 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
__assert_fail(68684 | 0, 72085 | 0, 91 | 0, 77439 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btAlignedObjectArray_btCollisionObject____findLinearSearch_28btCollisionObject__20const__29_20const($7 + 324 | 0 | 0, $6 + 12 | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
label$5 : {
|
|
if (!((HEAP32[($6 + 4 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btCollisionObject____size_28_29_20const($7 + 324 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
$66 = HEAP32[(btAlignedObjectArray_btCollisionObject____operator_5b_5d_28int_29($7 + 324 | 0 | 0, (btAlignedObjectArray_btCollisionObject____size_28_29_20const($7 + 324 | 0 | 0) | 0) - 1 | 0 | 0) | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = btAlignedObjectArray_btCollisionObject____operator_5b_5d_28int_29($7 + 324 | 0 | 0, HEAP32[($6 + 4 | 0) >> 2] | 0 | 0) | 0, wasm2js_i32$1 = $66), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
btAlignedObjectArray_btCollisionObject____pop_back_28_29($7 + 324 | 0 | 0);
|
|
$73 = HEAP32[($7 + 344 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$73 >> 2] | 0) + 12 | 0) >> 2] | 0 | 0]($73, HEAP32[($6 + 8 | 0) >> 2] | 0, HEAP32[($6 + 24 | 0) >> 2] | 0, HEAP32[($6 + 20 | 0) >> 2] | 0) | 0;
|
|
}
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btGhostObject_cpp() {
|
|
__cxx_global_var_init_82();
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_83() {
|
|
btInfMaskConverter__btInfMaskConverter_28int_29(116184 | 0, 2139095040 | 0) | 0;
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_var_init_1_1() {
|
|
var $2 = 0;
|
|
$2 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $2;
|
|
HEAP32[($2 + 12 | 0) >> 2] = 116192;
|
|
std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____basic_string_5babi_v160004_5d_std__nullptr_t__28char_20const__29(116192 | 0, 84159 | 0) | 0;
|
|
HEAP32[($2 + 12 | 0) >> 2] = 116192 + 12 | 0;
|
|
std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____basic_string_5babi_v160004_5d_std__nullptr_t__28char_20const__29(116192 + 12 | 0 | 0, 84426 | 0) | 0;
|
|
HEAP32[($2 + 12 | 0) >> 2] = 116192 + 24 | 0;
|
|
std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____basic_string_5babi_v160004_5d_std__nullptr_t__28char_20const__29(116192 + 24 | 0 | 0, 84257 | 0) | 0;
|
|
HEAP32[($2 + 12 | 0) >> 2] = 116192 + 36 | 0;
|
|
std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____basic_string_5babi_v160004_5d_std__nullptr_t__28char_20const__29(116192 + 36 | 0 | 0, 84028 | 0) | 0;
|
|
__cxa_atexit(1200 | 0, 0 | 0, 65536 | 0) | 0;
|
|
__stack_pointer = $2 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function __cxx_global_array_dtor_2($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $10 = 0, $7 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$7 = 116192 + 48 | 0;
|
|
label$1 : while (1) {
|
|
$10 = $7 + -12 | 0;
|
|
std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char_____basic_string_28_29($10 | 0) | 0;
|
|
$7 = $10;
|
|
if (!(($10 | 0) == (116192 | 0) & 1 | 0)) {
|
|
continue label$1
|
|
}
|
|
break label$1;
|
|
};
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCharacterController__logMovementChange_28_29($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
return;
|
|
}
|
|
|
|
function btCharacterController__move_28btVector3_20const__2c_20float_2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
var $7 = 0, $6 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $24 = 0, $26 = 0, $125 = 0, $135 = 0, $68 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 28 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 24 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 16 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 28 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($7))), HEAPF32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP8[($7 + 65 | 0) >> 0] = 0;
|
|
HEAPF32[($6 + 12 | 0) >> 2] = Math_fround(.009999999776482582);
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(HEAPF32[(float_20const__20btMax_float__28float_20const__2c_20float_20const__29($7 + 36 | 0 | 0, $6 + 12 | 0 | 0) | 0) >> 2])), HEAPF32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_f32$0;
|
|
$24 = $7 + 136 | 0;
|
|
i64toi32_i32$2 = btTransform__getOrigin_28_29(btCollisionObject__getWorldTransform_28_29(HEAP32[($7 + 4 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$125 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $24;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $125;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$26 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $26 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$135 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $24 + $26 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $135;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btCharacterController__moveCharacter_28btVector3_20const__2c_20float_2c_20float_29($7 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 20 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($6 + 16 | 0) >> 2]))) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
btCharacterController__logMovementChange_28_29($7 | 0);
|
|
label$1 : {
|
|
if (!((HEAPU8[($7 + 60 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP8[($7 + 61 | 0) >> 0] = 1;
|
|
btTransform__setOrigin_28btVector3_20const__29(btCollisionObject__getWorldTransform_28_29(HEAP32[($7 + 4 | 0) >> 2] | 0 | 0) | 0 | 0, $7 + 136 | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = btCharacterController__moveCharacter_28btVector3_20const__2c_20float_2c_20float_29($7 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 20 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($6 + 16 | 0) >> 2]))) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP8[($7 + 61 | 0) >> 0] = 0;
|
|
btCharacterController__logMovementChange_28_29($7 | 0);
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($7 + 65 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($7) | 0 | 0) == (1 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
if (!((HEAP32[($6 + 8 | 0) >> 2] | 0) & 4 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP8[($7 + 64 | 0) >> 0] = 1;
|
|
btCharacterController__moveCharacter_28btVector3_20const__2c_20float_2c_20float_29($7 | 0, HEAP32[($6 + 24 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 20 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($6 + 16 | 0) >> 2]))) | 0;
|
|
HEAP8[($7 + 64 | 0) >> 0] = 0;
|
|
btCharacterController__logMovementChange_28_29($7 | 0);
|
|
}
|
|
HEAP32[($7 + 132 | 0) >> 2] = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
$68 = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
__stack_pointer = $6 + 32 | 0;
|
|
return $68 | 0;
|
|
}
|
|
|
|
function btCharacterController__moveCharacter_28btVector3_20const__2c_20float_2c_20float_29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = Math_fround($3);
|
|
var $6 = 0, $7 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $76 = 0, $85 = 0, $94 = 0, $107 = 0, $462 = 0, $466 = 0, $482 = 0, $486 = 0, $502 = 0, $506 = 0, $295 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 208 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 200 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 196 | 0) >> 2] = $1;
|
|
HEAPF32[($6 + 192 | 0) >> 2] = $2;
|
|
HEAPF32[($6 + 188 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 200 | 0) >> 2] | 0;
|
|
HEAP8[($6 + 187 | 0) >> 0] = 0;
|
|
HEAP8[($7 + 60 | 0) >> 0] = 0;
|
|
HEAP32[($6 + 180 | 0) >> 2] = 0;
|
|
HEAP32[($6 + 176 | 0) >> 2] = 10;
|
|
HEAP32[($6 + 172 | 0) >> 2] = 10;
|
|
HEAP32[($6 + 168 | 0) >> 2] = 10;
|
|
HEAP32[($6 + 164 | 0) >> 2] = 1;
|
|
HEAP32[($6 + 160 | 0) >> 2] = $7 + 40 | 0;
|
|
HEAPF32[($6 + 140 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 136 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 132 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 144 | 0 | 0, $6 + 140 | 0 | 0, $6 + 136 | 0 | 0, $6 + 132 | 0 | 0) | 0;
|
|
HEAPF32[($6 + 108 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 104 | 0) >> 2] = Math_fround(0 | 0);
|
|
HEAPF32[($6 + 100 | 0) >> 2] = Math_fround(0 | 0);
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($6 + 112 | 0 | 0, $6 + 108 | 0 | 0, $6 + 104 | 0 | 0, $6 + 100 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 84 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($6 + 68 | 0 | 0) | 0;
|
|
decomposeVector_28btVector3__2c_20btVector3__2c_20btVector3_20const__2c_20btVector3_20const__29($6 + 84 | 0 | 0, $6 + 68 | 0 | 0, HEAP32[($6 + 196 | 0) >> 2] | 0 | 0, HEAP32[($6 + 160 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($6 + 196 | 0) >> 2] | 0 | 0, HEAP32[($6 + 160 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 64 | 0) >> 2] = wasm2js_f32$0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(Math_fround(HEAPF32[($6 + 64 | 0) >> 2]) <= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
$76 = 8;
|
|
i64toi32_i32$2 = ($6 + 84 | 0) + $76 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$462 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 112 | 0) + $76 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $462;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 84 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 88 | 0) >> 2] | 0;
|
|
$466 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 112 | 0) >> 2] = $466;
|
|
HEAP32[($6 + 116 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$1;
|
|
}
|
|
$85 = 8;
|
|
i64toi32_i32$2 = ($6 + 84 | 0) + $85 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$482 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 144 | 0) + $85 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $482;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 84 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 88 | 0) >> 2] | 0;
|
|
$486 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 144 | 0) >> 2] = $486;
|
|
HEAP32[($6 + 148 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
$94 = 8;
|
|
i64toi32_i32$2 = ($6 + 68 | 0) + $94 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$502 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($6 + 48 | 0) + $94 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $502;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$1 = HEAP32[($6 + 68 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($6 + 72 | 0) >> 2] | 0;
|
|
$506 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $6;
|
|
HEAP32[($6 + 48 | 0) >> 2] = $506;
|
|
HEAP32[($6 + 52 | 0) >> 2] = i64toi32_i32$0;
|
|
$107 = 0;
|
|
label$3 : {
|
|
if ((HEAPU8[($6 + 187 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
$107 = btVector3__fuzzyZero_28_29_20const($6 + 48 | 0 | 0) | 0;
|
|
}
|
|
HEAP8[($6 + 47 | 0) >> 0] = $107 & 1 | 0;
|
|
label$4 : {
|
|
label$5 : {
|
|
if ((HEAPU8[($6 + 47 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$5
|
|
}
|
|
HEAP8[($7 + 65 | 0) >> 0] = 1;
|
|
break label$4;
|
|
}
|
|
HEAP8[($7 + 65 | 0) >> 0] = 0;
|
|
}
|
|
label$6 : {
|
|
if ((HEAPU8[($7 + 61 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$6
|
|
}
|
|
if ((HEAPU8[($7 + 64 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$6
|
|
}
|
|
label$7 : {
|
|
if ((HEAPU8[($6 + 47 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$7
|
|
}
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 28 | 0 | 0, HEAP32[($6 + 160 | 0) >> 2] | 0 | 0, $7 + 32 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($6 + 144 | 0 | 0, $6 + 28 | 0 | 0) | 0;
|
|
}
|
|
label$8 : {
|
|
if ((btVector3__fuzzyZero_28_29_20const($6 + 144 | 0 | 0) | 0) & 1 | 0) {
|
|
break label$8
|
|
}
|
|
}
|
|
HEAP8[($7 + 108 | 0) >> 0] = 0;
|
|
label$9 : {
|
|
if (!((btCharacterController__doSweepTest_28btVector3_20const__2c_20float_2c_20SweepPass_2c_20int_29($7 | 0, $6 + 144 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 192 | 0) >> 2])), 0 | 0, 10 | 0) | 0) & 1 | 0)) {
|
|
break label$9
|
|
}
|
|
HEAP32[($6 + 180 | 0) >> 2] = HEAP32[($6 + 180 | 0) >> 2] | 0 | 2 | 0;
|
|
}
|
|
}
|
|
label$10 : {
|
|
if ((HEAPU8[($7 + 64 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$10
|
|
}
|
|
label$11 : {
|
|
if ((HEAPU8[($7 + 61 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$11
|
|
}
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($7) | 0 | 0) == (1 | 0) & 1 | 0)) {
|
|
break label$11
|
|
}
|
|
HEAP8[($7 + 108 | 0) >> 0] = 1;
|
|
}
|
|
label$12 : {
|
|
if (!((btCharacterController__doSweepTest_28btVector3_20const__2c_20float_2c_20SweepPass_2c_20int_29($7 | 0, $6 + 48 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 192 | 0) >> 2])), 1 | 0, 10 | 0) | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
HEAP32[($6 + 180 | 0) >> 2] = HEAP32[($6 + 180 | 0) >> 2] | 0 | 1 | 0;
|
|
}
|
|
label$13 : {
|
|
if ((HEAPU8[($7 + 61 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$13
|
|
}
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($7) | 0 | 0) == (1 | 0) & 1 | 0)) {
|
|
break label$13
|
|
}
|
|
HEAP8[($7 + 108 | 0) >> 0] = 0;
|
|
}
|
|
}
|
|
label$14 : {
|
|
if ((HEAPU8[($6 + 47 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$14
|
|
}
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 12 | 0 | 0, HEAP32[($6 + 160 | 0) >> 2] | 0 | 0, $7 + 32 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29($6 + 112 | 0 | 0, $6 + 12 | 0 | 0) | 0;
|
|
}
|
|
label$15 : {
|
|
if ((HEAPU8[($7 + 61 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$15
|
|
}
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($7) | 0 | 0) == (1 | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
HEAP8[($7 + 108 | 0) >> 0] = 1;
|
|
}
|
|
label$16 : {
|
|
label$17 : {
|
|
if ((HEAPU8[($7 + 64 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$17
|
|
}
|
|
if ((HEAPU8[($7 + 65 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$16
|
|
}
|
|
}
|
|
HEAP8[($7 + 108 | 0) >> 0] = 0;
|
|
}
|
|
label$18 : {
|
|
label$19 : {
|
|
if (!((btCharacterController__doSweepTest_28btVector3_20const__2c_20float_2c_20SweepPass_2c_20int_29($7 | 0, $6 + 112 | 0 | 0, Math_fround(Math_fround(HEAPF32[($6 + 192 | 0) >> 2])), 2 | 0, 1 | 0) | 0) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
HEAP32[($6 + 180 | 0) >> 2] = HEAP32[($6 + 180 | 0) >> 2] | 0 | 4 | 0;
|
|
label$20 : {
|
|
if ((HEAPU8[($7 + 64 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$20
|
|
}
|
|
label$21 : {
|
|
if (!((testSlope_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($7 + 72 | 0 | 0, $7 + 40 | 0 | 0, Math_fround(Math_fround(btCos_28float_29(Math_fround(Math_fround(HEAPF32[($7 + 28 | 0) >> 2])))))) | 0) & 1 | 0)) {
|
|
break label$21
|
|
}
|
|
HEAP8[($7 + 60 | 0) >> 0] = 1;
|
|
label$22 : {
|
|
if ((HEAPU8[($7 + 61 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$22
|
|
}
|
|
label$23 : {
|
|
if ((HEAPU8[($7 + 64 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$23
|
|
}
|
|
if ((HEAPU8[($7 + 61 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$23
|
|
}
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($7) | 0 | 0) == (1 | 0) & 1 | 0)) {
|
|
break label$23
|
|
}
|
|
HEAP8[($7 + 108 | 0) >> 0] = 0;
|
|
}
|
|
HEAP32[($6 + 204 | 0) >> 2] = HEAP32[($6 + 180 | 0) >> 2] | 0;
|
|
break label$18;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
label$24 : {
|
|
if ((HEAPU8[($7 + 61 | 0) >> 0] | 0) & 1 | 0) {
|
|
break label$24
|
|
}
|
|
if (!((FUNCTION_TABLE[HEAP32[((HEAP32[$7 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($7) | 0 | 0) == (1 | 0) & 1 | 0)) {
|
|
break label$24
|
|
}
|
|
HEAP8[($7 + 108 | 0) >> 0] = 0;
|
|
}
|
|
HEAP32[($6 + 204 | 0) >> 2] = HEAP32[($6 + 180 | 0) >> 2] | 0;
|
|
}
|
|
$295 = HEAP32[($6 + 204 | 0) >> 2] | 0;
|
|
__stack_pointer = $6 + 208 | 0;
|
|
return $295 | 0;
|
|
}
|
|
|
|
function decomposeVector_28btVector3__2c_20btVector3__2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $17 = 0, $19 = 0, $30 = 0, $32 = 0, $7 = 0, $80 = 0, $93 = 0, $110 = 0, $123 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$6 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 60 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 56 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 52 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 48 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 48 | 0) >> 2] | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($6 + 52 | 0) >> 2] | 0 | 0, HEAP32[($6 + 48 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 28 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 32 | 0 | 0, $7 | 0, $6 + 28 | 0 | 0);
|
|
$17 = HEAP32[($6 + 60 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 32 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 36 | 0) >> 2] | 0;
|
|
$80 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $17;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $80;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$19 = 8;
|
|
i64toi32_i32$2 = ($6 + 32 | 0) + $19 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$93 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $17 + $19 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $93;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 12 | 0 | 0, HEAP32[($6 + 52 | 0) >> 2] | 0 | 0, HEAP32[($6 + 60 | 0) >> 2] | 0 | 0);
|
|
$30 = HEAP32[($6 + 56 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $6;
|
|
i64toi32_i32$0 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
$110 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $30;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $110;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$32 = 8;
|
|
i64toi32_i32$2 = ($6 + 12 | 0) + $32 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$123 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $30 + $32 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $123;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $6 + 64 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCharacterController__doSweepTest_28btVector3_20const__2c_20float_2c_20SweepPass_2c_20int_29($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $7 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $8 = 0, $20 = 0, $21 = 0, $28 = 0, $41 = 0, $98 = 0, $133 = 0, $135 = 0, $146 = 0, $148 = 0, $156 = 0, $158 = 0, $172 = 0, $205 = 0, $207 = 0, $218 = 0, $220 = 0, $228 = 0, $230 = 0, $237 = 0, $305 = 0, $307 = 0, $317 = 0, $319 = 0, $352 = 0, $354 = 0, $444 = 0, $448 = 0, $464 = 0, $468 = 0, $607 = 0, $611 = 0, $668 = 0, $678 = 0, $693 = 0, $703 = 0, $714 = 0, $727 = 0, $817 = 0, $827 = 0, $842 = 0, $852 = 0, $863 = 0, $876 = 0, $1025 = 0, $1035 = 0, $1049 = 0, $1059 = 0, $1121 = 0, $1134 = 0, $388 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0), wasm2js_i32$1 = 0;
|
|
$7 = __stack_pointer - 336 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 328 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 324 | 0) >> 2] = $1;
|
|
HEAPF32[($7 + 320 | 0) >> 2] = $2;
|
|
HEAP32[($7 + 316 | 0) >> 2] = $3;
|
|
HEAP32[($7 + 312 | 0) >> 2] = $4;
|
|
$8 = HEAP32[($7 + 328 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((btVector3__fuzzyZero_28_29_20const(HEAP32[($7 + 324 | 0) >> 2] | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP8[($7 + 335 | 0) >> 0] = 0 & 1 | 0;
|
|
break label$1;
|
|
}
|
|
HEAP8[($7 + 311 | 0) >> 0] = 0;
|
|
HEAP8[($7 + 310 | 0) >> 0] = 0;
|
|
$20 = btTransform__getOrigin_28_29(btCollisionObject__getWorldTransform_28_29(HEAP32[($8 + 4 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
$21 = 8;
|
|
i64toi32_i32$2 = $20 + $21 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$444 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($7 + 288 | 0) + $21 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $444;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $20;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$448 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $7;
|
|
HEAP32[($7 + 288 | 0) >> 2] = $448;
|
|
HEAP32[($7 + 292 | 0) >> 2] = i64toi32_i32$0;
|
|
$28 = 8;
|
|
i64toi32_i32$2 = ($7 + 288 | 0) + $28 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$464 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($7 + 272 | 0) + $28 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $464;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$1 = HEAP32[($7 + 288 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($7 + 292 | 0) >> 2] | 0;
|
|
$468 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $7;
|
|
HEAP32[($7 + 272 | 0) >> 2] = $468;
|
|
HEAP32[($7 + 276 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__operator___28btVector3_20const__29_1($7 + 272 | 0 | 0, HEAP32[($7 + 324 | 0) >> 2] | 0 | 0) | 0;
|
|
label$3 : {
|
|
label$4 : while (1) {
|
|
$41 = HEAP32[($7 + 312 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 312 | 0) >> 2] = $41 + -1 | 0;
|
|
if (!$41) {
|
|
break label$3
|
|
}
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($7 + 256 | 0 | 0, $7 + 272 | 0 | 0, $7 + 288 | 0 | 0);
|
|
(wasm2js_i32$0 = $7, wasm2js_f32$0 = Math_fround(btVector3__length_28_29_20const($7 + 256 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 252 | 0) >> 2] = wasm2js_f32$0;
|
|
label$5 : {
|
|
if (!(Math_fround(HEAPF32[($7 + 252 | 0) >> 2]) <= Math_fround(HEAPF32[($7 + 320 | 0) >> 2]) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
break label$3;
|
|
}
|
|
btVector3__operator___28float_20const__29($7 + 256 | 0 | 0, $7 + 252 | 0 | 0) | 0;
|
|
label$6 : {
|
|
if (!(Math_fround(btVector3__dot_28btVector3_20const__29_20const($7 + 256 | 0 | 0, HEAP32[($7 + 324 | 0) >> 2] | 0 | 0)) <= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
break label$3;
|
|
}
|
|
HEAP8[($7 + 311 | 0) >> 0] = 1;
|
|
btSweptContact__btSweptContact_28_29($7 + 208 | 0 | 0) | 0;
|
|
HEAPF32[($7 + 240 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($7 + 252 | 0) >> 2]) + Math_fround(HEAPF32[($8 + 36 | 0) >> 2]));
|
|
label$7 : {
|
|
if ((btCharacterController__collideGeoms_28btVector3_20const__2c_20btVector3_20const__2c_20btSweptContact__29($8 | 0, $7 + 288 | 0 | 0, $7 + 272 | 0 | 0, $7 + 208 | 0 | 0) | 0) & 1 | 0) {
|
|
break label$7
|
|
}
|
|
HEAP8[($7 + 310 | 0) >> 0] = 0;
|
|
$98 = 8;
|
|
i64toi32_i32$2 = ($7 + 272 | 0) + $98 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$607 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($7 + 288 | 0) + $98 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $607;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$1 = HEAP32[($7 + 272 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($7 + 276 | 0) >> 2] | 0;
|
|
$611 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $7;
|
|
HEAP32[($7 + 288 | 0) >> 2] = $611;
|
|
HEAP32[($7 + 292 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$3;
|
|
}
|
|
HEAP8[($7 + 310 | 0) >> 0] = 1;
|
|
label$8 : {
|
|
if (!((HEAP32[($8 + 20 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
label$9 : {
|
|
label$10 : {
|
|
if (!((btCollisionObject__getInternalType_28_29_20const(HEAP32[($7 + 244 | 0) >> 2] | 0 | 0) | 0) & 2 | 0)) {
|
|
break label$10
|
|
}
|
|
btControllerShapeHit__btControllerShapeHit_28_29($7 + 144 | 0 | 0) | 0;
|
|
HEAP32[($7 + 144 | 0) >> 2] = $8;
|
|
HEAP32[($7 + 200 | 0) >> 2] = HEAP32[($7 + 248 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 204 | 0) >> 2] = HEAP32[($7 + 244 | 0) >> 2] | 0;
|
|
$133 = ($7 + 144 | 0) + 20 | 0;
|
|
i64toi32_i32$2 = ($7 + 208 | 0) + 16 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$668 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $133;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $668;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$135 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $135 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$678 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $133 + $135 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $678;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$146 = ($7 + 144 | 0) + 4 | 0;
|
|
i64toi32_i32$2 = $7 + 208 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$693 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $146;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $693;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$148 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $148 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$703 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $146 + $148 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $703;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$156 = ($7 + 144 | 0) + 36 | 0;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$0 = HEAP32[($7 + 256 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($7 + 260 | 0) >> 2] | 0;
|
|
$714 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $156;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $714;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$158 = 8;
|
|
i64toi32_i32$2 = ($7 + 256 | 0) + $158 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$727 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $156 + $158 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $727;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($7 + 196 | 0) >> 2] = Math_fround(HEAPF32[($7 + 252 | 0) >> 2]);
|
|
label$11 : {
|
|
label$12 : {
|
|
if (!((HEAP32[($7 + 248 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$12
|
|
}
|
|
$172 = HEAP32[($8 + 20 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[(HEAP32[$172 >> 2] | 0) >> 2] | 0 | 0]($172, $7 + 144 | 0);
|
|
break label$11;
|
|
}
|
|
}
|
|
break label$9;
|
|
}
|
|
label$13 : {
|
|
if (!((btCollisionObject__getInternalType_28_29_20const(HEAP32[($7 + 244 | 0) >> 2] | 0 | 0) | 0) & 4 | 0)) {
|
|
break label$13
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btCollisionObject__getUserPointer_28_29_20const(HEAP32[($7 + 244 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 140 | 0) >> 2] = wasm2js_i32$1;
|
|
label$14 : {
|
|
if (!((HEAP32[($7 + 140 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$14
|
|
}
|
|
HEAP32[($7 + 136 | 0) >> 2] = HEAP32[($7 + 140 | 0) >> 2] | 0;
|
|
btControllersHit__btControllersHit_28_29($7 + 76 | 0 | 0) | 0;
|
|
HEAP32[($7 + 76 | 0) >> 2] = $8;
|
|
HEAP32[($7 + 132 | 0) >> 2] = HEAP32[($7 + 136 | 0) >> 2] | 0;
|
|
$205 = ($7 + 76 | 0) + 20 | 0;
|
|
i64toi32_i32$2 = ($7 + 208 | 0) + 16 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$817 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $205;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $817;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$207 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $207 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$827 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $205 + $207 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $827;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$218 = ($7 + 76 | 0) + 4 | 0;
|
|
i64toi32_i32$2 = $7 + 208 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$842 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $218;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $842;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$220 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $220 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$852 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $218 + $220 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $852;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$228 = ($7 + 76 | 0) + 36 | 0;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$0 = HEAP32[($7 + 256 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($7 + 260 | 0) >> 2] | 0;
|
|
$863 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $228;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $863;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$230 = 8;
|
|
i64toi32_i32$2 = ($7 + 256 | 0) + $230 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$876 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $228 + $230 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $876;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAPF32[($7 + 128 | 0) >> 2] = Math_fround(HEAPF32[($7 + 252 | 0) >> 2]);
|
|
$237 = HEAP32[($8 + 20 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$237 >> 2] | 0) + 4 | 0) >> 2] | 0 | 0]($237, $7 + 76 | 0);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
label$15 : {
|
|
if (!((HEAPU8[($8 + 63 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
if (!(Math_fround(HEAPF32[($7 + 240 | 0) >> 2]) == Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$15
|
|
}
|
|
(wasm2js_i32$0 = $7, wasm2js_i32$1 = btTransform__getOrigin_28_29(btCollisionObject__getWorldTransform_28_29(HEAP32[($8 + 4 | 0) >> 2] | 0 | 0) | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 72 | 0) >> 2] = wasm2js_i32$1;
|
|
HEAP32[($7 + 68 | 0) >> 2] = 0;
|
|
label$16 : {
|
|
label$17 : while (1) {
|
|
if (!((HEAP32[($7 + 68 | 0) >> 2] | 0 | 0) < (4 | 0) & 1 | 0)) {
|
|
break label$16
|
|
}
|
|
btCharacterController__recoverFromPenetration_28_29($8 | 0) | 0;
|
|
HEAP32[($7 + 68 | 0) >> 2] = (HEAP32[($7 + 68 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$17;
|
|
};
|
|
}
|
|
HEAP8[($7 + 335 | 0) >> 0] = (HEAPU8[($7 + 310 | 0) >> 0] | 0) & 1 | 0;
|
|
break label$1;
|
|
}
|
|
label$18 : {
|
|
if (!(Math_fround(Math_fround(HEAPF32[($7 + 240 | 0) >> 2]) - Math_fround(HEAPF32[($8 + 36 | 0) >> 2])) > Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$18
|
|
}
|
|
HEAPF32[($7 + 48 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($7 + 240 | 0) >> 2]) - Math_fround(HEAPF32[($8 + 36 | 0) >> 2]));
|
|
operator__28btVector3_20const__2c_20float_20const__29($7 + 52 | 0 | 0, $7 + 256 | 0 | 0, $7 + 48 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1($7 + 288 | 0 | 0, $7 + 52 | 0 | 0) | 0;
|
|
}
|
|
(wasm2js_i32$0 = $8, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const($7 + 208 | 0 | 0, $8 + 40 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 68 | 0) >> 2] = wasm2js_f32$0;
|
|
$305 = $8 + 88 | 0;
|
|
i64toi32_i32$2 = $7 + 208 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1025 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $305;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1025;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$307 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $307 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1035 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $305 + $307 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1035;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$317 = $8 + 72 | 0;
|
|
i64toi32_i32$2 = ($7 + 208 | 0) + 16 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1049 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $317;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1049;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$319 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $319 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1059 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $317 + $319 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1059;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
label$19 : {
|
|
if (!((HEAPU8[($8 + 61 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$19
|
|
}
|
|
btVector3__btVector3_28_29($7 + 32 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($7 + 16 | 0 | 0) | 0;
|
|
decomposeVector_28btVector3__2c_20btVector3__2c_20btVector3_20const__2c_20btVector3_20const__29($7 + 32 | 0 | 0, $7 + 16 | 0 | 0, $8 + 72 | 0 | 0, $8 + 40 | 0 | 0);
|
|
label$20 : {
|
|
if (!((btVector3__fuzzyZero_28_29_20const($7 + 16 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$20
|
|
}
|
|
HEAP8[($7 + 335 | 0) >> 0] = (HEAPU8[($7 + 310 | 0) >> 0] | 0) & 1 | 0;
|
|
break label$1;
|
|
}
|
|
$352 = $8 + 72 | 0;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$0 = HEAP32[($7 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
$1121 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $352;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1121;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$354 = 8;
|
|
i64toi32_i32$2 = ($7 + 16 | 0) + $354 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$1134 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $352 + $354 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $1134;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
btVector3__normalize_28_29($8 + 72 | 0 | 0) | 0;
|
|
}
|
|
HEAPF32[($7 + 12 | 0) >> 2] = Math_fround(1.0);
|
|
btCharacterController__collisionResponse_28btVector3_20const__2c_20btVector3__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20bool_29($8 | 0, $7 + 288 | 0 | 0, $7 + 272 | 0 | 0, $7 + 256 | 0 | 0, $8 + 72 | 0 | 0, Math_fround(Math_fround(1.0)), 0 & 1 | 0 | 0);
|
|
continue label$4;
|
|
};
|
|
}
|
|
btTransform__setOrigin_28btVector3_20const__29(btCollisionObject__getWorldTransform_28_29(HEAP32[($8 + 4 | 0) >> 2] | 0 | 0) | 0 | 0, $7 + 288 | 0 | 0);
|
|
HEAP8[($7 + 335 | 0) >> 0] = (HEAPU8[($7 + 310 | 0) >> 0] | 0) & 1 | 0;
|
|
}
|
|
$388 = (HEAPU8[($7 + 335 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $7 + 336 | 0;
|
|
return $388 | 0;
|
|
}
|
|
|
|
function testSlope_28btVector3_20const__2c_20btVector3_20const__2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $16 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($5 + 12 | 0) >> 2] | 0 | 0, HEAP32[($5 + 8 | 0) >> 2] | 0 | 0))), HEAPF32[wasm2js_i32$0 >> 2] = wasm2js_f32$0;
|
|
$16 = 0;
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[$5 >> 2]) >= Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$16 = Math_fround(HEAPF32[$5 >> 2]) < Math_fround(HEAPF32[($5 + 4 | 0) >> 2]);
|
|
}
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return $16 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btSweptContact__btSweptContact_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($4 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 16 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCharacterController__collideGeoms_28btVector3_20const__2c_20btVector3_20const__2c_20btSweptContact__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $7 = 0, $91 = 0, $93 = 0, $104 = 0, $106 = 0, $21 = 0, $22 = 0, $326 = 0, $336 = 0, $352 = 0, $362 = 0, $122 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$6 = __stack_pointer - 304 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 300 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 296 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 292 | 0) >> 2] = $2;
|
|
HEAP32[($6 + 288 | 0) >> 2] = $3;
|
|
$7 = HEAP32[($6 + 300 | 0) >> 2] | 0;
|
|
HEAP8[($6 + 287 | 0) >> 0] = 0;
|
|
HEAP32[($6 + 280 | 0) >> 2] = HEAP32[($7 + 8 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAPU8[($7 + 108 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($6 + 280 | 0) >> 2] = HEAP32[($7 + 104 | 0) >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
}
|
|
HEAPF32[($6 + 276 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($6 + 288 | 0) >> 2] | 0) + 32 | 0) >> 2]);
|
|
btTransform__btTransform_28btQuaternion_20const__2c_20btVector3_20const__29($6 + 212 | 0 | 0, btQuaternion__getIdentity_28_29() | 0 | 0, HEAP32[($6 + 296 | 0) >> 2] | 0 | 0) | 0;
|
|
$21 = btQuaternion__getIdentity_28_29() | 0;
|
|
$22 = HEAP32[($6 + 296 | 0) >> 2] | 0;
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($6 + 100 | 0 | 0, HEAP32[($6 + 292 | 0) >> 2] | 0 | 0, HEAP32[($6 + 296 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($6 + 116 | 0 | 0, btVector3__normalize_28_29($6 + 100 | 0 | 0) | 0 | 0, $6 + 276 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29_2($6 + 132 | 0 | 0, $22 | 0, $6 + 116 | 0 | 0);
|
|
btTransform__btTransform_28btQuaternion_20const__2c_20btVector3_20const__29($6 + 148 | 0 | 0, $21 | 0, $6 + 132 | 0 | 0) | 0;
|
|
btKinematicClosestNotMeConvexResultCallback__btKinematicClosestNotMeConvexResultCallback_28btVector3_20const__2c_20btVector3_20const__2c_20btCollisionObject__29($6 + 8 | 0 | 0, HEAP32[($6 + 296 | 0) >> 2] | 0 | 0, HEAP32[($6 + 292 | 0) >> 2] | 0 | 0, HEAP32[($7 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = HEAP32[((btCollisionObject__getBroadphaseHandle_28_29(HEAP32[($7 + 4 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 16 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $6, wasm2js_i32$1 = HEAP32[((btCollisionObject__getBroadphaseHandle_28_29(HEAP32[($7 + 4 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 20 | 0) >> 2] = wasm2js_i32$1;
|
|
btCollisionWorld__convexSweepTest_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29_20const(HEAP32[($7 + 12 | 0) >> 2] | 0 | 0, HEAP32[($6 + 280 | 0) >> 2] | 0 | 0, $6 + 212 | 0 | 0, $6 + 148 | 0 | 0, $6 + 8 | 0 | 0, Math_fround(Math_fround(HEAPF32[((btCollisionWorld__getDispatchInfo_28_29(HEAP32[($7 + 12 | 0) >> 2] | 0 | 0) | 0) + 28 | 0) >> 2])));
|
|
label$3 : {
|
|
if (!((btCollisionWorld__ConvexResultCallback__hasHit_28_29_20const($6 + 8 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP8[($6 + 287 | 0) >> 0] = 1;
|
|
HEAPF32[($6 + 4 | 0) >> 2] = Math_fround(Math_fround(HEAPF32[($6 + 276 | 0) >> 2]) * Math_fround(HEAPF32[($6 + 12 | 0) >> 2]));
|
|
$91 = HEAP32[($6 + 288 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = ($6 + 8 | 0) + 68 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$326 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $91;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $326;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$93 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $93 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$336 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $91 + $93 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $336;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$104 = (HEAP32[($6 + 288 | 0) >> 2] | 0) + 16 | 0;
|
|
i64toi32_i32$2 = ($6 + 8 | 0) + 52 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$352 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $104;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $352;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$106 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $106 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$362 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $104 + $106 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $362;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
label$4 : {
|
|
if (!((btVector3__fuzzyZero_28_29_20const((HEAP32[($6 + 288 | 0) >> 2] | 0) + 16 | 0 | 0) | 0) & 1 | 0)) {
|
|
break label$4
|
|
}
|
|
}
|
|
HEAPF32[((HEAP32[($6 + 288 | 0) >> 2] | 0) + 32 | 0) >> 2] = Math_fround(HEAPF32[($6 + 4 | 0) >> 2]);
|
|
HEAP32[((HEAP32[($6 + 288 | 0) >> 2] | 0) + 36 | 0) >> 2] = HEAP32[($6 + 24 | 0) >> 2] | 0;
|
|
HEAP32[((HEAP32[($6 + 288 | 0) >> 2] | 0) + 40 | 0) >> 2] = HEAP32[($6 + 92 | 0) >> 2] | 0;
|
|
}
|
|
$122 = HEAPU8[($6 + 287 | 0) >> 0] | 0;
|
|
btKinematicClosestNotMeConvexResultCallback___btKinematicClosestNotMeConvexResultCallback_28_29($6 + 8 | 0 | 0) | 0;
|
|
__stack_pointer = $6 + 304 | 0;
|
|
return $122 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btControllerShapeHit__btControllerShapeHit_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btControllerHit__btControllerHit_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCollisionObject__getUserPointer_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 256 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btControllersHit__btControllersHit_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btControllerHit__btControllerHit_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCharacterController__recoverFromPenetration_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0, $15 = 0, $27 = 0, $41 = 0, $56 = 0, $74 = 0, $100 = 0, $54 = 0, $180 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0, wasm2js_i32$5 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$3 = __stack_pointer - 144 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 140 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 140 | 0) >> 2] | 0;
|
|
HEAP8[($3 + 139 | 0) >> 0] = 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = btTransform__getOrigin_28_29(btCollisionObject__getWorldTransform_28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 132 | 0) >> 2] = wasm2js_i32$1;
|
|
btVector3__btVector3_28_29($3 + 116 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($3 + 100 | 0 | 0) | 0;
|
|
$15 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
((((wasm2js_i32$1 = $15, wasm2js_i32$2 = btCollisionObject__getWorldTransform_28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$3 = $3 + 116 | 0), wasm2js_i32$4 = $3 + 100 | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$15 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, wasm2js_i32$3 | 0, wasm2js_i32$4 | 0);
|
|
$27 = btCollisionWorld__getBroadphase_28_29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
(((((wasm2js_i32$4 = $27, wasm2js_i32$3 = btCollisionObject__getBroadphaseHandle_28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$2 = $3 + 116 | 0), wasm2js_i32$1 = $3 + 100 | 0), wasm2js_i32$5 = btCollisionWorld__getDispatcher_28_29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$27 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$4 | 0, wasm2js_i32$3 | 0, wasm2js_i32$2 | 0, wasm2js_i32$1 | 0, wasm2js_i32$5 | 0);
|
|
$41 = btCollisionWorld__getDispatcher_28_29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
((((wasm2js_i32$5 = $41, wasm2js_i32$1 = btPairCachingGhostObject__getOverlappingPairCache_28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$2 = btCollisionWorld__getDispatchInfo_28_29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$3 = btCollisionWorld__getDispatcher_28_29(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0), wasm2js_i32$0 = HEAP32[((HEAP32[$41 >> 2] | 0) + 32 | 0) >> 2] | 0 | 0), FUNCTION_TABLE[wasm2js_i32$0](wasm2js_i32$5 | 0, wasm2js_i32$1 | 0, wasm2js_i32$2 | 0, wasm2js_i32$3 | 0);
|
|
btAlignedObjectArray_btPersistentManifold____btAlignedObjectArray_28_29($3 + 80 | 0 | 0) | 0;
|
|
HEAP32[($3 + 76 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
$54 = HEAP32[($3 + 76 | 0) >> 2] | 0;
|
|
$56 = btPairCachingGhostObject__getOverlappingPairCache_28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
if (!(($54 | 0) < (FUNCTION_TABLE[HEAP32[((HEAP32[$56 >> 2] | 0) + 36 | 0) >> 2] | 0 | 0]($56) | 0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($3 + 72 | 0) >> 2] = 0;
|
|
btAlignedObjectArray_btPersistentManifold____resize_28int_2c_20btPersistentManifold__20const__29($3 + 80 | 0 | 0, 0 | 0, $3 + 72 | 0 | 0);
|
|
$74 = btPairCachingGhostObject__getOverlappingPairCache_28_29(HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$3 = btAlignedObjectArray_btBroadphasePair___operator_5b_5d_28int_29(FUNCTION_TABLE[HEAP32[((HEAP32[$74 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($74) | 0 | 0, HEAP32[($3 + 76 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 68 | 0) >> 2] = wasm2js_i32$3;
|
|
HEAP32[($3 + 64 | 0) >> 2] = HEAP32[(HEAP32[(HEAP32[($3 + 68 | 0) >> 2] | 0) >> 2] | 0) >> 2] | 0;
|
|
HEAP32[($3 + 60 | 0) >> 2] = HEAP32[(HEAP32[((HEAP32[($3 + 68 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) >> 2] | 0;
|
|
label$3 : {
|
|
label$4 : {
|
|
if ((needsCollision_28btCollisionObject_20const__2c_20btCollisionObject_20const__29(HEAP32[($3 + 64 | 0) >> 2] | 0 | 0, HEAP32[($3 + 60 | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
break label$3;
|
|
}
|
|
label$5 : {
|
|
if (!((HEAP32[((HEAP32[($3 + 68 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
$100 = HEAP32[((HEAP32[($3 + 68 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$100 >> 2] | 0) + 16 | 0) >> 2] | 0 | 0]($100, $3 + 80 | 0);
|
|
}
|
|
HEAP32[($3 + 56 | 0) >> 2] = 0;
|
|
label$6 : {
|
|
label$7 : while (1) {
|
|
if (!((HEAP32[($3 + 56 | 0) >> 2] | 0 | 0) < (btAlignedObjectArray_btPersistentManifold____size_28_29_20const($3 + 80 | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$6
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$3 = HEAP32[(btAlignedObjectArray_btPersistentManifold____operator_5b_5d_28int_29($3 + 80 | 0 | 0, HEAP32[($3 + 56 | 0) >> 2] | 0 | 0) | 0) >> 2] | 0), HEAP32[(wasm2js_i32$0 + 52 | 0) >> 2] = wasm2js_i32$3;
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = (btPersistentManifold__getBody0_28_29_20const(HEAP32[($3 + 52 | 0) >> 2] | 0 | 0) | 0 | 0) == (HEAP32[($4 + 4 | 0) >> 2] | 0 | 0) & 1 | 0 ? Math_fround(-1.0) : Math_fround(1.0)), HEAPF32[(wasm2js_i32$0 + 48 | 0) >> 2] = wasm2js_f32$0;
|
|
HEAP32[($3 + 44 | 0) >> 2] = 0;
|
|
label$8 : {
|
|
label$9 : while (1) {
|
|
if (!((HEAP32[($3 + 44 | 0) >> 2] | 0 | 0) < (btPersistentManifold__getNumContacts_28_29_20const(HEAP32[($3 + 52 | 0) >> 2] | 0 | 0) | 0 | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$3 = btPersistentManifold__getContactPoint_28int_29(HEAP32[($3 + 52 | 0) >> 2] | 0 | 0, HEAP32[($3 + 44 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 40 | 0) >> 2] = wasm2js_i32$3;
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(btManifoldPoint__getDistance_28_29_20const(HEAP32[($3 + 40 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 36 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($3 + 4 | 0 | 0, (HEAP32[($3 + 40 | 0) >> 2] | 0) + 64 | 0 | 0, $3 + 48 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($3 + 20 | 0 | 0, $3 + 4 | 0 | 0, $3 + 36 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1(HEAP32[($3 + 132 | 0) >> 2] | 0 | 0, $3 + 20 | 0 | 0) | 0;
|
|
HEAP8[($3 + 139 | 0) >> 0] = 1;
|
|
HEAP32[($3 + 44 | 0) >> 2] = (HEAP32[($3 + 44 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$9;
|
|
};
|
|
}
|
|
HEAP32[($3 + 56 | 0) >> 2] = (HEAP32[($3 + 56 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$7;
|
|
};
|
|
}
|
|
}
|
|
HEAP32[($3 + 76 | 0) >> 2] = (HEAP32[($3 + 76 | 0) >> 2] | 0) + 1 | 0;
|
|
continue label$2;
|
|
};
|
|
}
|
|
$180 = HEAPU8[($3 + 139 | 0) >> 0] | 0;
|
|
btAlignedObjectArray_btPersistentManifold_____btAlignedObjectArray_28_29($3 + 80 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 144 | 0;
|
|
return $180 & 1 | 0 | 0;
|
|
}
|
|
|
|
function btCharacterController__collisionResponse_28btVector3_20const__2c_20btVector3__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20bool_29($0, $1, $2, $3, $4, $5, $6) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = Math_fround($5);
|
|
$6 = $6 | 0;
|
|
var $9 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $48 = 0, $50 = 0, $185 = 0, $195 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$9 = __stack_pointer - 128 | 0;
|
|
__stack_pointer = $9;
|
|
HEAP32[($9 + 124 | 0) >> 2] = $0;
|
|
HEAP32[($9 + 120 | 0) >> 2] = $1;
|
|
HEAP32[($9 + 116 | 0) >> 2] = $2;
|
|
HEAP32[($9 + 112 | 0) >> 2] = $3;
|
|
HEAP32[($9 + 108 | 0) >> 2] = $4;
|
|
HEAPF32[($9 + 104 | 0) >> 2] = $5;
|
|
HEAP8[($9 + 103 | 0) >> 0] = $6;
|
|
btVector3__btVector3_28_29($9 + 84 | 0 | 0) | 0;
|
|
computeReflexionVector_28btVector3__2c_20btVector3_20const__2c_20btVector3_20const__29($9 + 84 | 0 | 0, HEAP32[($9 + 112 | 0) >> 2] | 0 | 0, HEAP32[($9 + 108 | 0) >> 2] | 0 | 0);
|
|
btVector3__normalize_28_29($9 + 84 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($9 + 68 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($9 + 52 | 0 | 0) | 0;
|
|
decomposeVector_28btVector3__2c_20btVector3__2c_20btVector3_20const__2c_20btVector3_20const__29($9 + 68 | 0 | 0, $9 + 52 | 0 | 0, $9 + 84 | 0 | 0, HEAP32[($9 + 108 | 0) >> 2] | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($9 + 32 | 0 | 0, HEAP32[($9 + 116 | 0) >> 2] | 0 | 0, HEAP32[($9 + 120 | 0) >> 2] | 0 | 0);
|
|
(wasm2js_i32$0 = $9, wasm2js_f32$0 = Math_fround(btVector3__length_28_29_20const($9 + 32 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 48 | 0) >> 2] = wasm2js_f32$0;
|
|
$48 = HEAP32[($9 + 116 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($9 + 120 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$185 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $48;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $185;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$50 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $50 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$195 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $48 + $50 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $195;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
label$1 : {
|
|
if (!(Math_fround(HEAPF32[($9 + 104 | 0) >> 2]) != Math_fround(0 | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (!((HEAPU8[($9 + 103 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btVector3__normalize_28_29($9 + 52 | 0 | 0) | 0;
|
|
}
|
|
operator__28btVector3_20const__2c_20float_20const__29($9 | 0, $9 + 52 | 0 | 0, $9 + 104 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($9 + 16 | 0 | 0, $9 | 0, $9 + 48 | 0 | 0);
|
|
btVector3__operator___28btVector3_20const__29_1(HEAP32[($9 + 116 | 0) >> 2] | 0 | 0, $9 + 16 | 0 | 0) | 0;
|
|
}
|
|
__stack_pointer = $9 + 128 | 0;
|
|
return;
|
|
}
|
|
|
|
function btKinematicClosestNotMeConvexResultCallback__btKinematicClosestNotMeConvexResultCallback_28btVector3_20const__2c_20btVector3_20const__2c_20btCollisionObject__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__ClosestConvexResultCallback__ClosestConvexResultCallback_28btVector3_20const__2c_20btVector3_20const__29($7 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0, HEAP32[($6 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
HEAP32[$7 >> 2] = 104320 + 8 | 0;
|
|
HEAP32[($7 + 84 | 0) >> 2] = 0;
|
|
HEAP32[($7 + 88 | 0) >> 2] = HEAP32[$6 >> 2] | 0;
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btKinematicClosestNotMeConvexResultCallback___btKinematicClosestNotMeConvexResultCallback_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCollisionWorld__ClosestConvexResultCallback___ClosestConvexResultCallback_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btControllerHit__btControllerHit_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($4 + 4 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 20 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($4 + 36 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btPairCachingGhostObject__getOverlappingPairCache_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 344 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function needsCollision_28btCollisionObject_20const__2c_20btCollisionObject_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $22 = 0, $39 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = ((HEAP32[((btCollisionObject__getBroadphaseHandle_28_29_20const(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2] | 0) & (HEAP32[((btCollisionObject__getBroadphaseHandle_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2] | 0) | 0 | 0) != (0 | 0) & 1 | 0), HEAP8[(wasm2js_i32$0 + 7 | 0) >> 0] = wasm2js_i32$1;
|
|
$22 = 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($4 + 7 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$22 = ((HEAP32[((btCollisionObject__getBroadphaseHandle_28_29_20const(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) | 0) + 4 | 0) >> 2] | 0) & (HEAP32[((btCollisionObject__getBroadphaseHandle_28_29_20const(HEAP32[($4 + 12 | 0) >> 2] | 0 | 0) | 0) + 8 | 0) >> 2] | 0) | 0 | 0) != (0 | 0);
|
|
}
|
|
HEAP8[($4 + 7 | 0) >> 0] = $22 & 1 | 0;
|
|
$39 = (HEAPU8[($4 + 7 | 0) >> 0] | 0) & 1 | 0;
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return $39 | 0;
|
|
}
|
|
|
|
function computeReflexionVector_28btVector3__2c_20btVector3_20const__2c_20btVector3_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$2 = 0, $33 = 0, $35 = 0, $6 = 0, $7 = 0, $111 = 0, $124 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 76 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 72 | 0) >> 2] = $1;
|
|
HEAP32[($5 + 68 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 72 | 0) >> 2] | 0;
|
|
$7 = HEAP32[($5 + 68 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 16 | 0) >> 2] = Math_fround(2.0);
|
|
operator__28btVector3_20const__2c_20float_20const__29($5 + 20 | 0 | 0, $7 | 0, $5 + 16 | 0 | 0);
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btVector3__dot_28btVector3_20const__29_20const(HEAP32[($5 + 72 | 0) >> 2] | 0 | 0, HEAP32[($5 + 68 | 0) >> 2] | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_f32$0;
|
|
operator__28btVector3_20const__2c_20float_20const__29($5 + 36 | 0 | 0, $5 + 20 | 0 | 0, $5 + 12 | 0 | 0);
|
|
operator__28btVector3_20const__2c_20btVector3_20const__29($5 + 52 | 0 | 0, $6 | 0, $5 + 36 | 0 | 0);
|
|
$33 = HEAP32[($5 + 76 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$0 = HEAP32[($5 + 52 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($5 + 56 | 0) >> 2] | 0;
|
|
$111 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $33;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $111;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$35 = 8;
|
|
i64toi32_i32$2 = ($5 + 52 | 0) + $35 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$124 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $33 + $35 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $124;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
__stack_pointer = $5 + 80 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCollisionObject__getBroadphaseHandle_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 188 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btCharacterController__btCharacterController_28btCollisionWorld__2c_20btCharacterControllerDesc__2c_20void__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $7 = 0, $6 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btActionInterface__btActionInterface_28_29($7 | 0) | 0;
|
|
HEAP32[$7 >> 2] = 104076 + 8 | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($7 + 8 | 0) >> 2] = 0;
|
|
HEAP32[($7 + 20 | 0) >> 2] = 0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = 0;
|
|
btVector3__btVector3_28_29($7 + 40 | 0 | 0) | 0;
|
|
HEAP8[($7 + 61 | 0) >> 0] = 0;
|
|
HEAP8[($7 + 62 | 0) >> 0] = 1;
|
|
HEAP8[($7 + 63 | 0) >> 0] = 1;
|
|
HEAP8[($7 + 64 | 0) >> 0] = 0;
|
|
HEAP8[($7 + 65 | 0) >> 0] = 0;
|
|
btVector3__btVector3_28_29($7 + 72 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($7 + 88 | 0 | 0) | 0;
|
|
HEAP32[($7 + 104 | 0) >> 2] = 0;
|
|
HEAP8[($7 + 108 | 0) >> 0] = 0;
|
|
btAlignedObjectArray_btPersistentManifold____btAlignedObjectArray_28_29($7 + 112 | 0 | 0) | 0;
|
|
btVector3__btVector3_28_29($7 + 136 | 0 | 0) | 0;
|
|
HEAP32[($7 + 12 | 0) >> 2] = HEAP32[($6 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 24 | 0) >> 2] = HEAP32[$6 >> 2] | 0;
|
|
HEAP32[($7 + 56 | 0) >> 2] = HEAP32[((HEAP32[($6 + 4 | 0) >> 2] | 0) + 44 | 0) >> 2] | 0;
|
|
btCharacterController__setUp_28btVector3_20const__29($7 | 0, (HEAP32[($6 + 4 | 0) >> 2] | 0) + 12 | 0 | 0);
|
|
btCharacterController__setStepHeight_28float_29($7 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($6 + 4 | 0) >> 2] | 0) + 4 | 0) >> 2])));
|
|
btCharacterController__setContactOffset_28float_29($7 | 0, Math_fround(Math_fround(HEAPF32[((HEAP32[($6 + 4 | 0) >> 2] | 0) + 8 | 0) >> 2])));
|
|
btCharacterController__setMaxSlope_28float_29($7 | 0, Math_fround(Math_fround(HEAPF32[(HEAP32[($6 + 4 | 0) >> 2] | 0) >> 2])));
|
|
HEAP32[($7 + 20 | 0) >> 2] = HEAP32[((HEAP32[($6 + 4 | 0) >> 2] | 0) + 48 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 132 | 0) >> 2] = 0;
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btActionInterface__btActionInterface_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 104404 + 8 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCharacterController__setUp_28btVector3_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $4 = 0, $8 = 0, $10 = 0, $32 = 0, $42 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
$8 = (HEAP32[($4 + 12 | 0) >> 2] | 0) + 40 | 0;
|
|
i64toi32_i32$2 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$32 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $8;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $32;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
$10 = 8;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + $10 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$42 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8 + $10 | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $42;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
}
|
|
|
|
function btCharacterController__setMaxSlope_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 28 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
return;
|
|
}
|
|
|
|
function btCharacterController___btCharacterController_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
HEAP32[$4 >> 2] = 104076 + 8 | 0;
|
|
btAlignedObjectArray_btPersistentManifold_____btAlignedObjectArray_28_29($4 + 112 | 0 | 0) | 0;
|
|
btActionInterface___btActionInterface_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btActionInterface___btActionInterface_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[($3 + 12 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btCharacterController___btCharacterController_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function btCharacterController__updateAction_28btCollisionWorld__2c_20float_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = Math_fround($2);
|
|
var $5 = 0, $6 = 0;
|
|
$5 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $1;
|
|
HEAPF32[($5 + 4 | 0) >> 2] = $2;
|
|
$6 = HEAP32[($5 + 12 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
if (!((HEAPU8[($6 + 62 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$5 >> 2] = 0;
|
|
label$2 : {
|
|
label$3 : while (1) {
|
|
if (!((HEAP32[$5 >> 2] | 0 | 0) < (4 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
btCharacterController__recoverFromPenetration_28_29($6 | 0) | 0;
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + 1 | 0;
|
|
continue label$3;
|
|
};
|
|
}
|
|
}
|
|
__stack_pointer = $5 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCharacterController__getPosition_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $7 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$7 = btTransform__getOrigin_28_29(btCollisionObject__getWorldTransform_28_29(HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0 | 0) | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btCapsuleCharacterController__btCapsuleCharacterController_28btCollisionWorld__2c_20btCapsuleCharacterControllerDesc__2c_20void__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $6 = 0, $7 = 0, $21 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btCharacterController__btCharacterController_28btCollisionWorld__2c_20btCharacterControllerDesc__2c_20void__29($7 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0, HEAP32[($6 + 4 | 0) >> 2] | 0 | 0, HEAP32[$6 >> 2] | 0 | 0) | 0;
|
|
HEAP32[$7 >> 2] = 104108 + 8 | 0;
|
|
HEAPF32[($7 + 152 | 0) >> 2] = Math_fround(.5);
|
|
HEAPF32[($7 + 156 | 0) >> 2] = Math_fround(1.0);
|
|
HEAPF32[($7 + 152 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($6 + 4 | 0) >> 2] | 0) + 52 | 0) >> 2]);
|
|
HEAPF32[($7 + 156 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($6 + 4 | 0) >> 2] | 0) + 56 | 0) >> 2]);
|
|
$21 = btCollisionObject__operator_20new_28unsigned_20long_29(348 | 0) | 0;
|
|
btPairCachingGhostObject__btPairCachingGhostObject_28_29($21 | 0) | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = $21;
|
|
btCollisionObject__setCollisionFlags_28int_29(HEAP32[($7 + 4 | 0) >> 2] | 0 | 0, 4 | 0);
|
|
btTransform__setOrigin_28btVector3_20const__29(btCollisionObject__getWorldTransform_28_29(HEAP32[($7 + 4 | 0) >> 2] | 0 | 0) | 0 | 0, (HEAP32[($6 + 4 | 0) >> 2] | 0) + 28 | 0 | 0);
|
|
btCollisionObject__setUserPointer_28void__29(HEAP32[($7 + 4 | 0) >> 2] | 0 | 0, $7 | 0);
|
|
btCapsuleCharacterController__ResetShape_28_29($7 | 0);
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btCollisionObject__setUserPointer_28void__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[((HEAP32[($4 + 12 | 0) >> 2] | 0) + 256 | 0) >> 2] = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
return;
|
|
}
|
|
|
|
function btCapsuleCharacterController__ResetShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0, $13 = 0, $24 = 0, $49 = 0, wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$3 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 28 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 28 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
$13 = btCapsuleShape__operator_20new_28unsigned_20long_29(64 | 0) | 0;
|
|
btCapsuleShape__btCapsuleShape_28float_2c_20float_29($13 | 0, Math_fround(Math_fround(HEAPF32[($4 + 152 | 0) >> 2])), Math_fround(Math_fround(HEAPF32[($4 + 156 | 0) >> 2]))) | 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $13;
|
|
break label$1;
|
|
}
|
|
btCapsuleShape__updateProp_28float_2c_20float_2c_20int_29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, Math_fround(Math_fround(HEAPF32[($4 + 152 | 0) >> 2])), Math_fround(Math_fround(+Math_fround(HEAPF32[($4 + 156 | 0) >> 2]) * .5)), 1 | 0);
|
|
}
|
|
$24 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$24 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($24, HEAP32[($4 + 8 | 0) >> 2] | 0);
|
|
(wasm2js_i32$0 = $3, wasm2js_f32$0 = Math_fround(FUNCTION_TABLE[HEAP32[((HEAP32[$4 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($4))), HEAPF32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_f32$0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 12 | 0 | 0, $4 + 152 | 0 | 0, $3 + 8 | 0 | 0, $4 + 152 | 0 | 0) | 0;
|
|
label$3 : {
|
|
label$4 : {
|
|
if ((HEAP32[($4 + 104 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$4
|
|
}
|
|
$49 = btBoxShape__operator_20new_28unsigned_20long_29(64 | 0) | 0;
|
|
btBoxShape__btBoxShape_28btVector3_20const__29($49 | 0, $3 + 12 | 0 | 0) | 0;
|
|
HEAP32[($4 + 104 | 0) >> 2] = $49;
|
|
break label$3;
|
|
}
|
|
btBoxShape__setUnscaledHalfExtents_28btVector3_20const__29(HEAP32[($4 + 104 | 0) >> 2] | 0 | 0, $3 + 12 | 0 | 0);
|
|
}
|
|
__stack_pointer = $3 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCapsuleCharacterController__getFullHalfHeight_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
return Math_fround(Math_fround(Math_fround(Math_fround(HEAPF32[($4 + 156 | 0) >> 2]) * Math_fround(.5)) + Math_fround(HEAPF32[($4 + 152 | 0) >> 2])));
|
|
}
|
|
|
|
function btCapsuleCharacterController__setRadius_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 152 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
btCapsuleCharacterController__ResetShape_28_29($5 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCapsuleCharacterController__setHeight_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 156 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
btCapsuleCharacterController__ResetShape_28_29($5 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBoxCharacterController__btBoxCharacterController_28btCollisionWorld__2c_20btBoxCharacterControllerDesc__2c_20void__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $7 = 0, $6 = 0, $24 = 0;
|
|
$6 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $6;
|
|
HEAP32[($6 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($6 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$6 >> 2] = $3;
|
|
$7 = HEAP32[($6 + 12 | 0) >> 2] | 0;
|
|
btCharacterController__btCharacterController_28btCollisionWorld__2c_20btCharacterControllerDesc__2c_20void__29($7 | 0, HEAP32[($6 + 8 | 0) >> 2] | 0 | 0, HEAP32[($6 + 4 | 0) >> 2] | 0 | 0, HEAP32[$6 >> 2] | 0 | 0) | 0;
|
|
HEAP32[$7 >> 2] = 104140 + 8 | 0;
|
|
HEAPF32[($7 + 152 | 0) >> 2] = Math_fround(.5);
|
|
HEAPF32[($7 + 156 | 0) >> 2] = Math_fround(.5);
|
|
HEAPF32[($7 + 160 | 0) >> 2] = Math_fround(.5);
|
|
HEAPF32[($7 + 156 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($6 + 4 | 0) >> 2] | 0) + 56 | 0) >> 2]);
|
|
HEAPF32[($7 + 152 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($6 + 4 | 0) >> 2] | 0) + 52 | 0) >> 2]);
|
|
HEAPF32[($7 + 160 | 0) >> 2] = Math_fround(HEAPF32[((HEAP32[($6 + 4 | 0) >> 2] | 0) + 60 | 0) >> 2]);
|
|
$24 = btCollisionObject__operator_20new_28unsigned_20long_29(348 | 0) | 0;
|
|
btPairCachingGhostObject__btPairCachingGhostObject_28_29($24 | 0) | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = $24;
|
|
btCollisionObject__setCollisionFlags_28int_29(HEAP32[($7 + 4 | 0) >> 2] | 0 | 0, 4 | 0);
|
|
btTransform__setOrigin_28btVector3_20const__29(btCollisionObject__getWorldTransform_28_29(HEAP32[($7 + 4 | 0) >> 2] | 0 | 0) | 0 | 0, (HEAP32[($6 + 4 | 0) >> 2] | 0) + 28 | 0 | 0);
|
|
btCollisionObject__setUserPointer_28void__29(HEAP32[($7 + 4 | 0) >> 2] | 0 | 0, $7 | 0);
|
|
btBoxCharacterController__ResetShape_28_29($7 | 0);
|
|
__stack_pointer = $6 + 16 | 0;
|
|
return $7 | 0;
|
|
}
|
|
|
|
function btBoxCharacterController__ResetShape_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $3 = 0, $22 = 0, $30 = 0;
|
|
$3 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 28 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 28 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28float_20const__2c_20float_20const__2c_20float_20const__29($3 + 12 | 0 | 0, $4 + 156 | 0 | 0, $4 + 152 | 0 | 0, $4 + 160 | 0 | 0) | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if ((HEAP32[($4 + 8 | 0) >> 2] | 0 | 0) != (0 | 0) & 1 | 0) {
|
|
break label$2
|
|
}
|
|
$22 = btBoxShape__operator_20new_28unsigned_20long_29(64 | 0) | 0;
|
|
btBoxShape__btBoxShape_28btVector3_20const__29($22 | 0, $3 + 12 | 0 | 0) | 0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $22;
|
|
break label$1;
|
|
}
|
|
btBoxShape__setUnscaledHalfExtents_28btVector3_20const__29(HEAP32[($4 + 8 | 0) >> 2] | 0 | 0, $3 + 12 | 0 | 0);
|
|
}
|
|
$30 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$30 >> 2] | 0) + 8 | 0) >> 2] | 0 | 0]($30, HEAP32[($4 + 8 | 0) >> 2] | 0);
|
|
__stack_pointer = $3 + 32 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBoxCharacterController__getFullHalfHeight_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $9 = Math_fround(0);
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
$9 = Math_fround(HEAPF32[(btVector3__y_28_29_20const(btBoxShape__getHalfExtentsWithoutMargin_28_29_20const(HEAP32[($3 + 8 | 0) >> 2] | 0 | 0) | 0 | 0) | 0) >> 2]);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return Math_fround($9);
|
|
}
|
|
|
|
function btBoxCharacterController__setHalfHeight_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 152 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
btBoxCharacterController__ResetShape_28_29($5 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBoxCharacterController__setHalfSideExtent_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 156 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
btBoxCharacterController__ResetShape_28_29($5 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBoxCharacterController__setHalfForwardExtent_28float_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $5 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAPF32[($4 + 8 | 0) >> 2] = $1;
|
|
$5 = HEAP32[($4 + 12 | 0) >> 2] | 0;
|
|
HEAPF32[($5 + 160 | 0) >> 2] = Math_fround(HEAPF32[($4 + 8 | 0) >> 2]);
|
|
btBoxCharacterController__ResetShape_28_29($5 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btCharacterController__debugDraw_28btIDebugDraw__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $4 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
return;
|
|
}
|
|
|
|
function btCharacterController__getType_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
return HEAP32[((HEAP32[($3 + 12 | 0) >> 2] | 0) + 56 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function btCapsuleCharacterController___btCapsuleCharacterController_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCharacterController___btCharacterController_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btCapsuleCharacterController___btCapsuleCharacterController_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCapsuleCharacterController___btCapsuleCharacterController_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btBoxCharacterController___btBoxCharacterController_28_29($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btCharacterController___btCharacterController_28_29($4 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function btBoxCharacterController___btBoxCharacterController_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btBoxCharacterController___btBoxCharacterController_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btKinematicClosestNotMeConvexResultCallback___btKinematicClosestNotMeConvexResultCallback_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
$4 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
btKinematicClosestNotMeConvexResultCallback___btKinematicClosestNotMeConvexResultCallback_28_29($4 | 0) | 0;
|
|
operator_20delete_28void__29($4 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
|
|
function btKinematicClosestNotMeConvexResultCallback__addSingleResult_28btCollisionWorld__LocalConvexResult__2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, $7 = 0, $34 = 0, $35 = 0, $50 = 0, $147 = 0, $151 = 0, $181 = 0, $185 = 0, $62 = Math_fround(0), wasm2js_i32$0 = 0, wasm2js_f32$0 = Math_fround(0);
|
|
$5 = __stack_pointer - 48 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 40 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 36 | 0) >> 2] = $1;
|
|
HEAP8[($5 + 35 | 0) >> 0] = $2;
|
|
$7 = HEAP32[($5 + 40 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!((HEAP32[(HEAP32[($5 + 36 | 0) >> 2] | 0) >> 2] | 0 | 0) == (HEAP32[($7 + 88 | 0) >> 2] | 0 | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAPF32[($5 + 44 | 0) >> 2] = Math_fround(1.0);
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
if ((btCollisionObject__hasContactResponse_28_29_20const(HEAP32[(HEAP32[($5 + 36 | 0) >> 2] | 0) >> 2] | 0 | 0) | 0) & 1 | 0) {
|
|
break label$3
|
|
}
|
|
HEAPF32[($5 + 44 | 0) >> 2] = Math_fround(1.0);
|
|
break label$1;
|
|
}
|
|
HEAP32[($7 + 84 | 0) >> 2] = HEAP32[((HEAP32[((HEAP32[($5 + 36 | 0) >> 2] | 0) + 4 | 0) >> 2] | 0) + 8 | 0) >> 2] | 0;
|
|
btVector3__btVector3_28_29($5 + 16 | 0 | 0) | 0;
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!((HEAPU8[($5 + 35 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$5
|
|
}
|
|
$34 = (HEAP32[($5 + 36 | 0) >> 2] | 0) + 8 | 0;
|
|
$35 = 8;
|
|
i64toi32_i32$2 = $34 + $35 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$147 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 16 | 0) + $35 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $147;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $34;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$151 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 16 | 0) >> 2] = $151;
|
|
HEAP32[($5 + 20 | 0) >> 2] = i64toi32_i32$0;
|
|
break label$4;
|
|
}
|
|
operator__28btMatrix3x3_20const__2c_20btVector3_20const__29($5 | 0, btTransform__getBasis_28_29_20const(btCollisionObject__getWorldTransform_28_29_20const(HEAP32[(HEAP32[($5 + 36 | 0) >> 2] | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0, (HEAP32[($5 + 36 | 0) >> 2] | 0) + 8 | 0 | 0);
|
|
$50 = 8;
|
|
i64toi32_i32$2 = $5 + $50 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$181 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = ($5 + 16 | 0) + $50 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $181;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = $5;
|
|
i64toi32_i32$1 = HEAP32[$5 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($5 + 4 | 0) >> 2] | 0;
|
|
$185 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $5;
|
|
HEAP32[($5 + 16 | 0) >> 2] = $185;
|
|
HEAP32[($5 + 20 | 0) >> 2] = i64toi32_i32$0;
|
|
}
|
|
(wasm2js_i32$0 = $5, wasm2js_f32$0 = Math_fround(btCollisionWorld__ClosestConvexResultCallback__addSingleResult_28btCollisionWorld__LocalConvexResult__2c_20bool_29($7 | 0, HEAP32[($5 + 36 | 0) >> 2] | 0 | 0, (HEAPU8[($5 + 35 | 0) >> 0] | 0) & 1 | 0 | 0))), HEAPF32[(wasm2js_i32$0 + 44 | 0) >> 2] = wasm2js_f32$0;
|
|
}
|
|
$62 = Math_fround(HEAPF32[($5 + 44 | 0) >> 2]);
|
|
__stack_pointer = $5 + 48 | 0;
|
|
return Math_fround($62);
|
|
}
|
|
|
|
function btActionInterface___btActionInterface_28_29_1($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[((__stack_pointer - 16 | 0) + 12 | 0) >> 2] = $0;
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function _GLOBAL__sub_I_btCharacterController_cpp() {
|
|
__cxx_global_var_init_83();
|
|
__cxx_global_var_init_1_1();
|
|
return;
|
|
}
|
|
|
|
function __getTypeName($0) {
|
|
$0 = $0 | 0;
|
|
return strdup(HEAP32[($0 + 4 | 0) >> 2] | 0 | 0) | 0 | 0;
|
|
}
|
|
|
|
function _embind_initialize_bindings() {
|
|
var $0 = 0;
|
|
label$1 : {
|
|
$0 = HEAP32[(0 + 116240 | 0) >> 2] | 0;
|
|
if (!$0) {
|
|
break label$1
|
|
}
|
|
label$2 : while (1) {
|
|
FUNCTION_TABLE[HEAP32[$0 >> 2] | 0 | 0]();
|
|
$0 = HEAP32[($0 + 4 | 0) >> 2] | 0;
|
|
if ($0) {
|
|
continue label$2
|
|
}
|
|
break label$2;
|
|
};
|
|
}
|
|
}
|
|
|
|
function _embind_register_bindings($0) {
|
|
$0 = $0 | 0;
|
|
HEAP32[($0 + 4 | 0) >> 2] = HEAP32[(0 + 116240 | 0) >> 2] | 0;
|
|
HEAP32[(0 + 116240 | 0) >> 2] = $0;
|
|
}
|
|
|
|
function embind_init_builtin_28_29() {
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0;
|
|
_embind_register_void(109656 | 0, 82765 | 0);
|
|
_embind_register_bool(109680 | 0, 77266 | 0, 1 | 0, 1 | 0, 0 | 0);
|
|
_embind_register_integer(109692 | 0, 71260 | 0, 1 | 0, -128 | 0, 127 | 0);
|
|
_embind_register_integer(109716 | 0, 71253 | 0, 1 | 0, -128 | 0, 127 | 0);
|
|
_embind_register_integer(109704 | 0, 71251 | 0, 1 | 0, 0 | 0, 255 | 0);
|
|
_embind_register_integer(109728 | 0, 67507 | 0, 2 | 0, -32768 | 0, 32767 | 0);
|
|
_embind_register_integer(109740 | 0, 67498 | 0, 2 | 0, 0 | 0, 65535 | 0);
|
|
_embind_register_integer(109752 | 0, 67790 | 0, 4 | 0, -2147483648 | 0, 2147483647 | 0);
|
|
_embind_register_integer(109764 | 0, 67781 | 0, 4 | 0, 0 | 0, -1 | 0);
|
|
_embind_register_integer(109776 | 0, 80490 | 0, 4 | 0, -2147483648 | 0, 2147483647 | 0);
|
|
_embind_register_integer(109788 | 0, 80481 | 0, 4 | 0, 0 | 0, -1 | 0);
|
|
i64toi32_i32$0 = -2147483648;
|
|
i64toi32_i32$1 = 2147483647;
|
|
legalfunc$_embind_register_bigint(109800 | 0, 68987 | 0, 8 | 0, 0 | 0, i64toi32_i32$0 | 0, -1 | 0, i64toi32_i32$1 | 0);
|
|
i64toi32_i32$1 = 0;
|
|
i64toi32_i32$0 = -1;
|
|
legalfunc$_embind_register_bigint(109812 | 0, 68986 | 0, 8 | 0, 0 | 0, i64toi32_i32$1 | 0, -1 | 0, i64toi32_i32$0 | 0);
|
|
_embind_register_float(109824 | 0, 68953 | 0, 4 | 0);
|
|
_embind_register_float(109836 | 0, 81899 | 0, 8 | 0);
|
|
_embind_register_std_string(111324 | 0, 80521 | 0);
|
|
_embind_register_std_string(104492 | 0, 85168 | 0);
|
|
_embind_register_std_wstring(104564 | 0, 4 | 0, 80495 | 0);
|
|
_embind_register_std_wstring(104640 | 0, 2 | 0, 80533 | 0);
|
|
_embind_register_std_wstring(104716 | 0, 4 | 0, 80548 | 0);
|
|
_embind_register_emval(110808 | 0, 77294 | 0);
|
|
_embind_register_memory_view(104756 | 0, 0 | 0, 85099 | 0);
|
|
_embind_register_memory_view(104796 | 0, 0 | 0, 85201 | 0);
|
|
_embind_register_memory_view(104836 | 0, 1 | 0, 85129 | 0);
|
|
_embind_register_memory_view(104876 | 0, 2 | 0, 84664 | 0);
|
|
_embind_register_memory_view(104916 | 0, 3 | 0, 84695 | 0);
|
|
_embind_register_memory_view(104956 | 0, 4 | 0, 84735 | 0);
|
|
_embind_register_memory_view(104996 | 0, 5 | 0, 84764 | 0);
|
|
_embind_register_memory_view(105036 | 0, 4 | 0, 85238 | 0);
|
|
_embind_register_memory_view(105076 | 0, 5 | 0, 85268 | 0);
|
|
_embind_register_memory_view(104796 | 0, 0 | 0, 84866 | 0);
|
|
_embind_register_memory_view(104836 | 0, 1 | 0, 84833 | 0);
|
|
_embind_register_memory_view(104876 | 0, 2 | 0, 84932 | 0);
|
|
_embind_register_memory_view(104916 | 0, 3 | 0, 84898 | 0);
|
|
_embind_register_memory_view(104956 | 0, 4 | 0, 85066 | 0);
|
|
_embind_register_memory_view(104996 | 0, 5 | 0, 85032 | 0);
|
|
_embind_register_memory_view(105116 | 0, 8 | 0, 84999 | 0);
|
|
_embind_register_memory_view(105156 | 0, 9 | 0, 84965 | 0);
|
|
_embind_register_memory_view(105196 | 0, 6 | 0, 84802 | 0);
|
|
_embind_register_memory_view(105236 | 0, 7 | 0, 85307 | 0);
|
|
}
|
|
|
|
function _GLOBAL__sub_I_bind_cpp() {
|
|
HEAP32[(0 + 116244 | 0) >> 2] = 1217;
|
|
HEAP32[(0 + 116248 | 0) >> 2] = 0;
|
|
embind_init_builtin_28_29();
|
|
HEAP32[(0 + 116248 | 0) >> 2] = HEAP32[(0 + 116240 | 0) >> 2] | 0;
|
|
HEAP32[(0 + 116240 | 0) >> 2] = 116244;
|
|
}
|
|
|
|
function __cxa_atexit($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
return 0 | 0;
|
|
}
|
|
|
|
function acosf($0) {
|
|
$0 = Math_fround($0);
|
|
var $3 = Math_fround(0), $2 = 0, $1 = 0, $4 = Math_fround(0);
|
|
label$1 : {
|
|
$1 = (wasm2js_scratch_store_f32($0), wasm2js_scratch_load_i32(2));
|
|
$2 = $1 & 2147483647 | 0;
|
|
if ($2 >>> 0 < 1065353216 >>> 0) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (($2 | 0) != (1065353216 | 0)) {
|
|
break label$2
|
|
}
|
|
return Math_fround(($1 | 0) > (-1 | 0) ? Math_fround(0.0) : Math_fround(3.141592502593994));
|
|
}
|
|
return Math_fround(Math_fround(Math_fround(0.0) / Math_fround($0 - $0)));
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if ($2 >>> 0 > 1056964607 >>> 0) {
|
|
break label$4
|
|
}
|
|
$3 = Math_fround(1.570796251296997);
|
|
if ($2 >>> 0 < 847249409 >>> 0) {
|
|
break label$3
|
|
}
|
|
return Math_fround(Math_fround(Math_fround(Math_fround(Math_fround(7.549789415861596e-08) - Math_fround($0 * Math_fround(R(Math_fround(Math_fround($0 * $0)))))) - $0) + Math_fround(1.570796251296997)));
|
|
}
|
|
label$5 : {
|
|
if (($1 | 0) > (-1 | 0)) {
|
|
break label$5
|
|
}
|
|
$0 = Math_fround(Math_fround($0 + Math_fround(1.0)) * Math_fround(.5));
|
|
$3 = Math_fround(sqrtf(Math_fround($0)));
|
|
$0 = Math_fround(Math_fround(1.570796251296997) - Math_fround($3 + Math_fround(Math_fround($3 * Math_fround(R(Math_fround($0)))) + Math_fround(-7.549789415861596e-08))));
|
|
return Math_fround(Math_fround($0 + $0));
|
|
}
|
|
$3 = Math_fround(Math_fround(Math_fround(1.0) - $0) * Math_fround(.5));
|
|
$4 = Math_fround(sqrtf(Math_fround($3)));
|
|
$0 = (wasm2js_scratch_store_i32(2, (wasm2js_scratch_store_f32($4), wasm2js_scratch_load_i32(2)) & -4096 | 0), wasm2js_scratch_load_f32());
|
|
$0 = Math_fround(Math_fround(Math_fround($4 * Math_fround(R(Math_fround($3)))) + Math_fround(Math_fround($3 - Math_fround($0 * $0)) / Math_fround($4 + $0))) + $0);
|
|
$3 = Math_fround($0 + $0);
|
|
}
|
|
return Math_fround($3);
|
|
}
|
|
|
|
function R($0) {
|
|
$0 = Math_fround($0);
|
|
return Math_fround(Math_fround(Math_fround(Math_fround(Math_fround($0 * Math_fround(Math_fround($0 * Math_fround(-.008656363002955914)) + Math_fround(-.04274342209100723))) + Math_fround(.16666586697101593)) * $0) / Math_fround(Math_fround($0 * Math_fround(-.7066296339035034)) + Math_fround(1.0))));
|
|
}
|
|
|
|
function asinf($0) {
|
|
$0 = Math_fround($0);
|
|
var $3 = 0.0, $2 = 0, $1 = 0;
|
|
label$1 : {
|
|
$1 = (wasm2js_scratch_store_f32($0), wasm2js_scratch_load_i32(2));
|
|
$2 = $1 & 2147483647 | 0;
|
|
if ($2 >>> 0 < 1065353216 >>> 0) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if (($2 | 0) != (1065353216 | 0)) {
|
|
break label$2
|
|
}
|
|
return Math_fround(Math_fround(+$0 * 1.5707963267948966 + 7.52316384526264e-37));
|
|
}
|
|
return Math_fround(Math_fround(Math_fround(0.0) / Math_fround($0 - $0)));
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if ($2 >>> 0 > 1056964607 >>> 0) {
|
|
break label$4
|
|
}
|
|
if (($2 + -8388608 | 0) >>> 0 < 956301312 >>> 0) {
|
|
break label$3
|
|
}
|
|
return Math_fround(Math_fround(Math_fround($0 * Math_fround(R_1(Math_fround(Math_fround($0 * $0))))) + $0));
|
|
}
|
|
$0 = Math_fround(Math_fround(Math_fround(1.0) - Math_fround(fabsf(Math_fround($0)))) * Math_fround(.5));
|
|
$3 = +sqrt(+(+$0));
|
|
$3 = $3 + $3 * +Math_fround(R_1(Math_fround($0)));
|
|
$0 = Math_fround(1.5707963267948966 - ($3 + $3));
|
|
$0 = ($1 | 0) < (0 | 0) ? Math_fround(-$0) : $0;
|
|
}
|
|
return Math_fround($0);
|
|
}
|
|
|
|
function R_1($0) {
|
|
$0 = Math_fround($0);
|
|
return Math_fround(Math_fround(Math_fround(Math_fround(Math_fround($0 * Math_fround(Math_fround($0 * Math_fround(-.008656363002955914)) + Math_fround(-.04274342209100723))) + Math_fround(.16666586697101593)) * $0) / Math_fround(Math_fround($0 * Math_fround(-.7066296339035034)) + Math_fround(1.0))));
|
|
}
|
|
|
|
function atan2f($0, $1) {
|
|
$0 = Math_fround($0);
|
|
$1 = Math_fround($1);
|
|
var $2 = 0, $4 = 0, $6 = Math_fround(0), $5 = 0, $3 = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (((__FLOAT_BITS(Math_fround($1)) | 0) & 2147483647 | 0) >>> 0 > 2139095040 >>> 0) {
|
|
break label$2
|
|
}
|
|
if (((__FLOAT_BITS(Math_fround($0)) | 0) & 2147483647 | 0) >>> 0 < 2139095041 >>> 0) {
|
|
break label$1
|
|
}
|
|
}
|
|
return Math_fround(Math_fround($0 + $1));
|
|
}
|
|
label$3 : {
|
|
$2 = (wasm2js_scratch_store_f32($1), wasm2js_scratch_load_i32(2));
|
|
if (($2 | 0) != (1065353216 | 0)) {
|
|
break label$3
|
|
}
|
|
return Math_fround(Math_fround(atanf(Math_fround($0))));
|
|
}
|
|
$3 = ($2 >>> 30 | 0) & 2 | 0;
|
|
$4 = (wasm2js_scratch_store_f32($0), wasm2js_scratch_load_i32(2));
|
|
$5 = $3 | ($4 >>> 31 | 0) | 0;
|
|
label$4 : {
|
|
label$5 : {
|
|
label$6 : {
|
|
$4 = $4 & 2147483647 | 0;
|
|
if ($4) {
|
|
break label$6
|
|
}
|
|
$6 = $0;
|
|
label$7 : {
|
|
switch ($5 | 0) {
|
|
case 2:
|
|
return Math_fround(Math_fround(3.1415927410125732));
|
|
case 3:
|
|
break label$7;
|
|
default:
|
|
break label$5;
|
|
};
|
|
}
|
|
return Math_fround(Math_fround(-3.1415927410125732));
|
|
}
|
|
label$9 : {
|
|
$2 = $2 & 2147483647 | 0;
|
|
if (($2 | 0) == (2139095040 | 0)) {
|
|
break label$9
|
|
}
|
|
label$10 : {
|
|
if ($2) {
|
|
break label$10
|
|
}
|
|
return Math_fround((wasm2js_scratch_store_i32(2, (wasm2js_scratch_store_f32(Math_fround(1.5707963705062866)), wasm2js_scratch_load_i32(2)) & 2147483647 | 0 | ((wasm2js_scratch_store_f32($0), wasm2js_scratch_load_i32(2)) & -2147483648 | 0) | 0), wasm2js_scratch_load_f32()));
|
|
}
|
|
label$11 : {
|
|
label$12 : {
|
|
if (($4 | 0) == (2139095040 | 0)) {
|
|
break label$12
|
|
}
|
|
if (($2 + 218103808 | 0) >>> 0 >= $4 >>> 0) {
|
|
break label$11
|
|
}
|
|
}
|
|
return Math_fround((wasm2js_scratch_store_i32(2, (wasm2js_scratch_store_f32(Math_fround(1.5707963705062866)), wasm2js_scratch_load_i32(2)) & 2147483647 | 0 | ((wasm2js_scratch_store_f32($0), wasm2js_scratch_load_i32(2)) & -2147483648 | 0) | 0), wasm2js_scratch_load_f32()));
|
|
}
|
|
label$13 : {
|
|
label$14 : {
|
|
if (!$3) {
|
|
break label$14
|
|
}
|
|
$6 = Math_fround(0.0);
|
|
if (($4 + 218103808 | 0) >>> 0 < $2 >>> 0) {
|
|
break label$13
|
|
}
|
|
}
|
|
$6 = Math_fround(atanf(Math_fround(Math_fround(fabsf(Math_fround(Math_fround($0 / $1)))))));
|
|
}
|
|
label$15 : {
|
|
switch ($5 | 0) {
|
|
case 1:
|
|
return Math_fround(Math_fround(-$6));
|
|
case 2:
|
|
return Math_fround(Math_fround(Math_fround(3.1415927410125732) - Math_fround($6 + Math_fround(8.742277657347586e-08))));
|
|
case 0:
|
|
break label$5;
|
|
default:
|
|
break label$15;
|
|
};
|
|
}
|
|
return Math_fround(Math_fround(Math_fround($6 + Math_fround(8.742277657347586e-08)) + Math_fround(-3.1415927410125732)));
|
|
}
|
|
if (($4 | 0) == (2139095040 | 0)) {
|
|
break label$4
|
|
}
|
|
$6 = Math_fround(HEAPF32[(($5 << 2 | 0) + 105260 | 0) >> 2]);
|
|
}
|
|
return Math_fround($6);
|
|
}
|
|
return Math_fround(Math_fround(HEAPF32[(($5 << 2 | 0) + 105244 | 0) >> 2]));
|
|
}
|
|
|
|
function __FLOAT_BITS($0) {
|
|
$0 = Math_fround($0);
|
|
return (wasm2js_scratch_store_f32($0), wasm2js_scratch_load_i32(2)) | 0;
|
|
}
|
|
|
|
function atanf($0) {
|
|
$0 = Math_fround($0);
|
|
var $2 = 0, $5 = Math_fround(0), $3 = 0, $4 = Math_fround(0), $1 = 0, $6 = Math_fround(0);
|
|
label$1 : {
|
|
$1 = (wasm2js_scratch_store_f32($0), wasm2js_scratch_load_i32(2));
|
|
$2 = $1 & 2147483647 | 0;
|
|
if ($2 >>> 0 < 1283457024 >>> 0) {
|
|
break label$1
|
|
}
|
|
return Math_fround(((__FLOAT_BITS_1(Math_fround($0)) | 0) & 2147483647 | 0) >>> 0 > 2139095040 >>> 0 ? $0 : (wasm2js_scratch_store_i32(2, (wasm2js_scratch_store_f32(Math_fround(1.570796251296997)), wasm2js_scratch_load_i32(2)) & 2147483647 | 0 | ((wasm2js_scratch_store_f32($0), wasm2js_scratch_load_i32(2)) & -2147483648 | 0) | 0), wasm2js_scratch_load_f32()));
|
|
}
|
|
label$2 : {
|
|
label$3 : {
|
|
label$4 : {
|
|
if ($2 >>> 0 > 1054867455 >>> 0) {
|
|
break label$4
|
|
}
|
|
$3 = -1;
|
|
if ($2 >>> 0 >= 964689920 >>> 0) {
|
|
break label$3
|
|
}
|
|
break label$2;
|
|
}
|
|
$0 = Math_fround(fabsf(Math_fround($0)));
|
|
label$5 : {
|
|
if ($2 >>> 0 > 1066926079 >>> 0) {
|
|
break label$5
|
|
}
|
|
label$6 : {
|
|
if ($2 >>> 0 > 1060110335 >>> 0) {
|
|
break label$6
|
|
}
|
|
$0 = Math_fround(Math_fround(Math_fround($0 + $0) + Math_fround(-1.0)) / Math_fround($0 + Math_fround(2.0)));
|
|
$3 = 0;
|
|
break label$3;
|
|
}
|
|
$0 = Math_fround(Math_fround($0 + Math_fround(-1.0)) / Math_fround($0 + Math_fround(1.0)));
|
|
$3 = 1;
|
|
break label$3;
|
|
}
|
|
label$7 : {
|
|
if ($2 >>> 0 > 1075576831 >>> 0) {
|
|
break label$7
|
|
}
|
|
$0 = Math_fround(Math_fround($0 + Math_fround(-1.5)) / Math_fround(Math_fround($0 * Math_fround(1.5)) + Math_fround(1.0)));
|
|
$3 = 2;
|
|
break label$3;
|
|
}
|
|
$0 = Math_fround(Math_fround(-1.0) / $0);
|
|
$3 = 3;
|
|
}
|
|
$4 = Math_fround($0 * $0);
|
|
$5 = Math_fround($4 * $4);
|
|
$6 = Math_fround($5 * Math_fround(Math_fround($5 * Math_fround(-.106480173766613)) + Math_fround(-.19999158382415771)));
|
|
$5 = Math_fround($4 * Math_fround(Math_fround($5 * Math_fround(Math_fround($5 * Math_fround(.06168760731816292)) + Math_fround(.14253635704517365))) + Math_fround(.333333283662796)));
|
|
label$8 : {
|
|
if ($2 >>> 0 > 1054867455 >>> 0) {
|
|
break label$8
|
|
}
|
|
return Math_fround(Math_fround($0 - Math_fround($0 * Math_fround($6 + $5))));
|
|
}
|
|
$2 = $3 << 2 | 0;
|
|
$0 = Math_fround(Math_fround(HEAPF32[($2 + 105280 | 0) >> 2]) - Math_fround(Math_fround(Math_fround($0 * Math_fround($6 + $5)) - Math_fround(HEAPF32[($2 + 105296 | 0) >> 2])) - $0));
|
|
$0 = ($1 | 0) < (0 | 0) ? Math_fround(-$0) : $0;
|
|
}
|
|
return Math_fround($0);
|
|
}
|
|
|
|
function __FLOAT_BITS_1($0) {
|
|
$0 = Math_fround($0);
|
|
return (wasm2js_scratch_store_f32($0), wasm2js_scratch_load_i32(2)) | 0;
|
|
}
|
|
|
|
function __cosdf($0) {
|
|
$0 = +$0;
|
|
var $1 = 0.0;
|
|
$0 = $0 * $0;
|
|
$1 = $0 * $0;
|
|
return Math_fround(Math_fround($0 * $1 * ($0 * 2.439044879627741e-05 + -.001388676377460993) + ($1 * .04166662332373906 + ($0 * -.499999997251031 + 1.0))));
|
|
}
|
|
|
|
function __sindf($0) {
|
|
$0 = +$0;
|
|
var $1 = 0.0, $2 = 0.0;
|
|
$1 = $0 * $0;
|
|
$2 = $1 * $0;
|
|
return Math_fround(Math_fround($2 * ($1 * $1) * ($1 * 2.718311493989822e-06 + -1.9839334836096632e-04) + ($2 * ($1 * .008333329385889463 + -.16666666641626524) + $0)));
|
|
}
|
|
|
|
function __rem_pio2_large($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $12 = 0.0, $11 = 0, $6 = 0, $5 = 0, $19 = 0.0, $14 = 0, $15 = 0, $8 = 0, $9 = 0, $22 = 0, $10 = 0, $20 = 0, $13 = 0, $23 = 0.0, $7 = 0, $17 = 0, $21 = 0, $16 = 0, $18 = 0, $205 = 0, $208 = 0, $520 = 0.0, $558 = 0.0;
|
|
$5 = __stack_pointer - 560 | 0;
|
|
__stack_pointer = $5;
|
|
$6 = ($2 + -3 | 0 | 0) / (24 | 0) | 0;
|
|
$7 = ($6 | 0) > (0 | 0) ? $6 : 0;
|
|
$8 = Math_imul($7, -24) + $2 | 0;
|
|
label$1 : {
|
|
$9 = HEAP32[(($4 << 2 | 0) + 105312 | 0) >> 2] | 0;
|
|
$10 = $3 + -1 | 0;
|
|
if (($9 + $10 | 0 | 0) < (0 | 0)) {
|
|
break label$1
|
|
}
|
|
$11 = $9 + $3 | 0;
|
|
$2 = $7 - $10 | 0;
|
|
$6 = 0;
|
|
label$2 : while (1) {
|
|
label$3 : {
|
|
label$4 : {
|
|
if (($2 | 0) >= (0 | 0)) {
|
|
break label$4
|
|
}
|
|
$12 = 0.0;
|
|
break label$3;
|
|
}
|
|
$12 = +(HEAP32[(($2 << 2 | 0) + 105328 | 0) >> 2] | 0 | 0);
|
|
}
|
|
HEAPF64[(($5 + 320 | 0) + ($6 << 3 | 0) | 0) >> 3] = $12;
|
|
$2 = $2 + 1 | 0;
|
|
$6 = $6 + 1 | 0;
|
|
if (($6 | 0) != ($11 | 0)) {
|
|
continue label$2
|
|
}
|
|
break label$2;
|
|
};
|
|
}
|
|
$13 = $8 + -24 | 0;
|
|
$11 = 0;
|
|
$14 = ($9 | 0) > (0 | 0) ? $9 : 0;
|
|
$15 = ($3 | 0) < (1 | 0);
|
|
label$5 : while (1) {
|
|
label$6 : {
|
|
label$7 : {
|
|
if (!$15) {
|
|
break label$7
|
|
}
|
|
$12 = 0.0;
|
|
break label$6;
|
|
}
|
|
$6 = $11 + $10 | 0;
|
|
$2 = 0;
|
|
$12 = 0.0;
|
|
label$8 : while (1) {
|
|
$12 = +HEAPF64[($0 + ($2 << 3 | 0) | 0) >> 3] * +HEAPF64[(($5 + 320 | 0) + (($6 - $2 | 0) << 3 | 0) | 0) >> 3] + $12;
|
|
$2 = $2 + 1 | 0;
|
|
if (($2 | 0) != ($3 | 0)) {
|
|
continue label$8
|
|
}
|
|
break label$8;
|
|
};
|
|
}
|
|
HEAPF64[($5 + ($11 << 3 | 0) | 0) >> 3] = $12;
|
|
$2 = ($11 | 0) == ($14 | 0);
|
|
$11 = $11 + 1 | 0;
|
|
if (!$2) {
|
|
continue label$5
|
|
}
|
|
break label$5;
|
|
};
|
|
$16 = 47 - $8 | 0;
|
|
$17 = 48 - $8 | 0;
|
|
$18 = $8 + -25 | 0;
|
|
$11 = $9;
|
|
label$9 : {
|
|
label$10 : while (1) {
|
|
$12 = +HEAPF64[($5 + ($11 << 3 | 0) | 0) >> 3];
|
|
$2 = 0;
|
|
$6 = $11;
|
|
label$11 : {
|
|
$10 = ($11 | 0) < (1 | 0);
|
|
if ($10) {
|
|
break label$11
|
|
}
|
|
label$12 : while (1) {
|
|
label$13 : {
|
|
label$14 : {
|
|
$19 = $12 * 5.9604644775390625e-08;
|
|
if (!(Math_abs($19) < 2147483648.0)) {
|
|
break label$14
|
|
}
|
|
$15 = ~~$19;
|
|
break label$13;
|
|
}
|
|
$15 = -2147483648;
|
|
}
|
|
$14 = ($5 + 480 | 0) + ($2 << 2 | 0) | 0;
|
|
label$15 : {
|
|
label$16 : {
|
|
$19 = +($15 | 0);
|
|
$12 = $19 * -16777216.0 + $12;
|
|
if (!(Math_abs($12) < 2147483648.0)) {
|
|
break label$16
|
|
}
|
|
$15 = ~~$12;
|
|
break label$15;
|
|
}
|
|
$15 = -2147483648;
|
|
}
|
|
HEAP32[$14 >> 2] = $15;
|
|
$6 = $6 + -1 | 0;
|
|
$12 = +HEAPF64[($5 + ($6 << 3 | 0) | 0) >> 3] + $19;
|
|
$2 = $2 + 1 | 0;
|
|
if (($2 | 0) != ($11 | 0)) {
|
|
continue label$12
|
|
}
|
|
break label$12;
|
|
};
|
|
}
|
|
$12 = +scalbn(+$12, $13 | 0);
|
|
label$17 : {
|
|
label$18 : {
|
|
$12 = $12 + +floor(+($12 * .125)) * -8.0;
|
|
if (!(Math_abs($12) < 2147483648.0)) {
|
|
break label$18
|
|
}
|
|
$20 = ~~$12;
|
|
break label$17;
|
|
}
|
|
$20 = -2147483648;
|
|
}
|
|
$12 = $12 - +($20 | 0);
|
|
label$19 : {
|
|
label$20 : {
|
|
label$21 : {
|
|
label$22 : {
|
|
label$23 : {
|
|
$21 = ($13 | 0) < (1 | 0);
|
|
if ($21) {
|
|
break label$23
|
|
}
|
|
$2 = (($11 << 2 | 0) + ($5 + 480 | 0) | 0) + -4 | 0;
|
|
$205 = $2;
|
|
$2 = HEAP32[$2 >> 2] | 0;
|
|
$208 = $2;
|
|
$2 = $2 >> $17 | 0;
|
|
$6 = $208 - ($2 << $17 | 0) | 0;
|
|
HEAP32[$205 >> 2] = $6;
|
|
$22 = $6 >> $16 | 0;
|
|
$20 = $2 + $20 | 0;
|
|
break label$22;
|
|
}
|
|
if ($13) {
|
|
break label$21
|
|
}
|
|
$22 = (HEAP32[((($11 << 2 | 0) + ($5 + 480 | 0) | 0) + -4 | 0) >> 2] | 0) >> 23 | 0;
|
|
}
|
|
if (($22 | 0) < (1 | 0)) {
|
|
break label$19
|
|
}
|
|
break label$20;
|
|
}
|
|
$22 = 2;
|
|
if ($12 >= .5) {
|
|
break label$20
|
|
}
|
|
$22 = 0;
|
|
break label$19;
|
|
}
|
|
$2 = 0;
|
|
$15 = 0;
|
|
label$24 : {
|
|
if ($10) {
|
|
break label$24
|
|
}
|
|
label$25 : while (1) {
|
|
$10 = ($5 + 480 | 0) + ($2 << 2 | 0) | 0;
|
|
$6 = HEAP32[$10 >> 2] | 0;
|
|
$14 = 16777215;
|
|
label$26 : {
|
|
label$27 : {
|
|
if ($15) {
|
|
break label$27
|
|
}
|
|
$14 = 16777216;
|
|
if ($6) {
|
|
break label$27
|
|
}
|
|
$15 = 0;
|
|
break label$26;
|
|
}
|
|
HEAP32[$10 >> 2] = $14 - $6 | 0;
|
|
$15 = 1;
|
|
}
|
|
$2 = $2 + 1 | 0;
|
|
if (($2 | 0) != ($11 | 0)) {
|
|
continue label$25
|
|
}
|
|
break label$25;
|
|
};
|
|
}
|
|
label$28 : {
|
|
if ($21) {
|
|
break label$28
|
|
}
|
|
$2 = 8388607;
|
|
label$29 : {
|
|
switch ($18 | 0) {
|
|
case 1:
|
|
$2 = 4194303;
|
|
break;
|
|
case 0:
|
|
break label$29;
|
|
default:
|
|
break label$28;
|
|
};
|
|
}
|
|
$6 = (($11 << 2 | 0) + ($5 + 480 | 0) | 0) + -4 | 0;
|
|
HEAP32[$6 >> 2] = (HEAP32[$6 >> 2] | 0) & $2 | 0;
|
|
}
|
|
$20 = $20 + 1 | 0;
|
|
if (($22 | 0) != (2 | 0)) {
|
|
break label$19
|
|
}
|
|
$12 = 1.0 - $12;
|
|
$22 = 2;
|
|
if (!$15) {
|
|
break label$19
|
|
}
|
|
$12 = $12 - +scalbn(+(1.0), $13 | 0);
|
|
}
|
|
label$31 : {
|
|
if ($12 != 0.0) {
|
|
break label$31
|
|
}
|
|
$6 = 0;
|
|
$2 = $11;
|
|
label$32 : {
|
|
if (($2 | 0) <= ($9 | 0)) {
|
|
break label$32
|
|
}
|
|
label$33 : while (1) {
|
|
$2 = $2 + -1 | 0;
|
|
$6 = HEAP32[(($5 + 480 | 0) + ($2 << 2 | 0) | 0) >> 2] | 0 | $6 | 0;
|
|
if (($2 | 0) > ($9 | 0)) {
|
|
continue label$33
|
|
}
|
|
break label$33;
|
|
};
|
|
if (!$6) {
|
|
break label$32
|
|
}
|
|
$8 = $13;
|
|
label$34 : while (1) {
|
|
$8 = $8 + -24 | 0;
|
|
$11 = $11 + -1 | 0;
|
|
if (!(HEAP32[(($5 + 480 | 0) + ($11 << 2 | 0) | 0) >> 2] | 0)) {
|
|
continue label$34
|
|
}
|
|
break label$9;
|
|
};
|
|
}
|
|
$2 = 1;
|
|
label$35 : while (1) {
|
|
$6 = $2;
|
|
$2 = $2 + 1 | 0;
|
|
if (!(HEAP32[(($5 + 480 | 0) + (($9 - $6 | 0) << 2 | 0) | 0) >> 2] | 0)) {
|
|
continue label$35
|
|
}
|
|
break label$35;
|
|
};
|
|
$14 = $6 + $11 | 0;
|
|
label$36 : while (1) {
|
|
$6 = $11 + $3 | 0;
|
|
$11 = $11 + 1 | 0;
|
|
HEAPF64[(($5 + 320 | 0) + ($6 << 3 | 0) | 0) >> 3] = +(HEAP32[((($11 + $7 | 0) << 2 | 0) + 105328 | 0) >> 2] | 0 | 0);
|
|
$2 = 0;
|
|
$12 = 0.0;
|
|
label$37 : {
|
|
if (($3 | 0) < (1 | 0)) {
|
|
break label$37
|
|
}
|
|
label$38 : while (1) {
|
|
$12 = +HEAPF64[($0 + ($2 << 3 | 0) | 0) >> 3] * +HEAPF64[(($5 + 320 | 0) + (($6 - $2 | 0) << 3 | 0) | 0) >> 3] + $12;
|
|
$2 = $2 + 1 | 0;
|
|
if (($2 | 0) != ($3 | 0)) {
|
|
continue label$38
|
|
}
|
|
break label$38;
|
|
};
|
|
}
|
|
HEAPF64[($5 + ($11 << 3 | 0) | 0) >> 3] = $12;
|
|
if (($11 | 0) < ($14 | 0)) {
|
|
continue label$36
|
|
}
|
|
break label$36;
|
|
};
|
|
$11 = $14;
|
|
continue label$10;
|
|
}
|
|
break label$10;
|
|
};
|
|
label$39 : {
|
|
label$40 : {
|
|
$12 = +scalbn(+$12, 24 - $8 | 0 | 0);
|
|
if (!($12 >= 16777216.0)) {
|
|
break label$40
|
|
}
|
|
$3 = $11 << 2 | 0;
|
|
label$41 : {
|
|
label$42 : {
|
|
$19 = $12 * 5.9604644775390625e-08;
|
|
if (!(Math_abs($19) < 2147483648.0)) {
|
|
break label$42
|
|
}
|
|
$2 = ~~$19;
|
|
break label$41;
|
|
}
|
|
$2 = -2147483648;
|
|
}
|
|
$3 = ($5 + 480 | 0) + $3 | 0;
|
|
label$43 : {
|
|
label$44 : {
|
|
$12 = +($2 | 0) * -16777216.0 + $12;
|
|
if (!(Math_abs($12) < 2147483648.0)) {
|
|
break label$44
|
|
}
|
|
$6 = ~~$12;
|
|
break label$43;
|
|
}
|
|
$6 = -2147483648;
|
|
}
|
|
HEAP32[$3 >> 2] = $6;
|
|
$11 = $11 + 1 | 0;
|
|
break label$39;
|
|
}
|
|
label$45 : {
|
|
label$46 : {
|
|
if (!(Math_abs($12) < 2147483648.0)) {
|
|
break label$46
|
|
}
|
|
$2 = ~~$12;
|
|
break label$45;
|
|
}
|
|
$2 = -2147483648;
|
|
}
|
|
$8 = $13;
|
|
}
|
|
HEAP32[(($5 + 480 | 0) + ($11 << 2 | 0) | 0) >> 2] = $2;
|
|
}
|
|
$12 = +scalbn(+(1.0), $8 | 0);
|
|
label$47 : {
|
|
if (($11 | 0) <= (-1 | 0)) {
|
|
break label$47
|
|
}
|
|
$3 = $11;
|
|
label$48 : while (1) {
|
|
$2 = $3;
|
|
HEAPF64[($5 + ($2 << 3 | 0) | 0) >> 3] = $12 * +(HEAP32[(($5 + 480 | 0) + ($2 << 2 | 0) | 0) >> 2] | 0 | 0);
|
|
$3 = $2 + -1 | 0;
|
|
$12 = $12 * 5.9604644775390625e-08;
|
|
if ($2) {
|
|
continue label$48
|
|
}
|
|
break label$48;
|
|
};
|
|
if (($11 | 0) <= (-1 | 0)) {
|
|
break label$47
|
|
}
|
|
$6 = $11;
|
|
label$49 : while (1) {
|
|
$12 = 0.0;
|
|
$2 = 0;
|
|
label$50 : {
|
|
$14 = $11 - $6 | 0;
|
|
$0 = ($9 | 0) < ($14 | 0) ? $9 : $14;
|
|
if (($0 | 0) < (0 | 0)) {
|
|
break label$50
|
|
}
|
|
label$51 : while (1) {
|
|
$12 = +HEAPF64[(($2 << 3 | 0) + 108096 | 0) >> 3] * +HEAPF64[($5 + (($2 + $6 | 0) << 3 | 0) | 0) >> 3] + $12;
|
|
$3 = ($2 | 0) != ($0 | 0);
|
|
$2 = $2 + 1 | 0;
|
|
if ($3) {
|
|
continue label$51
|
|
}
|
|
break label$51;
|
|
};
|
|
}
|
|
HEAPF64[(($5 + 160 | 0) + ($14 << 3 | 0) | 0) >> 3] = $12;
|
|
$2 = ($6 | 0) > (0 | 0);
|
|
$6 = $6 + -1 | 0;
|
|
if ($2) {
|
|
continue label$49
|
|
}
|
|
break label$49;
|
|
};
|
|
}
|
|
label$52 : {
|
|
label$53 : {
|
|
label$54 : {
|
|
switch ($4 | 0) {
|
|
case 3:
|
|
$23 = 0.0;
|
|
label$57 : {
|
|
if (($11 | 0) < (1 | 0)) {
|
|
break label$57
|
|
}
|
|
$12 = +HEAPF64[(($5 + 160 | 0) + ($11 << 3 | 0) | 0) >> 3];
|
|
$2 = $11;
|
|
label$58 : while (1) {
|
|
$3 = $2 + -1 | 0;
|
|
$6 = ($5 + 160 | 0) + ($3 << 3 | 0) | 0;
|
|
$19 = +HEAPF64[$6 >> 3];
|
|
$520 = $19;
|
|
$19 = $19 + $12;
|
|
HEAPF64[(($5 + 160 | 0) + ($2 << 3 | 0) | 0) >> 3] = $12 + ($520 - $19);
|
|
HEAPF64[$6 >> 3] = $19;
|
|
$6 = $2 >>> 0 > 1 >>> 0;
|
|
$12 = $19;
|
|
$2 = $3;
|
|
if ($6) {
|
|
continue label$58
|
|
}
|
|
break label$58;
|
|
};
|
|
if (($11 | 0) < (2 | 0)) {
|
|
break label$57
|
|
}
|
|
$12 = +HEAPF64[(($5 + 160 | 0) + ($11 << 3 | 0) | 0) >> 3];
|
|
$2 = $11;
|
|
label$59 : while (1) {
|
|
$3 = $2 + -1 | 0;
|
|
$6 = ($5 + 160 | 0) + ($3 << 3 | 0) | 0;
|
|
$19 = +HEAPF64[$6 >> 3];
|
|
$558 = $19;
|
|
$19 = $19 + $12;
|
|
HEAPF64[(($5 + 160 | 0) + ($2 << 3 | 0) | 0) >> 3] = $12 + ($558 - $19);
|
|
HEAPF64[$6 >> 3] = $19;
|
|
$6 = $2 >>> 0 > 2 >>> 0;
|
|
$12 = $19;
|
|
$2 = $3;
|
|
if ($6) {
|
|
continue label$59
|
|
}
|
|
break label$59;
|
|
};
|
|
$23 = 0.0;
|
|
if (($11 | 0) <= (1 | 0)) {
|
|
break label$57
|
|
}
|
|
label$60 : while (1) {
|
|
$23 = $23 + +HEAPF64[(($5 + 160 | 0) + ($11 << 3 | 0) | 0) >> 3];
|
|
$2 = ($11 | 0) > (2 | 0);
|
|
$11 = $11 + -1 | 0;
|
|
if ($2) {
|
|
continue label$60
|
|
}
|
|
break label$60;
|
|
};
|
|
}
|
|
$12 = +HEAPF64[($5 + 160 | 0) >> 3];
|
|
if ($22) {
|
|
break label$53
|
|
}
|
|
HEAPF64[$1 >> 3] = $12;
|
|
$12 = +HEAPF64[($5 + 168 | 0) >> 3];
|
|
HEAPF64[($1 + 16 | 0) >> 3] = $23;
|
|
HEAPF64[($1 + 8 | 0) >> 3] = $12;
|
|
break label$52;
|
|
case 0:
|
|
$12 = 0.0;
|
|
label$61 : {
|
|
if (($11 | 0) < (0 | 0)) {
|
|
break label$61
|
|
}
|
|
label$62 : while (1) {
|
|
$2 = $11;
|
|
$11 = $2 + -1 | 0;
|
|
$12 = $12 + +HEAPF64[(($5 + 160 | 0) + ($2 << 3 | 0) | 0) >> 3];
|
|
if ($2) {
|
|
continue label$62
|
|
}
|
|
break label$62;
|
|
};
|
|
}
|
|
HEAPF64[$1 >> 3] = $22 ? -$12 : $12;
|
|
break label$52;
|
|
case 1:
|
|
case 2:
|
|
break label$54;
|
|
default:
|
|
break label$52;
|
|
};
|
|
}
|
|
$12 = 0.0;
|
|
label$63 : {
|
|
if (($11 | 0) < (0 | 0)) {
|
|
break label$63
|
|
}
|
|
$3 = $11;
|
|
label$64 : while (1) {
|
|
$2 = $3;
|
|
$3 = $2 + -1 | 0;
|
|
$12 = $12 + +HEAPF64[(($5 + 160 | 0) + ($2 << 3 | 0) | 0) >> 3];
|
|
if ($2) {
|
|
continue label$64
|
|
}
|
|
break label$64;
|
|
};
|
|
}
|
|
HEAPF64[$1 >> 3] = $22 ? -$12 : $12;
|
|
$12 = +HEAPF64[($5 + 160 | 0) >> 3] - $12;
|
|
$2 = 1;
|
|
label$65 : {
|
|
if (($11 | 0) < (1 | 0)) {
|
|
break label$65
|
|
}
|
|
label$66 : while (1) {
|
|
$12 = $12 + +HEAPF64[(($5 + 160 | 0) + ($2 << 3 | 0) | 0) >> 3];
|
|
$3 = ($2 | 0) != ($11 | 0);
|
|
$2 = $2 + 1 | 0;
|
|
if ($3) {
|
|
continue label$66
|
|
}
|
|
break label$66;
|
|
};
|
|
}
|
|
HEAPF64[($1 + 8 | 0) >> 3] = $22 ? -$12 : $12;
|
|
break label$52;
|
|
}
|
|
HEAPF64[$1 >> 3] = -$12;
|
|
$12 = +HEAPF64[($5 + 168 | 0) >> 3];
|
|
HEAPF64[($1 + 16 | 0) >> 3] = -$23;
|
|
HEAPF64[($1 + 8 | 0) >> 3] = -$12;
|
|
}
|
|
__stack_pointer = $5 + 560 | 0;
|
|
return $20 & 7 | 0 | 0;
|
|
}
|
|
|
|
function __rem_pio2f($0, $1) {
|
|
$0 = Math_fround($0);
|
|
$1 = $1 | 0;
|
|
var $4 = 0, $6 = 0.0, $2 = 0, $3 = 0, $5 = 0.0, $7 = 0.0, $8 = 0;
|
|
$2 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $2;
|
|
label$1 : {
|
|
label$2 : {
|
|
$3 = (wasm2js_scratch_store_f32($0), wasm2js_scratch_load_i32(2));
|
|
$4 = $3 & 2147483647 | 0;
|
|
if ($4 >>> 0 > 1305022426 >>> 0) {
|
|
break label$2
|
|
}
|
|
$5 = +$0;
|
|
$6 = $5 * .6366197723675814 + 6755399441055744.0 + -6755399441055744.0;
|
|
$7 = $5 + $6 * -1.5707963109016418 + $6 * -1.5893254773528196e-08;
|
|
HEAPF64[$1 >> 3] = $7;
|
|
$3 = $7 < -.7853981852531433;
|
|
label$3 : {
|
|
label$4 : {
|
|
if (!(Math_abs($6) < 2147483648.0)) {
|
|
break label$4
|
|
}
|
|
$4 = ~~$6;
|
|
break label$3;
|
|
}
|
|
$4 = -2147483648;
|
|
}
|
|
label$5 : {
|
|
if (!$3) {
|
|
break label$5
|
|
}
|
|
$6 = $6 + -1.0;
|
|
HEAPF64[$1 >> 3] = $5 + $6 * -1.5707963109016418 + $6 * -1.5893254773528196e-08;
|
|
$4 = $4 + -1 | 0;
|
|
break label$1;
|
|
}
|
|
if (!($7 > .7853981852531433)) {
|
|
break label$1
|
|
}
|
|
$6 = $6 + 1.0;
|
|
HEAPF64[$1 >> 3] = $5 + $6 * -1.5707963109016418 + $6 * -1.5893254773528196e-08;
|
|
$4 = $4 + 1 | 0;
|
|
break label$1;
|
|
}
|
|
label$6 : {
|
|
if ($4 >>> 0 < 2139095040 >>> 0) {
|
|
break label$6
|
|
}
|
|
HEAPF64[$1 >> 3] = +Math_fround($0 - $0);
|
|
$4 = 0;
|
|
break label$1;
|
|
}
|
|
$8 = ($4 >>> 23 | 0) + -150 | 0;
|
|
HEAPF64[($2 + 8 | 0) >> 3] = +(wasm2js_scratch_store_i32(2, $4 - ($8 << 23 | 0) | 0), wasm2js_scratch_load_f32());
|
|
$4 = __rem_pio2_large($2 + 8 | 0 | 0, $2 | 0, $8 | 0, 1 | 0, 0 | 0) | 0;
|
|
$6 = +HEAPF64[$2 >> 3];
|
|
label$7 : {
|
|
if (($3 | 0) > (-1 | 0)) {
|
|
break label$7
|
|
}
|
|
HEAPF64[$1 >> 3] = -$6;
|
|
$4 = 0 - $4 | 0;
|
|
break label$1;
|
|
}
|
|
HEAPF64[$1 >> 3] = $6;
|
|
}
|
|
__stack_pointer = $2 + 16 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function cosf($0) {
|
|
$0 = Math_fround($0);
|
|
var $4 = Math_fround(0), $1 = 0, $3 = 0, $2 = 0, $5 = 0.0;
|
|
$1 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
$2 = (wasm2js_scratch_store_f32($0), wasm2js_scratch_load_i32(2));
|
|
$3 = $2 & 2147483647 | 0;
|
|
if ($3 >>> 0 > 1061752794 >>> 0) {
|
|
break label$2
|
|
}
|
|
$4 = Math_fround(1.0);
|
|
if ($3 >>> 0 < 964689920 >>> 0) {
|
|
break label$1
|
|
}
|
|
$4 = Math_fround(__cosdf(+(+$0)));
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
if ($3 >>> 0 > 1081824209 >>> 0) {
|
|
break label$3
|
|
}
|
|
label$4 : {
|
|
if ($3 >>> 0 < 1075235812 >>> 0) {
|
|
break label$4
|
|
}
|
|
$4 = Math_fround(-Math_fround(__cosdf(+((($2 | 0) < (0 | 0) ? 3.141592653589793 : -3.141592653589793) + +$0))));
|
|
break label$1;
|
|
}
|
|
$5 = +$0;
|
|
label$5 : {
|
|
if (($2 | 0) > (-1 | 0)) {
|
|
break label$5
|
|
}
|
|
$4 = Math_fround(__sindf(+($5 + 1.5707963267948966)));
|
|
break label$1;
|
|
}
|
|
$4 = Math_fround(__sindf(+(1.5707963267948966 - $5)));
|
|
break label$1;
|
|
}
|
|
label$6 : {
|
|
if ($3 >>> 0 > 1088565717 >>> 0) {
|
|
break label$6
|
|
}
|
|
label$7 : {
|
|
if ($3 >>> 0 < 1085271520 >>> 0) {
|
|
break label$7
|
|
}
|
|
$4 = Math_fround(__cosdf(+((($2 | 0) < (0 | 0) ? 6.283185307179586 : -6.283185307179586) + +$0)));
|
|
break label$1;
|
|
}
|
|
label$8 : {
|
|
if (($2 | 0) > (-1 | 0)) {
|
|
break label$8
|
|
}
|
|
$4 = Math_fround(__sindf(+(-4.71238898038469 - +$0)));
|
|
break label$1;
|
|
}
|
|
$4 = Math_fround(__sindf(+(+$0 + -4.71238898038469)));
|
|
break label$1;
|
|
}
|
|
label$9 : {
|
|
if ($3 >>> 0 < 2139095040 >>> 0) {
|
|
break label$9
|
|
}
|
|
$4 = Math_fround($0 - $0);
|
|
break label$1;
|
|
}
|
|
label$10 : {
|
|
switch ((__rem_pio2f(Math_fround($0), $1 + 8 | 0 | 0) | 0) & 3 | 0 | 0) {
|
|
case 0:
|
|
$4 = Math_fround(__cosdf(+(+HEAPF64[($1 + 8 | 0) >> 3])));
|
|
break label$1;
|
|
case 1:
|
|
$4 = Math_fround(__sindf(+-+HEAPF64[($1 + 8 | 0) >> 3]));
|
|
break label$1;
|
|
case 2:
|
|
$4 = Math_fround(-Math_fround(__cosdf(+(+HEAPF64[($1 + 8 | 0) >> 3]))));
|
|
break label$1;
|
|
default:
|
|
break label$10;
|
|
};
|
|
}
|
|
$4 = Math_fround(__sindf(+(+HEAPF64[($1 + 8 | 0) >> 3])));
|
|
}
|
|
__stack_pointer = $1 + 16 | 0;
|
|
return Math_fround($4);
|
|
}
|
|
|
|
function __memcpy($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $4 = 0, $3 = 0, $5 = 0;
|
|
label$1 : {
|
|
if ($2 >>> 0 < 512 >>> 0) {
|
|
break label$1
|
|
}
|
|
emscripten_memcpy_big($0 | 0, $1 | 0, $2 | 0);
|
|
return $0 | 0;
|
|
}
|
|
$3 = $0 + $2 | 0;
|
|
label$2 : {
|
|
label$3 : {
|
|
if (($1 ^ $0 | 0) & 3 | 0) {
|
|
break label$3
|
|
}
|
|
label$4 : {
|
|
label$5 : {
|
|
if ($0 & 3 | 0) {
|
|
break label$5
|
|
}
|
|
$2 = $0;
|
|
break label$4;
|
|
}
|
|
label$6 : {
|
|
if ($2) {
|
|
break label$6
|
|
}
|
|
$2 = $0;
|
|
break label$4;
|
|
}
|
|
$2 = $0;
|
|
label$7 : while (1) {
|
|
HEAP8[$2 >> 0] = HEAPU8[$1 >> 0] | 0;
|
|
$1 = $1 + 1 | 0;
|
|
$2 = $2 + 1 | 0;
|
|
if (!($2 & 3 | 0)) {
|
|
break label$4
|
|
}
|
|
if ($2 >>> 0 < $3 >>> 0) {
|
|
continue label$7
|
|
}
|
|
break label$7;
|
|
};
|
|
}
|
|
label$8 : {
|
|
$4 = $3 & -4 | 0;
|
|
if ($4 >>> 0 < 64 >>> 0) {
|
|
break label$8
|
|
}
|
|
$5 = $4 + -64 | 0;
|
|
if ($2 >>> 0 > $5 >>> 0) {
|
|
break label$8
|
|
}
|
|
label$9 : while (1) {
|
|
HEAP32[$2 >> 2] = HEAP32[$1 >> 2] | 0;
|
|
HEAP32[($2 + 4 | 0) >> 2] = HEAP32[($1 + 4 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 8 | 0) >> 2] = HEAP32[($1 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 12 | 0) >> 2] = HEAP32[($1 + 12 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 16 | 0) >> 2] = HEAP32[($1 + 16 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 20 | 0) >> 2] = HEAP32[($1 + 20 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 24 | 0) >> 2] = HEAP32[($1 + 24 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 28 | 0) >> 2] = HEAP32[($1 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 32 | 0) >> 2] = HEAP32[($1 + 32 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 36 | 0) >> 2] = HEAP32[($1 + 36 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 40 | 0) >> 2] = HEAP32[($1 + 40 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 44 | 0) >> 2] = HEAP32[($1 + 44 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 48 | 0) >> 2] = HEAP32[($1 + 48 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 52 | 0) >> 2] = HEAP32[($1 + 52 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 56 | 0) >> 2] = HEAP32[($1 + 56 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 60 | 0) >> 2] = HEAP32[($1 + 60 | 0) >> 2] | 0;
|
|
$1 = $1 + 64 | 0;
|
|
$2 = $2 + 64 | 0;
|
|
if ($2 >>> 0 <= $5 >>> 0) {
|
|
continue label$9
|
|
}
|
|
break label$9;
|
|
};
|
|
}
|
|
if ($2 >>> 0 >= $4 >>> 0) {
|
|
break label$2
|
|
}
|
|
label$10 : while (1) {
|
|
HEAP32[$2 >> 2] = HEAP32[$1 >> 2] | 0;
|
|
$1 = $1 + 4 | 0;
|
|
$2 = $2 + 4 | 0;
|
|
if ($2 >>> 0 < $4 >>> 0) {
|
|
continue label$10
|
|
}
|
|
break label$2;
|
|
};
|
|
}
|
|
label$11 : {
|
|
if ($3 >>> 0 >= 4 >>> 0) {
|
|
break label$11
|
|
}
|
|
$2 = $0;
|
|
break label$2;
|
|
}
|
|
label$12 : {
|
|
$4 = $3 + -4 | 0;
|
|
if ($4 >>> 0 >= $0 >>> 0) {
|
|
break label$12
|
|
}
|
|
$2 = $0;
|
|
break label$2;
|
|
}
|
|
$2 = $0;
|
|
label$13 : while (1) {
|
|
HEAP8[$2 >> 0] = HEAPU8[$1 >> 0] | 0;
|
|
HEAP8[($2 + 1 | 0) >> 0] = HEAPU8[($1 + 1 | 0) >> 0] | 0;
|
|
HEAP8[($2 + 2 | 0) >> 0] = HEAPU8[($1 + 2 | 0) >> 0] | 0;
|
|
HEAP8[($2 + 3 | 0) >> 0] = HEAPU8[($1 + 3 | 0) >> 0] | 0;
|
|
$1 = $1 + 4 | 0;
|
|
$2 = $2 + 4 | 0;
|
|
if ($2 >>> 0 <= $4 >>> 0) {
|
|
continue label$13
|
|
}
|
|
break label$13;
|
|
};
|
|
}
|
|
label$14 : {
|
|
if ($2 >>> 0 >= $3 >>> 0) {
|
|
break label$14
|
|
}
|
|
label$15 : while (1) {
|
|
HEAP8[$2 >> 0] = HEAPU8[$1 >> 0] | 0;
|
|
$1 = $1 + 1 | 0;
|
|
$2 = $2 + 1 | 0;
|
|
if (($2 | 0) != ($3 | 0)) {
|
|
continue label$15
|
|
}
|
|
break label$15;
|
|
};
|
|
}
|
|
return $0 | 0;
|
|
}
|
|
|
|
function __memset($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $3 = 0, i64toi32_i32$0 = 0, $4 = 0, i64toi32_i32$1 = 0, $6 = 0, $5 = 0, $6$hi = 0;
|
|
label$1 : {
|
|
if (!$2) {
|
|
break label$1
|
|
}
|
|
HEAP8[$0 >> 0] = $1;
|
|
$3 = $2 + $0 | 0;
|
|
HEAP8[($3 + -1 | 0) >> 0] = $1;
|
|
if ($2 >>> 0 < 3 >>> 0) {
|
|
break label$1
|
|
}
|
|
HEAP8[($0 + 2 | 0) >> 0] = $1;
|
|
HEAP8[($0 + 1 | 0) >> 0] = $1;
|
|
HEAP8[($3 + -3 | 0) >> 0] = $1;
|
|
HEAP8[($3 + -2 | 0) >> 0] = $1;
|
|
if ($2 >>> 0 < 7 >>> 0) {
|
|
break label$1
|
|
}
|
|
HEAP8[($0 + 3 | 0) >> 0] = $1;
|
|
HEAP8[($3 + -4 | 0) >> 0] = $1;
|
|
if ($2 >>> 0 < 9 >>> 0) {
|
|
break label$1
|
|
}
|
|
$4 = (0 - $0 | 0) & 3 | 0;
|
|
$3 = $0 + $4 | 0;
|
|
$1 = Math_imul($1 & 255 | 0, 16843009);
|
|
HEAP32[$3 >> 2] = $1;
|
|
$4 = ($2 - $4 | 0) & -4 | 0;
|
|
$2 = $3 + $4 | 0;
|
|
HEAP32[($2 + -4 | 0) >> 2] = $1;
|
|
if ($4 >>> 0 < 9 >>> 0) {
|
|
break label$1
|
|
}
|
|
HEAP32[($3 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($3 + 4 | 0) >> 2] = $1;
|
|
HEAP32[($2 + -8 | 0) >> 2] = $1;
|
|
HEAP32[($2 + -12 | 0) >> 2] = $1;
|
|
if ($4 >>> 0 < 25 >>> 0) {
|
|
break label$1
|
|
}
|
|
HEAP32[($3 + 24 | 0) >> 2] = $1;
|
|
HEAP32[($3 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($3 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $1;
|
|
HEAP32[($2 + -16 | 0) >> 2] = $1;
|
|
HEAP32[($2 + -20 | 0) >> 2] = $1;
|
|
HEAP32[($2 + -24 | 0) >> 2] = $1;
|
|
HEAP32[($2 + -28 | 0) >> 2] = $1;
|
|
$5 = $3 & 4 | 0 | 24 | 0;
|
|
$2 = $4 - $5 | 0;
|
|
if ($2 >>> 0 < 32 >>> 0) {
|
|
break label$1
|
|
}
|
|
i64toi32_i32$0 = 0;
|
|
i64toi32_i32$1 = 1;
|
|
i64toi32_i32$1 = __wasm_i64_mul($1 | 0, i64toi32_i32$0 | 0, 1 | 0, i64toi32_i32$1 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
$6 = i64toi32_i32$1;
|
|
$6$hi = i64toi32_i32$0;
|
|
$1 = $3 + $5 | 0;
|
|
label$2 : while (1) {
|
|
i64toi32_i32$0 = $6$hi;
|
|
i64toi32_i32$1 = $1;
|
|
HEAP32[($1 + 24 | 0) >> 2] = $6;
|
|
HEAP32[($1 + 28 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $1;
|
|
HEAP32[($1 + 16 | 0) >> 2] = $6;
|
|
HEAP32[($1 + 20 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $1;
|
|
HEAP32[($1 + 8 | 0) >> 2] = $6;
|
|
HEAP32[($1 + 12 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $1;
|
|
HEAP32[$1 >> 2] = $6;
|
|
HEAP32[($1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
$1 = $1 + 32 | 0;
|
|
$2 = $2 + -32 | 0;
|
|
if ($2 >>> 0 > 31 >>> 0) {
|
|
continue label$2
|
|
}
|
|
break label$2;
|
|
};
|
|
}
|
|
return $0 | 0;
|
|
}
|
|
|
|
function __errno_location() {
|
|
return 116252 | 0;
|
|
}
|
|
|
|
function fabsf($0) {
|
|
$0 = Math_fround($0);
|
|
return Math_fround(Math_fround(Math_abs($0)));
|
|
}
|
|
|
|
function floor($0) {
|
|
$0 = +$0;
|
|
return +Math_floor($0);
|
|
}
|
|
|
|
function fmodf($0, $1) {
|
|
$0 = Math_fround($0);
|
|
$1 = Math_fround($1);
|
|
var $3 = 0, $6 = 0, $4 = 0, $7 = 0, $2 = 0, $5 = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
$2 = (wasm2js_scratch_store_f32($1), wasm2js_scratch_load_i32(2));
|
|
$3 = $2 << 1 | 0;
|
|
if (!$3) {
|
|
break label$2
|
|
}
|
|
$4 = __FLOAT_BITS_2(Math_fround($1)) | 0;
|
|
$5 = (wasm2js_scratch_store_f32($0), wasm2js_scratch_load_i32(2));
|
|
$6 = ($5 >>> 23 | 0) & 255 | 0;
|
|
if (($6 | 0) == (255 | 0)) {
|
|
break label$2
|
|
}
|
|
if (($4 & 2147483647 | 0) >>> 0 < 2139095041 >>> 0) {
|
|
break label$1
|
|
}
|
|
}
|
|
$1 = Math_fround($0 * $1);
|
|
return Math_fround(Math_fround($1 / $1));
|
|
}
|
|
label$3 : {
|
|
$4 = $5 << 1 | 0;
|
|
if ($4 >>> 0 > $3 >>> 0) {
|
|
break label$3
|
|
}
|
|
return Math_fround(($4 | 0) == ($3 | 0) ? Math_fround($0 * Math_fround(0.0)) : $0);
|
|
}
|
|
$4 = ($2 >>> 23 | 0) & 255 | 0;
|
|
label$4 : {
|
|
label$5 : {
|
|
if ($6) {
|
|
break label$5
|
|
}
|
|
$6 = 0;
|
|
label$6 : {
|
|
$3 = $5 << 9 | 0;
|
|
if (($3 | 0) < (0 | 0)) {
|
|
break label$6
|
|
}
|
|
label$7 : while (1) {
|
|
$6 = $6 + -1 | 0;
|
|
$3 = $3 << 1 | 0;
|
|
if (($3 | 0) > (-1 | 0)) {
|
|
continue label$7
|
|
}
|
|
break label$7;
|
|
};
|
|
}
|
|
$3 = $5 << (1 - $6 | 0) | 0;
|
|
break label$4;
|
|
}
|
|
$3 = $5 & 8388607 | 0 | 8388608 | 0;
|
|
}
|
|
label$8 : {
|
|
label$9 : {
|
|
if ($4) {
|
|
break label$9
|
|
}
|
|
$4 = 0;
|
|
label$10 : {
|
|
$7 = $2 << 9 | 0;
|
|
if (($7 | 0) < (0 | 0)) {
|
|
break label$10
|
|
}
|
|
label$11 : while (1) {
|
|
$4 = $4 + -1 | 0;
|
|
$7 = $7 << 1 | 0;
|
|
if (($7 | 0) > (-1 | 0)) {
|
|
continue label$11
|
|
}
|
|
break label$11;
|
|
};
|
|
}
|
|
$2 = $2 << (1 - $4 | 0) | 0;
|
|
break label$8;
|
|
}
|
|
$2 = $2 & 8388607 | 0 | 8388608 | 0;
|
|
}
|
|
label$12 : {
|
|
if (($6 | 0) <= ($4 | 0)) {
|
|
break label$12
|
|
}
|
|
label$13 : while (1) {
|
|
label$14 : {
|
|
$7 = $3 - $2 | 0;
|
|
if (($7 | 0) < (0 | 0)) {
|
|
break label$14
|
|
}
|
|
$3 = $7;
|
|
if ($3) {
|
|
break label$14
|
|
}
|
|
return Math_fround(Math_fround($0 * Math_fround(0.0)));
|
|
}
|
|
$3 = $3 << 1 | 0;
|
|
$6 = $6 + -1 | 0;
|
|
if (($6 | 0) > ($4 | 0)) {
|
|
continue label$13
|
|
}
|
|
break label$13;
|
|
};
|
|
$6 = $4;
|
|
}
|
|
label$15 : {
|
|
$4 = $3 - $2 | 0;
|
|
if (($4 | 0) < (0 | 0)) {
|
|
break label$15
|
|
}
|
|
$3 = $4;
|
|
if ($3) {
|
|
break label$15
|
|
}
|
|
return Math_fround(Math_fround($0 * Math_fround(0.0)));
|
|
}
|
|
label$16 : {
|
|
label$17 : {
|
|
if ($3 >>> 0 <= 8388607 >>> 0) {
|
|
break label$17
|
|
}
|
|
$7 = $3;
|
|
break label$16;
|
|
}
|
|
label$18 : while (1) {
|
|
$6 = $6 + -1 | 0;
|
|
$4 = $3 >>> 0 < 4194304 >>> 0;
|
|
$7 = $3 << 1 | 0;
|
|
$3 = $7;
|
|
if ($4) {
|
|
continue label$18
|
|
}
|
|
break label$18;
|
|
};
|
|
}
|
|
$3 = $5 & -2147483648 | 0;
|
|
label$19 : {
|
|
label$20 : {
|
|
if (($6 | 0) < (1 | 0)) {
|
|
break label$20
|
|
}
|
|
$6 = $7 + -8388608 | 0 | ($6 << 23 | 0) | 0;
|
|
break label$19;
|
|
}
|
|
$6 = $7 >>> (1 - $6 | 0) | 0;
|
|
}
|
|
return Math_fround((wasm2js_scratch_store_i32(2, $6 | $3 | 0), wasm2js_scratch_load_f32()));
|
|
}
|
|
|
|
function __FLOAT_BITS_2($0) {
|
|
$0 = Math_fround($0);
|
|
return (wasm2js_scratch_store_f32($0), wasm2js_scratch_load_i32(2)) | 0;
|
|
}
|
|
|
|
function __math_invalidf($0) {
|
|
$0 = Math_fround($0);
|
|
$0 = Math_fround($0 - $0);
|
|
return Math_fround(Math_fround($0 / $0));
|
|
}
|
|
|
|
function __math_xflowf($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = Math_fround($1);
|
|
return Math_fround(Math_fround(Math_fround(fp_barrierf(Math_fround($0 ? Math_fround(-$1) : $1))) * $1));
|
|
}
|
|
|
|
function fp_barrierf($0) {
|
|
$0 = Math_fround($0);
|
|
var $1 = 0;
|
|
$1 = __stack_pointer - 16 | 0;
|
|
HEAPF32[($1 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[($1 + 12 | 0) >> 2]));
|
|
}
|
|
|
|
function __math_oflowf($0) {
|
|
$0 = $0 | 0;
|
|
return Math_fround(Math_fround(__math_xflowf($0 | 0, Math_fround(Math_fround(1584563250285286751870879.0e5)))));
|
|
}
|
|
|
|
function __math_uflowf($0) {
|
|
$0 = $0 | 0;
|
|
return Math_fround(Math_fround(__math_xflowf($0 | 0, Math_fround(Math_fround(2.524354896707238e-29)))));
|
|
}
|
|
|
|
function powf($0, $1) {
|
|
$0 = Math_fround($0);
|
|
$1 = Math_fround($1);
|
|
var $4 = 0, $3 = 0, $6 = Math_fround(0), $2 = 0, $5 = 0, $7 = 0.0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, i64toi32_i32$3 = 0;
|
|
$2 = (wasm2js_scratch_store_f32($1), wasm2js_scratch_load_i32(2));
|
|
$3 = zeroinfnan($2 | 0) | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : {
|
|
label$4 : {
|
|
label$5 : {
|
|
$4 = (wasm2js_scratch_store_f32($0), wasm2js_scratch_load_i32(2));
|
|
if (($4 + -2139095040 | 0) >>> 0 < -2130706432 >>> 0) {
|
|
break label$5
|
|
}
|
|
$5 = 0;
|
|
if ($3) {
|
|
break label$4
|
|
}
|
|
break label$2;
|
|
}
|
|
if (!$3) {
|
|
break label$3
|
|
}
|
|
}
|
|
$6 = Math_fround(1.0);
|
|
if (($4 | 0) == (1065353216 | 0)) {
|
|
break label$1
|
|
}
|
|
$3 = $2 << 1 | 0;
|
|
if (!$3) {
|
|
break label$1
|
|
}
|
|
label$6 : {
|
|
label$7 : {
|
|
$4 = $4 << 1 | 0;
|
|
if ($4 >>> 0 > -16777216 >>> 0) {
|
|
break label$7
|
|
}
|
|
if ($3 >>> 0 < -16777215 >>> 0) {
|
|
break label$6
|
|
}
|
|
}
|
|
return Math_fround(Math_fround($0 + $1));
|
|
}
|
|
if (($4 | 0) == (2130706432 | 0)) {
|
|
break label$1
|
|
}
|
|
return Math_fround($4 >>> 0 > 2130706431 >>> 0 ^ ($2 | 0) > (-1 | 0) | 0 ? Math_fround(0.0) : Math_fround($1 * $1));
|
|
}
|
|
label$8 : {
|
|
if (!(zeroinfnan($4 | 0) | 0)) {
|
|
break label$8
|
|
}
|
|
$6 = Math_fround($0 * $0);
|
|
label$9 : {
|
|
if (($4 | 0) > (-1 | 0)) {
|
|
break label$9
|
|
}
|
|
$6 = (checkint($2 | 0) | 0 | 0) == (1 | 0) ? Math_fround(-$6) : $6;
|
|
}
|
|
if (($2 | 0) > (-1 | 0)) {
|
|
break label$1
|
|
}
|
|
return Math_fround(Math_fround(fp_barrierf_1(Math_fround(Math_fround(Math_fround(1.0) / $6)))));
|
|
}
|
|
$5 = 0;
|
|
label$10 : {
|
|
if (($4 | 0) > (-1 | 0)) {
|
|
break label$10
|
|
}
|
|
label$11 : {
|
|
$3 = checkint($2 | 0) | 0;
|
|
if ($3) {
|
|
break label$11
|
|
}
|
|
return Math_fround(Math_fround(__math_invalidf(Math_fround($0))));
|
|
}
|
|
$4 = $4 & 2147483647 | 0;
|
|
$5 = (($3 | 0) == (1 | 0)) << 16 | 0;
|
|
}
|
|
if ($4 >>> 0 > 8388607 >>> 0) {
|
|
break label$2
|
|
}
|
|
$4 = ((wasm2js_scratch_store_f32(Math_fround($0 * Math_fround(8388608.0))), wasm2js_scratch_load_i32(2)) & 2147483647 | 0) + -192937984 | 0;
|
|
}
|
|
label$12 : {
|
|
$7 = +log2_inline($4 | 0) * +$1;
|
|
wasm2js_scratch_store_f64(+$7);
|
|
i64toi32_i32$0 = wasm2js_scratch_load_i32(1 | 0) | 0;
|
|
i64toi32_i32$2 = wasm2js_scratch_load_i32(0 | 0) | 0;
|
|
i64toi32_i32$1 = 2147450880;
|
|
i64toi32_i32$3 = 0;
|
|
i64toi32_i32$1 = i64toi32_i32$0 & i64toi32_i32$1 | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$2 & i64toi32_i32$3 | 0;
|
|
i64toi32_i32$2 = 1079967744;
|
|
i64toi32_i32$3 = 1;
|
|
if (i64toi32_i32$1 >>> 0 < i64toi32_i32$2 >>> 0 | ((i64toi32_i32$1 | 0) == (i64toi32_i32$2 | 0) & i64toi32_i32$0 >>> 0 < i64toi32_i32$3 >>> 0 | 0) | 0) {
|
|
break label$12
|
|
}
|
|
label$13 : {
|
|
if (!($7 > 127.99999995700433)) {
|
|
break label$13
|
|
}
|
|
return Math_fround(Math_fround(__math_oflowf($5 | 0)));
|
|
}
|
|
if (!($7 <= -150.0)) {
|
|
break label$12
|
|
}
|
|
return Math_fround(Math_fround(__math_uflowf($5 | 0)));
|
|
}
|
|
$6 = Math_fround(exp2_inline(+$7, $5 | 0));
|
|
}
|
|
return Math_fround($6);
|
|
}
|
|
|
|
function zeroinfnan($0) {
|
|
$0 = $0 | 0;
|
|
return (($0 << 1 | 0) + 16777216 | 0) >>> 0 < 16777217 >>> 0 | 0;
|
|
}
|
|
|
|
function checkint($0) {
|
|
$0 = $0 | 0;
|
|
var $2 = 0, $1 = 0;
|
|
$1 = 0;
|
|
label$1 : {
|
|
$2 = ($0 >>> 23 | 0) & 255 | 0;
|
|
if ($2 >>> 0 < 127 >>> 0) {
|
|
break label$1
|
|
}
|
|
$1 = 2;
|
|
if ($2 >>> 0 > 150 >>> 0) {
|
|
break label$1
|
|
}
|
|
$1 = 0;
|
|
$2 = 1 << (150 - $2 | 0) | 0;
|
|
if (($2 + -1 | 0) & $0 | 0) {
|
|
break label$1
|
|
}
|
|
$1 = $2 & $0 | 0 ? 1 : 2;
|
|
}
|
|
return $1 | 0;
|
|
}
|
|
|
|
function fp_barrierf_1($0) {
|
|
$0 = Math_fround($0);
|
|
var $1 = 0;
|
|
$1 = __stack_pointer - 16 | 0;
|
|
HEAPF32[($1 + 12 | 0) >> 2] = $0;
|
|
return Math_fround(Math_fround(HEAPF32[($1 + 12 | 0) >> 2]));
|
|
}
|
|
|
|
function log2_inline($0) {
|
|
$0 = $0 | 0;
|
|
var $2 = 0.0, $1 = 0, $3 = 0.0, $12 = 0.0;
|
|
$1 = $0 + -1060306944 | 0;
|
|
$12 = +(wasm2js_scratch_store_i32(2, $0 - ($1 & -8388608 | 0) | 0), wasm2js_scratch_load_f32());
|
|
$0 = ($1 >>> 15 | 0) & 240 | 0;
|
|
$2 = $12 * +HEAPF64[($0 + 108488 | 0) >> 3] + -1.0;
|
|
$3 = $2 * $2;
|
|
return +((+HEAPF64[(0 + 108744 | 0) >> 3] * $2 + +HEAPF64[(0 + 108752 | 0) >> 3]) * ($3 * $3) + ((+HEAPF64[(0 + 108760 | 0) >> 3] * $2 + +HEAPF64[(0 + 108768 | 0) >> 3]) * $3 + (+HEAPF64[(0 + 108776 | 0) >> 3] * $2 + (+HEAPF64[($0 + 108496 | 0) >> 3] + +($1 >> 23 | 0 | 0)))));
|
|
}
|
|
|
|
function exp2_inline($0, $1) {
|
|
$0 = +$0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, i64toi32_i32$5 = 0, i64toi32_i32$4 = 0, $2 = 0.0, $3 = 0.0, $4 = 0, $4$hi = 0, $17 = 0, $27 = 0.0, $32$hi = 0, $34$hi = 0, $40 = 0, $40$hi = 0;
|
|
$2 = +HEAPF64[(0 + 108416 | 0) >> 3];
|
|
$3 = $2 + $0;
|
|
$0 = $0 - ($3 - $2);
|
|
$27 = (+HEAPF64[(0 + 108424 | 0) >> 3] * $0 + +HEAPF64[(0 + 108432 | 0) >> 3]) * ($0 * $0) + (+HEAPF64[(0 + 108440 | 0) >> 3] * $0 + 1.0);
|
|
wasm2js_scratch_store_f64(+$3);
|
|
i64toi32_i32$0 = wasm2js_scratch_load_i32(1 | 0) | 0;
|
|
$4 = wasm2js_scratch_load_i32(0 | 0) | 0;
|
|
$4$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 0;
|
|
$32$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $4$hi;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$1 = $32$hi;
|
|
i64toi32_i32$3 = $1;
|
|
i64toi32_i32$4 = i64toi32_i32$2 + i64toi32_i32$3 | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$0 + i64toi32_i32$1 | 0;
|
|
if (i64toi32_i32$4 >>> 0 < i64toi32_i32$3 >>> 0) {
|
|
i64toi32_i32$5 = i64toi32_i32$5 + 1 | 0
|
|
}
|
|
i64toi32_i32$0 = i64toi32_i32$4;
|
|
i64toi32_i32$2 = 0;
|
|
i64toi32_i32$3 = 47;
|
|
i64toi32_i32$1 = i64toi32_i32$3 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$2 = i64toi32_i32$0 << i64toi32_i32$1 | 0;
|
|
$17 = 0;
|
|
} else {
|
|
i64toi32_i32$2 = ((1 << i64toi32_i32$1 | 0) - 1 | 0) & (i64toi32_i32$0 >>> (32 - i64toi32_i32$1 | 0) | 0) | 0 | (i64toi32_i32$5 << i64toi32_i32$1 | 0) | 0;
|
|
$17 = i64toi32_i32$0 << i64toi32_i32$1 | 0;
|
|
}
|
|
$34$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $4$hi;
|
|
i64toi32_i32$5 = (($4 & 31 | 0) << 3 | 0) + 108160 | 0;
|
|
i64toi32_i32$2 = HEAP32[i64toi32_i32$5 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$5 + 4 | 0) >> 2] | 0;
|
|
$40 = i64toi32_i32$2;
|
|
$40$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $34$hi;
|
|
i64toi32_i32$5 = $17;
|
|
i64toi32_i32$2 = $40$hi;
|
|
i64toi32_i32$3 = $40;
|
|
i64toi32_i32$1 = i64toi32_i32$5 + i64toi32_i32$3 | 0;
|
|
i64toi32_i32$4 = i64toi32_i32$0 + i64toi32_i32$2 | 0;
|
|
if (i64toi32_i32$1 >>> 0 < i64toi32_i32$3 >>> 0) {
|
|
i64toi32_i32$4 = i64toi32_i32$4 + 1 | 0
|
|
}
|
|
wasm2js_scratch_store_i32(0 | 0, i64toi32_i32$1 | 0);
|
|
wasm2js_scratch_store_i32(1 | 0, i64toi32_i32$4 | 0);
|
|
return Math_fround(Math_fround($27 * +wasm2js_scratch_load_f64()));
|
|
}
|
|
|
|
function printf($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $2 = 0;
|
|
$2 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $2;
|
|
HEAP32[($2 + 12 | 0) >> 2] = $1;
|
|
$1 = vfprintf(112856 | 0, $0 | 0, $1 | 0) | 0;
|
|
__stack_pointer = $2 + 16 | 0;
|
|
return $1 | 0;
|
|
}
|
|
|
|
function scalbn($0, $1) {
|
|
$0 = +$0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$4 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $8 = 0, $32 = 0.0, i64toi32_i32$0 = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (($1 | 0) < (1024 | 0)) {
|
|
break label$2
|
|
}
|
|
$0 = $0 * 8988465674311579538646525.0e283;
|
|
label$3 : {
|
|
if ($1 >>> 0 >= 2047 >>> 0) {
|
|
break label$3
|
|
}
|
|
$1 = $1 + -1023 | 0;
|
|
break label$1;
|
|
}
|
|
$0 = $0 * 8988465674311579538646525.0e283;
|
|
$1 = (($1 | 0) < (3069 | 0) ? $1 : 3069) + -2046 | 0;
|
|
break label$1;
|
|
}
|
|
if (($1 | 0) > (-1023 | 0)) {
|
|
break label$1
|
|
}
|
|
$0 = $0 * 2.004168360008973e-292;
|
|
label$4 : {
|
|
if ($1 >>> 0 <= -1992 >>> 0) {
|
|
break label$4
|
|
}
|
|
$1 = $1 + 969 | 0;
|
|
break label$1;
|
|
}
|
|
$0 = $0 * 2.004168360008973e-292;
|
|
$1 = (($1 | 0) > (-2960 | 0) ? $1 : -2960) + 1938 | 0;
|
|
}
|
|
$32 = $0;
|
|
i64toi32_i32$0 = 0;
|
|
i64toi32_i32$2 = $1 + 1023 | 0;
|
|
i64toi32_i32$1 = 0;
|
|
i64toi32_i32$3 = 52;
|
|
i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
|
|
$8 = 0;
|
|
} else {
|
|
i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$0 << i64toi32_i32$4 | 0) | 0;
|
|
$8 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
|
|
}
|
|
wasm2js_scratch_store_i32(0 | 0, $8 | 0);
|
|
wasm2js_scratch_store_i32(1 | 0, i64toi32_i32$1 | 0);
|
|
return +($32 * +wasm2js_scratch_load_f64());
|
|
}
|
|
|
|
function sinf($0) {
|
|
$0 = Math_fround($0);
|
|
var $1 = 0, $3 = 0, $4 = 0.0, $2 = 0;
|
|
$1 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
$2 = (wasm2js_scratch_store_f32($0), wasm2js_scratch_load_i32(2));
|
|
$3 = $2 & 2147483647 | 0;
|
|
if ($3 >>> 0 > 1061752794 >>> 0) {
|
|
break label$2
|
|
}
|
|
if ($3 >>> 0 < 964689920 >>> 0) {
|
|
break label$1
|
|
}
|
|
$0 = Math_fround(__sindf(+(+$0)));
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
if ($3 >>> 0 > 1081824209 >>> 0) {
|
|
break label$3
|
|
}
|
|
$4 = +$0;
|
|
label$4 : {
|
|
if ($3 >>> 0 > 1075235811 >>> 0) {
|
|
break label$4
|
|
}
|
|
label$5 : {
|
|
if (($2 | 0) > (-1 | 0)) {
|
|
break label$5
|
|
}
|
|
$0 = Math_fround(-Math_fround(__cosdf(+($4 + 1.5707963267948966))));
|
|
break label$1;
|
|
}
|
|
$0 = Math_fround(__cosdf(+($4 + -1.5707963267948966)));
|
|
break label$1;
|
|
}
|
|
$0 = Math_fround(__sindf(+-((($2 | 0) > (-1 | 0) ? -3.141592653589793 : 3.141592653589793) + $4)));
|
|
break label$1;
|
|
}
|
|
label$6 : {
|
|
if ($3 >>> 0 > 1088565717 >>> 0) {
|
|
break label$6
|
|
}
|
|
label$7 : {
|
|
if ($3 >>> 0 > 1085271519 >>> 0) {
|
|
break label$7
|
|
}
|
|
$4 = +$0;
|
|
label$8 : {
|
|
if (($2 | 0) > (-1 | 0)) {
|
|
break label$8
|
|
}
|
|
$0 = Math_fround(__cosdf(+($4 + 4.71238898038469)));
|
|
break label$1;
|
|
}
|
|
$0 = Math_fround(-Math_fround(__cosdf(+($4 + -4.71238898038469))));
|
|
break label$1;
|
|
}
|
|
$0 = Math_fround(__sindf(+((($2 | 0) < (0 | 0) ? 6.283185307179586 : -6.283185307179586) + +$0)));
|
|
break label$1;
|
|
}
|
|
label$9 : {
|
|
if ($3 >>> 0 < 2139095040 >>> 0) {
|
|
break label$9
|
|
}
|
|
$0 = Math_fround($0 - $0);
|
|
break label$1;
|
|
}
|
|
label$10 : {
|
|
switch ((__rem_pio2f(Math_fround($0), $1 + 8 | 0 | 0) | 0) & 3 | 0 | 0) {
|
|
case 0:
|
|
$0 = Math_fround(__sindf(+(+HEAPF64[($1 + 8 | 0) >> 3])));
|
|
break label$1;
|
|
case 1:
|
|
$0 = Math_fround(__cosdf(+(+HEAPF64[($1 + 8 | 0) >> 3])));
|
|
break label$1;
|
|
case 2:
|
|
$0 = Math_fround(__sindf(+-+HEAPF64[($1 + 8 | 0) >> 3]));
|
|
break label$1;
|
|
default:
|
|
break label$10;
|
|
};
|
|
}
|
|
$0 = Math_fround(-Math_fround(__cosdf(+(+HEAPF64[($1 + 8 | 0) >> 3]))));
|
|
}
|
|
__stack_pointer = $1 + 16 | 0;
|
|
return Math_fround($0);
|
|
}
|
|
|
|
function sqrt($0) {
|
|
$0 = +$0;
|
|
return +Math_sqrt($0);
|
|
}
|
|
|
|
function sqrtf($0) {
|
|
$0 = Math_fround($0);
|
|
return Math_fround(Math_fround(Math_sqrt($0)));
|
|
}
|
|
|
|
function __stdio_write($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $4 = 0, $3 = 0, $5 = 0, $8 = 0, $6 = 0, $7 = 0, $9 = 0;
|
|
$3 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $3;
|
|
$4 = HEAP32[($0 + 28 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 16 | 0) >> 2] = $4;
|
|
$5 = HEAP32[($0 + 20 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 28 | 0) >> 2] = $2;
|
|
HEAP32[($3 + 24 | 0) >> 2] = $1;
|
|
$1 = $5 - $4 | 0;
|
|
HEAP32[($3 + 20 | 0) >> 2] = $1;
|
|
$6 = $1 + $2 | 0;
|
|
$4 = $3 + 16 | 0;
|
|
$7 = 2;
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : {
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!(__wasi_syscall_ret(__wasi_fd_write(HEAP32[($0 + 60 | 0) >> 2] | 0 | 0, $3 + 16 | 0 | 0, 2 | 0, $3 + 12 | 0 | 0) | 0 | 0) | 0)) {
|
|
break label$5
|
|
}
|
|
$5 = $4;
|
|
break label$4;
|
|
}
|
|
label$6 : while (1) {
|
|
$1 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
if (($6 | 0) == ($1 | 0)) {
|
|
break label$3
|
|
}
|
|
label$7 : {
|
|
if (($1 | 0) > (-1 | 0)) {
|
|
break label$7
|
|
}
|
|
$5 = $4;
|
|
break label$2;
|
|
}
|
|
$8 = HEAP32[($4 + 4 | 0) >> 2] | 0;
|
|
$9 = $1 >>> 0 > $8 >>> 0;
|
|
$5 = $4 + ($9 << 3 | 0) | 0;
|
|
$8 = $1 - ($9 ? $8 : 0) | 0;
|
|
HEAP32[$5 >> 2] = (HEAP32[$5 >> 2] | 0) + $8 | 0;
|
|
$4 = $4 + ($9 ? 12 : 4) | 0;
|
|
HEAP32[$4 >> 2] = (HEAP32[$4 >> 2] | 0) - $8 | 0;
|
|
$6 = $6 - $1 | 0;
|
|
$4 = $5;
|
|
$7 = $7 - $9 | 0;
|
|
if (!(__wasi_syscall_ret(__wasi_fd_write(HEAP32[($0 + 60 | 0) >> 2] | 0 | 0, $4 | 0, $7 | 0, $3 + 12 | 0 | 0) | 0 | 0) | 0)) {
|
|
continue label$6
|
|
}
|
|
break label$6;
|
|
};
|
|
}
|
|
if (($6 | 0) != (-1 | 0)) {
|
|
break label$2
|
|
}
|
|
}
|
|
$1 = HEAP32[($0 + 44 | 0) >> 2] | 0;
|
|
HEAP32[($0 + 28 | 0) >> 2] = $1;
|
|
HEAP32[($0 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($0 + 16 | 0) >> 2] = $1 + (HEAP32[($0 + 48 | 0) >> 2] | 0) | 0;
|
|
$1 = $2;
|
|
break label$1;
|
|
}
|
|
$1 = 0;
|
|
HEAP32[($0 + 28 | 0) >> 2] = 0;
|
|
HEAP32[($0 + 16 | 0) >> 2] = 0;
|
|
HEAP32[($0 + 20 | 0) >> 2] = 0;
|
|
HEAP32[$0 >> 2] = HEAP32[$0 >> 2] | 0 | 32 | 0;
|
|
if (($7 | 0) == (2 | 0)) {
|
|
break label$1
|
|
}
|
|
$1 = $2 - (HEAP32[($5 + 4 | 0) >> 2] | 0) | 0;
|
|
}
|
|
__stack_pointer = $3 + 32 | 0;
|
|
return $1 | 0;
|
|
}
|
|
|
|
function __emscripten_stdout_close($0) {
|
|
$0 = $0 | 0;
|
|
return 0 | 0;
|
|
}
|
|
|
|
function __emscripten_stdout_seek($0, $1, $1$hi, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$1$hi = $1$hi | 0;
|
|
$2 = $2 | 0;
|
|
i64toi32_i32$HIGH_BITS = 0;
|
|
return 0 | 0;
|
|
}
|
|
|
|
function strcmp($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $3 = 0, $2 = 0;
|
|
$2 = HEAPU8[$1 >> 0] | 0;
|
|
label$1 : {
|
|
$3 = HEAPU8[$0 >> 0] | 0;
|
|
if (!$3) {
|
|
break label$1
|
|
}
|
|
if (($3 | 0) != ($2 & 255 | 0 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : while (1) {
|
|
$2 = HEAPU8[($1 + 1 | 0) >> 0] | 0;
|
|
$3 = HEAPU8[($0 + 1 | 0) >> 0] | 0;
|
|
if (!$3) {
|
|
break label$1
|
|
}
|
|
$1 = $1 + 1 | 0;
|
|
$0 = $0 + 1 | 0;
|
|
if (($3 | 0) == ($2 & 255 | 0 | 0)) {
|
|
continue label$2
|
|
}
|
|
break label$2;
|
|
};
|
|
}
|
|
return $3 - ($2 & 255 | 0) | 0 | 0;
|
|
}
|
|
|
|
function strdup($0) {
|
|
$0 = $0 | 0;
|
|
var $1 = 0, $2 = 0;
|
|
label$1 : {
|
|
$1 = (strlen($0 | 0) | 0) + 1 | 0;
|
|
$2 = dlmalloc($1 | 0) | 0;
|
|
if ($2) {
|
|
break label$1
|
|
}
|
|
return 0 | 0;
|
|
}
|
|
return __memcpy($2 | 0, $0 | 0, $1 | 0) | 0 | 0;
|
|
}
|
|
|
|
function strlen($0) {
|
|
$0 = $0 | 0;
|
|
var $1 = 0, $2 = 0, $3 = 0;
|
|
$1 = $0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!($1 & 3 | 0)) {
|
|
break label$2
|
|
}
|
|
label$3 : {
|
|
if (HEAPU8[$0 >> 0] | 0) {
|
|
break label$3
|
|
}
|
|
return $0 - $0 | 0 | 0;
|
|
}
|
|
$1 = $0;
|
|
label$4 : while (1) {
|
|
$1 = $1 + 1 | 0;
|
|
if (!($1 & 3 | 0)) {
|
|
break label$2
|
|
}
|
|
if (HEAPU8[$1 >> 0] | 0) {
|
|
continue label$4
|
|
}
|
|
break label$1;
|
|
};
|
|
}
|
|
label$5 : while (1) {
|
|
$2 = $1;
|
|
$1 = $1 + 4 | 0;
|
|
$3 = HEAP32[$2 >> 2] | 0;
|
|
if (!((($3 ^ -1 | 0) & ($3 + -16843009 | 0) | 0) & -2139062144 | 0)) {
|
|
continue label$5
|
|
}
|
|
break label$5;
|
|
};
|
|
label$6 : while (1) {
|
|
$1 = $2;
|
|
$2 = $1 + 1 | 0;
|
|
if (HEAPU8[$1 >> 0] | 0) {
|
|
continue label$6
|
|
}
|
|
break label$6;
|
|
};
|
|
}
|
|
return $1 - $0 | 0 | 0;
|
|
}
|
|
|
|
function __lockfile($0) {
|
|
$0 = $0 | 0;
|
|
return 1 | 0;
|
|
}
|
|
|
|
function __unlockfile($0) {
|
|
$0 = $0 | 0;
|
|
}
|
|
|
|
function emscripten_futex_wake($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
return 0 | 0;
|
|
}
|
|
|
|
function __lock($0) {
|
|
$0 = $0 | 0;
|
|
}
|
|
|
|
function __unlock($0) {
|
|
$0 = $0 | 0;
|
|
}
|
|
|
|
function __ofl_lock() {
|
|
__lock(117288 | 0);
|
|
return 117292 | 0;
|
|
}
|
|
|
|
function __ofl_unlock() {
|
|
__unlock(117288 | 0);
|
|
}
|
|
|
|
function __towrite($0) {
|
|
$0 = $0 | 0;
|
|
var $1 = 0;
|
|
$1 = HEAP32[($0 + 72 | 0) >> 2] | 0;
|
|
HEAP32[($0 + 72 | 0) >> 2] = $1 + -1 | 0 | $1 | 0;
|
|
label$1 : {
|
|
$1 = HEAP32[$0 >> 2] | 0;
|
|
if (!($1 & 8 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[$0 >> 2] = $1 | 32 | 0;
|
|
return -1 | 0;
|
|
}
|
|
HEAP32[($0 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($0 + 8 | 0) >> 2] = 0;
|
|
$1 = HEAP32[($0 + 44 | 0) >> 2] | 0;
|
|
HEAP32[($0 + 28 | 0) >> 2] = $1;
|
|
HEAP32[($0 + 20 | 0) >> 2] = $1;
|
|
HEAP32[($0 + 16 | 0) >> 2] = $1 + (HEAP32[($0 + 48 | 0) >> 2] | 0) | 0;
|
|
return 0 | 0;
|
|
}
|
|
|
|
function isdigit($0) {
|
|
$0 = $0 | 0;
|
|
return ($0 + -48 | 0) >>> 0 < 10 >>> 0 | 0;
|
|
}
|
|
|
|
function memchr($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = ($2 | 0) != (0 | 0);
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!($0 & 3 | 0)) {
|
|
break label$3
|
|
}
|
|
if (!$2) {
|
|
break label$3
|
|
}
|
|
$4 = $1 & 255 | 0;
|
|
label$4 : while (1) {
|
|
if ((HEAPU8[$0 >> 0] | 0 | 0) == ($4 | 0)) {
|
|
break label$2
|
|
}
|
|
$2 = $2 + -1 | 0;
|
|
$3 = ($2 | 0) != (0 | 0);
|
|
$0 = $0 + 1 | 0;
|
|
if (!($0 & 3 | 0)) {
|
|
break label$3
|
|
}
|
|
if ($2) {
|
|
continue label$4
|
|
}
|
|
break label$4;
|
|
};
|
|
}
|
|
if (!$3) {
|
|
break label$1
|
|
}
|
|
label$5 : {
|
|
if ((HEAPU8[$0 >> 0] | 0 | 0) == ($1 & 255 | 0 | 0)) {
|
|
break label$5
|
|
}
|
|
if ($2 >>> 0 < 4 >>> 0) {
|
|
break label$5
|
|
}
|
|
$4 = Math_imul($1 & 255 | 0, 16843009);
|
|
label$6 : while (1) {
|
|
$3 = (HEAP32[$0 >> 2] | 0) ^ $4 | 0;
|
|
if ((($3 ^ -1 | 0) & ($3 + -16843009 | 0) | 0) & -2139062144 | 0) {
|
|
break label$2
|
|
}
|
|
$0 = $0 + 4 | 0;
|
|
$2 = $2 + -4 | 0;
|
|
if ($2 >>> 0 > 3 >>> 0) {
|
|
continue label$6
|
|
}
|
|
break label$6;
|
|
};
|
|
}
|
|
if (!$2) {
|
|
break label$1
|
|
}
|
|
}
|
|
$3 = $1 & 255 | 0;
|
|
label$7 : while (1) {
|
|
label$8 : {
|
|
if ((HEAPU8[$0 >> 0] | 0 | 0) != ($3 | 0)) {
|
|
break label$8
|
|
}
|
|
return $0 | 0;
|
|
}
|
|
$0 = $0 + 1 | 0;
|
|
$2 = $2 + -1 | 0;
|
|
if ($2) {
|
|
continue label$7
|
|
}
|
|
break label$7;
|
|
};
|
|
}
|
|
return 0 | 0;
|
|
}
|
|
|
|
function strnlen($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $2 = 0;
|
|
$2 = memchr($0 | 0, 0 | 0, $1 | 0) | 0;
|
|
return ($2 ? $2 - $0 | 0 : $1) | 0;
|
|
}
|
|
|
|
function frexp($0, $1) {
|
|
$0 = +$0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $3 = 0, i64toi32_i32$2 = 0, i64toi32_i32$4 = 0, $2 = 0, $10 = 0, $2$hi = 0;
|
|
label$1 : {
|
|
wasm2js_scratch_store_f64(+$0);
|
|
i64toi32_i32$0 = wasm2js_scratch_load_i32(1 | 0) | 0;
|
|
$2 = wasm2js_scratch_load_i32(0 | 0) | 0;
|
|
$2$hi = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $2;
|
|
i64toi32_i32$1 = 0;
|
|
i64toi32_i32$3 = 52;
|
|
i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$1 = 0;
|
|
$10 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
|
|
} else {
|
|
i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
|
|
$10 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
|
|
}
|
|
$3 = $10 & 2047 | 0;
|
|
if (($3 | 0) == (2047 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
if ($3) {
|
|
break label$2
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if ($0 != 0.0) {
|
|
break label$4
|
|
}
|
|
$3 = 0;
|
|
break label$3;
|
|
}
|
|
$0 = +frexp(+($0 * 18446744073709551615.0), $1 | 0);
|
|
$3 = (HEAP32[$1 >> 2] | 0) + -64 | 0;
|
|
}
|
|
HEAP32[$1 >> 2] = $3;
|
|
return +$0;
|
|
}
|
|
HEAP32[$1 >> 2] = $3 + -1022 | 0;
|
|
i64toi32_i32$1 = $2$hi;
|
|
i64toi32_i32$0 = $2;
|
|
i64toi32_i32$2 = -2146435073;
|
|
i64toi32_i32$3 = -1;
|
|
i64toi32_i32$2 = i64toi32_i32$1 & i64toi32_i32$2 | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$0 & i64toi32_i32$3 | 0;
|
|
i64toi32_i32$0 = 1071644672;
|
|
i64toi32_i32$3 = 0;
|
|
i64toi32_i32$0 = i64toi32_i32$2 | i64toi32_i32$0 | 0;
|
|
wasm2js_scratch_store_i32(0 | 0, i64toi32_i32$1 | i64toi32_i32$3 | 0 | 0);
|
|
wasm2js_scratch_store_i32(1 | 0, i64toi32_i32$0 | 0);
|
|
$0 = +wasm2js_scratch_load_f64();
|
|
}
|
|
return +$0;
|
|
}
|
|
|
|
function __fwritex($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $3 = 0, $4 = 0, $5 = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
$3 = HEAP32[($2 + 16 | 0) >> 2] | 0;
|
|
if ($3) {
|
|
break label$2
|
|
}
|
|
$4 = 0;
|
|
if (__towrite($2 | 0) | 0) {
|
|
break label$1
|
|
}
|
|
$3 = HEAP32[($2 + 16 | 0) >> 2] | 0;
|
|
}
|
|
label$3 : {
|
|
$5 = HEAP32[($2 + 20 | 0) >> 2] | 0;
|
|
if (($3 - $5 | 0) >>> 0 >= $1 >>> 0) {
|
|
break label$3
|
|
}
|
|
return FUNCTION_TABLE[HEAP32[($2 + 36 | 0) >> 2] | 0 | 0]($2, $0, $1) | 0 | 0;
|
|
}
|
|
label$4 : {
|
|
label$5 : {
|
|
if ((HEAP32[($2 + 80 | 0) >> 2] | 0 | 0) >= (0 | 0)) {
|
|
break label$5
|
|
}
|
|
$3 = 0;
|
|
break label$4;
|
|
}
|
|
$4 = $1;
|
|
label$6 : while (1) {
|
|
label$7 : {
|
|
$3 = $4;
|
|
if ($3) {
|
|
break label$7
|
|
}
|
|
$3 = 0;
|
|
break label$4;
|
|
}
|
|
$4 = $3 + -1 | 0;
|
|
if ((HEAPU8[($0 + $4 | 0) >> 0] | 0 | 0) != (10 | 0)) {
|
|
continue label$6
|
|
}
|
|
break label$6;
|
|
};
|
|
$4 = FUNCTION_TABLE[HEAP32[($2 + 36 | 0) >> 2] | 0 | 0]($2, $0, $3) | 0;
|
|
if ($4 >>> 0 < $3 >>> 0) {
|
|
break label$1
|
|
}
|
|
$0 = $0 + $3 | 0;
|
|
$1 = $1 - $3 | 0;
|
|
$5 = HEAP32[($2 + 20 | 0) >> 2] | 0;
|
|
}
|
|
__memcpy($5 | 0, $0 | 0, $1 | 0) | 0;
|
|
HEAP32[($2 + 20 | 0) >> 2] = (HEAP32[($2 + 20 | 0) >> 2] | 0) + $1 | 0;
|
|
$4 = $3 + $1 | 0;
|
|
}
|
|
return $4 | 0;
|
|
}
|
|
|
|
function fwrite($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
$4 = Math_imul($2, $1);
|
|
label$1 : {
|
|
label$2 : {
|
|
if ((HEAP32[($3 + 76 | 0) >> 2] | 0 | 0) > (-1 | 0)) {
|
|
break label$2
|
|
}
|
|
$0 = __fwritex($0 | 0, $4 | 0, $3 | 0) | 0;
|
|
break label$1;
|
|
}
|
|
$5 = __lockfile($3 | 0) | 0;
|
|
$0 = __fwritex($0 | 0, $4 | 0, $3 | 0) | 0;
|
|
if (!$5) {
|
|
break label$1
|
|
}
|
|
__unlockfile($3 | 0);
|
|
}
|
|
label$3 : {
|
|
if (($0 | 0) != ($4 | 0)) {
|
|
break label$3
|
|
}
|
|
return ($1 ? $2 : 0) | 0;
|
|
}
|
|
return ($0 >>> 0) / ($1 >>> 0) | 0 | 0;
|
|
}
|
|
|
|
function __vfprintf_internal($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $5 = 0, i64toi32_i32$0 = 0, $8 = 0, $6 = 0, $7 = 0;
|
|
$5 = __stack_pointer - 208 | 0;
|
|
__stack_pointer = $5;
|
|
HEAP32[($5 + 204 | 0) >> 2] = $2;
|
|
$6 = 0;
|
|
__memset($5 + 160 | 0 | 0, 0 | 0, 40 | 0) | 0;
|
|
HEAP32[($5 + 200 | 0) >> 2] = HEAP32[($5 + 204 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if ((printf_core(0 | 0, $1 | 0, $5 + 200 | 0 | 0, $5 + 80 | 0 | 0, $5 + 160 | 0 | 0, $3 | 0, $4 | 0) | 0 | 0) >= (0 | 0)) {
|
|
break label$2
|
|
}
|
|
$4 = -1;
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
if ((HEAP32[($0 + 76 | 0) >> 2] | 0 | 0) < (0 | 0)) {
|
|
break label$3
|
|
}
|
|
$6 = __lockfile($0 | 0) | 0;
|
|
}
|
|
$7 = HEAP32[$0 >> 2] | 0;
|
|
label$4 : {
|
|
if ((HEAP32[($0 + 72 | 0) >> 2] | 0 | 0) > (0 | 0)) {
|
|
break label$4
|
|
}
|
|
HEAP32[$0 >> 2] = $7 & -33 | 0;
|
|
}
|
|
label$5 : {
|
|
label$6 : {
|
|
label$7 : {
|
|
label$8 : {
|
|
if (HEAP32[($0 + 48 | 0) >> 2] | 0) {
|
|
break label$8
|
|
}
|
|
HEAP32[($0 + 48 | 0) >> 2] = 80;
|
|
HEAP32[($0 + 28 | 0) >> 2] = 0;
|
|
i64toi32_i32$0 = 0;
|
|
HEAP32[($0 + 16 | 0) >> 2] = 0;
|
|
HEAP32[($0 + 20 | 0) >> 2] = i64toi32_i32$0;
|
|
$8 = HEAP32[($0 + 44 | 0) >> 2] | 0;
|
|
HEAP32[($0 + 44 | 0) >> 2] = $5;
|
|
break label$7;
|
|
}
|
|
$8 = 0;
|
|
if (HEAP32[($0 + 16 | 0) >> 2] | 0) {
|
|
break label$6
|
|
}
|
|
}
|
|
$2 = -1;
|
|
if (__towrite($0 | 0) | 0) {
|
|
break label$5
|
|
}
|
|
}
|
|
$2 = printf_core($0 | 0, $1 | 0, $5 + 200 | 0 | 0, $5 + 80 | 0 | 0, $5 + 160 | 0 | 0, $3 | 0, $4 | 0) | 0;
|
|
}
|
|
$4 = $7 & 32 | 0;
|
|
label$9 : {
|
|
if (!$8) {
|
|
break label$9
|
|
}
|
|
FUNCTION_TABLE[HEAP32[($0 + 36 | 0) >> 2] | 0 | 0]($0, 0, 0) | 0;
|
|
HEAP32[($0 + 48 | 0) >> 2] = 0;
|
|
HEAP32[($0 + 44 | 0) >> 2] = $8;
|
|
HEAP32[($0 + 28 | 0) >> 2] = 0;
|
|
$3 = HEAP32[($0 + 20 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = 0;
|
|
HEAP32[($0 + 16 | 0) >> 2] = 0;
|
|
HEAP32[($0 + 20 | 0) >> 2] = i64toi32_i32$0;
|
|
$2 = $3 ? $2 : -1;
|
|
}
|
|
$3 = HEAP32[$0 >> 2] | 0;
|
|
HEAP32[$0 >> 2] = $3 | $4 | 0;
|
|
$4 = $3 & 32 | 0 ? -1 : $2;
|
|
if (!$6) {
|
|
break label$1
|
|
}
|
|
__unlockfile($0 | 0);
|
|
}
|
|
__stack_pointer = $5 + 208 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function printf_core($0, $1, $2, $3, $4, $5, $6) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
$6 = $6 | 0;
|
|
var $12 = 0, $7 = 0, $15 = 0, $20 = 0, i64toi32_i32$1 = 0, $17 = 0, $18 = 0, $14 = 0, $13 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, $11 = 0, $16 = 0, $19 = 0, $22 = 0, i64toi32_i32$3 = 0, i64toi32_i32$5 = 0, $9 = 0, $24 = 0, $10 = 0, $25 = 0, $25$hi = 0, $21 = 0, $23 = 0, $33 = 0, $34 = 0, $35 = 0, $8 = 0, $272 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$7 = __stack_pointer - 80 | 0;
|
|
__stack_pointer = $7;
|
|
HEAP32[($7 + 76 | 0) >> 2] = $1;
|
|
$8 = $7 + 55 | 0;
|
|
$9 = $7 + 56 | 0;
|
|
$10 = 0;
|
|
$11 = 0;
|
|
$12 = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : {
|
|
label$4 : {
|
|
label$5 : while (1) {
|
|
$13 = $1;
|
|
if (($12 | 0) > ($11 ^ 2147483647 | 0 | 0)) {
|
|
break label$4
|
|
}
|
|
$11 = $12 + $11 | 0;
|
|
$12 = $13;
|
|
label$6 : {
|
|
label$7 : {
|
|
label$8 : {
|
|
label$9 : {
|
|
label$10 : {
|
|
$14 = HEAPU8[$12 >> 0] | 0;
|
|
if (!$14) {
|
|
break label$10
|
|
}
|
|
label$11 : while (1) {
|
|
label$12 : {
|
|
label$13 : {
|
|
label$14 : {
|
|
$14 = $14 & 255 | 0;
|
|
if ($14) {
|
|
break label$14
|
|
}
|
|
$1 = $12;
|
|
break label$13;
|
|
}
|
|
if (($14 | 0) != (37 | 0)) {
|
|
break label$12
|
|
}
|
|
$14 = $12;
|
|
label$15 : while (1) {
|
|
label$16 : {
|
|
if ((HEAPU8[($14 + 1 | 0) >> 0] | 0 | 0) == (37 | 0)) {
|
|
break label$16
|
|
}
|
|
$1 = $14;
|
|
break label$13;
|
|
}
|
|
$12 = $12 + 1 | 0;
|
|
$15 = HEAPU8[($14 + 2 | 0) >> 0] | 0;
|
|
$1 = $14 + 2 | 0;
|
|
$14 = $1;
|
|
if (($15 | 0) == (37 | 0)) {
|
|
continue label$15
|
|
}
|
|
break label$15;
|
|
};
|
|
}
|
|
$12 = $12 - $13 | 0;
|
|
$14 = $11 ^ 2147483647 | 0;
|
|
if (($12 | 0) > ($14 | 0)) {
|
|
break label$4
|
|
}
|
|
label$17 : {
|
|
if (!$0) {
|
|
break label$17
|
|
}
|
|
out($0 | 0, $13 | 0, $12 | 0);
|
|
}
|
|
if ($12) {
|
|
continue label$5
|
|
}
|
|
HEAP32[($7 + 76 | 0) >> 2] = $1;
|
|
$12 = $1 + 1 | 0;
|
|
$16 = -1;
|
|
label$18 : {
|
|
if (!(isdigit(HEAP8[($1 + 1 | 0) >> 0] | 0 | 0) | 0)) {
|
|
break label$18
|
|
}
|
|
if ((HEAPU8[($1 + 2 | 0) >> 0] | 0 | 0) != (36 | 0)) {
|
|
break label$18
|
|
}
|
|
$12 = $1 + 3 | 0;
|
|
$16 = (HEAP8[($1 + 1 | 0) >> 0] | 0) + -48 | 0;
|
|
$10 = 1;
|
|
}
|
|
HEAP32[($7 + 76 | 0) >> 2] = $12;
|
|
$17 = 0;
|
|
label$19 : {
|
|
label$20 : {
|
|
$18 = HEAP8[$12 >> 0] | 0;
|
|
$1 = $18 + -32 | 0;
|
|
if ($1 >>> 0 <= 31 >>> 0) {
|
|
break label$20
|
|
}
|
|
$15 = $12;
|
|
break label$19;
|
|
}
|
|
$17 = 0;
|
|
$15 = $12;
|
|
$1 = 1 << $1 | 0;
|
|
if (!($1 & 75913 | 0)) {
|
|
break label$19
|
|
}
|
|
label$21 : while (1) {
|
|
$15 = $12 + 1 | 0;
|
|
HEAP32[($7 + 76 | 0) >> 2] = $15;
|
|
$17 = $1 | $17 | 0;
|
|
$18 = HEAP8[($12 + 1 | 0) >> 0] | 0;
|
|
$1 = $18 + -32 | 0;
|
|
if ($1 >>> 0 >= 32 >>> 0) {
|
|
break label$19
|
|
}
|
|
$12 = $15;
|
|
$1 = 1 << $1 | 0;
|
|
if ($1 & 75913 | 0) {
|
|
continue label$21
|
|
}
|
|
break label$21;
|
|
};
|
|
}
|
|
label$22 : {
|
|
label$23 : {
|
|
if (($18 | 0) != (42 | 0)) {
|
|
break label$23
|
|
}
|
|
label$24 : {
|
|
label$25 : {
|
|
if (!(isdigit(HEAP8[($15 + 1 | 0) >> 0] | 0 | 0) | 0)) {
|
|
break label$25
|
|
}
|
|
if ((HEAPU8[($15 + 2 | 0) >> 0] | 0 | 0) != (36 | 0)) {
|
|
break label$25
|
|
}
|
|
HEAP32[((((HEAP8[($15 + 1 | 0) >> 0] | 0) << 2 | 0) + $4 | 0) + -192 | 0) >> 2] = 10;
|
|
$18 = $15 + 3 | 0;
|
|
$19 = HEAP32[((((HEAP8[($15 + 1 | 0) >> 0] | 0) << 3 | 0) + $3 | 0) + -384 | 0) >> 2] | 0;
|
|
$10 = 1;
|
|
break label$24;
|
|
}
|
|
if ($10) {
|
|
break label$9
|
|
}
|
|
$18 = $15 + 1 | 0;
|
|
label$26 : {
|
|
if ($0) {
|
|
break label$26
|
|
}
|
|
HEAP32[($7 + 76 | 0) >> 2] = $18;
|
|
$10 = 0;
|
|
$19 = 0;
|
|
break label$22;
|
|
}
|
|
$12 = HEAP32[$2 >> 2] | 0;
|
|
HEAP32[$2 >> 2] = $12 + 4 | 0;
|
|
$19 = HEAP32[$12 >> 2] | 0;
|
|
$10 = 0;
|
|
}
|
|
HEAP32[($7 + 76 | 0) >> 2] = $18;
|
|
if (($19 | 0) > (-1 | 0)) {
|
|
break label$22
|
|
}
|
|
$19 = 0 - $19 | 0;
|
|
$17 = $17 | 8192 | 0;
|
|
break label$22;
|
|
}
|
|
$19 = getint($7 + 76 | 0 | 0) | 0;
|
|
if (($19 | 0) < (0 | 0)) {
|
|
break label$4
|
|
}
|
|
$18 = HEAP32[($7 + 76 | 0) >> 2] | 0;
|
|
}
|
|
$12 = 0;
|
|
$20 = -1;
|
|
label$27 : {
|
|
label$28 : {
|
|
if ((HEAPU8[$18 >> 0] | 0 | 0) == (46 | 0)) {
|
|
break label$28
|
|
}
|
|
$1 = $18;
|
|
$21 = 0;
|
|
break label$27;
|
|
}
|
|
label$29 : {
|
|
if ((HEAPU8[($18 + 1 | 0) >> 0] | 0 | 0) != (42 | 0)) {
|
|
break label$29
|
|
}
|
|
label$30 : {
|
|
label$31 : {
|
|
if (!(isdigit(HEAP8[($18 + 2 | 0) >> 0] | 0 | 0) | 0)) {
|
|
break label$31
|
|
}
|
|
if ((HEAPU8[($18 + 3 | 0) >> 0] | 0 | 0) != (36 | 0)) {
|
|
break label$31
|
|
}
|
|
HEAP32[((((HEAP8[($18 + 2 | 0) >> 0] | 0) << 2 | 0) + $4 | 0) + -192 | 0) >> 2] = 10;
|
|
$1 = $18 + 4 | 0;
|
|
$20 = HEAP32[((((HEAP8[($18 + 2 | 0) >> 0] | 0) << 3 | 0) + $3 | 0) + -384 | 0) >> 2] | 0;
|
|
break label$30;
|
|
}
|
|
if ($10) {
|
|
break label$9
|
|
}
|
|
$1 = $18 + 2 | 0;
|
|
label$32 : {
|
|
if ($0) {
|
|
break label$32
|
|
}
|
|
$20 = 0;
|
|
break label$30;
|
|
}
|
|
$15 = HEAP32[$2 >> 2] | 0;
|
|
HEAP32[$2 >> 2] = $15 + 4 | 0;
|
|
$20 = HEAP32[$15 >> 2] | 0;
|
|
}
|
|
HEAP32[($7 + 76 | 0) >> 2] = $1;
|
|
$21 = ($20 ^ -1 | 0) >>> 31 | 0;
|
|
break label$27;
|
|
}
|
|
HEAP32[($7 + 76 | 0) >> 2] = $18 + 1 | 0;
|
|
$21 = 1;
|
|
$20 = getint($7 + 76 | 0 | 0) | 0;
|
|
$1 = HEAP32[($7 + 76 | 0) >> 2] | 0;
|
|
}
|
|
label$33 : while (1) {
|
|
$15 = $12;
|
|
$22 = 28;
|
|
$18 = $1;
|
|
$12 = HEAP8[$18 >> 0] | 0;
|
|
if (($12 + -123 | 0) >>> 0 < -58 >>> 0) {
|
|
break label$3
|
|
}
|
|
$1 = $18 + 1 | 0;
|
|
$12 = HEAPU8[(($12 + Math_imul($15, 58) | 0) + 108719 | 0) >> 0] | 0;
|
|
if (($12 + -1 | 0) >>> 0 < 8 >>> 0) {
|
|
continue label$33
|
|
}
|
|
break label$33;
|
|
};
|
|
HEAP32[($7 + 76 | 0) >> 2] = $1;
|
|
label$34 : {
|
|
label$35 : {
|
|
label$36 : {
|
|
if (($12 | 0) == (27 | 0)) {
|
|
break label$36
|
|
}
|
|
if (!$12) {
|
|
break label$3
|
|
}
|
|
label$37 : {
|
|
if (($16 | 0) < (0 | 0)) {
|
|
break label$37
|
|
}
|
|
HEAP32[($4 + ($16 << 2 | 0) | 0) >> 2] = $12;
|
|
i64toi32_i32$2 = $3 + ($16 << 3 | 0) | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$272 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $7;
|
|
HEAP32[($7 + 64 | 0) >> 2] = $272;
|
|
HEAP32[($7 + 68 | 0) >> 2] = i64toi32_i32$1;
|
|
break label$35;
|
|
}
|
|
if (!$0) {
|
|
break label$6
|
|
}
|
|
pop_arg($7 + 64 | 0 | 0, $12 | 0, $2 | 0, $6 | 0);
|
|
break label$34;
|
|
}
|
|
if (($16 | 0) > (-1 | 0)) {
|
|
break label$3
|
|
}
|
|
}
|
|
$12 = 0;
|
|
if (!$0) {
|
|
continue label$5
|
|
}
|
|
}
|
|
$23 = $17 & -65537 | 0;
|
|
$17 = $17 & 8192 | 0 ? $23 : $17;
|
|
$16 = 0;
|
|
$24 = 66643;
|
|
$22 = $9;
|
|
label$38 : {
|
|
label$39 : {
|
|
label$40 : {
|
|
label$41 : {
|
|
label$42 : {
|
|
label$43 : {
|
|
label$44 : {
|
|
label$45 : {
|
|
label$46 : {
|
|
label$47 : {
|
|
label$48 : {
|
|
label$49 : {
|
|
label$50 : {
|
|
label$51 : {
|
|
label$52 : {
|
|
label$53 : {
|
|
$12 = HEAP8[$18 >> 0] | 0;
|
|
$12 = $15 ? (($12 & 15 | 0 | 0) == (3 | 0) ? $12 & -33 | 0 : $12) : $12;
|
|
switch ($12 + -88 | 0 | 0) {
|
|
case 11:
|
|
break label$38;
|
|
case 9:
|
|
case 13:
|
|
case 14:
|
|
case 15:
|
|
break label$39;
|
|
case 27:
|
|
break label$44;
|
|
case 12:
|
|
case 17:
|
|
break label$47;
|
|
case 23:
|
|
break label$48;
|
|
case 0:
|
|
case 32:
|
|
break label$49;
|
|
case 24:
|
|
break label$50;
|
|
case 22:
|
|
break label$51;
|
|
case 29:
|
|
break label$52;
|
|
case 1:
|
|
case 2:
|
|
case 3:
|
|
case 4:
|
|
case 5:
|
|
case 6:
|
|
case 7:
|
|
case 8:
|
|
case 10:
|
|
case 16:
|
|
case 18:
|
|
case 19:
|
|
case 20:
|
|
case 21:
|
|
case 25:
|
|
case 26:
|
|
case 28:
|
|
case 30:
|
|
case 31:
|
|
break label$7;
|
|
default:
|
|
break label$53;
|
|
};
|
|
}
|
|
$22 = $9;
|
|
label$54 : {
|
|
switch ($12 + -65 | 0 | 0) {
|
|
case 0:
|
|
case 4:
|
|
case 5:
|
|
case 6:
|
|
break label$39;
|
|
case 2:
|
|
break label$42;
|
|
case 1:
|
|
case 3:
|
|
break label$7;
|
|
default:
|
|
break label$54;
|
|
};
|
|
}
|
|
if (($12 | 0) == (83 | 0)) {
|
|
break label$43
|
|
}
|
|
break label$8;
|
|
}
|
|
$16 = 0;
|
|
$24 = 66643;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$1 = HEAP32[($7 + 64 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($7 + 68 | 0) >> 2] | 0;
|
|
$25 = i64toi32_i32$1;
|
|
$25$hi = i64toi32_i32$0;
|
|
break label$46;
|
|
}
|
|
$12 = 0;
|
|
label$55 : {
|
|
switch ($15 & 255 | 0 | 0) {
|
|
case 0:
|
|
HEAP32[(HEAP32[($7 + 64 | 0) >> 2] | 0) >> 2] = $11;
|
|
continue label$5;
|
|
case 1:
|
|
HEAP32[(HEAP32[($7 + 64 | 0) >> 2] | 0) >> 2] = $11;
|
|
continue label$5;
|
|
case 2:
|
|
i64toi32_i32$1 = $11;
|
|
i64toi32_i32$0 = i64toi32_i32$1 >> 31 | 0;
|
|
i64toi32_i32$1 = HEAP32[($7 + 64 | 0) >> 2] | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $11;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
continue label$5;
|
|
case 3:
|
|
HEAP16[(HEAP32[($7 + 64 | 0) >> 2] | 0) >> 1] = $11;
|
|
continue label$5;
|
|
case 4:
|
|
HEAP8[(HEAP32[($7 + 64 | 0) >> 2] | 0) >> 0] = $11;
|
|
continue label$5;
|
|
case 6:
|
|
HEAP32[(HEAP32[($7 + 64 | 0) >> 2] | 0) >> 2] = $11;
|
|
continue label$5;
|
|
case 7:
|
|
break label$55;
|
|
default:
|
|
continue label$5;
|
|
};
|
|
}
|
|
i64toi32_i32$1 = $11;
|
|
i64toi32_i32$0 = i64toi32_i32$1 >> 31 | 0;
|
|
i64toi32_i32$1 = HEAP32[($7 + 64 | 0) >> 2] | 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $11;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
continue label$5;
|
|
}
|
|
$20 = $20 >>> 0 > 8 >>> 0 ? $20 : 8;
|
|
$17 = $17 | 8 | 0;
|
|
$12 = 120;
|
|
}
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$0 = HEAP32[($7 + 64 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($7 + 68 | 0) >> 2] | 0;
|
|
$13 = fmt_x(i64toi32_i32$0 | 0, i64toi32_i32$1 | 0, $9 | 0, $12 & 32 | 0 | 0) | 0;
|
|
$16 = 0;
|
|
$24 = 66643;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$1 = HEAP32[($7 + 64 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($7 + 68 | 0) >> 2] | 0;
|
|
if (!(i64toi32_i32$1 | i64toi32_i32$0 | 0)) {
|
|
break label$45
|
|
}
|
|
if (!($17 & 8 | 0)) {
|
|
break label$45
|
|
}
|
|
$24 = ($12 >>> 4 | 0) + 66643 | 0;
|
|
$16 = 2;
|
|
break label$45;
|
|
}
|
|
$16 = 0;
|
|
$24 = 66643;
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$0 = HEAP32[($7 + 64 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($7 + 68 | 0) >> 2] | 0;
|
|
$13 = fmt_o(i64toi32_i32$0 | 0, i64toi32_i32$1 | 0, $9 | 0) | 0;
|
|
if (!($17 & 8 | 0)) {
|
|
break label$45
|
|
}
|
|
$12 = $9 - $13 | 0;
|
|
$20 = ($20 | 0) > ($12 | 0) ? $20 : $12 + 1 | 0;
|
|
break label$45;
|
|
}
|
|
label$62 : {
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$1 = HEAP32[($7 + 64 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($7 + 68 | 0) >> 2] | 0;
|
|
$25 = i64toi32_i32$1;
|
|
$25$hi = i64toi32_i32$0;
|
|
i64toi32_i32$2 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = -1;
|
|
i64toi32_i32$3 = -1;
|
|
if ((i64toi32_i32$0 | 0) > (i64toi32_i32$1 | 0)) {
|
|
$33 = 1
|
|
} else {
|
|
if ((i64toi32_i32$0 | 0) >= (i64toi32_i32$1 | 0)) {
|
|
if (i64toi32_i32$2 >>> 0 <= i64toi32_i32$3 >>> 0) {
|
|
$34 = 0
|
|
} else {
|
|
$34 = 1
|
|
}
|
|
$35 = $34;
|
|
} else {
|
|
$35 = 0
|
|
}
|
|
$33 = $35;
|
|
}
|
|
if ($33) {
|
|
break label$62
|
|
}
|
|
i64toi32_i32$2 = $25$hi;
|
|
i64toi32_i32$2 = 0;
|
|
i64toi32_i32$3 = 0;
|
|
i64toi32_i32$0 = $25$hi;
|
|
i64toi32_i32$1 = $25;
|
|
i64toi32_i32$5 = (i64toi32_i32$3 >>> 0 < i64toi32_i32$1 >>> 0) + i64toi32_i32$0 | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$2 - i64toi32_i32$5 | 0;
|
|
$25 = i64toi32_i32$3 - i64toi32_i32$1 | 0;
|
|
$25$hi = i64toi32_i32$5;
|
|
i64toi32_i32$3 = $7;
|
|
HEAP32[($7 + 64 | 0) >> 2] = $25;
|
|
HEAP32[($7 + 68 | 0) >> 2] = i64toi32_i32$5;
|
|
$16 = 1;
|
|
$24 = 66643;
|
|
break label$46;
|
|
}
|
|
label$63 : {
|
|
if (!($17 & 2048 | 0)) {
|
|
break label$63
|
|
}
|
|
$16 = 1;
|
|
$24 = 66644;
|
|
break label$46;
|
|
}
|
|
$16 = $17 & 1 | 0;
|
|
$24 = $16 ? 66645 : 66643;
|
|
}
|
|
i64toi32_i32$5 = $25$hi;
|
|
$13 = fmt_u($25 | 0, i64toi32_i32$5 | 0, $9 | 0) | 0;
|
|
}
|
|
label$64 : {
|
|
if (!$21) {
|
|
break label$64
|
|
}
|
|
if (($20 | 0) < (0 | 0)) {
|
|
break label$4
|
|
}
|
|
}
|
|
$17 = $21 ? $17 & -65537 | 0 : $17;
|
|
label$65 : {
|
|
i64toi32_i32$2 = $7;
|
|
i64toi32_i32$5 = HEAP32[($7 + 64 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($7 + 68 | 0) >> 2] | 0;
|
|
$25 = i64toi32_i32$5;
|
|
$25$hi = i64toi32_i32$3;
|
|
i64toi32_i32$2 = i64toi32_i32$5;
|
|
i64toi32_i32$5 = 0;
|
|
i64toi32_i32$1 = 0;
|
|
if ((i64toi32_i32$2 | 0) != (i64toi32_i32$1 | 0) | (i64toi32_i32$3 | 0) != (i64toi32_i32$5 | 0) | 0) {
|
|
break label$65
|
|
}
|
|
if ($20) {
|
|
break label$65
|
|
}
|
|
$13 = $9;
|
|
$22 = $13;
|
|
$20 = 0;
|
|
break label$7;
|
|
}
|
|
i64toi32_i32$2 = $25$hi;
|
|
$12 = ($9 - $13 | 0) + !($25 | i64toi32_i32$2 | 0) | 0;
|
|
$20 = ($20 | 0) > ($12 | 0) ? $20 : $12;
|
|
break label$8;
|
|
}
|
|
$12 = HEAP32[($7 + 64 | 0) >> 2] | 0;
|
|
$13 = $12 ? $12 : 86327;
|
|
$12 = strnlen($13 | 0, ($20 >>> 0 < 2147483647 >>> 0 ? $20 : 2147483647) | 0) | 0;
|
|
$22 = $13 + $12 | 0;
|
|
label$66 : {
|
|
if (($20 | 0) <= (-1 | 0)) {
|
|
break label$66
|
|
}
|
|
$17 = $23;
|
|
$20 = $12;
|
|
break label$7;
|
|
}
|
|
$17 = $23;
|
|
$20 = $12;
|
|
if (HEAPU8[$22 >> 0] | 0) {
|
|
break label$4
|
|
}
|
|
break label$7;
|
|
}
|
|
label$67 : {
|
|
if (!$20) {
|
|
break label$67
|
|
}
|
|
$14 = HEAP32[($7 + 64 | 0) >> 2] | 0;
|
|
break label$41;
|
|
}
|
|
$12 = 0;
|
|
pad($0 | 0, 32 | 0, $19 | 0, 0 | 0, $17 | 0);
|
|
break label$40;
|
|
}
|
|
HEAP32[($7 + 12 | 0) >> 2] = 0;
|
|
i64toi32_i32$1 = $7;
|
|
i64toi32_i32$2 = HEAP32[($7 + 64 | 0) >> 2] | 0;
|
|
i64toi32_i32$3 = HEAP32[($7 + 68 | 0) >> 2] | 0;
|
|
HEAP32[($7 + 8 | 0) >> 2] = i64toi32_i32$2;
|
|
HEAP32[($7 + 64 | 0) >> 2] = $7 + 8 | 0;
|
|
$14 = $7 + 8 | 0;
|
|
$20 = -1;
|
|
}
|
|
$12 = 0;
|
|
label$68 : {
|
|
label$69 : while (1) {
|
|
$15 = HEAP32[$14 >> 2] | 0;
|
|
if (!$15) {
|
|
break label$68
|
|
}
|
|
label$70 : {
|
|
$15 = wctomb($7 + 4 | 0 | 0, $15 | 0) | 0;
|
|
$13 = ($15 | 0) < (0 | 0);
|
|
if ($13) {
|
|
break label$70
|
|
}
|
|
if ($15 >>> 0 > ($20 - $12 | 0) >>> 0) {
|
|
break label$70
|
|
}
|
|
$14 = $14 + 4 | 0;
|
|
$12 = $15 + $12 | 0;
|
|
if ($20 >>> 0 > $12 >>> 0) {
|
|
continue label$69
|
|
}
|
|
break label$68;
|
|
}
|
|
break label$69;
|
|
};
|
|
if ($13) {
|
|
break label$2
|
|
}
|
|
}
|
|
$22 = 61;
|
|
if (($12 | 0) < (0 | 0)) {
|
|
break label$3
|
|
}
|
|
pad($0 | 0, 32 | 0, $19 | 0, $12 | 0, $17 | 0);
|
|
label$71 : {
|
|
if ($12) {
|
|
break label$71
|
|
}
|
|
$12 = 0;
|
|
break label$40;
|
|
}
|
|
$15 = 0;
|
|
$14 = HEAP32[($7 + 64 | 0) >> 2] | 0;
|
|
label$72 : while (1) {
|
|
$13 = HEAP32[$14 >> 2] | 0;
|
|
if (!$13) {
|
|
break label$40
|
|
}
|
|
$13 = wctomb($7 + 4 | 0 | 0, $13 | 0) | 0;
|
|
$15 = $13 + $15 | 0;
|
|
if ($15 >>> 0 > $12 >>> 0) {
|
|
break label$40
|
|
}
|
|
out($0 | 0, $7 + 4 | 0 | 0, $13 | 0);
|
|
$14 = $14 + 4 | 0;
|
|
if ($15 >>> 0 < $12 >>> 0) {
|
|
continue label$72
|
|
}
|
|
break label$72;
|
|
};
|
|
}
|
|
pad($0 | 0, 32 | 0, $19 | 0, $12 | 0, $17 ^ 8192 | 0 | 0);
|
|
$12 = ($19 | 0) > ($12 | 0) ? $19 : $12;
|
|
continue label$5;
|
|
}
|
|
label$73 : {
|
|
if (!$21) {
|
|
break label$73
|
|
}
|
|
if (($20 | 0) < (0 | 0)) {
|
|
break label$4
|
|
}
|
|
}
|
|
$22 = 61;
|
|
$12 = FUNCTION_TABLE[$5 | 0]($0, +HEAPF64[($7 + 64 | 0) >> 3], $19, $20, $17, $12) | 0;
|
|
if (($12 | 0) >= (0 | 0)) {
|
|
continue label$5
|
|
}
|
|
break label$3;
|
|
}
|
|
i64toi32_i32$1 = $7;
|
|
i64toi32_i32$3 = HEAP32[($7 + 64 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[($7 + 68 | 0) >> 2] | 0;
|
|
HEAP8[($7 + 55 | 0) >> 0] = i64toi32_i32$3;
|
|
$20 = 1;
|
|
$13 = $8;
|
|
$22 = $9;
|
|
$17 = $23;
|
|
break label$7;
|
|
}
|
|
$14 = HEAPU8[($12 + 1 | 0) >> 0] | 0;
|
|
$12 = $12 + 1 | 0;
|
|
continue label$11;
|
|
};
|
|
}
|
|
if ($0) {
|
|
break label$1
|
|
}
|
|
if (!$10) {
|
|
break label$6
|
|
}
|
|
$12 = 1;
|
|
label$74 : {
|
|
label$75 : while (1) {
|
|
$14 = HEAP32[($4 + ($12 << 2 | 0) | 0) >> 2] | 0;
|
|
if (!$14) {
|
|
break label$74
|
|
}
|
|
pop_arg($3 + ($12 << 3 | 0) | 0 | 0, $14 | 0, $2 | 0, $6 | 0);
|
|
$11 = 1;
|
|
$12 = $12 + 1 | 0;
|
|
if (($12 | 0) != (10 | 0)) {
|
|
continue label$75
|
|
}
|
|
break label$1;
|
|
};
|
|
}
|
|
$11 = 1;
|
|
if ($12 >>> 0 >= 10 >>> 0) {
|
|
break label$1
|
|
}
|
|
label$76 : while (1) {
|
|
if (HEAP32[($4 + ($12 << 2 | 0) | 0) >> 2] | 0) {
|
|
break label$9
|
|
}
|
|
$11 = 1;
|
|
$12 = $12 + 1 | 0;
|
|
if (($12 | 0) == (10 | 0)) {
|
|
break label$1
|
|
}
|
|
continue label$76;
|
|
};
|
|
}
|
|
$22 = 28;
|
|
break label$3;
|
|
}
|
|
$22 = $9;
|
|
}
|
|
$18 = $22 - $13 | 0;
|
|
$20 = ($20 | 0) > ($18 | 0) ? $20 : $18;
|
|
if (($20 | 0) > ($16 ^ 2147483647 | 0 | 0)) {
|
|
break label$4
|
|
}
|
|
$22 = 61;
|
|
$15 = $16 + $20 | 0;
|
|
$12 = ($19 | 0) > ($15 | 0) ? $19 : $15;
|
|
if (($12 | 0) > ($14 | 0)) {
|
|
break label$3
|
|
}
|
|
pad($0 | 0, 32 | 0, $12 | 0, $15 | 0, $17 | 0);
|
|
out($0 | 0, $24 | 0, $16 | 0);
|
|
pad($0 | 0, 48 | 0, $12 | 0, $15 | 0, $17 ^ 65536 | 0 | 0);
|
|
pad($0 | 0, 48 | 0, $20 | 0, $18 | 0, 0 | 0);
|
|
out($0 | 0, $13 | 0, $18 | 0);
|
|
pad($0 | 0, 32 | 0, $12 | 0, $15 | 0, $17 ^ 8192 | 0 | 0);
|
|
continue label$5;
|
|
}
|
|
break label$5;
|
|
};
|
|
$11 = 0;
|
|
break label$1;
|
|
}
|
|
$22 = 61;
|
|
}
|
|
(wasm2js_i32$0 = __errno_location() | 0, wasm2js_i32$1 = $22), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
}
|
|
$11 = -1;
|
|
}
|
|
__stack_pointer = $7 + 80 | 0;
|
|
return $11 | 0;
|
|
}
|
|
|
|
function out($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
label$1 : {
|
|
if ((HEAPU8[$0 >> 0] | 0) & 32 | 0) {
|
|
break label$1
|
|
}
|
|
__fwritex($1 | 0, $2 | 0, $0 | 0) | 0;
|
|
}
|
|
}
|
|
|
|
function getint($0) {
|
|
$0 = $0 | 0;
|
|
var $1 = 0, $3 = 0, $2 = 0;
|
|
$1 = 0;
|
|
label$1 : {
|
|
if (isdigit(HEAP8[(HEAP32[$0 >> 2] | 0) >> 0] | 0 | 0) | 0) {
|
|
break label$1
|
|
}
|
|
return 0 | 0;
|
|
}
|
|
label$2 : while (1) {
|
|
$2 = HEAP32[$0 >> 2] | 0;
|
|
$3 = -1;
|
|
label$3 : {
|
|
if ($1 >>> 0 > 214748364 >>> 0) {
|
|
break label$3
|
|
}
|
|
$3 = (HEAP8[$2 >> 0] | 0) + -48 | 0;
|
|
$1 = Math_imul($1, 10);
|
|
$3 = ($3 | 0) > ($1 ^ 2147483647 | 0 | 0) ? -1 : $3 + $1 | 0;
|
|
}
|
|
HEAP32[$0 >> 2] = $2 + 1 | 0;
|
|
$1 = $3;
|
|
if (isdigit(HEAP8[($2 + 1 | 0) >> 0] | 0 | 0) | 0) {
|
|
continue label$2
|
|
}
|
|
break label$2;
|
|
};
|
|
return $3 | 0;
|
|
}
|
|
|
|
function pop_arg($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $21 = 0, $29 = 0, $37 = 0, $45 = 0, $55 = 0, $63 = 0, $71 = 0, $79 = 0, $87 = 0, $97 = 0, $105 = 0, $115 = 0, $125 = 0, $133 = 0, $141 = 0;
|
|
label$1 : {
|
|
switch ($1 + -9 | 0 | 0) {
|
|
case 0:
|
|
$1 = HEAP32[$2 >> 2] | 0;
|
|
HEAP32[$2 >> 2] = $1 + 4 | 0;
|
|
HEAP32[$0 >> 2] = HEAP32[$1 >> 2] | 0;
|
|
return;
|
|
case 1:
|
|
$1 = HEAP32[$2 >> 2] | 0;
|
|
HEAP32[$2 >> 2] = $1 + 4 | 0;
|
|
i64toi32_i32$0 = HEAP32[$1 >> 2] | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$0 >> 31 | 0;
|
|
$21 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $21;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
return;
|
|
case 2:
|
|
$1 = HEAP32[$2 >> 2] | 0;
|
|
HEAP32[$2 >> 2] = $1 + 4 | 0;
|
|
i64toi32_i32$1 = HEAP32[$1 >> 2] | 0;
|
|
i64toi32_i32$0 = 0;
|
|
$29 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $29;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
case 4:
|
|
$1 = HEAP32[$2 >> 2] | 0;
|
|
HEAP32[$2 >> 2] = $1 + 4 | 0;
|
|
i64toi32_i32$0 = HEAP32[$1 >> 2] | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$0 >> 31 | 0;
|
|
$37 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $37;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
return;
|
|
case 5:
|
|
$1 = HEAP32[$2 >> 2] | 0;
|
|
HEAP32[$2 >> 2] = $1 + 4 | 0;
|
|
i64toi32_i32$1 = HEAP32[$1 >> 2] | 0;
|
|
i64toi32_i32$0 = 0;
|
|
$45 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $45;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
case 3:
|
|
$1 = ((HEAP32[$2 >> 2] | 0) + 7 | 0) & -8 | 0;
|
|
HEAP32[$2 >> 2] = $1 + 8 | 0;
|
|
i64toi32_i32$0 = HEAP32[$1 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($1 + 4 | 0) >> 2] | 0;
|
|
$55 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $55;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
return;
|
|
case 6:
|
|
$1 = HEAP32[$2 >> 2] | 0;
|
|
HEAP32[$2 >> 2] = $1 + 4 | 0;
|
|
i64toi32_i32$1 = HEAP16[$1 >> 1] | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$1 >> 31 | 0;
|
|
$63 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $63;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
case 7:
|
|
$1 = HEAP32[$2 >> 2] | 0;
|
|
HEAP32[$2 >> 2] = $1 + 4 | 0;
|
|
i64toi32_i32$0 = HEAPU16[$1 >> 1] | 0;
|
|
i64toi32_i32$1 = 0;
|
|
$71 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $71;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
return;
|
|
case 8:
|
|
$1 = HEAP32[$2 >> 2] | 0;
|
|
HEAP32[$2 >> 2] = $1 + 4 | 0;
|
|
i64toi32_i32$1 = HEAP8[$1 >> 0] | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$1 >> 31 | 0;
|
|
$79 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $79;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
case 9:
|
|
$1 = HEAP32[$2 >> 2] | 0;
|
|
HEAP32[$2 >> 2] = $1 + 4 | 0;
|
|
i64toi32_i32$0 = HEAPU8[$1 >> 0] | 0;
|
|
i64toi32_i32$1 = 0;
|
|
$87 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $87;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
return;
|
|
case 10:
|
|
$1 = ((HEAP32[$2 >> 2] | 0) + 7 | 0) & -8 | 0;
|
|
HEAP32[$2 >> 2] = $1 + 8 | 0;
|
|
i64toi32_i32$1 = HEAP32[$1 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($1 + 4 | 0) >> 2] | 0;
|
|
$97 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $97;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
case 11:
|
|
$1 = HEAP32[$2 >> 2] | 0;
|
|
HEAP32[$2 >> 2] = $1 + 4 | 0;
|
|
i64toi32_i32$0 = HEAP32[$1 >> 2] | 0;
|
|
i64toi32_i32$1 = 0;
|
|
$105 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $105;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
return;
|
|
case 12:
|
|
$1 = ((HEAP32[$2 >> 2] | 0) + 7 | 0) & -8 | 0;
|
|
HEAP32[$2 >> 2] = $1 + 8 | 0;
|
|
i64toi32_i32$1 = HEAP32[$1 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[($1 + 4 | 0) >> 2] | 0;
|
|
$115 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $115;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
case 13:
|
|
$1 = ((HEAP32[$2 >> 2] | 0) + 7 | 0) & -8 | 0;
|
|
HEAP32[$2 >> 2] = $1 + 8 | 0;
|
|
i64toi32_i32$0 = HEAP32[$1 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[($1 + 4 | 0) >> 2] | 0;
|
|
$125 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $125;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
return;
|
|
case 14:
|
|
$1 = HEAP32[$2 >> 2] | 0;
|
|
HEAP32[$2 >> 2] = $1 + 4 | 0;
|
|
i64toi32_i32$1 = HEAP32[$1 >> 2] | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$1 >> 31 | 0;
|
|
$133 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = $133;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
return;
|
|
case 15:
|
|
$1 = HEAP32[$2 >> 2] | 0;
|
|
HEAP32[$2 >> 2] = $1 + 4 | 0;
|
|
i64toi32_i32$0 = HEAP32[$1 >> 2] | 0;
|
|
i64toi32_i32$1 = 0;
|
|
$141 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $141;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
return;
|
|
case 16:
|
|
$1 = ((HEAP32[$2 >> 2] | 0) + 7 | 0) & -8 | 0;
|
|
HEAP32[$2 >> 2] = $1 + 8 | 0;
|
|
HEAPF64[$0 >> 3] = +HEAPF64[$1 >> 3];
|
|
return;
|
|
case 17:
|
|
FUNCTION_TABLE[$3 | 0]($0, $2);
|
|
break;
|
|
default:
|
|
break label$1;
|
|
};
|
|
}
|
|
}
|
|
|
|
function fmt_x($0, $0$hi, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$0$hi = $0$hi | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$3 = 0, $10 = 0, $3 = 0;
|
|
label$1 : {
|
|
i64toi32_i32$0 = $0$hi;
|
|
if (!($0 | i64toi32_i32$0 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : while (1) {
|
|
$1 = $1 + -1 | 0;
|
|
i64toi32_i32$0 = $0$hi;
|
|
HEAP8[$1 >> 0] = HEAPU8[(($0 & 15 | 0) + 109248 | 0) >> 0] | 0 | $2 | 0;
|
|
i64toi32_i32$2 = $0;
|
|
i64toi32_i32$1 = 0;
|
|
i64toi32_i32$3 = 15;
|
|
$3 = i64toi32_i32$0 >>> 0 > i64toi32_i32$1 >>> 0 | ((i64toi32_i32$0 | 0) == (i64toi32_i32$1 | 0) & i64toi32_i32$2 >>> 0 > i64toi32_i32$3 >>> 0 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$0;
|
|
i64toi32_i32$2 = i64toi32_i32$0;
|
|
i64toi32_i32$3 = $0;
|
|
i64toi32_i32$0 = 0;
|
|
i64toi32_i32$1 = 4;
|
|
i64toi32_i32$4 = i64toi32_i32$1 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$1 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$0 = 0;
|
|
$10 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0;
|
|
} else {
|
|
i64toi32_i32$0 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0;
|
|
$10 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0;
|
|
}
|
|
$0 = $10;
|
|
$0$hi = i64toi32_i32$0;
|
|
if ($3) {
|
|
continue label$2
|
|
}
|
|
break label$2;
|
|
};
|
|
}
|
|
return $1 | 0;
|
|
}
|
|
|
|
function fmt_o($0, $0$hi, $1) {
|
|
$0 = $0 | 0;
|
|
$0$hi = $0$hi | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$3 = 0, $9 = 0, $2 = 0;
|
|
label$1 : {
|
|
i64toi32_i32$0 = $0$hi;
|
|
if (!($0 | i64toi32_i32$0 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : while (1) {
|
|
$1 = $1 + -1 | 0;
|
|
i64toi32_i32$0 = $0$hi;
|
|
HEAP8[$1 >> 0] = $0 & 7 | 0 | 48 | 0;
|
|
i64toi32_i32$2 = $0;
|
|
i64toi32_i32$1 = 0;
|
|
i64toi32_i32$3 = 7;
|
|
$2 = i64toi32_i32$0 >>> 0 > i64toi32_i32$1 >>> 0 | ((i64toi32_i32$0 | 0) == (i64toi32_i32$1 | 0) & i64toi32_i32$2 >>> 0 > i64toi32_i32$3 >>> 0 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$0;
|
|
i64toi32_i32$2 = i64toi32_i32$0;
|
|
i64toi32_i32$3 = $0;
|
|
i64toi32_i32$0 = 0;
|
|
i64toi32_i32$1 = 3;
|
|
i64toi32_i32$4 = i64toi32_i32$1 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$1 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$0 = 0;
|
|
$9 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0;
|
|
} else {
|
|
i64toi32_i32$0 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0;
|
|
$9 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0;
|
|
}
|
|
$0 = $9;
|
|
$0$hi = i64toi32_i32$0;
|
|
if ($2) {
|
|
continue label$2
|
|
}
|
|
break label$2;
|
|
};
|
|
}
|
|
return $1 | 0;
|
|
}
|
|
|
|
function fmt_u($0, $0$hi, $1) {
|
|
$0 = $0 | 0;
|
|
$0$hi = $0$hi | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $3 = 0, i64toi32_i32$3 = 0, $2 = 0, i64toi32_i32$5 = 0, $2$hi = 0, $4 = 0, $16 = 0, $16$hi = 0, $5 = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
i64toi32_i32$0 = $0$hi;
|
|
i64toi32_i32$2 = $0;
|
|
i64toi32_i32$1 = 1;
|
|
i64toi32_i32$3 = 0;
|
|
if (i64toi32_i32$0 >>> 0 > i64toi32_i32$1 >>> 0 | ((i64toi32_i32$0 | 0) == (i64toi32_i32$1 | 0) & i64toi32_i32$2 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) {
|
|
break label$2
|
|
}
|
|
i64toi32_i32$2 = $0$hi;
|
|
$2 = $0;
|
|
$2$hi = i64toi32_i32$2;
|
|
break label$1;
|
|
}
|
|
label$3 : while (1) {
|
|
$1 = $1 + -1 | 0;
|
|
i64toi32_i32$2 = $0$hi;
|
|
i64toi32_i32$0 = 0;
|
|
i64toi32_i32$0 = __wasm_i64_udiv($0 | 0, i64toi32_i32$2 | 0, 10 | 0, i64toi32_i32$0 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$HIGH_BITS;
|
|
$2 = i64toi32_i32$0;
|
|
$2$hi = i64toi32_i32$2;
|
|
i64toi32_i32$0 = 0;
|
|
i64toi32_i32$0 = __wasm_i64_mul($2 | 0, i64toi32_i32$2 | 0, 10 | 0, i64toi32_i32$0 | 0) | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$HIGH_BITS;
|
|
$16 = i64toi32_i32$0;
|
|
$16$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $0$hi;
|
|
i64toi32_i32$3 = $0;
|
|
i64toi32_i32$0 = $16$hi;
|
|
i64toi32_i32$1 = $16;
|
|
i64toi32_i32$5 = ($0 >>> 0 < i64toi32_i32$1 >>> 0) + i64toi32_i32$0 | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$2 - i64toi32_i32$5 | 0;
|
|
HEAP8[$1 >> 0] = $0 - i64toi32_i32$1 | 0 | 48 | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$2;
|
|
i64toi32_i32$5 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $0;
|
|
i64toi32_i32$3 = 9;
|
|
i64toi32_i32$1 = -1;
|
|
$3 = $0$hi >>> 0 > i64toi32_i32$3 >>> 0 | (($0$hi | 0) == (i64toi32_i32$3 | 0) & i64toi32_i32$2 >>> 0 > i64toi32_i32$1 >>> 0 | 0) | 0;
|
|
i64toi32_i32$2 = $2$hi;
|
|
$0 = $2;
|
|
$0$hi = i64toi32_i32$2;
|
|
if ($3) {
|
|
continue label$3
|
|
}
|
|
break label$3;
|
|
};
|
|
}
|
|
label$4 : {
|
|
i64toi32_i32$2 = $2$hi;
|
|
$3 = $2;
|
|
if (!$3) {
|
|
break label$4
|
|
}
|
|
label$5 : while (1) {
|
|
$1 = $1 + -1 | 0;
|
|
$4 = ($3 >>> 0) / (10 >>> 0) | 0;
|
|
HEAP8[$1 >> 0] = $3 - Math_imul($4, 10) | 0 | 48 | 0;
|
|
$5 = $3 >>> 0 > 9 >>> 0;
|
|
$3 = $4;
|
|
if ($5) {
|
|
continue label$5
|
|
}
|
|
break label$5;
|
|
};
|
|
}
|
|
return $1 | 0;
|
|
}
|
|
|
|
function pad($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $5 = 0;
|
|
$5 = __stack_pointer - 256 | 0;
|
|
__stack_pointer = $5;
|
|
label$1 : {
|
|
if (($2 | 0) <= ($3 | 0)) {
|
|
break label$1
|
|
}
|
|
if ($4 & 73728 | 0) {
|
|
break label$1
|
|
}
|
|
$3 = $2 - $3 | 0;
|
|
$2 = $3 >>> 0 < 256 >>> 0;
|
|
__memset($5 | 0, $1 & 255 | 0 | 0, ($2 ? $3 : 256) | 0) | 0;
|
|
label$2 : {
|
|
if ($2) {
|
|
break label$2
|
|
}
|
|
label$3 : while (1) {
|
|
out($0 | 0, $5 | 0, 256 | 0);
|
|
$3 = $3 + -256 | 0;
|
|
if ($3 >>> 0 > 255 >>> 0) {
|
|
continue label$3
|
|
}
|
|
break label$3;
|
|
};
|
|
}
|
|
out($0 | 0, $5 | 0, $3 | 0);
|
|
}
|
|
__stack_pointer = $5 + 256 | 0;
|
|
}
|
|
|
|
function vfprintf($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
return __vfprintf_internal($0 | 0, $1 | 0, $2 | 0, 1221 | 0, 1222 | 0) | 0 | 0;
|
|
}
|
|
|
|
function fmt_fp($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = +$1;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $11 = 0, $12 = 0, $13 = 0, $19 = 0, $23 = 0, $6 = 0, i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, $16 = 0, i64toi32_i32$4 = 0, $24 = 0, $25 = 0, i64toi32_i32$2 = 0, i64toi32_i32$3 = 0, i64toi32_i32$5 = 0, $18 = 0, $21 = 0, $9 = 0, $26 = 0.0, $8 = 0, $14 = 0, $8$hi = 0, $15 = 0, $17 = 0, $10 = 0, $22 = 0, $7 = 0, $45 = 0, $46 = 0, $47 = 0, $20$hi = 0, $48 = 0, $20 = 0, $167 = 0, $169$hi = 0, $171$hi = 0, $173 = 0, $173$hi = 0, $175$hi = 0, $179 = 0, $179$hi = 0, $388 = 0.0, $852 = 0;
|
|
$6 = __stack_pointer - 560 | 0;
|
|
__stack_pointer = $6;
|
|
$7 = 0;
|
|
HEAP32[($6 + 44 | 0) >> 2] = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
i64toi32_i32$0 = __DOUBLE_BITS(+$1) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
$8 = i64toi32_i32$0;
|
|
$8$hi = i64toi32_i32$1;
|
|
i64toi32_i32$2 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = -1;
|
|
i64toi32_i32$3 = -1;
|
|
if ((i64toi32_i32$1 | 0) > (i64toi32_i32$0 | 0)) {
|
|
$45 = 1
|
|
} else {
|
|
if ((i64toi32_i32$1 | 0) >= (i64toi32_i32$0 | 0)) {
|
|
if (i64toi32_i32$2 >>> 0 <= i64toi32_i32$3 >>> 0) {
|
|
$46 = 0
|
|
} else {
|
|
$46 = 1
|
|
}
|
|
$47 = $46;
|
|
} else {
|
|
$47 = 0
|
|
}
|
|
$45 = $47;
|
|
}
|
|
if ($45) {
|
|
break label$2
|
|
}
|
|
$9 = 1;
|
|
$10 = 66653;
|
|
$1 = -$1;
|
|
i64toi32_i32$2 = __DOUBLE_BITS(+$1) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
$8 = i64toi32_i32$2;
|
|
$8$hi = i64toi32_i32$1;
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
if (!($4 & 2048 | 0)) {
|
|
break label$3
|
|
}
|
|
$9 = 1;
|
|
$10 = 66656;
|
|
break label$1;
|
|
}
|
|
$9 = $4 & 1 | 0;
|
|
$10 = $9 ? 66659 : 66654;
|
|
$7 = !$9;
|
|
}
|
|
label$4 : {
|
|
label$5 : {
|
|
i64toi32_i32$1 = $8$hi;
|
|
i64toi32_i32$3 = $8;
|
|
i64toi32_i32$2 = 2146435072;
|
|
i64toi32_i32$0 = 0;
|
|
i64toi32_i32$2 = i64toi32_i32$1 & i64toi32_i32$2 | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$3 & i64toi32_i32$0 | 0;
|
|
i64toi32_i32$3 = 2146435072;
|
|
i64toi32_i32$0 = 0;
|
|
if ((i64toi32_i32$1 | 0) != (i64toi32_i32$0 | 0) | (i64toi32_i32$2 | 0) != (i64toi32_i32$3 | 0) | 0) {
|
|
break label$5
|
|
}
|
|
$11 = $9 + 3 | 0;
|
|
pad($0 | 0, 32 | 0, $2 | 0, $11 | 0, $4 & -65537 | 0 | 0);
|
|
out($0 | 0, $10 | 0, $9 | 0);
|
|
$12 = $5 & 32 | 0;
|
|
out($0 | 0, ($1 != $1 ? ($12 ? 77003 : 84282) : $12 ? 80768 : 84403) | 0, 3 | 0);
|
|
pad($0 | 0, 32 | 0, $2 | 0, $11 | 0, $4 ^ 8192 | 0 | 0);
|
|
$13 = ($11 | 0) > ($2 | 0) ? $11 : $2;
|
|
break label$4;
|
|
}
|
|
$14 = $6 + 16 | 0;
|
|
label$6 : {
|
|
label$7 : {
|
|
label$8 : {
|
|
label$9 : {
|
|
$1 = +frexp(+$1, $6 + 44 | 0 | 0);
|
|
$1 = $1 + $1;
|
|
if ($1 == 0.0) {
|
|
break label$9
|
|
}
|
|
$11 = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
HEAP32[($6 + 44 | 0) >> 2] = $11 + -1 | 0;
|
|
$15 = $5 | 32 | 0;
|
|
if (($15 | 0) != (97 | 0)) {
|
|
break label$8
|
|
}
|
|
break label$6;
|
|
}
|
|
$15 = $5 | 32 | 0;
|
|
if (($15 | 0) == (97 | 0)) {
|
|
break label$6
|
|
}
|
|
$16 = ($3 | 0) < (0 | 0) ? 6 : $3;
|
|
$17 = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
break label$7;
|
|
}
|
|
$17 = $11 + -29 | 0;
|
|
HEAP32[($6 + 44 | 0) >> 2] = $17;
|
|
$16 = ($3 | 0) < (0 | 0) ? 6 : $3;
|
|
$1 = $1 * 268435456.0;
|
|
}
|
|
$18 = ($6 + 48 | 0) + (($17 | 0) < (0 | 0) ? 0 : 288) | 0;
|
|
$12 = $18;
|
|
label$10 : while (1) {
|
|
label$11 : {
|
|
label$12 : {
|
|
if (!($1 < 4294967296.0 & $1 >= 0.0 | 0)) {
|
|
break label$12
|
|
}
|
|
$11 = ~~$1 >>> 0;
|
|
break label$11;
|
|
}
|
|
$11 = 0;
|
|
}
|
|
HEAP32[$12 >> 2] = $11;
|
|
$12 = $12 + 4 | 0;
|
|
$1 = ($1 - +($11 >>> 0)) * 1.0e9;
|
|
if ($1 != 0.0) {
|
|
continue label$10
|
|
}
|
|
break label$10;
|
|
};
|
|
label$13 : {
|
|
label$14 : {
|
|
if (($17 | 0) >= (1 | 0)) {
|
|
break label$14
|
|
}
|
|
$3 = $17;
|
|
$11 = $12;
|
|
$19 = $18;
|
|
break label$13;
|
|
}
|
|
$19 = $18;
|
|
$3 = $17;
|
|
label$15 : while (1) {
|
|
$3 = ($3 | 0) < (29 | 0) ? $3 : 29;
|
|
label$16 : {
|
|
$11 = $12 + -4 | 0;
|
|
if ($11 >>> 0 < $19 >>> 0) {
|
|
break label$16
|
|
}
|
|
i64toi32_i32$1 = 0;
|
|
$20 = $3;
|
|
$20$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$8 = 0;
|
|
$8$hi = i64toi32_i32$1;
|
|
label$17 : while (1) {
|
|
$167 = $11;
|
|
i64toi32_i32$0 = $11;
|
|
i64toi32_i32$1 = HEAP32[$11 >> 2] | 0;
|
|
i64toi32_i32$2 = 0;
|
|
$169$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $20$hi;
|
|
i64toi32_i32$2 = $169$hi;
|
|
i64toi32_i32$0 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $20$hi;
|
|
i64toi32_i32$3 = $20;
|
|
i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$1 = i64toi32_i32$0 << i64toi32_i32$4 | 0;
|
|
$48 = 0;
|
|
} else {
|
|
i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$0 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$2 << i64toi32_i32$4 | 0) | 0;
|
|
$48 = i64toi32_i32$0 << i64toi32_i32$4 | 0;
|
|
}
|
|
$171$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8$hi;
|
|
i64toi32_i32$2 = $8;
|
|
i64toi32_i32$0 = 0;
|
|
i64toi32_i32$3 = -1;
|
|
i64toi32_i32$0 = i64toi32_i32$1 & i64toi32_i32$0 | 0;
|
|
$173 = i64toi32_i32$2 & i64toi32_i32$3 | 0;
|
|
$173$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $171$hi;
|
|
i64toi32_i32$1 = $48;
|
|
i64toi32_i32$2 = $173$hi;
|
|
i64toi32_i32$3 = $173;
|
|
i64toi32_i32$4 = i64toi32_i32$1 + i64toi32_i32$3 | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$0 + i64toi32_i32$2 | 0;
|
|
if (i64toi32_i32$4 >>> 0 < i64toi32_i32$3 >>> 0) {
|
|
i64toi32_i32$5 = i64toi32_i32$5 + 1 | 0
|
|
}
|
|
$8 = i64toi32_i32$4;
|
|
$8$hi = i64toi32_i32$5;
|
|
$175$hi = i64toi32_i32$5;
|
|
i64toi32_i32$1 = 0;
|
|
i64toi32_i32$1 = __wasm_i64_udiv(i64toi32_i32$4 | 0, i64toi32_i32$5 | 0, 1e9 | 0, i64toi32_i32$1 | 0) | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$HIGH_BITS;
|
|
$8 = i64toi32_i32$1;
|
|
$8$hi = i64toi32_i32$5;
|
|
i64toi32_i32$1 = 0;
|
|
i64toi32_i32$1 = __wasm_i64_mul($8 | 0, i64toi32_i32$5 | 0, 1e9 | 0, i64toi32_i32$1 | 0) | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$HIGH_BITS;
|
|
$179 = i64toi32_i32$1;
|
|
$179$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $175$hi;
|
|
i64toi32_i32$0 = i64toi32_i32$4;
|
|
i64toi32_i32$1 = $179$hi;
|
|
i64toi32_i32$3 = $179;
|
|
i64toi32_i32$2 = i64toi32_i32$0 - i64toi32_i32$3 | 0;
|
|
i64toi32_i32$4 = (i64toi32_i32$0 >>> 0 < i64toi32_i32$3 >>> 0) + i64toi32_i32$1 | 0;
|
|
i64toi32_i32$4 = i64toi32_i32$5 - i64toi32_i32$4 | 0;
|
|
HEAP32[$167 >> 2] = i64toi32_i32$2;
|
|
$11 = $11 + -4 | 0;
|
|
if ($11 >>> 0 >= $19 >>> 0) {
|
|
continue label$17
|
|
}
|
|
break label$17;
|
|
};
|
|
i64toi32_i32$4 = $8$hi;
|
|
$11 = $8;
|
|
if (!$11) {
|
|
break label$16
|
|
}
|
|
$19 = $19 + -4 | 0;
|
|
HEAP32[$19 >> 2] = $11;
|
|
}
|
|
label$18 : {
|
|
label$19 : while (1) {
|
|
$11 = $12;
|
|
if ($11 >>> 0 <= $19 >>> 0) {
|
|
break label$18
|
|
}
|
|
$12 = $11 + -4 | 0;
|
|
if (!(HEAP32[$12 >> 2] | 0)) {
|
|
continue label$19
|
|
}
|
|
break label$19;
|
|
};
|
|
}
|
|
$3 = (HEAP32[($6 + 44 | 0) >> 2] | 0) - $3 | 0;
|
|
HEAP32[($6 + 44 | 0) >> 2] = $3;
|
|
$12 = $11;
|
|
if (($3 | 0) > (0 | 0)) {
|
|
continue label$15
|
|
}
|
|
break label$15;
|
|
};
|
|
}
|
|
label$20 : {
|
|
if (($3 | 0) > (-1 | 0)) {
|
|
break label$20
|
|
}
|
|
$21 = ((($16 + 25 | 0) >>> 0) / (9 >>> 0) | 0) + 1 | 0;
|
|
$22 = ($15 | 0) == (102 | 0);
|
|
label$21 : while (1) {
|
|
$12 = 0 - $3 | 0;
|
|
$23 = ($12 | 0) < (9 | 0) ? $12 : 9;
|
|
label$22 : {
|
|
label$23 : {
|
|
if ($19 >>> 0 < $11 >>> 0) {
|
|
break label$23
|
|
}
|
|
$12 = HEAP32[$19 >> 2] | 0;
|
|
break label$22;
|
|
}
|
|
$24 = 1e9 >>> $23 | 0;
|
|
$25 = (-1 << $23 | 0) ^ -1 | 0;
|
|
$3 = 0;
|
|
$12 = $19;
|
|
label$24 : while (1) {
|
|
$13 = HEAP32[$12 >> 2] | 0;
|
|
HEAP32[$12 >> 2] = ($13 >>> $23 | 0) + $3 | 0;
|
|
$3 = Math_imul($13 & $25 | 0, $24);
|
|
$12 = $12 + 4 | 0;
|
|
if ($12 >>> 0 < $11 >>> 0) {
|
|
continue label$24
|
|
}
|
|
break label$24;
|
|
};
|
|
$12 = HEAP32[$19 >> 2] | 0;
|
|
if (!$3) {
|
|
break label$22
|
|
}
|
|
HEAP32[$11 >> 2] = $3;
|
|
$11 = $11 + 4 | 0;
|
|
}
|
|
$3 = (HEAP32[($6 + 44 | 0) >> 2] | 0) + $23 | 0;
|
|
HEAP32[($6 + 44 | 0) >> 2] = $3;
|
|
$19 = $19 + (!$12 << 2 | 0) | 0;
|
|
$12 = $22 ? $18 : $19;
|
|
$11 = (($11 - $12 | 0) >> 2 | 0 | 0) > ($21 | 0) ? $12 + ($21 << 2 | 0) | 0 : $11;
|
|
if (($3 | 0) < (0 | 0)) {
|
|
continue label$21
|
|
}
|
|
break label$21;
|
|
};
|
|
}
|
|
$3 = 0;
|
|
label$25 : {
|
|
if ($19 >>> 0 >= $11 >>> 0) {
|
|
break label$25
|
|
}
|
|
$3 = Math_imul(($18 - $19 | 0) >> 2 | 0, 9);
|
|
$12 = 10;
|
|
$13 = HEAP32[$19 >> 2] | 0;
|
|
if ($13 >>> 0 < 10 >>> 0) {
|
|
break label$25
|
|
}
|
|
label$26 : while (1) {
|
|
$3 = $3 + 1 | 0;
|
|
$12 = Math_imul($12, 10);
|
|
if ($13 >>> 0 >= $12 >>> 0) {
|
|
continue label$26
|
|
}
|
|
break label$26;
|
|
};
|
|
}
|
|
label$27 : {
|
|
$12 = ($16 - (($15 | 0) == (102 | 0) ? 0 : $3) | 0) - (($16 | 0) != (0 | 0) & ($15 | 0) == (103 | 0) | 0) | 0;
|
|
if (($12 | 0) >= (Math_imul(($11 - $18 | 0) >> 2 | 0, 9) + -9 | 0 | 0)) {
|
|
break label$27
|
|
}
|
|
$13 = $12 + 9216 | 0;
|
|
$24 = ($13 | 0) / (9 | 0) | 0;
|
|
$23 = (($24 << 2 | 0) + (($6 + 48 | 0) + (($17 | 0) < (0 | 0) ? 4 : 292) | 0) | 0) + -4096 | 0;
|
|
$12 = 10;
|
|
label$28 : {
|
|
$13 = $13 - Math_imul($24, 9) | 0;
|
|
if (($13 | 0) > (7 | 0)) {
|
|
break label$28
|
|
}
|
|
label$29 : while (1) {
|
|
$12 = Math_imul($12, 10);
|
|
$13 = $13 + 1 | 0;
|
|
if (($13 | 0) != (8 | 0)) {
|
|
continue label$29
|
|
}
|
|
break label$29;
|
|
};
|
|
}
|
|
$25 = $23 + 4 | 0;
|
|
label$30 : {
|
|
label$31 : {
|
|
$13 = HEAP32[$23 >> 2] | 0;
|
|
$21 = ($13 >>> 0) / ($12 >>> 0) | 0;
|
|
$24 = $13 - Math_imul($21, $12) | 0;
|
|
if ($24) {
|
|
break label$31
|
|
}
|
|
if (($25 | 0) == ($11 | 0)) {
|
|
break label$30
|
|
}
|
|
}
|
|
label$32 : {
|
|
label$33 : {
|
|
if ($21 & 1 | 0) {
|
|
break label$33
|
|
}
|
|
$1 = 9007199254740992.0;
|
|
if (($12 | 0) != (1e9 | 0)) {
|
|
break label$32
|
|
}
|
|
if ($23 >>> 0 <= $19 >>> 0) {
|
|
break label$32
|
|
}
|
|
if (!((HEAPU8[($23 + -4 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$32
|
|
}
|
|
}
|
|
$1 = 9007199254740994.0;
|
|
}
|
|
$388 = ($25 | 0) == ($11 | 0) ? 1.0 : 1.5;
|
|
$25 = $12 >>> 1 | 0;
|
|
$26 = $24 >>> 0 < $25 >>> 0 ? .5 : ($24 | 0) == ($25 | 0) ? $388 : 1.5;
|
|
label$34 : {
|
|
if ($7) {
|
|
break label$34
|
|
}
|
|
if ((HEAPU8[$10 >> 0] | 0 | 0) != (45 | 0)) {
|
|
break label$34
|
|
}
|
|
$26 = -$26;
|
|
$1 = -$1;
|
|
}
|
|
$13 = $13 - $24 | 0;
|
|
HEAP32[$23 >> 2] = $13;
|
|
if ($1 + $26 == $1) {
|
|
break label$30
|
|
}
|
|
$12 = $13 + $12 | 0;
|
|
HEAP32[$23 >> 2] = $12;
|
|
label$35 : {
|
|
if ($12 >>> 0 < 1e9 >>> 0) {
|
|
break label$35
|
|
}
|
|
label$36 : while (1) {
|
|
HEAP32[$23 >> 2] = 0;
|
|
label$37 : {
|
|
$23 = $23 + -4 | 0;
|
|
if ($23 >>> 0 >= $19 >>> 0) {
|
|
break label$37
|
|
}
|
|
$19 = $19 + -4 | 0;
|
|
HEAP32[$19 >> 2] = 0;
|
|
}
|
|
$12 = (HEAP32[$23 >> 2] | 0) + 1 | 0;
|
|
HEAP32[$23 >> 2] = $12;
|
|
if ($12 >>> 0 > 999999999 >>> 0) {
|
|
continue label$36
|
|
}
|
|
break label$36;
|
|
};
|
|
}
|
|
$3 = Math_imul(($18 - $19 | 0) >> 2 | 0, 9);
|
|
$12 = 10;
|
|
$13 = HEAP32[$19 >> 2] | 0;
|
|
if ($13 >>> 0 < 10 >>> 0) {
|
|
break label$30
|
|
}
|
|
label$38 : while (1) {
|
|
$3 = $3 + 1 | 0;
|
|
$12 = Math_imul($12, 10);
|
|
if ($13 >>> 0 >= $12 >>> 0) {
|
|
continue label$38
|
|
}
|
|
break label$38;
|
|
};
|
|
}
|
|
$12 = $23 + 4 | 0;
|
|
$11 = $11 >>> 0 > $12 >>> 0 ? $12 : $11;
|
|
}
|
|
label$39 : {
|
|
label$40 : while (1) {
|
|
$12 = $11;
|
|
$13 = $11 >>> 0 <= $19 >>> 0;
|
|
if ($13) {
|
|
break label$39
|
|
}
|
|
$11 = $12 + -4 | 0;
|
|
if (!(HEAP32[$11 >> 2] | 0)) {
|
|
continue label$40
|
|
}
|
|
break label$40;
|
|
};
|
|
}
|
|
label$41 : {
|
|
label$42 : {
|
|
if (($15 | 0) == (103 | 0)) {
|
|
break label$42
|
|
}
|
|
$23 = $4 & 8 | 0;
|
|
break label$41;
|
|
}
|
|
$11 = $16 ? $16 : 1;
|
|
$23 = ($11 | 0) > ($3 | 0) & ($3 | 0) > (-5 | 0) | 0;
|
|
$16 = ($23 ? $3 ^ -1 | 0 : -1) + $11 | 0;
|
|
$5 = ($23 ? -1 : -2) + $5 | 0;
|
|
$23 = $4 & 8 | 0;
|
|
if ($23) {
|
|
break label$41
|
|
}
|
|
$11 = -9;
|
|
label$43 : {
|
|
if ($13) {
|
|
break label$43
|
|
}
|
|
$23 = HEAP32[($12 + -4 | 0) >> 2] | 0;
|
|
if (!$23) {
|
|
break label$43
|
|
}
|
|
$13 = 10;
|
|
$11 = 0;
|
|
if (($23 >>> 0) % (10 >>> 0) | 0) {
|
|
break label$43
|
|
}
|
|
label$44 : while (1) {
|
|
$24 = $11;
|
|
$11 = $11 + 1 | 0;
|
|
$13 = Math_imul($13, 10);
|
|
if (!(($23 >>> 0) % ($13 >>> 0) | 0)) {
|
|
continue label$44
|
|
}
|
|
break label$44;
|
|
};
|
|
$11 = $24 ^ -1 | 0;
|
|
}
|
|
$13 = Math_imul(($12 - $18 | 0) >> 2 | 0, 9);
|
|
label$45 : {
|
|
if (($5 & -33 | 0 | 0) != (70 | 0)) {
|
|
break label$45
|
|
}
|
|
$23 = 0;
|
|
$11 = ($13 + $11 | 0) + -9 | 0;
|
|
$11 = ($11 | 0) > (0 | 0) ? $11 : 0;
|
|
$16 = ($16 | 0) < ($11 | 0) ? $16 : $11;
|
|
break label$41;
|
|
}
|
|
$23 = 0;
|
|
$11 = (($3 + $13 | 0) + $11 | 0) + -9 | 0;
|
|
$11 = ($11 | 0) > (0 | 0) ? $11 : 0;
|
|
$16 = ($16 | 0) < ($11 | 0) ? $16 : $11;
|
|
}
|
|
$13 = -1;
|
|
$24 = $16 | $23 | 0;
|
|
if (($16 | 0) > (($24 ? 2147483645 : 2147483646) | 0)) {
|
|
break label$4
|
|
}
|
|
$25 = ($16 + (($24 | 0) != (0 | 0)) | 0) + 1 | 0;
|
|
label$46 : {
|
|
label$47 : {
|
|
$22 = $5 & -33 | 0;
|
|
if (($22 | 0) != (70 | 0)) {
|
|
break label$47
|
|
}
|
|
if (($3 | 0) > ($25 ^ 2147483647 | 0 | 0)) {
|
|
break label$4
|
|
}
|
|
$11 = ($3 | 0) > (0 | 0) ? $3 : 0;
|
|
break label$46;
|
|
}
|
|
label$48 : {
|
|
$11 = $3 >> 31 | 0;
|
|
i64toi32_i32$4 = 0;
|
|
$11 = fmt_u(($3 ^ $11 | 0) - $11 | 0 | 0, i64toi32_i32$4 | 0, $14 | 0) | 0;
|
|
if (($14 - $11 | 0 | 0) > (1 | 0)) {
|
|
break label$48
|
|
}
|
|
label$49 : while (1) {
|
|
$11 = $11 + -1 | 0;
|
|
HEAP8[$11 >> 0] = 48;
|
|
if (($14 - $11 | 0 | 0) < (2 | 0)) {
|
|
continue label$49
|
|
}
|
|
break label$49;
|
|
};
|
|
}
|
|
$21 = $11 + -2 | 0;
|
|
HEAP8[$21 >> 0] = $5;
|
|
$13 = -1;
|
|
HEAP8[($11 + -1 | 0) >> 0] = ($3 | 0) < (0 | 0) ? 45 : 43;
|
|
$11 = $14 - $21 | 0;
|
|
if (($11 | 0) > ($25 ^ 2147483647 | 0 | 0)) {
|
|
break label$4
|
|
}
|
|
}
|
|
$13 = -1;
|
|
$11 = $11 + $25 | 0;
|
|
if (($11 | 0) > ($9 ^ 2147483647 | 0 | 0)) {
|
|
break label$4
|
|
}
|
|
$25 = $11 + $9 | 0;
|
|
pad($0 | 0, 32 | 0, $2 | 0, $25 | 0, $4 | 0);
|
|
out($0 | 0, $10 | 0, $9 | 0);
|
|
pad($0 | 0, 48 | 0, $2 | 0, $25 | 0, $4 ^ 65536 | 0 | 0);
|
|
label$50 : {
|
|
label$51 : {
|
|
label$52 : {
|
|
label$53 : {
|
|
if (($22 | 0) != (70 | 0)) {
|
|
break label$53
|
|
}
|
|
$23 = $6 + 16 | 0 | 8 | 0;
|
|
$3 = $6 + 16 | 0 | 9 | 0;
|
|
$13 = $19 >>> 0 > $18 >>> 0 ? $18 : $19;
|
|
$19 = $13;
|
|
label$54 : while (1) {
|
|
i64toi32_i32$5 = $19;
|
|
i64toi32_i32$4 = HEAP32[$19 >> 2] | 0;
|
|
i64toi32_i32$0 = 0;
|
|
$11 = fmt_u(i64toi32_i32$4 | 0, i64toi32_i32$0 | 0, $3 | 0) | 0;
|
|
label$55 : {
|
|
label$56 : {
|
|
if (($19 | 0) == ($13 | 0)) {
|
|
break label$56
|
|
}
|
|
if ($11 >>> 0 <= ($6 + 16 | 0) >>> 0) {
|
|
break label$55
|
|
}
|
|
label$57 : while (1) {
|
|
$11 = $11 + -1 | 0;
|
|
HEAP8[$11 >> 0] = 48;
|
|
if ($11 >>> 0 > ($6 + 16 | 0) >>> 0) {
|
|
continue label$57
|
|
}
|
|
break label$55;
|
|
};
|
|
}
|
|
if (($11 | 0) != ($3 | 0)) {
|
|
break label$55
|
|
}
|
|
HEAP8[($6 + 24 | 0) >> 0] = 48;
|
|
$11 = $23;
|
|
}
|
|
out($0 | 0, $11 | 0, $3 - $11 | 0 | 0);
|
|
$19 = $19 + 4 | 0;
|
|
if ($19 >>> 0 <= $18 >>> 0) {
|
|
continue label$54
|
|
}
|
|
break label$54;
|
|
};
|
|
label$58 : {
|
|
if (!$24) {
|
|
break label$58
|
|
}
|
|
out($0 | 0, 86179 | 0, 1 | 0);
|
|
}
|
|
if ($19 >>> 0 >= $12 >>> 0) {
|
|
break label$52
|
|
}
|
|
if (($16 | 0) < (1 | 0)) {
|
|
break label$52
|
|
}
|
|
label$59 : while (1) {
|
|
label$60 : {
|
|
i64toi32_i32$5 = $19;
|
|
i64toi32_i32$0 = HEAP32[$19 >> 2] | 0;
|
|
i64toi32_i32$4 = 0;
|
|
$11 = fmt_u(i64toi32_i32$0 | 0, i64toi32_i32$4 | 0, $3 | 0) | 0;
|
|
if ($11 >>> 0 <= ($6 + 16 | 0) >>> 0) {
|
|
break label$60
|
|
}
|
|
label$61 : while (1) {
|
|
$11 = $11 + -1 | 0;
|
|
HEAP8[$11 >> 0] = 48;
|
|
if ($11 >>> 0 > ($6 + 16 | 0) >>> 0) {
|
|
continue label$61
|
|
}
|
|
break label$61;
|
|
};
|
|
}
|
|
out($0 | 0, $11 | 0, (($16 | 0) < (9 | 0) ? $16 : 9) | 0);
|
|
$11 = $16 + -9 | 0;
|
|
$19 = $19 + 4 | 0;
|
|
if ($19 >>> 0 >= $12 >>> 0) {
|
|
break label$51
|
|
}
|
|
$13 = ($16 | 0) > (9 | 0);
|
|
$16 = $11;
|
|
if ($13) {
|
|
continue label$59
|
|
}
|
|
break label$51;
|
|
};
|
|
}
|
|
label$62 : {
|
|
if (($16 | 0) < (0 | 0)) {
|
|
break label$62
|
|
}
|
|
$24 = $12 >>> 0 > $19 >>> 0 ? $12 : $19 + 4 | 0;
|
|
$18 = $6 + 16 | 0 | 8 | 0;
|
|
$3 = $6 + 16 | 0 | 9 | 0;
|
|
$12 = $19;
|
|
label$63 : while (1) {
|
|
label$64 : {
|
|
i64toi32_i32$5 = $12;
|
|
i64toi32_i32$4 = HEAP32[$12 >> 2] | 0;
|
|
i64toi32_i32$0 = 0;
|
|
$11 = fmt_u(i64toi32_i32$4 | 0, i64toi32_i32$0 | 0, $3 | 0) | 0;
|
|
if (($11 | 0) != ($3 | 0)) {
|
|
break label$64
|
|
}
|
|
HEAP8[($6 + 24 | 0) >> 0] = 48;
|
|
$11 = $18;
|
|
}
|
|
label$65 : {
|
|
label$66 : {
|
|
if (($12 | 0) == ($19 | 0)) {
|
|
break label$66
|
|
}
|
|
if ($11 >>> 0 <= ($6 + 16 | 0) >>> 0) {
|
|
break label$65
|
|
}
|
|
label$67 : while (1) {
|
|
$11 = $11 + -1 | 0;
|
|
HEAP8[$11 >> 0] = 48;
|
|
if ($11 >>> 0 > ($6 + 16 | 0) >>> 0) {
|
|
continue label$67
|
|
}
|
|
break label$65;
|
|
};
|
|
}
|
|
out($0 | 0, $11 | 0, 1 | 0);
|
|
$11 = $11 + 1 | 0;
|
|
if (!($16 | $23 | 0)) {
|
|
break label$65
|
|
}
|
|
out($0 | 0, 86179 | 0, 1 | 0);
|
|
}
|
|
$13 = $3 - $11 | 0;
|
|
out($0 | 0, $11 | 0, (($16 | 0) < ($13 | 0) ? $16 : $13) | 0);
|
|
$16 = $16 - $13 | 0;
|
|
$12 = $12 + 4 | 0;
|
|
if ($12 >>> 0 >= $24 >>> 0) {
|
|
break label$62
|
|
}
|
|
if (($16 | 0) > (-1 | 0)) {
|
|
continue label$63
|
|
}
|
|
break label$63;
|
|
};
|
|
}
|
|
pad($0 | 0, 48 | 0, $16 + 18 | 0 | 0, 18 | 0, 0 | 0);
|
|
out($0 | 0, $21 | 0, $14 - $21 | 0 | 0);
|
|
break label$50;
|
|
}
|
|
$11 = $16;
|
|
}
|
|
pad($0 | 0, 48 | 0, $11 + 9 | 0 | 0, 9 | 0, 0 | 0);
|
|
}
|
|
pad($0 | 0, 32 | 0, $2 | 0, $25 | 0, $4 ^ 8192 | 0 | 0);
|
|
$13 = ($25 | 0) > ($2 | 0) ? $25 : $2;
|
|
break label$4;
|
|
}
|
|
$25 = $10 + ((($5 << 26 | 0) >> 31 | 0) & 9 | 0) | 0;
|
|
label$68 : {
|
|
if ($3 >>> 0 > 11 >>> 0) {
|
|
break label$68
|
|
}
|
|
$11 = 12 - $3 | 0;
|
|
$26 = 16.0;
|
|
label$69 : while (1) {
|
|
$26 = $26 * 16.0;
|
|
$11 = $11 + -1 | 0;
|
|
if ($11) {
|
|
continue label$69
|
|
}
|
|
break label$69;
|
|
};
|
|
label$70 : {
|
|
if ((HEAPU8[$25 >> 0] | 0 | 0) != (45 | 0)) {
|
|
break label$70
|
|
}
|
|
$1 = -($26 + (-$1 - $26));
|
|
break label$68;
|
|
}
|
|
$1 = $1 + $26 - $26;
|
|
}
|
|
label$71 : {
|
|
$11 = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
$852 = $11;
|
|
$11 = $11 >> 31 | 0;
|
|
i64toi32_i32$0 = 0;
|
|
$11 = fmt_u(($852 ^ $11 | 0) - $11 | 0 | 0, i64toi32_i32$0 | 0, $14 | 0) | 0;
|
|
if (($11 | 0) != ($14 | 0)) {
|
|
break label$71
|
|
}
|
|
HEAP8[($6 + 15 | 0) >> 0] = 48;
|
|
$11 = $6 + 15 | 0;
|
|
}
|
|
$23 = $9 | 2 | 0;
|
|
$19 = $5 & 32 | 0;
|
|
$12 = HEAP32[($6 + 44 | 0) >> 2] | 0;
|
|
$24 = $11 + -2 | 0;
|
|
HEAP8[$24 >> 0] = $5 + 15 | 0;
|
|
HEAP8[($11 + -1 | 0) >> 0] = ($12 | 0) < (0 | 0) ? 45 : 43;
|
|
$13 = $4 & 8 | 0;
|
|
$12 = $6 + 16 | 0;
|
|
label$72 : while (1) {
|
|
$11 = $12;
|
|
label$73 : {
|
|
label$74 : {
|
|
if (!(Math_abs($1) < 2147483648.0)) {
|
|
break label$74
|
|
}
|
|
$12 = ~~$1;
|
|
break label$73;
|
|
}
|
|
$12 = -2147483648;
|
|
}
|
|
HEAP8[$11 >> 0] = HEAPU8[($12 + 109248 | 0) >> 0] | 0 | $19 | 0;
|
|
$1 = ($1 - +($12 | 0)) * 16.0;
|
|
label$75 : {
|
|
$12 = $11 + 1 | 0;
|
|
if (($12 - ($6 + 16 | 0) | 0 | 0) != (1 | 0)) {
|
|
break label$75
|
|
}
|
|
label$76 : {
|
|
if ($13) {
|
|
break label$76
|
|
}
|
|
if (($3 | 0) > (0 | 0)) {
|
|
break label$76
|
|
}
|
|
if ($1 == 0.0) {
|
|
break label$75
|
|
}
|
|
}
|
|
HEAP8[($11 + 1 | 0) >> 0] = 46;
|
|
$12 = $11 + 2 | 0;
|
|
}
|
|
if ($1 != 0.0) {
|
|
continue label$72
|
|
}
|
|
break label$72;
|
|
};
|
|
$13 = -1;
|
|
$19 = $14 - $24 | 0;
|
|
$21 = $23 + $19 | 0;
|
|
if ((2147483645 - $21 | 0 | 0) < ($3 | 0)) {
|
|
break label$4
|
|
}
|
|
$11 = $12 - ($6 + 16 | 0) | 0;
|
|
$3 = $3 ? (($11 + -2 | 0 | 0) < ($3 | 0) ? $3 + 2 | 0 : $11) : $11;
|
|
$12 = $21 + $3 | 0;
|
|
pad($0 | 0, 32 | 0, $2 | 0, $12 | 0, $4 | 0);
|
|
out($0 | 0, $25 | 0, $23 | 0);
|
|
pad($0 | 0, 48 | 0, $2 | 0, $12 | 0, $4 ^ 65536 | 0 | 0);
|
|
out($0 | 0, $6 + 16 | 0 | 0, $11 | 0);
|
|
pad($0 | 0, 48 | 0, $3 - $11 | 0 | 0, 0 | 0, 0 | 0);
|
|
out($0 | 0, $24 | 0, $19 | 0);
|
|
pad($0 | 0, 32 | 0, $2 | 0, $12 | 0, $4 ^ 8192 | 0 | 0);
|
|
$13 = ($12 | 0) > ($2 | 0) ? $12 : $2;
|
|
}
|
|
__stack_pointer = $6 + 560 | 0;
|
|
return $13 | 0;
|
|
}
|
|
|
|
function pop_arg_long_double($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $2 = 0, $12 = 0, $12$hi = 0, $15 = 0, $15$hi = 0, wasm2js_i32$0 = 0, wasm2js_f64$0 = 0.0;
|
|
$2 = ((HEAP32[$1 >> 2] | 0) + 7 | 0) & -8 | 0;
|
|
HEAP32[$1 >> 2] = $2 + 16 | 0;
|
|
i64toi32_i32$2 = $2;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$12 = i64toi32_i32$0;
|
|
$12$hi = i64toi32_i32$1;
|
|
i64toi32_i32$2 = i64toi32_i32$2 + 8 | 0;
|
|
i64toi32_i32$1 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$15 = i64toi32_i32$1;
|
|
$15$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $12$hi;
|
|
i64toi32_i32$1 = $15$hi;
|
|
(wasm2js_i32$0 = $0, wasm2js_f64$0 = +__trunctfdf2($12 | 0, i64toi32_i32$0 | 0, $15 | 0, i64toi32_i32$1 | 0)), HEAPF64[wasm2js_i32$0 >> 3] = wasm2js_f64$0;
|
|
}
|
|
|
|
function __DOUBLE_BITS($0) {
|
|
$0 = +$0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0;
|
|
wasm2js_scratch_store_f64(+$0);
|
|
i64toi32_i32$0 = wasm2js_scratch_load_i32(1 | 0) | 0;
|
|
i64toi32_i32$1 = wasm2js_scratch_load_i32(0 | 0) | 0;
|
|
i64toi32_i32$HIGH_BITS = i64toi32_i32$0;
|
|
return i64toi32_i32$1 | 0;
|
|
}
|
|
|
|
function __wasi_syscall_ret($0) {
|
|
$0 = $0 | 0;
|
|
var wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
label$1 : {
|
|
if ($0) {
|
|
break label$1
|
|
}
|
|
return 0 | 0;
|
|
}
|
|
(wasm2js_i32$0 = __errno_location() | 0, wasm2js_i32$1 = $0), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
return -1 | 0;
|
|
}
|
|
|
|
function __syscall_getpid() {
|
|
return 42 | 0;
|
|
}
|
|
|
|
function getpid() {
|
|
return __syscall_getpid() | 0 | 0;
|
|
}
|
|
|
|
function __get_tp() {
|
|
return 117352 | 0;
|
|
}
|
|
|
|
function init_pthread_self() {
|
|
var wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
HEAP32[(0 + 117448 | 0) >> 2] = 117328;
|
|
(wasm2js_i32$0 = 0, wasm2js_i32$1 = getpid() | 0), HEAP32[(wasm2js_i32$0 + 117376 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
|
|
function wcrtomb($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $3 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$3 = 1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!$0) {
|
|
break label$2
|
|
}
|
|
if ($1 >>> 0 <= 127 >>> 0) {
|
|
break label$1
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if (HEAP32[(HEAP32[((__get_tp() | 0) + 96 | 0) >> 2] | 0) >> 2] | 0) {
|
|
break label$4
|
|
}
|
|
if (($1 & -128 | 0 | 0) == (57216 | 0)) {
|
|
break label$1
|
|
}
|
|
(wasm2js_i32$0 = __errno_location() | 0, wasm2js_i32$1 = 25), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
break label$3;
|
|
}
|
|
label$5 : {
|
|
if ($1 >>> 0 > 2047 >>> 0) {
|
|
break label$5
|
|
}
|
|
HEAP8[($0 + 1 | 0) >> 0] = $1 & 63 | 0 | 128 | 0;
|
|
HEAP8[$0 >> 0] = $1 >>> 6 | 0 | 192 | 0;
|
|
return 2 | 0;
|
|
}
|
|
label$6 : {
|
|
label$7 : {
|
|
if ($1 >>> 0 < 55296 >>> 0) {
|
|
break label$7
|
|
}
|
|
if (($1 & -8192 | 0 | 0) != (57344 | 0)) {
|
|
break label$6
|
|
}
|
|
}
|
|
HEAP8[($0 + 2 | 0) >> 0] = $1 & 63 | 0 | 128 | 0;
|
|
HEAP8[$0 >> 0] = $1 >>> 12 | 0 | 224 | 0;
|
|
HEAP8[($0 + 1 | 0) >> 0] = ($1 >>> 6 | 0) & 63 | 0 | 128 | 0;
|
|
return 3 | 0;
|
|
}
|
|
label$8 : {
|
|
if (($1 + -65536 | 0) >>> 0 > 1048575 >>> 0) {
|
|
break label$8
|
|
}
|
|
HEAP8[($0 + 3 | 0) >> 0] = $1 & 63 | 0 | 128 | 0;
|
|
HEAP8[$0 >> 0] = $1 >>> 18 | 0 | 240 | 0;
|
|
HEAP8[($0 + 2 | 0) >> 0] = ($1 >>> 6 | 0) & 63 | 0 | 128 | 0;
|
|
HEAP8[($0 + 1 | 0) >> 0] = ($1 >>> 12 | 0) & 63 | 0 | 128 | 0;
|
|
return 4 | 0;
|
|
}
|
|
(wasm2js_i32$0 = __errno_location() | 0, wasm2js_i32$1 = 25), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
}
|
|
$3 = -1;
|
|
}
|
|
return $3 | 0;
|
|
}
|
|
HEAP8[$0 >> 0] = $1;
|
|
return 1 | 0;
|
|
}
|
|
|
|
function wctomb($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
label$1 : {
|
|
if ($0) {
|
|
break label$1
|
|
}
|
|
return 0 | 0;
|
|
}
|
|
return wcrtomb($0 | 0, $1 | 0, 0 | 0) | 0 | 0;
|
|
}
|
|
|
|
function emscripten_get_heap_size() {
|
|
return __wasm_memory_size() << 16 | 0 | 0;
|
|
}
|
|
|
|
function sbrk($0) {
|
|
$0 = $0 | 0;
|
|
var $1 = 0, $2 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$1 = HEAP32[(0 + 113004 | 0) >> 2] | 0;
|
|
$2 = ($0 + 7 | 0) & -8 | 0;
|
|
$0 = $1 + $2 | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!$2) {
|
|
break label$2
|
|
}
|
|
if ($0 >>> 0 <= $1 >>> 0) {
|
|
break label$1
|
|
}
|
|
}
|
|
label$3 : {
|
|
if ($0 >>> 0 <= (emscripten_get_heap_size() | 0) >>> 0) {
|
|
break label$3
|
|
}
|
|
if (!(emscripten_resize_heap($0 | 0) | 0)) {
|
|
break label$1
|
|
}
|
|
}
|
|
HEAP32[(0 + 113004 | 0) >> 2] = $0;
|
|
return $1 | 0;
|
|
}
|
|
(wasm2js_i32$0 = __errno_location() | 0, wasm2js_i32$1 = 48), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
return -1 | 0;
|
|
}
|
|
|
|
function dlmalloc($0) {
|
|
$0 = $0 | 0;
|
|
var $4 = 0, $7 = 0, $5 = 0, $8 = 0, $3 = 0, $2 = 0, $11 = 0, $6 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, $9 = 0, i64toi32_i32$2 = 0, $10 = 0, $1 = 0, $79 = 0, $191 = 0, $945 = 0, $947 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$1 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : {
|
|
label$4 : {
|
|
label$5 : {
|
|
label$6 : {
|
|
label$7 : {
|
|
label$8 : {
|
|
label$9 : {
|
|
label$10 : {
|
|
label$11 : {
|
|
label$12 : {
|
|
label$13 : {
|
|
label$14 : {
|
|
label$15 : {
|
|
if ($0 >>> 0 > 244 >>> 0) {
|
|
break label$15
|
|
}
|
|
label$16 : {
|
|
$2 = HEAP32[(0 + 117484 | 0) >> 2] | 0;
|
|
$3 = $0 >>> 0 < 11 >>> 0 ? 16 : ($0 + 11 | 0) & -8 | 0;
|
|
$4 = $3 >>> 3 | 0;
|
|
$0 = $2 >>> $4 | 0;
|
|
if (!($0 & 3 | 0)) {
|
|
break label$16
|
|
}
|
|
label$17 : {
|
|
label$18 : {
|
|
$5 = (($0 ^ -1 | 0) & 1 | 0) + $4 | 0;
|
|
$4 = $5 << 3 | 0;
|
|
$0 = $4 + 117524 | 0;
|
|
$4 = HEAP32[($4 + 117532 | 0) >> 2] | 0;
|
|
$3 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
if (($0 | 0) != ($3 | 0)) {
|
|
break label$18
|
|
}
|
|
(wasm2js_i32$0 = 0, wasm2js_i32$1 = $2 & (__wasm_rotl_i32(-2 | 0, $5 | 0) | 0) | 0), HEAP32[(wasm2js_i32$0 + 117484 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$17;
|
|
}
|
|
HEAP32[($3 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($0 + 8 | 0) >> 2] = $3;
|
|
}
|
|
$0 = $4 + 8 | 0;
|
|
$5 = $5 << 3 | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $5 | 3 | 0;
|
|
$4 = $4 + $5 | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = HEAP32[($4 + 4 | 0) >> 2] | 0 | 1 | 0;
|
|
break label$1;
|
|
}
|
|
$6 = HEAP32[(0 + 117492 | 0) >> 2] | 0;
|
|
if ($3 >>> 0 <= $6 >>> 0) {
|
|
break label$14
|
|
}
|
|
label$19 : {
|
|
if (!$0) {
|
|
break label$19
|
|
}
|
|
label$20 : {
|
|
label$21 : {
|
|
$79 = $0 << $4 | 0;
|
|
$0 = 2 << $4 | 0;
|
|
$0 = $79 & ($0 | (0 - $0 | 0) | 0) | 0;
|
|
$4 = __wasm_ctz_i32($0 & (0 - $0 | 0) | 0 | 0) | 0;
|
|
$0 = $4 << 3 | 0;
|
|
$5 = $0 + 117524 | 0;
|
|
$0 = HEAP32[($0 + 117532 | 0) >> 2] | 0;
|
|
$7 = HEAP32[($0 + 8 | 0) >> 2] | 0;
|
|
if (($5 | 0) != ($7 | 0)) {
|
|
break label$21
|
|
}
|
|
$2 = $2 & (__wasm_rotl_i32(-2 | 0, $4 | 0) | 0) | 0;
|
|
HEAP32[(0 + 117484 | 0) >> 2] = $2;
|
|
break label$20;
|
|
}
|
|
HEAP32[($7 + 12 | 0) >> 2] = $5;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $7;
|
|
}
|
|
HEAP32[($0 + 4 | 0) >> 2] = $3 | 3 | 0;
|
|
$7 = $0 + $3 | 0;
|
|
$4 = $4 << 3 | 0;
|
|
$5 = $4 - $3 | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = $5 | 1 | 0;
|
|
HEAP32[($0 + $4 | 0) >> 2] = $5;
|
|
label$22 : {
|
|
if (!$6) {
|
|
break label$22
|
|
}
|
|
$3 = ($6 & -8 | 0) + 117524 | 0;
|
|
$4 = HEAP32[(0 + 117504 | 0) >> 2] | 0;
|
|
label$23 : {
|
|
label$24 : {
|
|
$8 = 1 << ($6 >>> 3 | 0) | 0;
|
|
if ($2 & $8 | 0) {
|
|
break label$24
|
|
}
|
|
HEAP32[(0 + 117484 | 0) >> 2] = $2 | $8 | 0;
|
|
$8 = $3;
|
|
break label$23;
|
|
}
|
|
$8 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($3 + 8 | 0) >> 2] = $4;
|
|
HEAP32[($8 + 12 | 0) >> 2] = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $3;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $8;
|
|
}
|
|
$0 = $0 + 8 | 0;
|
|
HEAP32[(0 + 117504 | 0) >> 2] = $7;
|
|
HEAP32[(0 + 117492 | 0) >> 2] = $5;
|
|
break label$1;
|
|
}
|
|
$9 = HEAP32[(0 + 117488 | 0) >> 2] | 0;
|
|
if (!$9) {
|
|
break label$14
|
|
}
|
|
$7 = HEAP32[(((__wasm_ctz_i32($9 & (0 - $9 | 0) | 0 | 0) | 0) << 2 | 0) + 117788 | 0) >> 2] | 0;
|
|
$4 = ((HEAP32[($7 + 4 | 0) >> 2] | 0) & -8 | 0) - $3 | 0;
|
|
$5 = $7;
|
|
label$25 : {
|
|
label$26 : while (1) {
|
|
label$27 : {
|
|
$0 = HEAP32[($5 + 16 | 0) >> 2] | 0;
|
|
if ($0) {
|
|
break label$27
|
|
}
|
|
$0 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
if (!$0) {
|
|
break label$25
|
|
}
|
|
}
|
|
$5 = ((HEAP32[($0 + 4 | 0) >> 2] | 0) & -8 | 0) - $3 | 0;
|
|
$191 = $5;
|
|
$5 = $5 >>> 0 < $4 >>> 0;
|
|
$4 = $5 ? $191 : $4;
|
|
$7 = $5 ? $0 : $7;
|
|
$5 = $0;
|
|
continue label$26;
|
|
};
|
|
}
|
|
$10 = HEAP32[($7 + 24 | 0) >> 2] | 0;
|
|
label$28 : {
|
|
$8 = HEAP32[($7 + 12 | 0) >> 2] | 0;
|
|
if (($8 | 0) == ($7 | 0)) {
|
|
break label$28
|
|
}
|
|
$0 = HEAP32[($7 + 8 | 0) >> 2] | 0;
|
|
HEAP32[(0 + 117500 | 0) >> 2] | 0;
|
|
HEAP32[($0 + 12 | 0) >> 2] = $8;
|
|
HEAP32[($8 + 8 | 0) >> 2] = $0;
|
|
break label$2;
|
|
}
|
|
label$29 : {
|
|
$5 = $7 + 20 | 0;
|
|
$0 = HEAP32[$5 >> 2] | 0;
|
|
if ($0) {
|
|
break label$29
|
|
}
|
|
$0 = HEAP32[($7 + 16 | 0) >> 2] | 0;
|
|
if (!$0) {
|
|
break label$13
|
|
}
|
|
$5 = $7 + 16 | 0;
|
|
}
|
|
label$30 : while (1) {
|
|
$11 = $5;
|
|
$8 = $0;
|
|
$5 = $0 + 20 | 0;
|
|
$0 = HEAP32[$5 >> 2] | 0;
|
|
if ($0) {
|
|
continue label$30
|
|
}
|
|
$5 = $8 + 16 | 0;
|
|
$0 = HEAP32[($8 + 16 | 0) >> 2] | 0;
|
|
if ($0) {
|
|
continue label$30
|
|
}
|
|
break label$30;
|
|
};
|
|
HEAP32[$11 >> 2] = 0;
|
|
break label$2;
|
|
}
|
|
$3 = -1;
|
|
if ($0 >>> 0 > -65 >>> 0) {
|
|
break label$14
|
|
}
|
|
$0 = $0 + 11 | 0;
|
|
$3 = $0 & -8 | 0;
|
|
$6 = HEAP32[(0 + 117488 | 0) >> 2] | 0;
|
|
if (!$6) {
|
|
break label$14
|
|
}
|
|
$11 = 0;
|
|
label$31 : {
|
|
if ($3 >>> 0 < 256 >>> 0) {
|
|
break label$31
|
|
}
|
|
$11 = 31;
|
|
if ($3 >>> 0 > 16777215 >>> 0) {
|
|
break label$31
|
|
}
|
|
$0 = Math_clz32($0 >>> 8 | 0);
|
|
$11 = ((($3 >>> (38 - $0 | 0) | 0) & 1 | 0) - ($0 << 1 | 0) | 0) + 62 | 0;
|
|
}
|
|
$4 = 0 - $3 | 0;
|
|
label$32 : {
|
|
label$33 : {
|
|
label$34 : {
|
|
label$35 : {
|
|
$5 = HEAP32[(($11 << 2 | 0) + 117788 | 0) >> 2] | 0;
|
|
if ($5) {
|
|
break label$35
|
|
}
|
|
$0 = 0;
|
|
$8 = 0;
|
|
break label$34;
|
|
}
|
|
$0 = 0;
|
|
$7 = $3 << (($11 | 0) == (31 | 0) ? 0 : 25 - ($11 >>> 1 | 0) | 0) | 0;
|
|
$8 = 0;
|
|
label$36 : while (1) {
|
|
label$37 : {
|
|
$2 = ((HEAP32[($5 + 4 | 0) >> 2] | 0) & -8 | 0) - $3 | 0;
|
|
if ($2 >>> 0 >= $4 >>> 0) {
|
|
break label$37
|
|
}
|
|
$4 = $2;
|
|
$8 = $5;
|
|
if ($4) {
|
|
break label$37
|
|
}
|
|
$4 = 0;
|
|
$8 = $5;
|
|
$0 = $5;
|
|
break label$33;
|
|
}
|
|
$2 = HEAP32[($5 + 20 | 0) >> 2] | 0;
|
|
$5 = HEAP32[(($5 + (($7 >>> 29 | 0) & 4 | 0) | 0) + 16 | 0) >> 2] | 0;
|
|
$0 = $2 ? (($2 | 0) == ($5 | 0) ? $0 : $2) : $0;
|
|
$7 = $7 << 1 | 0;
|
|
if ($5) {
|
|
continue label$36
|
|
}
|
|
break label$36;
|
|
};
|
|
}
|
|
label$38 : {
|
|
if ($0 | $8 | 0) {
|
|
break label$38
|
|
}
|
|
$8 = 0;
|
|
$0 = 2 << $11 | 0;
|
|
$0 = ($0 | (0 - $0 | 0) | 0) & $6 | 0;
|
|
if (!$0) {
|
|
break label$14
|
|
}
|
|
$0 = HEAP32[(((__wasm_ctz_i32($0 & (0 - $0 | 0) | 0 | 0) | 0) << 2 | 0) + 117788 | 0) >> 2] | 0;
|
|
}
|
|
if (!$0) {
|
|
break label$32
|
|
}
|
|
}
|
|
label$39 : while (1) {
|
|
$2 = ((HEAP32[($0 + 4 | 0) >> 2] | 0) & -8 | 0) - $3 | 0;
|
|
$7 = $2 >>> 0 < $4 >>> 0;
|
|
label$40 : {
|
|
$5 = HEAP32[($0 + 16 | 0) >> 2] | 0;
|
|
if ($5) {
|
|
break label$40
|
|
}
|
|
$5 = HEAP32[($0 + 20 | 0) >> 2] | 0;
|
|
}
|
|
$4 = $7 ? $2 : $4;
|
|
$8 = $7 ? $0 : $8;
|
|
$0 = $5;
|
|
if ($0) {
|
|
continue label$39
|
|
}
|
|
break label$39;
|
|
};
|
|
}
|
|
if (!$8) {
|
|
break label$14
|
|
}
|
|
if ($4 >>> 0 >= ((HEAP32[(0 + 117492 | 0) >> 2] | 0) - $3 | 0) >>> 0) {
|
|
break label$14
|
|
}
|
|
$11 = HEAP32[($8 + 24 | 0) >> 2] | 0;
|
|
label$41 : {
|
|
$7 = HEAP32[($8 + 12 | 0) >> 2] | 0;
|
|
if (($7 | 0) == ($8 | 0)) {
|
|
break label$41
|
|
}
|
|
$0 = HEAP32[($8 + 8 | 0) >> 2] | 0;
|
|
HEAP32[(0 + 117500 | 0) >> 2] | 0;
|
|
HEAP32[($0 + 12 | 0) >> 2] = $7;
|
|
HEAP32[($7 + 8 | 0) >> 2] = $0;
|
|
break label$3;
|
|
}
|
|
label$42 : {
|
|
$5 = $8 + 20 | 0;
|
|
$0 = HEAP32[$5 >> 2] | 0;
|
|
if ($0) {
|
|
break label$42
|
|
}
|
|
$0 = HEAP32[($8 + 16 | 0) >> 2] | 0;
|
|
if (!$0) {
|
|
break label$12
|
|
}
|
|
$5 = $8 + 16 | 0;
|
|
}
|
|
label$43 : while (1) {
|
|
$2 = $5;
|
|
$7 = $0;
|
|
$5 = $0 + 20 | 0;
|
|
$0 = HEAP32[$5 >> 2] | 0;
|
|
if ($0) {
|
|
continue label$43
|
|
}
|
|
$5 = $7 + 16 | 0;
|
|
$0 = HEAP32[($7 + 16 | 0) >> 2] | 0;
|
|
if ($0) {
|
|
continue label$43
|
|
}
|
|
break label$43;
|
|
};
|
|
HEAP32[$2 >> 2] = 0;
|
|
break label$3;
|
|
}
|
|
label$44 : {
|
|
$0 = HEAP32[(0 + 117492 | 0) >> 2] | 0;
|
|
if ($0 >>> 0 < $3 >>> 0) {
|
|
break label$44
|
|
}
|
|
$4 = HEAP32[(0 + 117504 | 0) >> 2] | 0;
|
|
label$45 : {
|
|
label$46 : {
|
|
$5 = $0 - $3 | 0;
|
|
if ($5 >>> 0 < 16 >>> 0) {
|
|
break label$46
|
|
}
|
|
$7 = $4 + $3 | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = $5 | 1 | 0;
|
|
HEAP32[($4 + $0 | 0) >> 2] = $5;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $3 | 3 | 0;
|
|
break label$45;
|
|
}
|
|
HEAP32[($4 + 4 | 0) >> 2] = $0 | 3 | 0;
|
|
$0 = $4 + $0 | 0;
|
|
HEAP32[($0 + 4 | 0) >> 2] = HEAP32[($0 + 4 | 0) >> 2] | 0 | 1 | 0;
|
|
$7 = 0;
|
|
$5 = 0;
|
|
}
|
|
HEAP32[(0 + 117492 | 0) >> 2] = $5;
|
|
HEAP32[(0 + 117504 | 0) >> 2] = $7;
|
|
$0 = $4 + 8 | 0;
|
|
break label$1;
|
|
}
|
|
label$47 : {
|
|
$7 = HEAP32[(0 + 117496 | 0) >> 2] | 0;
|
|
if ($7 >>> 0 <= $3 >>> 0) {
|
|
break label$47
|
|
}
|
|
$4 = $7 - $3 | 0;
|
|
HEAP32[(0 + 117496 | 0) >> 2] = $4;
|
|
$0 = HEAP32[(0 + 117508 | 0) >> 2] | 0;
|
|
$5 = $0 + $3 | 0;
|
|
HEAP32[(0 + 117508 | 0) >> 2] = $5;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $4 | 1 | 0;
|
|
HEAP32[($0 + 4 | 0) >> 2] = $3 | 3 | 0;
|
|
$0 = $0 + 8 | 0;
|
|
break label$1;
|
|
}
|
|
label$48 : {
|
|
label$49 : {
|
|
if (!(HEAP32[(0 + 117956 | 0) >> 2] | 0)) {
|
|
break label$49
|
|
}
|
|
$4 = HEAP32[(0 + 117964 | 0) >> 2] | 0;
|
|
break label$48;
|
|
}
|
|
i64toi32_i32$1 = 0;
|
|
i64toi32_i32$0 = -1;
|
|
HEAP32[(i64toi32_i32$1 + 117968 | 0) >> 2] = -1;
|
|
HEAP32[(i64toi32_i32$1 + 117972 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = 0;
|
|
i64toi32_i32$0 = 4096;
|
|
HEAP32[(i64toi32_i32$1 + 117960 | 0) >> 2] = 4096;
|
|
HEAP32[(i64toi32_i32$1 + 117964 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[(0 + 117956 | 0) >> 2] = (($1 + 12 | 0) & -16 | 0) ^ 1431655768 | 0;
|
|
HEAP32[(0 + 117976 | 0) >> 2] = 0;
|
|
HEAP32[(0 + 117928 | 0) >> 2] = 0;
|
|
$4 = 4096;
|
|
}
|
|
$0 = 0;
|
|
$6 = $3 + 47 | 0;
|
|
$2 = $4 + $6 | 0;
|
|
$11 = 0 - $4 | 0;
|
|
$8 = $2 & $11 | 0;
|
|
if ($8 >>> 0 <= $3 >>> 0) {
|
|
break label$1
|
|
}
|
|
$0 = 0;
|
|
label$50 : {
|
|
$4 = HEAP32[(0 + 117924 | 0) >> 2] | 0;
|
|
if (!$4) {
|
|
break label$50
|
|
}
|
|
$5 = HEAP32[(0 + 117916 | 0) >> 2] | 0;
|
|
$9 = $5 + $8 | 0;
|
|
if ($9 >>> 0 <= $5 >>> 0) {
|
|
break label$1
|
|
}
|
|
if ($9 >>> 0 > $4 >>> 0) {
|
|
break label$1
|
|
}
|
|
}
|
|
label$51 : {
|
|
label$52 : {
|
|
if ((HEAPU8[(0 + 117928 | 0) >> 0] | 0) & 4 | 0) {
|
|
break label$52
|
|
}
|
|
label$53 : {
|
|
label$54 : {
|
|
label$55 : {
|
|
label$56 : {
|
|
label$57 : {
|
|
$4 = HEAP32[(0 + 117508 | 0) >> 2] | 0;
|
|
if (!$4) {
|
|
break label$57
|
|
}
|
|
$0 = 117932;
|
|
label$58 : while (1) {
|
|
label$59 : {
|
|
$5 = HEAP32[$0 >> 2] | 0;
|
|
if ($5 >>> 0 > $4 >>> 0) {
|
|
break label$59
|
|
}
|
|
if (($5 + (HEAP32[($0 + 4 | 0) >> 2] | 0) | 0) >>> 0 > $4 >>> 0) {
|
|
break label$56
|
|
}
|
|
}
|
|
$0 = HEAP32[($0 + 8 | 0) >> 2] | 0;
|
|
if ($0) {
|
|
continue label$58
|
|
}
|
|
break label$58;
|
|
};
|
|
}
|
|
$7 = sbrk(0 | 0) | 0;
|
|
if (($7 | 0) == (-1 | 0)) {
|
|
break label$53
|
|
}
|
|
$2 = $8;
|
|
label$60 : {
|
|
$0 = HEAP32[(0 + 117960 | 0) >> 2] | 0;
|
|
$4 = $0 + -1 | 0;
|
|
if (!($4 & $7 | 0)) {
|
|
break label$60
|
|
}
|
|
$2 = ($8 - $7 | 0) + (($4 + $7 | 0) & (0 - $0 | 0) | 0) | 0;
|
|
}
|
|
if ($2 >>> 0 <= $3 >>> 0) {
|
|
break label$53
|
|
}
|
|
label$61 : {
|
|
$0 = HEAP32[(0 + 117924 | 0) >> 2] | 0;
|
|
if (!$0) {
|
|
break label$61
|
|
}
|
|
$4 = HEAP32[(0 + 117916 | 0) >> 2] | 0;
|
|
$5 = $4 + $2 | 0;
|
|
if ($5 >>> 0 <= $4 >>> 0) {
|
|
break label$53
|
|
}
|
|
if ($5 >>> 0 > $0 >>> 0) {
|
|
break label$53
|
|
}
|
|
}
|
|
$0 = sbrk($2 | 0) | 0;
|
|
if (($0 | 0) != ($7 | 0)) {
|
|
break label$55
|
|
}
|
|
break label$51;
|
|
}
|
|
$2 = ($2 - $7 | 0) & $11 | 0;
|
|
$7 = sbrk($2 | 0) | 0;
|
|
if (($7 | 0) == ((HEAP32[$0 >> 2] | 0) + (HEAP32[($0 + 4 | 0) >> 2] | 0) | 0 | 0)) {
|
|
break label$54
|
|
}
|
|
$0 = $7;
|
|
}
|
|
if (($0 | 0) == (-1 | 0)) {
|
|
break label$53
|
|
}
|
|
label$62 : {
|
|
if (($3 + 48 | 0) >>> 0 > $2 >>> 0) {
|
|
break label$62
|
|
}
|
|
$7 = $0;
|
|
break label$51;
|
|
}
|
|
$4 = HEAP32[(0 + 117964 | 0) >> 2] | 0;
|
|
$4 = (($6 - $2 | 0) + $4 | 0) & (0 - $4 | 0) | 0;
|
|
if ((sbrk($4 | 0) | 0 | 0) == (-1 | 0)) {
|
|
break label$53
|
|
}
|
|
$2 = $4 + $2 | 0;
|
|
$7 = $0;
|
|
break label$51;
|
|
}
|
|
if (($7 | 0) != (-1 | 0)) {
|
|
break label$51
|
|
}
|
|
}
|
|
HEAP32[(0 + 117928 | 0) >> 2] = HEAP32[(0 + 117928 | 0) >> 2] | 0 | 4 | 0;
|
|
}
|
|
$7 = sbrk($8 | 0) | 0;
|
|
$0 = sbrk(0 | 0) | 0;
|
|
if (($7 | 0) == (-1 | 0)) {
|
|
break label$9
|
|
}
|
|
if (($0 | 0) == (-1 | 0)) {
|
|
break label$9
|
|
}
|
|
if ($7 >>> 0 >= $0 >>> 0) {
|
|
break label$9
|
|
}
|
|
$2 = $0 - $7 | 0;
|
|
if ($2 >>> 0 <= ($3 + 40 | 0) >>> 0) {
|
|
break label$9
|
|
}
|
|
}
|
|
$0 = (HEAP32[(0 + 117916 | 0) >> 2] | 0) + $2 | 0;
|
|
HEAP32[(0 + 117916 | 0) >> 2] = $0;
|
|
label$63 : {
|
|
if ($0 >>> 0 <= (HEAP32[(0 + 117920 | 0) >> 2] | 0) >>> 0) {
|
|
break label$63
|
|
}
|
|
HEAP32[(0 + 117920 | 0) >> 2] = $0;
|
|
}
|
|
label$64 : {
|
|
label$65 : {
|
|
$4 = HEAP32[(0 + 117508 | 0) >> 2] | 0;
|
|
if (!$4) {
|
|
break label$65
|
|
}
|
|
$0 = 117932;
|
|
label$66 : while (1) {
|
|
$5 = HEAP32[$0 >> 2] | 0;
|
|
$8 = HEAP32[($0 + 4 | 0) >> 2] | 0;
|
|
if (($7 | 0) == ($5 + $8 | 0 | 0)) {
|
|
break label$64
|
|
}
|
|
$0 = HEAP32[($0 + 8 | 0) >> 2] | 0;
|
|
if ($0) {
|
|
continue label$66
|
|
}
|
|
break label$11;
|
|
};
|
|
}
|
|
label$67 : {
|
|
label$68 : {
|
|
$0 = HEAP32[(0 + 117500 | 0) >> 2] | 0;
|
|
if (!$0) {
|
|
break label$68
|
|
}
|
|
if ($7 >>> 0 >= $0 >>> 0) {
|
|
break label$67
|
|
}
|
|
}
|
|
HEAP32[(0 + 117500 | 0) >> 2] = $7;
|
|
}
|
|
$0 = 0;
|
|
HEAP32[(0 + 117936 | 0) >> 2] = $2;
|
|
HEAP32[(0 + 117932 | 0) >> 2] = $7;
|
|
HEAP32[(0 + 117516 | 0) >> 2] = -1;
|
|
HEAP32[(0 + 117520 | 0) >> 2] = HEAP32[(0 + 117956 | 0) >> 2] | 0;
|
|
HEAP32[(0 + 117944 | 0) >> 2] = 0;
|
|
label$69 : while (1) {
|
|
$4 = $0 << 3 | 0;
|
|
$5 = $4 + 117524 | 0;
|
|
HEAP32[($4 + 117532 | 0) >> 2] = $5;
|
|
HEAP32[($4 + 117536 | 0) >> 2] = $5;
|
|
$0 = $0 + 1 | 0;
|
|
if (($0 | 0) != (32 | 0)) {
|
|
continue label$69
|
|
}
|
|
break label$69;
|
|
};
|
|
$0 = $2 + -40 | 0;
|
|
$4 = ($7 + 8 | 0) & 7 | 0 ? (-8 - $7 | 0) & 7 | 0 : 0;
|
|
$5 = $0 - $4 | 0;
|
|
HEAP32[(0 + 117496 | 0) >> 2] = $5;
|
|
$4 = $7 + $4 | 0;
|
|
HEAP32[(0 + 117508 | 0) >> 2] = $4;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $5 | 1 | 0;
|
|
HEAP32[(($7 + $0 | 0) + 4 | 0) >> 2] = 40;
|
|
HEAP32[(0 + 117512 | 0) >> 2] = HEAP32[(0 + 117972 | 0) >> 2] | 0;
|
|
break label$10;
|
|
}
|
|
if ($4 >>> 0 >= $7 >>> 0) {
|
|
break label$11
|
|
}
|
|
if ($4 >>> 0 < $5 >>> 0) {
|
|
break label$11
|
|
}
|
|
if ((HEAP32[($0 + 12 | 0) >> 2] | 0) & 8 | 0) {
|
|
break label$11
|
|
}
|
|
HEAP32[($0 + 4 | 0) >> 2] = $8 + $2 | 0;
|
|
$0 = ($4 + 8 | 0) & 7 | 0 ? (-8 - $4 | 0) & 7 | 0 : 0;
|
|
$5 = $4 + $0 | 0;
|
|
HEAP32[(0 + 117508 | 0) >> 2] = $5;
|
|
$7 = (HEAP32[(0 + 117496 | 0) >> 2] | 0) + $2 | 0;
|
|
$0 = $7 - $0 | 0;
|
|
HEAP32[(0 + 117496 | 0) >> 2] = $0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $0 | 1 | 0;
|
|
HEAP32[(($4 + $7 | 0) + 4 | 0) >> 2] = 40;
|
|
HEAP32[(0 + 117512 | 0) >> 2] = HEAP32[(0 + 117972 | 0) >> 2] | 0;
|
|
break label$10;
|
|
}
|
|
$8 = 0;
|
|
break label$2;
|
|
}
|
|
$7 = 0;
|
|
break label$3;
|
|
}
|
|
label$70 : {
|
|
$8 = HEAP32[(0 + 117500 | 0) >> 2] | 0;
|
|
if ($7 >>> 0 >= $8 >>> 0) {
|
|
break label$70
|
|
}
|
|
HEAP32[(0 + 117500 | 0) >> 2] = $7;
|
|
$8 = $7;
|
|
}
|
|
$5 = $7 + $2 | 0;
|
|
$0 = 117932;
|
|
label$71 : {
|
|
label$72 : {
|
|
label$73 : {
|
|
label$74 : {
|
|
label$75 : while (1) {
|
|
if ((HEAP32[$0 >> 2] | 0 | 0) == ($5 | 0)) {
|
|
break label$74
|
|
}
|
|
$0 = HEAP32[($0 + 8 | 0) >> 2] | 0;
|
|
if ($0) {
|
|
continue label$75
|
|
}
|
|
break label$73;
|
|
};
|
|
}
|
|
if (!((HEAPU8[($0 + 12 | 0) >> 0] | 0) & 8 | 0)) {
|
|
break label$72
|
|
}
|
|
}
|
|
$0 = 117932;
|
|
label$76 : while (1) {
|
|
label$77 : {
|
|
$5 = HEAP32[$0 >> 2] | 0;
|
|
if ($5 >>> 0 > $4 >>> 0) {
|
|
break label$77
|
|
}
|
|
$5 = $5 + (HEAP32[($0 + 4 | 0) >> 2] | 0) | 0;
|
|
if ($5 >>> 0 > $4 >>> 0) {
|
|
break label$71
|
|
}
|
|
}
|
|
$0 = HEAP32[($0 + 8 | 0) >> 2] | 0;
|
|
continue label$76;
|
|
};
|
|
}
|
|
HEAP32[$0 >> 2] = $7;
|
|
HEAP32[($0 + 4 | 0) >> 2] = (HEAP32[($0 + 4 | 0) >> 2] | 0) + $2 | 0;
|
|
$11 = $7 + (($7 + 8 | 0) & 7 | 0 ? (-8 - $7 | 0) & 7 | 0 : 0) | 0;
|
|
HEAP32[($11 + 4 | 0) >> 2] = $3 | 3 | 0;
|
|
$2 = $5 + (($5 + 8 | 0) & 7 | 0 ? (-8 - $5 | 0) & 7 | 0 : 0) | 0;
|
|
$3 = $11 + $3 | 0;
|
|
$0 = $2 - $3 | 0;
|
|
label$78 : {
|
|
if (($2 | 0) != ($4 | 0)) {
|
|
break label$78
|
|
}
|
|
HEAP32[(0 + 117508 | 0) >> 2] = $3;
|
|
$0 = (HEAP32[(0 + 117496 | 0) >> 2] | 0) + $0 | 0;
|
|
HEAP32[(0 + 117496 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 4 | 0) >> 2] = $0 | 1 | 0;
|
|
break label$4;
|
|
}
|
|
label$79 : {
|
|
if (($2 | 0) != (HEAP32[(0 + 117504 | 0) >> 2] | 0 | 0)) {
|
|
break label$79
|
|
}
|
|
HEAP32[(0 + 117504 | 0) >> 2] = $3;
|
|
$0 = (HEAP32[(0 + 117492 | 0) >> 2] | 0) + $0 | 0;
|
|
HEAP32[(0 + 117492 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 4 | 0) >> 2] = $0 | 1 | 0;
|
|
HEAP32[($3 + $0 | 0) >> 2] = $0;
|
|
break label$4;
|
|
}
|
|
$4 = HEAP32[($2 + 4 | 0) >> 2] | 0;
|
|
if (($4 & 3 | 0 | 0) != (1 | 0)) {
|
|
break label$5
|
|
}
|
|
$6 = $4 & -8 | 0;
|
|
label$80 : {
|
|
if ($4 >>> 0 > 255 >>> 0) {
|
|
break label$80
|
|
}
|
|
$5 = HEAP32[($2 + 8 | 0) >> 2] | 0;
|
|
$8 = $4 >>> 3 | 0;
|
|
$7 = ($8 << 3 | 0) + 117524 | 0;
|
|
label$81 : {
|
|
$4 = HEAP32[($2 + 12 | 0) >> 2] | 0;
|
|
if (($4 | 0) != ($5 | 0)) {
|
|
break label$81
|
|
}
|
|
(wasm2js_i32$0 = 0, wasm2js_i32$1 = (HEAP32[(0 + 117484 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $8 | 0) | 0) | 0), HEAP32[(wasm2js_i32$0 + 117484 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$6;
|
|
}
|
|
HEAP32[($5 + 12 | 0) >> 2] = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $5;
|
|
break label$6;
|
|
}
|
|
$9 = HEAP32[($2 + 24 | 0) >> 2] | 0;
|
|
label$82 : {
|
|
$7 = HEAP32[($2 + 12 | 0) >> 2] | 0;
|
|
if (($7 | 0) == ($2 | 0)) {
|
|
break label$82
|
|
}
|
|
$4 = HEAP32[($2 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $7;
|
|
HEAP32[($7 + 8 | 0) >> 2] = $4;
|
|
break label$7;
|
|
}
|
|
label$83 : {
|
|
$5 = $2 + 20 | 0;
|
|
$4 = HEAP32[$5 >> 2] | 0;
|
|
if ($4) {
|
|
break label$83
|
|
}
|
|
$4 = HEAP32[($2 + 16 | 0) >> 2] | 0;
|
|
if (!$4) {
|
|
break label$8
|
|
}
|
|
$5 = $2 + 16 | 0;
|
|
}
|
|
label$84 : while (1) {
|
|
$8 = $5;
|
|
$7 = $4;
|
|
$5 = $4 + 20 | 0;
|
|
$4 = HEAP32[$5 >> 2] | 0;
|
|
if ($4) {
|
|
continue label$84
|
|
}
|
|
$5 = $7 + 16 | 0;
|
|
$4 = HEAP32[($7 + 16 | 0) >> 2] | 0;
|
|
if ($4) {
|
|
continue label$84
|
|
}
|
|
break label$84;
|
|
};
|
|
HEAP32[$8 >> 2] = 0;
|
|
break label$7;
|
|
}
|
|
$0 = $2 + -40 | 0;
|
|
$8 = ($7 + 8 | 0) & 7 | 0 ? (-8 - $7 | 0) & 7 | 0 : 0;
|
|
$11 = $0 - $8 | 0;
|
|
HEAP32[(0 + 117496 | 0) >> 2] = $11;
|
|
$8 = $7 + $8 | 0;
|
|
HEAP32[(0 + 117508 | 0) >> 2] = $8;
|
|
HEAP32[($8 + 4 | 0) >> 2] = $11 | 1 | 0;
|
|
HEAP32[(($7 + $0 | 0) + 4 | 0) >> 2] = 40;
|
|
HEAP32[(0 + 117512 | 0) >> 2] = HEAP32[(0 + 117972 | 0) >> 2] | 0;
|
|
$0 = ($5 + (($5 + -39 | 0) & 7 | 0 ? (39 - $5 | 0) & 7 | 0 : 0) | 0) + -47 | 0;
|
|
$8 = $0 >>> 0 < ($4 + 16 | 0) >>> 0 ? $4 : $0;
|
|
HEAP32[($8 + 4 | 0) >> 2] = 27;
|
|
i64toi32_i32$2 = 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 117940 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 117944 | 0) >> 2] | 0;
|
|
$945 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $8 + 16 | 0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $945;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$2 = 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 117932 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 117936 | 0) >> 2] | 0;
|
|
$947 = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $8;
|
|
HEAP32[($8 + 8 | 0) >> 2] = $947;
|
|
HEAP32[($8 + 12 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[(0 + 117940 | 0) >> 2] = $8 + 8 | 0;
|
|
HEAP32[(0 + 117936 | 0) >> 2] = $2;
|
|
HEAP32[(0 + 117932 | 0) >> 2] = $7;
|
|
HEAP32[(0 + 117944 | 0) >> 2] = 0;
|
|
$0 = $8 + 24 | 0;
|
|
label$85 : while (1) {
|
|
HEAP32[($0 + 4 | 0) >> 2] = 7;
|
|
$7 = $0 + 8 | 0;
|
|
$0 = $0 + 4 | 0;
|
|
if ($7 >>> 0 < $5 >>> 0) {
|
|
continue label$85
|
|
}
|
|
break label$85;
|
|
};
|
|
if (($8 | 0) == ($4 | 0)) {
|
|
break label$10
|
|
}
|
|
HEAP32[($8 + 4 | 0) >> 2] = (HEAP32[($8 + 4 | 0) >> 2] | 0) & -2 | 0;
|
|
$7 = $8 - $4 | 0;
|
|
HEAP32[($4 + 4 | 0) >> 2] = $7 | 1 | 0;
|
|
HEAP32[$8 >> 2] = $7;
|
|
label$86 : {
|
|
if ($7 >>> 0 > 255 >>> 0) {
|
|
break label$86
|
|
}
|
|
$0 = ($7 & -8 | 0) + 117524 | 0;
|
|
label$87 : {
|
|
label$88 : {
|
|
$5 = HEAP32[(0 + 117484 | 0) >> 2] | 0;
|
|
$7 = 1 << ($7 >>> 3 | 0) | 0;
|
|
if ($5 & $7 | 0) {
|
|
break label$88
|
|
}
|
|
HEAP32[(0 + 117484 | 0) >> 2] = $5 | $7 | 0;
|
|
$5 = $0;
|
|
break label$87;
|
|
}
|
|
$5 = HEAP32[($0 + 8 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($0 + 8 | 0) >> 2] = $4;
|
|
HEAP32[($5 + 12 | 0) >> 2] = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $5;
|
|
break label$10;
|
|
}
|
|
$0 = 31;
|
|
label$89 : {
|
|
if ($7 >>> 0 > 16777215 >>> 0) {
|
|
break label$89
|
|
}
|
|
$0 = Math_clz32($7 >>> 8 | 0);
|
|
$0 = ((($7 >>> (38 - $0 | 0) | 0) & 1 | 0) - ($0 << 1 | 0) | 0) + 62 | 0;
|
|
}
|
|
HEAP32[($4 + 28 | 0) >> 2] = $0;
|
|
i64toi32_i32$1 = $4;
|
|
i64toi32_i32$0 = 0;
|
|
HEAP32[($4 + 16 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = i64toi32_i32$0;
|
|
$5 = ($0 << 2 | 0) + 117788 | 0;
|
|
label$90 : {
|
|
label$91 : {
|
|
label$92 : {
|
|
$8 = HEAP32[(0 + 117488 | 0) >> 2] | 0;
|
|
$2 = 1 << $0 | 0;
|
|
if ($8 & $2 | 0) {
|
|
break label$92
|
|
}
|
|
HEAP32[(0 + 117488 | 0) >> 2] = $8 | $2 | 0;
|
|
HEAP32[$5 >> 2] = $4;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $5;
|
|
break label$91;
|
|
}
|
|
$0 = $7 << (($0 | 0) == (31 | 0) ? 0 : 25 - ($0 >>> 1 | 0) | 0) | 0;
|
|
$8 = HEAP32[$5 >> 2] | 0;
|
|
label$93 : while (1) {
|
|
$5 = $8;
|
|
if (((HEAP32[($5 + 4 | 0) >> 2] | 0) & -8 | 0 | 0) == ($7 | 0)) {
|
|
break label$90
|
|
}
|
|
$8 = $0 >>> 29 | 0;
|
|
$0 = $0 << 1 | 0;
|
|
$2 = ($5 + ($8 & 4 | 0) | 0) + 16 | 0;
|
|
$8 = HEAP32[$2 >> 2] | 0;
|
|
if ($8) {
|
|
continue label$93
|
|
}
|
|
break label$93;
|
|
};
|
|
HEAP32[$2 >> 2] = $4;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $5;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = $4;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $4;
|
|
break label$10;
|
|
}
|
|
$0 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($0 + 12 | 0) >> 2] = $4;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $4;
|
|
HEAP32[($4 + 24 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $5;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
}
|
|
$0 = HEAP32[(0 + 117496 | 0) >> 2] | 0;
|
|
if ($0 >>> 0 <= $3 >>> 0) {
|
|
break label$9
|
|
}
|
|
$4 = $0 - $3 | 0;
|
|
HEAP32[(0 + 117496 | 0) >> 2] = $4;
|
|
$0 = HEAP32[(0 + 117508 | 0) >> 2] | 0;
|
|
$5 = $0 + $3 | 0;
|
|
HEAP32[(0 + 117508 | 0) >> 2] = $5;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $4 | 1 | 0;
|
|
HEAP32[($0 + 4 | 0) >> 2] = $3 | 3 | 0;
|
|
$0 = $0 + 8 | 0;
|
|
break label$1;
|
|
}
|
|
(wasm2js_i32$0 = __errno_location() | 0, wasm2js_i32$1 = 48), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
$0 = 0;
|
|
break label$1;
|
|
}
|
|
$7 = 0;
|
|
}
|
|
if (!$9) {
|
|
break label$6
|
|
}
|
|
label$94 : {
|
|
label$95 : {
|
|
$5 = HEAP32[($2 + 28 | 0) >> 2] | 0;
|
|
$4 = ($5 << 2 | 0) + 117788 | 0;
|
|
if (($2 | 0) != (HEAP32[$4 >> 2] | 0 | 0)) {
|
|
break label$95
|
|
}
|
|
HEAP32[$4 >> 2] = $7;
|
|
if ($7) {
|
|
break label$94
|
|
}
|
|
(wasm2js_i32$0 = 0, wasm2js_i32$1 = (HEAP32[(0 + 117488 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $5 | 0) | 0) | 0), HEAP32[(wasm2js_i32$0 + 117488 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$6;
|
|
}
|
|
HEAP32[($9 + ((HEAP32[($9 + 16 | 0) >> 2] | 0 | 0) == ($2 | 0) ? 16 : 20) | 0) >> 2] = $7;
|
|
if (!$7) {
|
|
break label$6
|
|
}
|
|
}
|
|
HEAP32[($7 + 24 | 0) >> 2] = $9;
|
|
label$96 : {
|
|
$4 = HEAP32[($2 + 16 | 0) >> 2] | 0;
|
|
if (!$4) {
|
|
break label$96
|
|
}
|
|
HEAP32[($7 + 16 | 0) >> 2] = $4;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $7;
|
|
}
|
|
$4 = HEAP32[($2 + 20 | 0) >> 2] | 0;
|
|
if (!$4) {
|
|
break label$6
|
|
}
|
|
HEAP32[($7 + 20 | 0) >> 2] = $4;
|
|
HEAP32[($4 + 24 | 0) >> 2] = $7;
|
|
}
|
|
$0 = $6 + $0 | 0;
|
|
$2 = $2 + $6 | 0;
|
|
$4 = HEAP32[($2 + 4 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($2 + 4 | 0) >> 2] = $4 & -2 | 0;
|
|
HEAP32[($3 + 4 | 0) >> 2] = $0 | 1 | 0;
|
|
HEAP32[($3 + $0 | 0) >> 2] = $0;
|
|
label$97 : {
|
|
if ($0 >>> 0 > 255 >>> 0) {
|
|
break label$97
|
|
}
|
|
$4 = ($0 & -8 | 0) + 117524 | 0;
|
|
label$98 : {
|
|
label$99 : {
|
|
$5 = HEAP32[(0 + 117484 | 0) >> 2] | 0;
|
|
$0 = 1 << ($0 >>> 3 | 0) | 0;
|
|
if ($5 & $0 | 0) {
|
|
break label$99
|
|
}
|
|
HEAP32[(0 + 117484 | 0) >> 2] = $5 | $0 | 0;
|
|
$0 = $4;
|
|
break label$98;
|
|
}
|
|
$0 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($4 + 8 | 0) >> 2] = $3;
|
|
HEAP32[($0 + 12 | 0) >> 2] = $3;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $4;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
break label$4;
|
|
}
|
|
$4 = 31;
|
|
label$100 : {
|
|
if ($0 >>> 0 > 16777215 >>> 0) {
|
|
break label$100
|
|
}
|
|
$4 = Math_clz32($0 >>> 8 | 0);
|
|
$4 = ((($0 >>> (38 - $4 | 0) | 0) & 1 | 0) - ($4 << 1 | 0) | 0) + 62 | 0;
|
|
}
|
|
HEAP32[($3 + 28 | 0) >> 2] = $4;
|
|
i64toi32_i32$1 = $3;
|
|
i64toi32_i32$0 = 0;
|
|
HEAP32[($3 + 16 | 0) >> 2] = 0;
|
|
HEAP32[($3 + 20 | 0) >> 2] = i64toi32_i32$0;
|
|
$5 = ($4 << 2 | 0) + 117788 | 0;
|
|
label$101 : {
|
|
label$102 : {
|
|
label$103 : {
|
|
$7 = HEAP32[(0 + 117488 | 0) >> 2] | 0;
|
|
$8 = 1 << $4 | 0;
|
|
if ($7 & $8 | 0) {
|
|
break label$103
|
|
}
|
|
HEAP32[(0 + 117488 | 0) >> 2] = $7 | $8 | 0;
|
|
HEAP32[$5 >> 2] = $3;
|
|
HEAP32[($3 + 24 | 0) >> 2] = $5;
|
|
break label$102;
|
|
}
|
|
$4 = $0 << (($4 | 0) == (31 | 0) ? 0 : 25 - ($4 >>> 1 | 0) | 0) | 0;
|
|
$7 = HEAP32[$5 >> 2] | 0;
|
|
label$104 : while (1) {
|
|
$5 = $7;
|
|
if (((HEAP32[($7 + 4 | 0) >> 2] | 0) & -8 | 0 | 0) == ($0 | 0)) {
|
|
break label$101
|
|
}
|
|
$7 = $4 >>> 29 | 0;
|
|
$4 = $4 << 1 | 0;
|
|
$8 = ($5 + ($7 & 4 | 0) | 0) + 16 | 0;
|
|
$7 = HEAP32[$8 >> 2] | 0;
|
|
if ($7) {
|
|
continue label$104
|
|
}
|
|
break label$104;
|
|
};
|
|
HEAP32[$8 >> 2] = $3;
|
|
HEAP32[($3 + 24 | 0) >> 2] = $5;
|
|
}
|
|
HEAP32[($3 + 12 | 0) >> 2] = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $3;
|
|
break label$4;
|
|
}
|
|
$0 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($0 + 12 | 0) >> 2] = $3;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $3;
|
|
HEAP32[($3 + 24 | 0) >> 2] = 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $5;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
}
|
|
$0 = $11 + 8 | 0;
|
|
break label$1;
|
|
}
|
|
label$105 : {
|
|
if (!$11) {
|
|
break label$105
|
|
}
|
|
label$106 : {
|
|
label$107 : {
|
|
$5 = HEAP32[($8 + 28 | 0) >> 2] | 0;
|
|
$0 = ($5 << 2 | 0) + 117788 | 0;
|
|
if (($8 | 0) != (HEAP32[$0 >> 2] | 0 | 0)) {
|
|
break label$107
|
|
}
|
|
HEAP32[$0 >> 2] = $7;
|
|
if ($7) {
|
|
break label$106
|
|
}
|
|
$6 = $6 & (__wasm_rotl_i32(-2 | 0, $5 | 0) | 0) | 0;
|
|
HEAP32[(0 + 117488 | 0) >> 2] = $6;
|
|
break label$105;
|
|
}
|
|
HEAP32[($11 + ((HEAP32[($11 + 16 | 0) >> 2] | 0 | 0) == ($8 | 0) ? 16 : 20) | 0) >> 2] = $7;
|
|
if (!$7) {
|
|
break label$105
|
|
}
|
|
}
|
|
HEAP32[($7 + 24 | 0) >> 2] = $11;
|
|
label$108 : {
|
|
$0 = HEAP32[($8 + 16 | 0) >> 2] | 0;
|
|
if (!$0) {
|
|
break label$108
|
|
}
|
|
HEAP32[($7 + 16 | 0) >> 2] = $0;
|
|
HEAP32[($0 + 24 | 0) >> 2] = $7;
|
|
}
|
|
$0 = HEAP32[($8 + 20 | 0) >> 2] | 0;
|
|
if (!$0) {
|
|
break label$105
|
|
}
|
|
HEAP32[($7 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($0 + 24 | 0) >> 2] = $7;
|
|
}
|
|
label$109 : {
|
|
label$110 : {
|
|
if ($4 >>> 0 > 15 >>> 0) {
|
|
break label$110
|
|
}
|
|
$0 = $4 + $3 | 0;
|
|
HEAP32[($8 + 4 | 0) >> 2] = $0 | 3 | 0;
|
|
$0 = $8 + $0 | 0;
|
|
HEAP32[($0 + 4 | 0) >> 2] = HEAP32[($0 + 4 | 0) >> 2] | 0 | 1 | 0;
|
|
break label$109;
|
|
}
|
|
HEAP32[($8 + 4 | 0) >> 2] = $3 | 3 | 0;
|
|
$7 = $8 + $3 | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = $4 | 1 | 0;
|
|
HEAP32[($7 + $4 | 0) >> 2] = $4;
|
|
label$111 : {
|
|
if ($4 >>> 0 > 255 >>> 0) {
|
|
break label$111
|
|
}
|
|
$0 = ($4 & -8 | 0) + 117524 | 0;
|
|
label$112 : {
|
|
label$113 : {
|
|
$5 = HEAP32[(0 + 117484 | 0) >> 2] | 0;
|
|
$4 = 1 << ($4 >>> 3 | 0) | 0;
|
|
if ($5 & $4 | 0) {
|
|
break label$113
|
|
}
|
|
HEAP32[(0 + 117484 | 0) >> 2] = $5 | $4 | 0;
|
|
$4 = $0;
|
|
break label$112;
|
|
}
|
|
$4 = HEAP32[($0 + 8 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($0 + 8 | 0) >> 2] = $7;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $7;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($7 + 8 | 0) >> 2] = $4;
|
|
break label$109;
|
|
}
|
|
$0 = 31;
|
|
label$114 : {
|
|
if ($4 >>> 0 > 16777215 >>> 0) {
|
|
break label$114
|
|
}
|
|
$0 = Math_clz32($4 >>> 8 | 0);
|
|
$0 = ((($4 >>> (38 - $0 | 0) | 0) & 1 | 0) - ($0 << 1 | 0) | 0) + 62 | 0;
|
|
}
|
|
HEAP32[($7 + 28 | 0) >> 2] = $0;
|
|
i64toi32_i32$1 = $7;
|
|
i64toi32_i32$0 = 0;
|
|
HEAP32[($7 + 16 | 0) >> 2] = 0;
|
|
HEAP32[($7 + 20 | 0) >> 2] = i64toi32_i32$0;
|
|
$5 = ($0 << 2 | 0) + 117788 | 0;
|
|
label$115 : {
|
|
label$116 : {
|
|
label$117 : {
|
|
$3 = 1 << $0 | 0;
|
|
if ($6 & $3 | 0) {
|
|
break label$117
|
|
}
|
|
HEAP32[(0 + 117488 | 0) >> 2] = $6 | $3 | 0;
|
|
HEAP32[$5 >> 2] = $7;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $5;
|
|
break label$116;
|
|
}
|
|
$0 = $4 << (($0 | 0) == (31 | 0) ? 0 : 25 - ($0 >>> 1 | 0) | 0) | 0;
|
|
$3 = HEAP32[$5 >> 2] | 0;
|
|
label$118 : while (1) {
|
|
$5 = $3;
|
|
if (((HEAP32[($5 + 4 | 0) >> 2] | 0) & -8 | 0 | 0) == ($4 | 0)) {
|
|
break label$115
|
|
}
|
|
$3 = $0 >>> 29 | 0;
|
|
$0 = $0 << 1 | 0;
|
|
$2 = ($5 + ($3 & 4 | 0) | 0) + 16 | 0;
|
|
$3 = HEAP32[$2 >> 2] | 0;
|
|
if ($3) {
|
|
continue label$118
|
|
}
|
|
break label$118;
|
|
};
|
|
HEAP32[$2 >> 2] = $7;
|
|
HEAP32[($7 + 24 | 0) >> 2] = $5;
|
|
}
|
|
HEAP32[($7 + 12 | 0) >> 2] = $7;
|
|
HEAP32[($7 + 8 | 0) >> 2] = $7;
|
|
break label$109;
|
|
}
|
|
$0 = HEAP32[($5 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($0 + 12 | 0) >> 2] = $7;
|
|
HEAP32[($5 + 8 | 0) >> 2] = $7;
|
|
HEAP32[($7 + 24 | 0) >> 2] = 0;
|
|
HEAP32[($7 + 12 | 0) >> 2] = $5;
|
|
HEAP32[($7 + 8 | 0) >> 2] = $0;
|
|
}
|
|
$0 = $8 + 8 | 0;
|
|
break label$1;
|
|
}
|
|
label$119 : {
|
|
if (!$10) {
|
|
break label$119
|
|
}
|
|
label$120 : {
|
|
label$121 : {
|
|
$5 = HEAP32[($7 + 28 | 0) >> 2] | 0;
|
|
$0 = ($5 << 2 | 0) + 117788 | 0;
|
|
if (($7 | 0) != (HEAP32[$0 >> 2] | 0 | 0)) {
|
|
break label$121
|
|
}
|
|
HEAP32[$0 >> 2] = $8;
|
|
if ($8) {
|
|
break label$120
|
|
}
|
|
(wasm2js_i32$0 = 0, wasm2js_i32$1 = $9 & (__wasm_rotl_i32(-2 | 0, $5 | 0) | 0) | 0), HEAP32[(wasm2js_i32$0 + 117488 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$119;
|
|
}
|
|
HEAP32[($10 + ((HEAP32[($10 + 16 | 0) >> 2] | 0 | 0) == ($7 | 0) ? 16 : 20) | 0) >> 2] = $8;
|
|
if (!$8) {
|
|
break label$119
|
|
}
|
|
}
|
|
HEAP32[($8 + 24 | 0) >> 2] = $10;
|
|
label$122 : {
|
|
$0 = HEAP32[($7 + 16 | 0) >> 2] | 0;
|
|
if (!$0) {
|
|
break label$122
|
|
}
|
|
HEAP32[($8 + 16 | 0) >> 2] = $0;
|
|
HEAP32[($0 + 24 | 0) >> 2] = $8;
|
|
}
|
|
$0 = HEAP32[($7 + 20 | 0) >> 2] | 0;
|
|
if (!$0) {
|
|
break label$119
|
|
}
|
|
HEAP32[($8 + 20 | 0) >> 2] = $0;
|
|
HEAP32[($0 + 24 | 0) >> 2] = $8;
|
|
}
|
|
label$123 : {
|
|
label$124 : {
|
|
if ($4 >>> 0 > 15 >>> 0) {
|
|
break label$124
|
|
}
|
|
$0 = $4 + $3 | 0;
|
|
HEAP32[($7 + 4 | 0) >> 2] = $0 | 3 | 0;
|
|
$0 = $7 + $0 | 0;
|
|
HEAP32[($0 + 4 | 0) >> 2] = HEAP32[($0 + 4 | 0) >> 2] | 0 | 1 | 0;
|
|
break label$123;
|
|
}
|
|
HEAP32[($7 + 4 | 0) >> 2] = $3 | 3 | 0;
|
|
$5 = $7 + $3 | 0;
|
|
HEAP32[($5 + 4 | 0) >> 2] = $4 | 1 | 0;
|
|
HEAP32[($5 + $4 | 0) >> 2] = $4;
|
|
label$125 : {
|
|
if (!$6) {
|
|
break label$125
|
|
}
|
|
$3 = ($6 & -8 | 0) + 117524 | 0;
|
|
$0 = HEAP32[(0 + 117504 | 0) >> 2] | 0;
|
|
label$126 : {
|
|
label$127 : {
|
|
$8 = 1 << ($6 >>> 3 | 0) | 0;
|
|
if ($8 & $2 | 0) {
|
|
break label$127
|
|
}
|
|
HEAP32[(0 + 117484 | 0) >> 2] = $8 | $2 | 0;
|
|
$8 = $3;
|
|
break label$126;
|
|
}
|
|
$8 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($8 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($0 + 12 | 0) >> 2] = $3;
|
|
HEAP32[($0 + 8 | 0) >> 2] = $8;
|
|
}
|
|
HEAP32[(0 + 117504 | 0) >> 2] = $5;
|
|
HEAP32[(0 + 117492 | 0) >> 2] = $4;
|
|
}
|
|
$0 = $7 + 8 | 0;
|
|
}
|
|
__stack_pointer = $1 + 16 | 0;
|
|
return $0 | 0;
|
|
}
|
|
|
|
function dlfree($0) {
|
|
$0 = $0 | 0;
|
|
var $2 = 0, $1 = 0, $6 = 0, $4 = 0, $3 = 0, $5 = 0, $7 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
label$1 : {
|
|
if (!$0) {
|
|
break label$1
|
|
}
|
|
$1 = $0 + -8 | 0;
|
|
$2 = HEAP32[($0 + -4 | 0) >> 2] | 0;
|
|
$0 = $2 & -8 | 0;
|
|
$3 = $1 + $0 | 0;
|
|
label$2 : {
|
|
if ($2 & 1 | 0) {
|
|
break label$2
|
|
}
|
|
if (!($2 & 3 | 0)) {
|
|
break label$1
|
|
}
|
|
$2 = HEAP32[$1 >> 2] | 0;
|
|
$1 = $1 - $2 | 0;
|
|
$4 = HEAP32[(0 + 117500 | 0) >> 2] | 0;
|
|
if ($1 >>> 0 < $4 >>> 0) {
|
|
break label$1
|
|
}
|
|
$0 = $2 + $0 | 0;
|
|
label$3 : {
|
|
label$4 : {
|
|
label$5 : {
|
|
if (($1 | 0) == (HEAP32[(0 + 117504 | 0) >> 2] | 0 | 0)) {
|
|
break label$5
|
|
}
|
|
label$6 : {
|
|
if ($2 >>> 0 > 255 >>> 0) {
|
|
break label$6
|
|
}
|
|
$4 = HEAP32[($1 + 8 | 0) >> 2] | 0;
|
|
$5 = $2 >>> 3 | 0;
|
|
$6 = ($5 << 3 | 0) + 117524 | 0;
|
|
label$7 : {
|
|
$2 = HEAP32[($1 + 12 | 0) >> 2] | 0;
|
|
if (($2 | 0) != ($4 | 0)) {
|
|
break label$7
|
|
}
|
|
(wasm2js_i32$0 = 0, wasm2js_i32$1 = (HEAP32[(0 + 117484 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $5 | 0) | 0) | 0), HEAP32[(wasm2js_i32$0 + 117484 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$2;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = $2;
|
|
HEAP32[($2 + 8 | 0) >> 2] = $4;
|
|
break label$2;
|
|
}
|
|
$7 = HEAP32[($1 + 24 | 0) >> 2] | 0;
|
|
label$8 : {
|
|
$6 = HEAP32[($1 + 12 | 0) >> 2] | 0;
|
|
if (($6 | 0) == ($1 | 0)) {
|
|
break label$8
|
|
}
|
|
$2 = HEAP32[($1 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 12 | 0) >> 2] = $6;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $2;
|
|
break label$3;
|
|
}
|
|
label$9 : {
|
|
$4 = $1 + 20 | 0;
|
|
$2 = HEAP32[$4 >> 2] | 0;
|
|
if ($2) {
|
|
break label$9
|
|
}
|
|
$2 = HEAP32[($1 + 16 | 0) >> 2] | 0;
|
|
if (!$2) {
|
|
break label$4
|
|
}
|
|
$4 = $1 + 16 | 0;
|
|
}
|
|
label$10 : while (1) {
|
|
$5 = $4;
|
|
$6 = $2;
|
|
$4 = $2 + 20 | 0;
|
|
$2 = HEAP32[$4 >> 2] | 0;
|
|
if ($2) {
|
|
continue label$10
|
|
}
|
|
$4 = $6 + 16 | 0;
|
|
$2 = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
if ($2) {
|
|
continue label$10
|
|
}
|
|
break label$10;
|
|
};
|
|
HEAP32[$5 >> 2] = 0;
|
|
break label$3;
|
|
}
|
|
$2 = HEAP32[($3 + 4 | 0) >> 2] | 0;
|
|
if (($2 & 3 | 0 | 0) != (3 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[(0 + 117492 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 4 | 0) >> 2] = $2 & -2 | 0;
|
|
HEAP32[($1 + 4 | 0) >> 2] = $0 | 1 | 0;
|
|
HEAP32[$3 >> 2] = $0;
|
|
return;
|
|
}
|
|
$6 = 0;
|
|
}
|
|
if (!$7) {
|
|
break label$2
|
|
}
|
|
label$11 : {
|
|
label$12 : {
|
|
$4 = HEAP32[($1 + 28 | 0) >> 2] | 0;
|
|
$2 = ($4 << 2 | 0) + 117788 | 0;
|
|
if (($1 | 0) != (HEAP32[$2 >> 2] | 0 | 0)) {
|
|
break label$12
|
|
}
|
|
HEAP32[$2 >> 2] = $6;
|
|
if ($6) {
|
|
break label$11
|
|
}
|
|
(wasm2js_i32$0 = 0, wasm2js_i32$1 = (HEAP32[(0 + 117488 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $4 | 0) | 0) | 0), HEAP32[(wasm2js_i32$0 + 117488 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$2;
|
|
}
|
|
HEAP32[($7 + ((HEAP32[($7 + 16 | 0) >> 2] | 0 | 0) == ($1 | 0) ? 16 : 20) | 0) >> 2] = $6;
|
|
if (!$6) {
|
|
break label$2
|
|
}
|
|
}
|
|
HEAP32[($6 + 24 | 0) >> 2] = $7;
|
|
label$13 : {
|
|
$2 = HEAP32[($1 + 16 | 0) >> 2] | 0;
|
|
if (!$2) {
|
|
break label$13
|
|
}
|
|
HEAP32[($6 + 16 | 0) >> 2] = $2;
|
|
HEAP32[($2 + 24 | 0) >> 2] = $6;
|
|
}
|
|
$2 = HEAP32[($1 + 20 | 0) >> 2] | 0;
|
|
if (!$2) {
|
|
break label$2
|
|
}
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($2 + 24 | 0) >> 2] = $6;
|
|
}
|
|
if ($1 >>> 0 >= $3 >>> 0) {
|
|
break label$1
|
|
}
|
|
$2 = HEAP32[($3 + 4 | 0) >> 2] | 0;
|
|
if (!($2 & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$14 : {
|
|
label$15 : {
|
|
label$16 : {
|
|
label$17 : {
|
|
label$18 : {
|
|
if ($2 & 2 | 0) {
|
|
break label$18
|
|
}
|
|
label$19 : {
|
|
if (($3 | 0) != (HEAP32[(0 + 117508 | 0) >> 2] | 0 | 0)) {
|
|
break label$19
|
|
}
|
|
HEAP32[(0 + 117508 | 0) >> 2] = $1;
|
|
$0 = (HEAP32[(0 + 117496 | 0) >> 2] | 0) + $0 | 0;
|
|
HEAP32[(0 + 117496 | 0) >> 2] = $0;
|
|
HEAP32[($1 + 4 | 0) >> 2] = $0 | 1 | 0;
|
|
if (($1 | 0) != (HEAP32[(0 + 117504 | 0) >> 2] | 0 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[(0 + 117492 | 0) >> 2] = 0;
|
|
HEAP32[(0 + 117504 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
label$20 : {
|
|
if (($3 | 0) != (HEAP32[(0 + 117504 | 0) >> 2] | 0 | 0)) {
|
|
break label$20
|
|
}
|
|
HEAP32[(0 + 117504 | 0) >> 2] = $1;
|
|
$0 = (HEAP32[(0 + 117492 | 0) >> 2] | 0) + $0 | 0;
|
|
HEAP32[(0 + 117492 | 0) >> 2] = $0;
|
|
HEAP32[($1 + 4 | 0) >> 2] = $0 | 1 | 0;
|
|
HEAP32[($1 + $0 | 0) >> 2] = $0;
|
|
return;
|
|
}
|
|
$0 = ($2 & -8 | 0) + $0 | 0;
|
|
label$21 : {
|
|
if ($2 >>> 0 > 255 >>> 0) {
|
|
break label$21
|
|
}
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
$5 = $2 >>> 3 | 0;
|
|
$6 = ($5 << 3 | 0) + 117524 | 0;
|
|
label$22 : {
|
|
$2 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
if (($2 | 0) != ($4 | 0)) {
|
|
break label$22
|
|
}
|
|
(wasm2js_i32$0 = 0, wasm2js_i32$1 = (HEAP32[(0 + 117484 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $5 | 0) | 0) | 0), HEAP32[(wasm2js_i32$0 + 117484 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$15;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = $2;
|
|
HEAP32[($2 + 8 | 0) >> 2] = $4;
|
|
break label$15;
|
|
}
|
|
$7 = HEAP32[($3 + 24 | 0) >> 2] | 0;
|
|
label$23 : {
|
|
$6 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
if (($6 | 0) == ($3 | 0)) {
|
|
break label$23
|
|
}
|
|
$2 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
HEAP32[(0 + 117500 | 0) >> 2] | 0;
|
|
HEAP32[($2 + 12 | 0) >> 2] = $6;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $2;
|
|
break label$16;
|
|
}
|
|
label$24 : {
|
|
$4 = $3 + 20 | 0;
|
|
$2 = HEAP32[$4 >> 2] | 0;
|
|
if ($2) {
|
|
break label$24
|
|
}
|
|
$2 = HEAP32[($3 + 16 | 0) >> 2] | 0;
|
|
if (!$2) {
|
|
break label$17
|
|
}
|
|
$4 = $3 + 16 | 0;
|
|
}
|
|
label$25 : while (1) {
|
|
$5 = $4;
|
|
$6 = $2;
|
|
$4 = $2 + 20 | 0;
|
|
$2 = HEAP32[$4 >> 2] | 0;
|
|
if ($2) {
|
|
continue label$25
|
|
}
|
|
$4 = $6 + 16 | 0;
|
|
$2 = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
if ($2) {
|
|
continue label$25
|
|
}
|
|
break label$25;
|
|
};
|
|
HEAP32[$5 >> 2] = 0;
|
|
break label$16;
|
|
}
|
|
HEAP32[($3 + 4 | 0) >> 2] = $2 & -2 | 0;
|
|
HEAP32[($1 + 4 | 0) >> 2] = $0 | 1 | 0;
|
|
HEAP32[($1 + $0 | 0) >> 2] = $0;
|
|
break label$14;
|
|
}
|
|
$6 = 0;
|
|
}
|
|
if (!$7) {
|
|
break label$15
|
|
}
|
|
label$26 : {
|
|
label$27 : {
|
|
$4 = HEAP32[($3 + 28 | 0) >> 2] | 0;
|
|
$2 = ($4 << 2 | 0) + 117788 | 0;
|
|
if (($3 | 0) != (HEAP32[$2 >> 2] | 0 | 0)) {
|
|
break label$27
|
|
}
|
|
HEAP32[$2 >> 2] = $6;
|
|
if ($6) {
|
|
break label$26
|
|
}
|
|
(wasm2js_i32$0 = 0, wasm2js_i32$1 = (HEAP32[(0 + 117488 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $4 | 0) | 0) | 0), HEAP32[(wasm2js_i32$0 + 117488 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$15;
|
|
}
|
|
HEAP32[($7 + ((HEAP32[($7 + 16 | 0) >> 2] | 0 | 0) == ($3 | 0) ? 16 : 20) | 0) >> 2] = $6;
|
|
if (!$6) {
|
|
break label$15
|
|
}
|
|
}
|
|
HEAP32[($6 + 24 | 0) >> 2] = $7;
|
|
label$28 : {
|
|
$2 = HEAP32[($3 + 16 | 0) >> 2] | 0;
|
|
if (!$2) {
|
|
break label$28
|
|
}
|
|
HEAP32[($6 + 16 | 0) >> 2] = $2;
|
|
HEAP32[($2 + 24 | 0) >> 2] = $6;
|
|
}
|
|
$2 = HEAP32[($3 + 20 | 0) >> 2] | 0;
|
|
if (!$2) {
|
|
break label$15
|
|
}
|
|
HEAP32[($6 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($2 + 24 | 0) >> 2] = $6;
|
|
}
|
|
HEAP32[($1 + 4 | 0) >> 2] = $0 | 1 | 0;
|
|
HEAP32[($1 + $0 | 0) >> 2] = $0;
|
|
if (($1 | 0) != (HEAP32[(0 + 117504 | 0) >> 2] | 0 | 0)) {
|
|
break label$14
|
|
}
|
|
HEAP32[(0 + 117492 | 0) >> 2] = $0;
|
|
return;
|
|
}
|
|
label$29 : {
|
|
if ($0 >>> 0 > 255 >>> 0) {
|
|
break label$29
|
|
}
|
|
$2 = ($0 & -8 | 0) + 117524 | 0;
|
|
label$30 : {
|
|
label$31 : {
|
|
$4 = HEAP32[(0 + 117484 | 0) >> 2] | 0;
|
|
$0 = 1 << ($0 >>> 3 | 0) | 0;
|
|
if ($4 & $0 | 0) {
|
|
break label$31
|
|
}
|
|
HEAP32[(0 + 117484 | 0) >> 2] = $4 | $0 | 0;
|
|
$0 = $2;
|
|
break label$30;
|
|
}
|
|
$0 = HEAP32[($2 + 8 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($2 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($0 + 12 | 0) >> 2] = $1;
|
|
HEAP32[($1 + 12 | 0) >> 2] = $2;
|
|
HEAP32[($1 + 8 | 0) >> 2] = $0;
|
|
return;
|
|
}
|
|
$2 = 31;
|
|
label$32 : {
|
|
if ($0 >>> 0 > 16777215 >>> 0) {
|
|
break label$32
|
|
}
|
|
$2 = Math_clz32($0 >>> 8 | 0);
|
|
$2 = ((($0 >>> (38 - $2 | 0) | 0) & 1 | 0) - ($2 << 1 | 0) | 0) + 62 | 0;
|
|
}
|
|
HEAP32[($1 + 28 | 0) >> 2] = $2;
|
|
HEAP32[($1 + 16 | 0) >> 2] = 0;
|
|
HEAP32[($1 + 20 | 0) >> 2] = 0;
|
|
$4 = ($2 << 2 | 0) + 117788 | 0;
|
|
label$33 : {
|
|
label$34 : {
|
|
label$35 : {
|
|
label$36 : {
|
|
$6 = HEAP32[(0 + 117488 | 0) >> 2] | 0;
|
|
$3 = 1 << $2 | 0;
|
|
if ($6 & $3 | 0) {
|
|
break label$36
|
|
}
|
|
HEAP32[(0 + 117488 | 0) >> 2] = $6 | $3 | 0;
|
|
HEAP32[$4 >> 2] = $1;
|
|
HEAP32[($1 + 24 | 0) >> 2] = $4;
|
|
break label$35;
|
|
}
|
|
$2 = $0 << (($2 | 0) == (31 | 0) ? 0 : 25 - ($2 >>> 1 | 0) | 0) | 0;
|
|
$6 = HEAP32[$4 >> 2] | 0;
|
|
label$37 : while (1) {
|
|
$4 = $6;
|
|
if (((HEAP32[($6 + 4 | 0) >> 2] | 0) & -8 | 0 | 0) == ($0 | 0)) {
|
|
break label$34
|
|
}
|
|
$6 = $2 >>> 29 | 0;
|
|
$2 = $2 << 1 | 0;
|
|
$3 = ($4 + ($6 & 4 | 0) | 0) + 16 | 0;
|
|
$6 = HEAP32[$3 >> 2] | 0;
|
|
if ($6) {
|
|
continue label$37
|
|
}
|
|
break label$37;
|
|
};
|
|
HEAP32[$3 >> 2] = $1;
|
|
HEAP32[($1 + 24 | 0) >> 2] = $4;
|
|
}
|
|
HEAP32[($1 + 12 | 0) >> 2] = $1;
|
|
HEAP32[($1 + 8 | 0) >> 2] = $1;
|
|
break label$33;
|
|
}
|
|
$0 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($0 + 12 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $1;
|
|
HEAP32[($1 + 24 | 0) >> 2] = 0;
|
|
HEAP32[($1 + 12 | 0) >> 2] = $4;
|
|
HEAP32[($1 + 8 | 0) >> 2] = $0;
|
|
}
|
|
$1 = (HEAP32[(0 + 117516 | 0) >> 2] | 0) + -1 | 0;
|
|
HEAP32[(0 + 117516 | 0) >> 2] = $1 ? $1 : -1;
|
|
}
|
|
}
|
|
|
|
function internal_memalign($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $2 = 0, $3 = 0, $6 = 0, $4 = 0, $5 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$2 = 16;
|
|
label$1 : {
|
|
label$2 : {
|
|
$3 = $0 >>> 0 > 16 >>> 0 ? $0 : 16;
|
|
if ($3 & ($3 + -1 | 0) | 0) {
|
|
break label$2
|
|
}
|
|
$0 = $3;
|
|
break label$1;
|
|
}
|
|
label$3 : while (1) {
|
|
$0 = $2;
|
|
$2 = $0 << 1 | 0;
|
|
if ($0 >>> 0 < $3 >>> 0) {
|
|
continue label$3
|
|
}
|
|
break label$3;
|
|
};
|
|
}
|
|
label$4 : {
|
|
if ((-64 - $0 | 0) >>> 0 > $1 >>> 0) {
|
|
break label$4
|
|
}
|
|
(wasm2js_i32$0 = __errno_location() | 0, wasm2js_i32$1 = 48), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
return 0 | 0;
|
|
}
|
|
label$5 : {
|
|
$1 = $1 >>> 0 < 11 >>> 0 ? 16 : ($1 + 11 | 0) & -8 | 0;
|
|
$2 = dlmalloc(($1 + $0 | 0) + 12 | 0 | 0) | 0;
|
|
if ($2) {
|
|
break label$5
|
|
}
|
|
return 0 | 0;
|
|
}
|
|
$3 = $2 + -8 | 0;
|
|
label$6 : {
|
|
label$7 : {
|
|
if (($0 + -1 | 0) & $2 | 0) {
|
|
break label$7
|
|
}
|
|
$0 = $3;
|
|
break label$6;
|
|
}
|
|
$4 = $2 + -4 | 0;
|
|
$5 = HEAP32[$4 >> 2] | 0;
|
|
$2 = ((($2 + $0 | 0) + -1 | 0) & (0 - $0 | 0) | 0) + -8 | 0;
|
|
$0 = $2 + (($2 - $3 | 0) >>> 0 > 15 >>> 0 ? 0 : $0) | 0;
|
|
$2 = $0 - $3 | 0;
|
|
$6 = ($5 & -8 | 0) - $2 | 0;
|
|
label$8 : {
|
|
if ($5 & 3 | 0) {
|
|
break label$8
|
|
}
|
|
$3 = HEAP32[$3 >> 2] | 0;
|
|
HEAP32[($0 + 4 | 0) >> 2] = $6;
|
|
HEAP32[$0 >> 2] = $3 + $2 | 0;
|
|
break label$6;
|
|
}
|
|
HEAP32[($0 + 4 | 0) >> 2] = $6 | ((HEAP32[($0 + 4 | 0) >> 2] | 0) & 1 | 0) | 0 | 2 | 0;
|
|
$6 = $0 + $6 | 0;
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0 | 1 | 0;
|
|
HEAP32[$4 >> 2] = $2 | ((HEAP32[$4 >> 2] | 0) & 1 | 0) | 0 | 2 | 0;
|
|
$6 = $3 + $2 | 0;
|
|
HEAP32[($6 + 4 | 0) >> 2] = HEAP32[($6 + 4 | 0) >> 2] | 0 | 1 | 0;
|
|
dispose_chunk($3 | 0, $2 | 0);
|
|
}
|
|
label$9 : {
|
|
$2 = HEAP32[($0 + 4 | 0) >> 2] | 0;
|
|
if (!($2 & 3 | 0)) {
|
|
break label$9
|
|
}
|
|
$3 = $2 & -8 | 0;
|
|
if ($3 >>> 0 <= ($1 + 16 | 0) >>> 0) {
|
|
break label$9
|
|
}
|
|
HEAP32[($0 + 4 | 0) >> 2] = $1 | ($2 & 1 | 0) | 0 | 2 | 0;
|
|
$2 = $0 + $1 | 0;
|
|
$1 = $3 - $1 | 0;
|
|
HEAP32[($2 + 4 | 0) >> 2] = $1 | 3 | 0;
|
|
$3 = $0 + $3 | 0;
|
|
HEAP32[($3 + 4 | 0) >> 2] = HEAP32[($3 + 4 | 0) >> 2] | 0 | 1 | 0;
|
|
dispose_chunk($2 | 0, $1 | 0);
|
|
}
|
|
return $0 + 8 | 0 | 0;
|
|
}
|
|
|
|
function dlposix_memalign($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : {
|
|
if (($1 | 0) != (8 | 0)) {
|
|
break label$3
|
|
}
|
|
$1 = dlmalloc($2 | 0) | 0;
|
|
break label$2;
|
|
}
|
|
$3 = 28;
|
|
if ($1 >>> 0 < 4 >>> 0) {
|
|
break label$1
|
|
}
|
|
if ($1 & 3 | 0) {
|
|
break label$1
|
|
}
|
|
$4 = $1 >>> 2 | 0;
|
|
if ($4 & ($4 + -1 | 0) | 0) {
|
|
break label$1
|
|
}
|
|
$3 = 48;
|
|
if ((-64 - $1 | 0) >>> 0 < $2 >>> 0) {
|
|
break label$1
|
|
}
|
|
$1 = internal_memalign(($1 >>> 0 > 16 >>> 0 ? $1 : 16) | 0, $2 | 0) | 0;
|
|
}
|
|
label$4 : {
|
|
if ($1) {
|
|
break label$4
|
|
}
|
|
return 48 | 0;
|
|
}
|
|
HEAP32[$0 >> 2] = $1;
|
|
$3 = 0;
|
|
}
|
|
return $3 | 0;
|
|
}
|
|
|
|
function dispose_chunk($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $3 = 0, $6 = 0, $4 = 0, $2 = 0, $5 = 0, $7 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$2 = $0 + $1 | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
$3 = HEAP32[($0 + 4 | 0) >> 2] | 0;
|
|
if ($3 & 1 | 0) {
|
|
break label$2
|
|
}
|
|
if (!($3 & 3 | 0)) {
|
|
break label$1
|
|
}
|
|
$3 = HEAP32[$0 >> 2] | 0;
|
|
$1 = $3 + $1 | 0;
|
|
label$3 : {
|
|
label$4 : {
|
|
label$5 : {
|
|
label$6 : {
|
|
$0 = $0 - $3 | 0;
|
|
if (($0 | 0) == (HEAP32[(0 + 117504 | 0) >> 2] | 0 | 0)) {
|
|
break label$6
|
|
}
|
|
label$7 : {
|
|
if ($3 >>> 0 > 255 >>> 0) {
|
|
break label$7
|
|
}
|
|
$4 = HEAP32[($0 + 8 | 0) >> 2] | 0;
|
|
$5 = $3 >>> 3 | 0;
|
|
$6 = ($5 << 3 | 0) + 117524 | 0;
|
|
$3 = HEAP32[($0 + 12 | 0) >> 2] | 0;
|
|
if (($3 | 0) != ($4 | 0)) {
|
|
break label$5
|
|
}
|
|
(wasm2js_i32$0 = 0, wasm2js_i32$1 = (HEAP32[(0 + 117484 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $5 | 0) | 0) | 0), HEAP32[(wasm2js_i32$0 + 117484 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$2;
|
|
}
|
|
$7 = HEAP32[($0 + 24 | 0) >> 2] | 0;
|
|
label$8 : {
|
|
$6 = HEAP32[($0 + 12 | 0) >> 2] | 0;
|
|
if (($6 | 0) == ($0 | 0)) {
|
|
break label$8
|
|
}
|
|
$3 = HEAP32[($0 + 8 | 0) >> 2] | 0;
|
|
HEAP32[(0 + 117500 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $6;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $3;
|
|
break label$3;
|
|
}
|
|
label$9 : {
|
|
$4 = $0 + 20 | 0;
|
|
$3 = HEAP32[$4 >> 2] | 0;
|
|
if ($3) {
|
|
break label$9
|
|
}
|
|
$3 = HEAP32[($0 + 16 | 0) >> 2] | 0;
|
|
if (!$3) {
|
|
break label$4
|
|
}
|
|
$4 = $0 + 16 | 0;
|
|
}
|
|
label$10 : while (1) {
|
|
$5 = $4;
|
|
$6 = $3;
|
|
$4 = $3 + 20 | 0;
|
|
$3 = HEAP32[$4 >> 2] | 0;
|
|
if ($3) {
|
|
continue label$10
|
|
}
|
|
$4 = $6 + 16 | 0;
|
|
$3 = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
if ($3) {
|
|
continue label$10
|
|
}
|
|
break label$10;
|
|
};
|
|
HEAP32[$5 >> 2] = 0;
|
|
break label$3;
|
|
}
|
|
$3 = HEAP32[($2 + 4 | 0) >> 2] | 0;
|
|
if (($3 & 3 | 0 | 0) != (3 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[(0 + 117492 | 0) >> 2] = $1;
|
|
HEAP32[($2 + 4 | 0) >> 2] = $3 & -2 | 0;
|
|
HEAP32[($0 + 4 | 0) >> 2] = $1 | 1 | 0;
|
|
HEAP32[$2 >> 2] = $1;
|
|
return;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $4;
|
|
break label$2;
|
|
}
|
|
$6 = 0;
|
|
}
|
|
if (!$7) {
|
|
break label$2
|
|
}
|
|
label$11 : {
|
|
label$12 : {
|
|
$4 = HEAP32[($0 + 28 | 0) >> 2] | 0;
|
|
$3 = ($4 << 2 | 0) + 117788 | 0;
|
|
if (($0 | 0) != (HEAP32[$3 >> 2] | 0 | 0)) {
|
|
break label$12
|
|
}
|
|
HEAP32[$3 >> 2] = $6;
|
|
if ($6) {
|
|
break label$11
|
|
}
|
|
(wasm2js_i32$0 = 0, wasm2js_i32$1 = (HEAP32[(0 + 117488 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $4 | 0) | 0) | 0), HEAP32[(wasm2js_i32$0 + 117488 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$2;
|
|
}
|
|
HEAP32[($7 + ((HEAP32[($7 + 16 | 0) >> 2] | 0 | 0) == ($0 | 0) ? 16 : 20) | 0) >> 2] = $6;
|
|
if (!$6) {
|
|
break label$2
|
|
}
|
|
}
|
|
HEAP32[($6 + 24 | 0) >> 2] = $7;
|
|
label$13 : {
|
|
$3 = HEAP32[($0 + 16 | 0) >> 2] | 0;
|
|
if (!$3) {
|
|
break label$13
|
|
}
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($3 + 24 | 0) >> 2] = $6;
|
|
}
|
|
$3 = HEAP32[($0 + 20 | 0) >> 2] | 0;
|
|
if (!$3) {
|
|
break label$2
|
|
}
|
|
HEAP32[($6 + 20 | 0) >> 2] = $3;
|
|
HEAP32[($3 + 24 | 0) >> 2] = $6;
|
|
}
|
|
label$14 : {
|
|
label$15 : {
|
|
label$16 : {
|
|
label$17 : {
|
|
label$18 : {
|
|
$3 = HEAP32[($2 + 4 | 0) >> 2] | 0;
|
|
if ($3 & 2 | 0) {
|
|
break label$18
|
|
}
|
|
label$19 : {
|
|
if (($2 | 0) != (HEAP32[(0 + 117508 | 0) >> 2] | 0 | 0)) {
|
|
break label$19
|
|
}
|
|
HEAP32[(0 + 117508 | 0) >> 2] = $0;
|
|
$1 = (HEAP32[(0 + 117496 | 0) >> 2] | 0) + $1 | 0;
|
|
HEAP32[(0 + 117496 | 0) >> 2] = $1;
|
|
HEAP32[($0 + 4 | 0) >> 2] = $1 | 1 | 0;
|
|
if (($0 | 0) != (HEAP32[(0 + 117504 | 0) >> 2] | 0 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[(0 + 117492 | 0) >> 2] = 0;
|
|
HEAP32[(0 + 117504 | 0) >> 2] = 0;
|
|
return;
|
|
}
|
|
label$20 : {
|
|
if (($2 | 0) != (HEAP32[(0 + 117504 | 0) >> 2] | 0 | 0)) {
|
|
break label$20
|
|
}
|
|
HEAP32[(0 + 117504 | 0) >> 2] = $0;
|
|
$1 = (HEAP32[(0 + 117492 | 0) >> 2] | 0) + $1 | 0;
|
|
HEAP32[(0 + 117492 | 0) >> 2] = $1;
|
|
HEAP32[($0 + 4 | 0) >> 2] = $1 | 1 | 0;
|
|
HEAP32[($0 + $1 | 0) >> 2] = $1;
|
|
return;
|
|
}
|
|
$1 = ($3 & -8 | 0) + $1 | 0;
|
|
label$21 : {
|
|
if ($3 >>> 0 > 255 >>> 0) {
|
|
break label$21
|
|
}
|
|
$4 = HEAP32[($2 + 8 | 0) >> 2] | 0;
|
|
$5 = $3 >>> 3 | 0;
|
|
$6 = ($5 << 3 | 0) + 117524 | 0;
|
|
label$22 : {
|
|
$3 = HEAP32[($2 + 12 | 0) >> 2] | 0;
|
|
if (($3 | 0) != ($4 | 0)) {
|
|
break label$22
|
|
}
|
|
(wasm2js_i32$0 = 0, wasm2js_i32$1 = (HEAP32[(0 + 117484 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $5 | 0) | 0) | 0), HEAP32[(wasm2js_i32$0 + 117484 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$15;
|
|
}
|
|
HEAP32[($4 + 12 | 0) >> 2] = $3;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $4;
|
|
break label$15;
|
|
}
|
|
$7 = HEAP32[($2 + 24 | 0) >> 2] | 0;
|
|
label$23 : {
|
|
$6 = HEAP32[($2 + 12 | 0) >> 2] | 0;
|
|
if (($6 | 0) == ($2 | 0)) {
|
|
break label$23
|
|
}
|
|
$3 = HEAP32[($2 + 8 | 0) >> 2] | 0;
|
|
HEAP32[(0 + 117500 | 0) >> 2] | 0;
|
|
HEAP32[($3 + 12 | 0) >> 2] = $6;
|
|
HEAP32[($6 + 8 | 0) >> 2] = $3;
|
|
break label$16;
|
|
}
|
|
label$24 : {
|
|
$4 = $2 + 20 | 0;
|
|
$3 = HEAP32[$4 >> 2] | 0;
|
|
if ($3) {
|
|
break label$24
|
|
}
|
|
$3 = HEAP32[($2 + 16 | 0) >> 2] | 0;
|
|
if (!$3) {
|
|
break label$17
|
|
}
|
|
$4 = $2 + 16 | 0;
|
|
}
|
|
label$25 : while (1) {
|
|
$5 = $4;
|
|
$6 = $3;
|
|
$4 = $3 + 20 | 0;
|
|
$3 = HEAP32[$4 >> 2] | 0;
|
|
if ($3) {
|
|
continue label$25
|
|
}
|
|
$4 = $6 + 16 | 0;
|
|
$3 = HEAP32[($6 + 16 | 0) >> 2] | 0;
|
|
if ($3) {
|
|
continue label$25
|
|
}
|
|
break label$25;
|
|
};
|
|
HEAP32[$5 >> 2] = 0;
|
|
break label$16;
|
|
}
|
|
HEAP32[($2 + 4 | 0) >> 2] = $3 & -2 | 0;
|
|
HEAP32[($0 + 4 | 0) >> 2] = $1 | 1 | 0;
|
|
HEAP32[($0 + $1 | 0) >> 2] = $1;
|
|
break label$14;
|
|
}
|
|
$6 = 0;
|
|
}
|
|
if (!$7) {
|
|
break label$15
|
|
}
|
|
label$26 : {
|
|
label$27 : {
|
|
$4 = HEAP32[($2 + 28 | 0) >> 2] | 0;
|
|
$3 = ($4 << 2 | 0) + 117788 | 0;
|
|
if (($2 | 0) != (HEAP32[$3 >> 2] | 0 | 0)) {
|
|
break label$27
|
|
}
|
|
HEAP32[$3 >> 2] = $6;
|
|
if ($6) {
|
|
break label$26
|
|
}
|
|
(wasm2js_i32$0 = 0, wasm2js_i32$1 = (HEAP32[(0 + 117488 | 0) >> 2] | 0) & (__wasm_rotl_i32(-2 | 0, $4 | 0) | 0) | 0), HEAP32[(wasm2js_i32$0 + 117488 | 0) >> 2] = wasm2js_i32$1;
|
|
break label$15;
|
|
}
|
|
HEAP32[($7 + ((HEAP32[($7 + 16 | 0) >> 2] | 0 | 0) == ($2 | 0) ? 16 : 20) | 0) >> 2] = $6;
|
|
if (!$6) {
|
|
break label$15
|
|
}
|
|
}
|
|
HEAP32[($6 + 24 | 0) >> 2] = $7;
|
|
label$28 : {
|
|
$3 = HEAP32[($2 + 16 | 0) >> 2] | 0;
|
|
if (!$3) {
|
|
break label$28
|
|
}
|
|
HEAP32[($6 + 16 | 0) >> 2] = $3;
|
|
HEAP32[($3 + 24 | 0) >> 2] = $6;
|
|
}
|
|
$3 = HEAP32[($2 + 20 | 0) >> 2] | 0;
|
|
if (!$3) {
|
|
break label$15
|
|
}
|
|
HEAP32[($6 + 20 | 0) >> 2] = $3;
|
|
HEAP32[($3 + 24 | 0) >> 2] = $6;
|
|
}
|
|
HEAP32[($0 + 4 | 0) >> 2] = $1 | 1 | 0;
|
|
HEAP32[($0 + $1 | 0) >> 2] = $1;
|
|
if (($0 | 0) != (HEAP32[(0 + 117504 | 0) >> 2] | 0 | 0)) {
|
|
break label$14
|
|
}
|
|
HEAP32[(0 + 117492 | 0) >> 2] = $1;
|
|
return;
|
|
}
|
|
label$29 : {
|
|
if ($1 >>> 0 > 255 >>> 0) {
|
|
break label$29
|
|
}
|
|
$3 = ($1 & -8 | 0) + 117524 | 0;
|
|
label$30 : {
|
|
label$31 : {
|
|
$4 = HEAP32[(0 + 117484 | 0) >> 2] | 0;
|
|
$1 = 1 << ($1 >>> 3 | 0) | 0;
|
|
if ($4 & $1 | 0) {
|
|
break label$31
|
|
}
|
|
HEAP32[(0 + 117484 | 0) >> 2] = $4 | $1 | 0;
|
|
$1 = $3;
|
|
break label$30;
|
|
}
|
|
$1 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
}
|
|
HEAP32[($3 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($1 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($0 + 12 | 0) >> 2] = $3;
|
|
HEAP32[($0 + 8 | 0) >> 2] = $1;
|
|
return;
|
|
}
|
|
$3 = 31;
|
|
label$32 : {
|
|
if ($1 >>> 0 > 16777215 >>> 0) {
|
|
break label$32
|
|
}
|
|
$3 = Math_clz32($1 >>> 8 | 0);
|
|
$3 = ((($1 >>> (38 - $3 | 0) | 0) & 1 | 0) - ($3 << 1 | 0) | 0) + 62 | 0;
|
|
}
|
|
HEAP32[($0 + 28 | 0) >> 2] = $3;
|
|
HEAP32[($0 + 16 | 0) >> 2] = 0;
|
|
HEAP32[($0 + 20 | 0) >> 2] = 0;
|
|
$4 = ($3 << 2 | 0) + 117788 | 0;
|
|
label$33 : {
|
|
label$34 : {
|
|
label$35 : {
|
|
$6 = HEAP32[(0 + 117488 | 0) >> 2] | 0;
|
|
$2 = 1 << $3 | 0;
|
|
if ($6 & $2 | 0) {
|
|
break label$35
|
|
}
|
|
HEAP32[(0 + 117488 | 0) >> 2] = $6 | $2 | 0;
|
|
HEAP32[$4 >> 2] = $0;
|
|
HEAP32[($0 + 24 | 0) >> 2] = $4;
|
|
break label$34;
|
|
}
|
|
$3 = $1 << (($3 | 0) == (31 | 0) ? 0 : 25 - ($3 >>> 1 | 0) | 0) | 0;
|
|
$6 = HEAP32[$4 >> 2] | 0;
|
|
label$36 : while (1) {
|
|
$4 = $6;
|
|
if (((HEAP32[($6 + 4 | 0) >> 2] | 0) & -8 | 0 | 0) == ($1 | 0)) {
|
|
break label$33
|
|
}
|
|
$6 = $3 >>> 29 | 0;
|
|
$3 = $3 << 1 | 0;
|
|
$2 = ($4 + ($6 & 4 | 0) | 0) + 16 | 0;
|
|
$6 = HEAP32[$2 >> 2] | 0;
|
|
if ($6) {
|
|
continue label$36
|
|
}
|
|
break label$36;
|
|
};
|
|
HEAP32[$2 >> 2] = $0;
|
|
HEAP32[($0 + 24 | 0) >> 2] = $4;
|
|
}
|
|
HEAP32[($0 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($0 + 8 | 0) >> 2] = $0;
|
|
return;
|
|
}
|
|
$1 = HEAP32[($4 + 8 | 0) >> 2] | 0;
|
|
HEAP32[($1 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $0;
|
|
HEAP32[($0 + 24 | 0) >> 2] = 0;
|
|
HEAP32[($0 + 12 | 0) >> 2] = $4;
|
|
HEAP32[($0 + 8 | 0) >> 2] = $1;
|
|
}
|
|
}
|
|
|
|
function __ashlti3($0, $1, $1$hi, $2, $2$hi, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$1$hi = $1$hi | 0;
|
|
$2 = $2 | 0;
|
|
$2$hi = $2$hi | 0;
|
|
$3 = $3 | 0;
|
|
var i64toi32_i32$1 = 0, i64toi32_i32$4 = 0, i64toi32_i32$2 = 0, i64toi32_i32$0 = 0, i64toi32_i32$3 = 0, $4$hi = 0, $18 = 0, $20 = 0, $21 = 0, $22 = 0, $11$hi = 0, $18$hi = 0, $19 = 0, $19$hi = 0, $4 = 0, $24$hi = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!($3 & 64 | 0)) {
|
|
break label$2
|
|
}
|
|
i64toi32_i32$0 = $1$hi;
|
|
i64toi32_i32$0 = 0;
|
|
$11$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $1$hi;
|
|
i64toi32_i32$2 = $1;
|
|
i64toi32_i32$1 = $11$hi;
|
|
i64toi32_i32$3 = $3 + -64 | 0;
|
|
i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
|
|
$18 = 0;
|
|
} else {
|
|
i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$0 << i64toi32_i32$4 | 0) | 0;
|
|
$18 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
|
|
}
|
|
$2 = $18;
|
|
$2$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$1 = 0;
|
|
$1$hi = i64toi32_i32$1;
|
|
break label$1;
|
|
}
|
|
if (!$3) {
|
|
break label$1
|
|
}
|
|
i64toi32_i32$1 = $1$hi;
|
|
i64toi32_i32$1 = 0;
|
|
$18$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $1$hi;
|
|
i64toi32_i32$0 = $1;
|
|
i64toi32_i32$2 = $18$hi;
|
|
i64toi32_i32$3 = 64 - $3 | 0;
|
|
i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$2 = 0;
|
|
$20 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0;
|
|
} else {
|
|
i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0;
|
|
$20 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$1 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$0 >>> i64toi32_i32$4 | 0) | 0;
|
|
}
|
|
$19 = $20;
|
|
$19$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $2$hi;
|
|
i64toi32_i32$2 = 0;
|
|
$4 = $3;
|
|
$4$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $2$hi;
|
|
i64toi32_i32$1 = $2;
|
|
i64toi32_i32$0 = $4$hi;
|
|
i64toi32_i32$3 = $3;
|
|
i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$0 = i64toi32_i32$1 << i64toi32_i32$4 | 0;
|
|
$21 = 0;
|
|
} else {
|
|
i64toi32_i32$0 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$1 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$2 << i64toi32_i32$4 | 0) | 0;
|
|
$21 = i64toi32_i32$1 << i64toi32_i32$4 | 0;
|
|
}
|
|
$24$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $19$hi;
|
|
i64toi32_i32$2 = $19;
|
|
i64toi32_i32$1 = $24$hi;
|
|
i64toi32_i32$3 = $21;
|
|
i64toi32_i32$1 = i64toi32_i32$0 | i64toi32_i32$1 | 0;
|
|
$2 = i64toi32_i32$2 | i64toi32_i32$3 | 0;
|
|
$2$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $1$hi;
|
|
i64toi32_i32$1 = $4$hi;
|
|
i64toi32_i32$1 = $1$hi;
|
|
i64toi32_i32$0 = $1;
|
|
i64toi32_i32$2 = $4$hi;
|
|
i64toi32_i32$3 = $4;
|
|
i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$2 = i64toi32_i32$0 << i64toi32_i32$4 | 0;
|
|
$22 = 0;
|
|
} else {
|
|
i64toi32_i32$2 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$0 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0;
|
|
$22 = i64toi32_i32$0 << i64toi32_i32$4 | 0;
|
|
}
|
|
$1 = $22;
|
|
$1$hi = i64toi32_i32$2;
|
|
}
|
|
i64toi32_i32$2 = $1$hi;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $2$hi;
|
|
HEAP32[(i64toi32_i32$0 + 8 | 0) >> 2] = $2;
|
|
HEAP32[(i64toi32_i32$0 + 12 | 0) >> 2] = i64toi32_i32$2;
|
|
}
|
|
|
|
function __lshrti3($0, $1, $1$hi, $2, $2$hi, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$1$hi = $1$hi | 0;
|
|
$2 = $2 | 0;
|
|
$2$hi = $2$hi | 0;
|
|
$3 = $3 | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$4 = 0, i64toi32_i32$2 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $4$hi = 0, $18 = 0, $20 = 0, $21 = 0, $22 = 0, $11$hi = 0, $18$hi = 0, $19 = 0, $19$hi = 0, $4 = 0, $24$hi = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!($3 & 64 | 0)) {
|
|
break label$2
|
|
}
|
|
i64toi32_i32$0 = $2$hi;
|
|
i64toi32_i32$0 = 0;
|
|
$11$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $2$hi;
|
|
i64toi32_i32$2 = $2;
|
|
i64toi32_i32$1 = $11$hi;
|
|
i64toi32_i32$3 = $3 + -64 | 0;
|
|
i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$1 = 0;
|
|
$18 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
|
|
} else {
|
|
i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
|
|
$18 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
|
|
}
|
|
$1 = $18;
|
|
$1$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
$2 = 0;
|
|
$2$hi = i64toi32_i32$1;
|
|
break label$1;
|
|
}
|
|
if (!$3) {
|
|
break label$1
|
|
}
|
|
i64toi32_i32$1 = $2$hi;
|
|
i64toi32_i32$1 = 0;
|
|
$18$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $2$hi;
|
|
i64toi32_i32$0 = $2;
|
|
i64toi32_i32$2 = $18$hi;
|
|
i64toi32_i32$3 = 64 - $3 | 0;
|
|
i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$2 = i64toi32_i32$0 << i64toi32_i32$4 | 0;
|
|
$20 = 0;
|
|
} else {
|
|
i64toi32_i32$2 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$0 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0;
|
|
$20 = i64toi32_i32$0 << i64toi32_i32$4 | 0;
|
|
}
|
|
$19 = $20;
|
|
$19$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $1$hi;
|
|
i64toi32_i32$2 = 0;
|
|
$4 = $3;
|
|
$4$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $1$hi;
|
|
i64toi32_i32$1 = $1;
|
|
i64toi32_i32$0 = $4$hi;
|
|
i64toi32_i32$3 = $3;
|
|
i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$0 = 0;
|
|
$21 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0;
|
|
} else {
|
|
i64toi32_i32$0 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0;
|
|
$21 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$1 >>> i64toi32_i32$4 | 0) | 0;
|
|
}
|
|
$24$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $19$hi;
|
|
i64toi32_i32$2 = $19;
|
|
i64toi32_i32$1 = $24$hi;
|
|
i64toi32_i32$3 = $21;
|
|
i64toi32_i32$1 = i64toi32_i32$0 | i64toi32_i32$1 | 0;
|
|
$1 = i64toi32_i32$2 | i64toi32_i32$3 | 0;
|
|
$1$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $2$hi;
|
|
i64toi32_i32$1 = $4$hi;
|
|
i64toi32_i32$1 = $2$hi;
|
|
i64toi32_i32$0 = $2;
|
|
i64toi32_i32$2 = $4$hi;
|
|
i64toi32_i32$3 = $4;
|
|
i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$2 = 0;
|
|
$22 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0;
|
|
} else {
|
|
i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0;
|
|
$22 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$1 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$0 >>> i64toi32_i32$4 | 0) | 0;
|
|
}
|
|
$2 = $22;
|
|
$2$hi = i64toi32_i32$2;
|
|
}
|
|
i64toi32_i32$2 = $1$hi;
|
|
i64toi32_i32$0 = $0;
|
|
HEAP32[i64toi32_i32$0 >> 2] = $1;
|
|
HEAP32[(i64toi32_i32$0 + 4 | 0) >> 2] = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $2$hi;
|
|
HEAP32[(i64toi32_i32$0 + 8 | 0) >> 2] = $2;
|
|
HEAP32[(i64toi32_i32$0 + 12 | 0) >> 2] = i64toi32_i32$2;
|
|
}
|
|
|
|
function __trunctfdf2($0, $0$hi, $1, $1$hi) {
|
|
$0 = $0 | 0;
|
|
$0$hi = $0$hi | 0;
|
|
$1 = $1 | 0;
|
|
$1$hi = $1$hi | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, i64toi32_i32$4 = 0, i64toi32_i32$5 = 0, i64toi32_i32$3 = 0, i64toi32_i32$1 = 0, $3 = 0, $3$hi = 0, $4$hi = 0, $4 = 0, $2 = 0, $5 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $50 = 0, $12 = 0, $12$hi = 0, $14$hi = 0, $17 = 0, $17$hi = 0, $19$hi = 0, $33 = 0, $33$hi = 0, $36 = 0, $38 = 0, $43 = 0, $43$hi = 0, $45$hi = 0, $73 = 0, $73$hi = 0, $77$hi = 0, $80 = 0, $80$hi = 0, $82 = 0, $82$hi = 0, $86 = 0, $86$hi = 0, $88 = 0, $89$hi = 0, $98$hi = 0, $105 = 0, $105$hi = 0;
|
|
$2 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $2;
|
|
label$1 : {
|
|
label$2 : {
|
|
i64toi32_i32$0 = $1$hi;
|
|
i64toi32_i32$2 = $1;
|
|
i64toi32_i32$1 = 2147483647;
|
|
i64toi32_i32$3 = -1;
|
|
i64toi32_i32$1 = i64toi32_i32$0 & i64toi32_i32$1 | 0;
|
|
$3 = i64toi32_i32$2 & i64toi32_i32$3 | 0;
|
|
$3$hi = i64toi32_i32$1;
|
|
i64toi32_i32$0 = $3;
|
|
i64toi32_i32$2 = -1006698496;
|
|
i64toi32_i32$3 = 0;
|
|
i64toi32_i32$4 = i64toi32_i32$0 + i64toi32_i32$3 | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$1 + i64toi32_i32$2 | 0;
|
|
if (i64toi32_i32$4 >>> 0 < i64toi32_i32$3 >>> 0) {
|
|
i64toi32_i32$5 = i64toi32_i32$5 + 1 | 0
|
|
}
|
|
$12 = i64toi32_i32$4;
|
|
$12$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $3$hi;
|
|
i64toi32_i32$1 = $3;
|
|
i64toi32_i32$0 = -1140785152;
|
|
i64toi32_i32$3 = 0;
|
|
i64toi32_i32$2 = i64toi32_i32$1 + i64toi32_i32$3 | 0;
|
|
i64toi32_i32$4 = i64toi32_i32$5 + i64toi32_i32$0 | 0;
|
|
if (i64toi32_i32$2 >>> 0 < i64toi32_i32$3 >>> 0) {
|
|
i64toi32_i32$4 = i64toi32_i32$4 + 1 | 0
|
|
}
|
|
$14$hi = i64toi32_i32$4;
|
|
i64toi32_i32$4 = $12$hi;
|
|
i64toi32_i32$5 = $12;
|
|
i64toi32_i32$1 = $14$hi;
|
|
i64toi32_i32$3 = i64toi32_i32$2;
|
|
if (i64toi32_i32$4 >>> 0 > i64toi32_i32$1 >>> 0 | ((i64toi32_i32$4 | 0) == (i64toi32_i32$1 | 0) & i64toi32_i32$5 >>> 0 >= i64toi32_i32$2 >>> 0 | 0) | 0) {
|
|
break label$2
|
|
}
|
|
i64toi32_i32$5 = $0$hi;
|
|
i64toi32_i32$3 = $0;
|
|
i64toi32_i32$4 = 0;
|
|
i64toi32_i32$1 = 60;
|
|
i64toi32_i32$0 = i64toi32_i32$1 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$1 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$4 = 0;
|
|
$44 = i64toi32_i32$5 >>> i64toi32_i32$0 | 0;
|
|
} else {
|
|
i64toi32_i32$4 = i64toi32_i32$5 >>> i64toi32_i32$0 | 0;
|
|
$44 = (((1 << i64toi32_i32$0 | 0) - 1 | 0) & i64toi32_i32$5 | 0) << (32 - i64toi32_i32$0 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$0 | 0) | 0;
|
|
}
|
|
$17 = $44;
|
|
$17$hi = i64toi32_i32$4;
|
|
i64toi32_i32$4 = $1$hi;
|
|
i64toi32_i32$5 = $1;
|
|
i64toi32_i32$3 = 0;
|
|
i64toi32_i32$1 = 4;
|
|
i64toi32_i32$0 = i64toi32_i32$1 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$1 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$3 = i64toi32_i32$5 << i64toi32_i32$0 | 0;
|
|
$45 = 0;
|
|
} else {
|
|
i64toi32_i32$3 = ((1 << i64toi32_i32$0 | 0) - 1 | 0) & (i64toi32_i32$5 >>> (32 - i64toi32_i32$0 | 0) | 0) | 0 | (i64toi32_i32$4 << i64toi32_i32$0 | 0) | 0;
|
|
$45 = i64toi32_i32$5 << i64toi32_i32$0 | 0;
|
|
}
|
|
$19$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = $17$hi;
|
|
i64toi32_i32$4 = $17;
|
|
i64toi32_i32$5 = $19$hi;
|
|
i64toi32_i32$1 = $45;
|
|
i64toi32_i32$5 = i64toi32_i32$3 | i64toi32_i32$5 | 0;
|
|
$3 = i64toi32_i32$4 | i64toi32_i32$1 | 0;
|
|
$3$hi = i64toi32_i32$5;
|
|
label$3 : {
|
|
i64toi32_i32$5 = $0$hi;
|
|
i64toi32_i32$3 = $0;
|
|
i64toi32_i32$4 = 268435455;
|
|
i64toi32_i32$1 = -1;
|
|
i64toi32_i32$4 = i64toi32_i32$5 & i64toi32_i32$4 | 0;
|
|
$0 = i64toi32_i32$3 & i64toi32_i32$1 | 0;
|
|
$0$hi = i64toi32_i32$4;
|
|
i64toi32_i32$5 = $0;
|
|
i64toi32_i32$3 = 134217728;
|
|
i64toi32_i32$1 = 1;
|
|
if (i64toi32_i32$4 >>> 0 < i64toi32_i32$3 >>> 0 | ((i64toi32_i32$4 | 0) == (i64toi32_i32$3 | 0) & i64toi32_i32$5 >>> 0 < i64toi32_i32$1 >>> 0 | 0) | 0) {
|
|
break label$3
|
|
}
|
|
i64toi32_i32$5 = $3$hi;
|
|
i64toi32_i32$1 = $3;
|
|
i64toi32_i32$4 = 1073741824;
|
|
i64toi32_i32$3 = 1;
|
|
i64toi32_i32$0 = i64toi32_i32$1 + i64toi32_i32$3 | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$5 + i64toi32_i32$4 | 0;
|
|
if (i64toi32_i32$0 >>> 0 < i64toi32_i32$3 >>> 0) {
|
|
i64toi32_i32$2 = i64toi32_i32$2 + 1 | 0
|
|
}
|
|
$4 = i64toi32_i32$0;
|
|
$4$hi = i64toi32_i32$2;
|
|
break label$1;
|
|
}
|
|
i64toi32_i32$2 = $3$hi;
|
|
i64toi32_i32$5 = $3;
|
|
i64toi32_i32$1 = 1073741824;
|
|
i64toi32_i32$3 = 0;
|
|
i64toi32_i32$4 = i64toi32_i32$5 + i64toi32_i32$3 | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$2 + i64toi32_i32$1 | 0;
|
|
if (i64toi32_i32$4 >>> 0 < i64toi32_i32$3 >>> 0) {
|
|
i64toi32_i32$0 = i64toi32_i32$0 + 1 | 0
|
|
}
|
|
$4 = i64toi32_i32$4;
|
|
$4$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0$hi;
|
|
i64toi32_i32$2 = $0;
|
|
i64toi32_i32$5 = 134217728;
|
|
i64toi32_i32$3 = 0;
|
|
if ((i64toi32_i32$2 | 0) != (i64toi32_i32$3 | 0) | (i64toi32_i32$0 | 0) != (i64toi32_i32$5 | 0) | 0) {
|
|
break label$1
|
|
}
|
|
i64toi32_i32$2 = $4$hi;
|
|
i64toi32_i32$2 = $3$hi;
|
|
i64toi32_i32$3 = $3;
|
|
i64toi32_i32$0 = 0;
|
|
i64toi32_i32$5 = 1;
|
|
i64toi32_i32$0 = i64toi32_i32$2 & i64toi32_i32$0 | 0;
|
|
$33 = i64toi32_i32$3 & i64toi32_i32$5 | 0;
|
|
$33$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $4$hi;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$3 = $33$hi;
|
|
i64toi32_i32$5 = $33;
|
|
i64toi32_i32$1 = i64toi32_i32$2 + i64toi32_i32$5 | 0;
|
|
i64toi32_i32$4 = i64toi32_i32$0 + i64toi32_i32$3 | 0;
|
|
if (i64toi32_i32$1 >>> 0 < i64toi32_i32$5 >>> 0) {
|
|
i64toi32_i32$4 = i64toi32_i32$4 + 1 | 0
|
|
}
|
|
$4 = i64toi32_i32$1;
|
|
$4$hi = i64toi32_i32$4;
|
|
break label$1;
|
|
}
|
|
label$4 : {
|
|
i64toi32_i32$4 = $0$hi;
|
|
$36 = !($0 | i64toi32_i32$4 | 0);
|
|
i64toi32_i32$4 = $3$hi;
|
|
i64toi32_i32$0 = $3;
|
|
i64toi32_i32$2 = 2147418112;
|
|
i64toi32_i32$5 = 0;
|
|
$38 = i64toi32_i32$4 >>> 0 < i64toi32_i32$2 >>> 0 | ((i64toi32_i32$4 | 0) == (i64toi32_i32$2 | 0) & i64toi32_i32$0 >>> 0 < i64toi32_i32$5 >>> 0 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$4;
|
|
i64toi32_i32$5 = $3;
|
|
i64toi32_i32$4 = 2147418112;
|
|
i64toi32_i32$2 = 0;
|
|
if ((i64toi32_i32$5 | 0) == (i64toi32_i32$2 | 0) & (i64toi32_i32$0 | 0) == (i64toi32_i32$4 | 0) | 0 ? $36 : $38) {
|
|
break label$4
|
|
}
|
|
i64toi32_i32$5 = $0$hi;
|
|
i64toi32_i32$2 = $0;
|
|
i64toi32_i32$0 = 0;
|
|
i64toi32_i32$4 = 60;
|
|
i64toi32_i32$3 = i64toi32_i32$4 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$4 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$0 = 0;
|
|
$46 = i64toi32_i32$5 >>> i64toi32_i32$3 | 0;
|
|
} else {
|
|
i64toi32_i32$0 = i64toi32_i32$5 >>> i64toi32_i32$3 | 0;
|
|
$46 = (((1 << i64toi32_i32$3 | 0) - 1 | 0) & i64toi32_i32$5 | 0) << (32 - i64toi32_i32$3 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$3 | 0) | 0;
|
|
}
|
|
$43 = $46;
|
|
$43$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $1$hi;
|
|
i64toi32_i32$5 = $1;
|
|
i64toi32_i32$2 = 0;
|
|
i64toi32_i32$4 = 4;
|
|
i64toi32_i32$3 = i64toi32_i32$4 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$4 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$2 = i64toi32_i32$5 << i64toi32_i32$3 | 0;
|
|
$47 = 0;
|
|
} else {
|
|
i64toi32_i32$2 = ((1 << i64toi32_i32$3 | 0) - 1 | 0) & (i64toi32_i32$5 >>> (32 - i64toi32_i32$3 | 0) | 0) | 0 | (i64toi32_i32$0 << i64toi32_i32$3 | 0) | 0;
|
|
$47 = i64toi32_i32$5 << i64toi32_i32$3 | 0;
|
|
}
|
|
$45$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $43$hi;
|
|
i64toi32_i32$0 = $43;
|
|
i64toi32_i32$5 = $45$hi;
|
|
i64toi32_i32$4 = $47;
|
|
i64toi32_i32$5 = i64toi32_i32$2 | i64toi32_i32$5 | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$0 | i64toi32_i32$4 | 0;
|
|
i64toi32_i32$0 = 524287;
|
|
i64toi32_i32$4 = -1;
|
|
i64toi32_i32$0 = i64toi32_i32$5 & i64toi32_i32$0 | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$2 & i64toi32_i32$4 | 0;
|
|
i64toi32_i32$2 = 2146959360;
|
|
i64toi32_i32$4 = 0;
|
|
i64toi32_i32$2 = i64toi32_i32$0 | i64toi32_i32$2 | 0;
|
|
$4 = i64toi32_i32$5 | i64toi32_i32$4 | 0;
|
|
$4$hi = i64toi32_i32$2;
|
|
break label$1;
|
|
}
|
|
i64toi32_i32$2 = 2146435072;
|
|
$4 = 0;
|
|
$4$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $3$hi;
|
|
i64toi32_i32$0 = $3;
|
|
i64toi32_i32$5 = 1140785151;
|
|
i64toi32_i32$4 = -1;
|
|
if (i64toi32_i32$2 >>> 0 > i64toi32_i32$5 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$5 | 0) & i64toi32_i32$0 >>> 0 > i64toi32_i32$4 >>> 0 | 0) | 0) {
|
|
break label$1
|
|
}
|
|
i64toi32_i32$0 = 0;
|
|
$4 = 0;
|
|
$4$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $3$hi;
|
|
i64toi32_i32$4 = $3;
|
|
i64toi32_i32$2 = 0;
|
|
i64toi32_i32$5 = 48;
|
|
i64toi32_i32$3 = i64toi32_i32$5 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$5 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$2 = 0;
|
|
$48 = i64toi32_i32$0 >>> i64toi32_i32$3 | 0;
|
|
} else {
|
|
i64toi32_i32$2 = i64toi32_i32$0 >>> i64toi32_i32$3 | 0;
|
|
$48 = (((1 << i64toi32_i32$3 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$3 | 0) | 0 | (i64toi32_i32$4 >>> i64toi32_i32$3 | 0) | 0;
|
|
}
|
|
$5 = $48;
|
|
if ($5 >>> 0 < 15249 >>> 0) {
|
|
break label$1
|
|
}
|
|
i64toi32_i32$2 = $0$hi;
|
|
i64toi32_i32$2 = $1$hi;
|
|
i64toi32_i32$0 = $1;
|
|
i64toi32_i32$4 = 65535;
|
|
i64toi32_i32$5 = -1;
|
|
i64toi32_i32$4 = i64toi32_i32$2 & i64toi32_i32$4 | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$0 & i64toi32_i32$5 | 0;
|
|
i64toi32_i32$0 = 65536;
|
|
i64toi32_i32$5 = 0;
|
|
i64toi32_i32$0 = i64toi32_i32$4 | i64toi32_i32$0 | 0;
|
|
$3 = i64toi32_i32$2 | i64toi32_i32$5 | 0;
|
|
$3$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $0$hi;
|
|
i64toi32_i32$2 = $3$hi;
|
|
__ashlti3($2 + 16 | 0 | 0, $0 | 0, i64toi32_i32$0 | 0, $3 | 0, i64toi32_i32$2 | 0, $5 + -15233 | 0 | 0);
|
|
i64toi32_i32$2 = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $3$hi;
|
|
i64toi32_i32$2 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $3$hi;
|
|
__lshrti3($2 | 0, $0 | 0, i64toi32_i32$2 | 0, $3 | 0, i64toi32_i32$0 | 0, 15361 - $5 | 0 | 0);
|
|
i64toi32_i32$4 = $2;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$4 >> 2] | 0;
|
|
i64toi32_i32$2 = HEAP32[(i64toi32_i32$4 + 4 | 0) >> 2] | 0;
|
|
$3 = i64toi32_i32$0;
|
|
$3$hi = i64toi32_i32$2;
|
|
i64toi32_i32$4 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 0;
|
|
i64toi32_i32$5 = 60;
|
|
i64toi32_i32$3 = i64toi32_i32$5 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$5 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$0 = 0;
|
|
$49 = i64toi32_i32$2 >>> i64toi32_i32$3 | 0;
|
|
} else {
|
|
i64toi32_i32$0 = i64toi32_i32$2 >>> i64toi32_i32$3 | 0;
|
|
$49 = (((1 << i64toi32_i32$3 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$3 | 0) | 0 | (i64toi32_i32$4 >>> i64toi32_i32$3 | 0) | 0;
|
|
}
|
|
$73 = $49;
|
|
$73$hi = i64toi32_i32$0;
|
|
i64toi32_i32$2 = $2 + 8 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$4 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 0;
|
|
i64toi32_i32$5 = 4;
|
|
i64toi32_i32$3 = i64toi32_i32$5 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$5 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$0 = i64toi32_i32$2 << i64toi32_i32$3 | 0;
|
|
$50 = 0;
|
|
} else {
|
|
i64toi32_i32$0 = ((1 << i64toi32_i32$3 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$3 | 0) | 0) | 0 | (i64toi32_i32$4 << i64toi32_i32$3 | 0) | 0;
|
|
$50 = i64toi32_i32$2 << i64toi32_i32$3 | 0;
|
|
}
|
|
$77$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $73$hi;
|
|
i64toi32_i32$4 = $73;
|
|
i64toi32_i32$2 = $77$hi;
|
|
i64toi32_i32$5 = $50;
|
|
i64toi32_i32$2 = i64toi32_i32$0 | i64toi32_i32$2 | 0;
|
|
$4 = i64toi32_i32$4 | i64toi32_i32$5 | 0;
|
|
$4$hi = i64toi32_i32$2;
|
|
label$5 : {
|
|
i64toi32_i32$2 = $3$hi;
|
|
i64toi32_i32$0 = $3;
|
|
i64toi32_i32$4 = 268435455;
|
|
i64toi32_i32$5 = -1;
|
|
i64toi32_i32$4 = i64toi32_i32$2 & i64toi32_i32$4 | 0;
|
|
$80 = i64toi32_i32$0 & i64toi32_i32$5 | 0;
|
|
$80$hi = i64toi32_i32$4;
|
|
i64toi32_i32$2 = $2;
|
|
i64toi32_i32$4 = HEAP32[(i64toi32_i32$2 + 16 | 0) >> 2] | 0;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 20 | 0) >> 2] | 0;
|
|
$82 = i64toi32_i32$4;
|
|
$82$hi = i64toi32_i32$0;
|
|
i64toi32_i32$2 = (i64toi32_i32$2 + 16 | 0) + 8 | 0;
|
|
i64toi32_i32$0 = HEAP32[i64toi32_i32$2 >> 2] | 0;
|
|
i64toi32_i32$4 = HEAP32[(i64toi32_i32$2 + 4 | 0) >> 2] | 0;
|
|
$86 = i64toi32_i32$0;
|
|
$86$hi = i64toi32_i32$4;
|
|
i64toi32_i32$4 = $82$hi;
|
|
i64toi32_i32$2 = $82;
|
|
i64toi32_i32$0 = $86$hi;
|
|
i64toi32_i32$5 = $86;
|
|
i64toi32_i32$0 = i64toi32_i32$4 | i64toi32_i32$0 | 0;
|
|
i64toi32_i32$4 = i64toi32_i32$2 | i64toi32_i32$5 | 0;
|
|
i64toi32_i32$2 = 0;
|
|
i64toi32_i32$5 = 0;
|
|
$88 = (i64toi32_i32$4 | 0) != (i64toi32_i32$5 | 0) | (i64toi32_i32$0 | 0) != (i64toi32_i32$2 | 0) | 0;
|
|
i64toi32_i32$4 = 0;
|
|
$89$hi = i64toi32_i32$4;
|
|
i64toi32_i32$4 = $80$hi;
|
|
i64toi32_i32$5 = $80;
|
|
i64toi32_i32$0 = $89$hi;
|
|
i64toi32_i32$2 = $88;
|
|
i64toi32_i32$0 = i64toi32_i32$4 | i64toi32_i32$0 | 0;
|
|
$3 = i64toi32_i32$5 | i64toi32_i32$2 | 0;
|
|
$3$hi = i64toi32_i32$0;
|
|
i64toi32_i32$4 = $3;
|
|
i64toi32_i32$5 = 134217728;
|
|
i64toi32_i32$2 = 1;
|
|
if (i64toi32_i32$0 >>> 0 < i64toi32_i32$5 >>> 0 | ((i64toi32_i32$0 | 0) == (i64toi32_i32$5 | 0) & i64toi32_i32$4 >>> 0 < i64toi32_i32$2 >>> 0 | 0) | 0) {
|
|
break label$5
|
|
}
|
|
i64toi32_i32$4 = $4$hi;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = 0;
|
|
i64toi32_i32$5 = 1;
|
|
i64toi32_i32$3 = i64toi32_i32$2 + i64toi32_i32$5 | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$4 + i64toi32_i32$0 | 0;
|
|
if (i64toi32_i32$3 >>> 0 < i64toi32_i32$5 >>> 0) {
|
|
i64toi32_i32$1 = i64toi32_i32$1 + 1 | 0
|
|
}
|
|
$4 = i64toi32_i32$3;
|
|
$4$hi = i64toi32_i32$1;
|
|
break label$1;
|
|
}
|
|
i64toi32_i32$1 = $3$hi;
|
|
i64toi32_i32$4 = $3;
|
|
i64toi32_i32$2 = 134217728;
|
|
i64toi32_i32$5 = 0;
|
|
if ((i64toi32_i32$4 | 0) != (i64toi32_i32$5 | 0) | (i64toi32_i32$1 | 0) != (i64toi32_i32$2 | 0) | 0) {
|
|
break label$1
|
|
}
|
|
i64toi32_i32$4 = $4$hi;
|
|
i64toi32_i32$5 = $4;
|
|
i64toi32_i32$1 = 0;
|
|
i64toi32_i32$2 = 1;
|
|
i64toi32_i32$1 = i64toi32_i32$4 & i64toi32_i32$1 | 0;
|
|
$98$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = i64toi32_i32$4;
|
|
i64toi32_i32$1 = $98$hi;
|
|
i64toi32_i32$4 = i64toi32_i32$5 & i64toi32_i32$2 | 0;
|
|
i64toi32_i32$5 = $4$hi;
|
|
i64toi32_i32$2 = $4;
|
|
i64toi32_i32$0 = i64toi32_i32$4 + i64toi32_i32$2 | 0;
|
|
i64toi32_i32$3 = i64toi32_i32$1 + i64toi32_i32$5 | 0;
|
|
if (i64toi32_i32$0 >>> 0 < i64toi32_i32$2 >>> 0) {
|
|
i64toi32_i32$3 = i64toi32_i32$3 + 1 | 0
|
|
}
|
|
$4 = i64toi32_i32$0;
|
|
$4$hi = i64toi32_i32$3;
|
|
}
|
|
__stack_pointer = $2 + 32 | 0;
|
|
i64toi32_i32$3 = $4$hi;
|
|
i64toi32_i32$3 = $1$hi;
|
|
i64toi32_i32$1 = $1;
|
|
i64toi32_i32$4 = -2147483648;
|
|
i64toi32_i32$2 = 0;
|
|
i64toi32_i32$4 = i64toi32_i32$3 & i64toi32_i32$4 | 0;
|
|
$105 = i64toi32_i32$1 & i64toi32_i32$2 | 0;
|
|
$105$hi = i64toi32_i32$4;
|
|
i64toi32_i32$4 = $4$hi;
|
|
i64toi32_i32$3 = $4;
|
|
i64toi32_i32$1 = $105$hi;
|
|
i64toi32_i32$2 = $105;
|
|
i64toi32_i32$1 = i64toi32_i32$4 | i64toi32_i32$1 | 0;
|
|
wasm2js_scratch_store_i32(0 | 0, i64toi32_i32$3 | i64toi32_i32$2 | 0 | 0);
|
|
wasm2js_scratch_store_i32(1 | 0, i64toi32_i32$1 | 0);
|
|
return +(+wasm2js_scratch_load_f64());
|
|
}
|
|
|
|
function aligned_alloc($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $2 = 0, $3 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0;
|
|
$2 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $2;
|
|
$3 = 0;
|
|
label$1 : {
|
|
if ($0 & 3 | 0) {
|
|
break label$1
|
|
}
|
|
if (($1 >>> 0) % ($0 >>> 0) | 0) {
|
|
break label$1
|
|
}
|
|
$0 = dlposix_memalign($2 + 12 | 0 | 0, $0 | 0, $1 | 0) | 0;
|
|
$3 = (wasm2js_i32$0 = 0, wasm2js_i32$1 = HEAP32[($2 + 12 | 0) >> 2] | 0, wasm2js_i32$2 = $0, wasm2js_i32$2 ? wasm2js_i32$0 : wasm2js_i32$1);
|
|
}
|
|
__stack_pointer = $2 + 16 | 0;
|
|
return $3 | 0;
|
|
}
|
|
|
|
function operator_20new_28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
var $1 = 0;
|
|
$1 = $0 >>> 0 > 1 >>> 0 ? $0 : 1;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
$0 = dlmalloc($1 | 0) | 0;
|
|
if ($0) {
|
|
break label$1
|
|
}
|
|
label$3 : {
|
|
$0 = std__get_new_handler_28_29() | 0;
|
|
if (!$0) {
|
|
break label$3
|
|
}
|
|
FUNCTION_TABLE[$0 | 0]();
|
|
continue label$2;
|
|
}
|
|
break label$2;
|
|
};
|
|
abort();
|
|
wasm2js_trap();
|
|
}
|
|
return $0 | 0;
|
|
}
|
|
|
|
function operator_20delete_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
dlfree($0 | 0);
|
|
}
|
|
|
|
function operator_20new_28unsigned_20long_2c_20std__align_val_t_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $3 = 0, $2 = 0;
|
|
$2 = $1 >>> 0 > 4 >>> 0 ? $1 : 4;
|
|
$0 = $0 >>> 0 > 1 >>> 0 ? $0 : 1;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
$3 = std____2____libcpp_aligned_alloc_5babi_v160004_5d_28unsigned_20long_2c_20unsigned_20long_29($2 | 0, $0 | 0) | 0;
|
|
if ($3) {
|
|
break label$1
|
|
}
|
|
$1 = std__get_new_handler_28_29() | 0;
|
|
if (!$1) {
|
|
break label$1
|
|
}
|
|
FUNCTION_TABLE[$1 | 0]();
|
|
continue label$2;
|
|
};
|
|
}
|
|
return $3 | 0;
|
|
}
|
|
|
|
function std____2____libcpp_aligned_alloc_5babi_v160004_5d_28unsigned_20long_2c_20unsigned_20long_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $2 = 0;
|
|
$2 = (($0 + $1 | 0) + -1 | 0) & (0 - $0 | 0) | 0;
|
|
return aligned_alloc($0 | 0, ($2 >>> 0 > $1 >>> 0 ? $2 : $1) | 0) | 0 | 0;
|
|
}
|
|
|
|
function operator_20delete_28void__2c_20std__align_val_t_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
std____2____libcpp_aligned_free_5babi_v160004_5d_28void__29($0 | 0);
|
|
}
|
|
|
|
function std____2____libcpp_aligned_free_5babi_v160004_5d_28void__29($0) {
|
|
$0 = $0 | 0;
|
|
dlfree($0 | 0);
|
|
}
|
|
|
|
function __overflow($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $3 = 0, $2 = 0, $4 = 0;
|
|
$2 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $2;
|
|
HEAP8[($2 + 15 | 0) >> 0] = $1;
|
|
label$1 : {
|
|
label$2 : {
|
|
$3 = HEAP32[($0 + 16 | 0) >> 2] | 0;
|
|
if ($3) {
|
|
break label$2
|
|
}
|
|
$3 = -1;
|
|
if (__towrite($0 | 0) | 0) {
|
|
break label$1
|
|
}
|
|
$3 = HEAP32[($0 + 16 | 0) >> 2] | 0;
|
|
}
|
|
label$3 : {
|
|
$4 = HEAP32[($0 + 20 | 0) >> 2] | 0;
|
|
if (($4 | 0) == ($3 | 0)) {
|
|
break label$3
|
|
}
|
|
$3 = $1 & 255 | 0;
|
|
if ((HEAP32[($0 + 80 | 0) >> 2] | 0 | 0) == ($3 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($0 + 20 | 0) >> 2] = $4 + 1 | 0;
|
|
HEAP8[$4 >> 0] = $1;
|
|
break label$1;
|
|
}
|
|
$3 = -1;
|
|
if ((FUNCTION_TABLE[HEAP32[($0 + 36 | 0) >> 2] | 0 | 0]($0, $2 + 15 | 0, 1) | 0 | 0) != (1 | 0)) {
|
|
break label$1
|
|
}
|
|
$3 = HEAPU8[($2 + 15 | 0) >> 0] | 0;
|
|
}
|
|
__stack_pointer = $2 + 16 | 0;
|
|
return $3 | 0;
|
|
}
|
|
|
|
function memmove($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
label$1 : {
|
|
if (($0 | 0) == ($1 | 0)) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
$3 = $0 + $2 | 0;
|
|
if (($1 - $3 | 0) >>> 0 > (0 - ($2 << 1 | 0) | 0) >>> 0) {
|
|
break label$2
|
|
}
|
|
return __memcpy($0 | 0, $1 | 0, $2 | 0) | 0 | 0;
|
|
}
|
|
$4 = ($1 ^ $0 | 0) & 3 | 0;
|
|
label$3 : {
|
|
label$4 : {
|
|
label$5 : {
|
|
if ($0 >>> 0 >= $1 >>> 0) {
|
|
break label$5
|
|
}
|
|
label$6 : {
|
|
if (!$4) {
|
|
break label$6
|
|
}
|
|
$3 = $0;
|
|
break label$3;
|
|
}
|
|
label$7 : {
|
|
if ($0 & 3 | 0) {
|
|
break label$7
|
|
}
|
|
$3 = $0;
|
|
break label$4;
|
|
}
|
|
$3 = $0;
|
|
label$8 : while (1) {
|
|
if (!$2) {
|
|
break label$1
|
|
}
|
|
HEAP8[$3 >> 0] = HEAPU8[$1 >> 0] | 0;
|
|
$1 = $1 + 1 | 0;
|
|
$2 = $2 + -1 | 0;
|
|
$3 = $3 + 1 | 0;
|
|
if (!($3 & 3 | 0)) {
|
|
break label$4
|
|
}
|
|
continue label$8;
|
|
};
|
|
}
|
|
label$9 : {
|
|
if ($4) {
|
|
break label$9
|
|
}
|
|
label$10 : {
|
|
if (!($3 & 3 | 0)) {
|
|
break label$10
|
|
}
|
|
label$11 : while (1) {
|
|
if (!$2) {
|
|
break label$1
|
|
}
|
|
$2 = $2 + -1 | 0;
|
|
$3 = $0 + $2 | 0;
|
|
HEAP8[$3 >> 0] = HEAPU8[($1 + $2 | 0) >> 0] | 0;
|
|
if ($3 & 3 | 0) {
|
|
continue label$11
|
|
}
|
|
break label$11;
|
|
};
|
|
}
|
|
if ($2 >>> 0 <= 3 >>> 0) {
|
|
break label$9
|
|
}
|
|
label$12 : while (1) {
|
|
$2 = $2 + -4 | 0;
|
|
HEAP32[($0 + $2 | 0) >> 2] = HEAP32[($1 + $2 | 0) >> 2] | 0;
|
|
if ($2 >>> 0 > 3 >>> 0) {
|
|
continue label$12
|
|
}
|
|
break label$12;
|
|
};
|
|
}
|
|
if (!$2) {
|
|
break label$1
|
|
}
|
|
label$13 : while (1) {
|
|
$2 = $2 + -1 | 0;
|
|
HEAP8[($0 + $2 | 0) >> 0] = HEAPU8[($1 + $2 | 0) >> 0] | 0;
|
|
if ($2) {
|
|
continue label$13
|
|
}
|
|
break label$1;
|
|
};
|
|
}
|
|
if ($2 >>> 0 <= 3 >>> 0) {
|
|
break label$3
|
|
}
|
|
label$14 : while (1) {
|
|
HEAP32[$3 >> 2] = HEAP32[$1 >> 2] | 0;
|
|
$1 = $1 + 4 | 0;
|
|
$3 = $3 + 4 | 0;
|
|
$2 = $2 + -4 | 0;
|
|
if ($2 >>> 0 > 3 >>> 0) {
|
|
continue label$14
|
|
}
|
|
break label$14;
|
|
};
|
|
}
|
|
if (!$2) {
|
|
break label$1
|
|
}
|
|
label$15 : while (1) {
|
|
HEAP8[$3 >> 0] = HEAPU8[$1 >> 0] | 0;
|
|
$3 = $3 + 1 | 0;
|
|
$1 = $1 + 1 | 0;
|
|
$2 = $2 + -1 | 0;
|
|
if ($2) {
|
|
continue label$15
|
|
}
|
|
break label$15;
|
|
};
|
|
}
|
|
return $0 | 0;
|
|
}
|
|
|
|
function dummy($0) {
|
|
$0 = $0 | 0;
|
|
return $0 | 0;
|
|
}
|
|
|
|
function __stdio_close($0) {
|
|
$0 = $0 | 0;
|
|
return __wasi_fd_close(dummy(HEAP32[($0 + 60 | 0) >> 2] | 0 | 0) | 0 | 0) | 0 | 0;
|
|
}
|
|
|
|
function __lseek($0, $1, $1$hi, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$1$hi = $1$hi | 0;
|
|
$2 = $2 | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$2 = 0, $3 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
i64toi32_i32$0 = $1$hi;
|
|
$2 = __wasi_syscall_ret(legalfunc$__wasi_fd_seek($0 | 0, $1 | 0, i64toi32_i32$0 | 0, $2 & 255 | 0 | 0, $3 + 8 | 0 | 0) | 0 | 0) | 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$0 = HEAP32[(i64toi32_i32$2 + 8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = HEAP32[(i64toi32_i32$2 + 12 | 0) >> 2] | 0;
|
|
$1 = i64toi32_i32$0;
|
|
$1$hi = i64toi32_i32$1;
|
|
__stack_pointer = i64toi32_i32$2 + 16 | 0;
|
|
i64toi32_i32$1 = -1;
|
|
i64toi32_i32$0 = $1$hi;
|
|
i64toi32_i32$3 = $2 ? -1 : $1;
|
|
i64toi32_i32$2 = $2 ? i64toi32_i32$1 : i64toi32_i32$0;
|
|
i64toi32_i32$HIGH_BITS = i64toi32_i32$2;
|
|
return i64toi32_i32$3 | 0;
|
|
}
|
|
|
|
function __stdio_seek($0, $1, $1$hi, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$1$hi = $1$hi | 0;
|
|
$2 = $2 | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0;
|
|
i64toi32_i32$0 = $1$hi;
|
|
i64toi32_i32$0 = __lseek(HEAP32[($0 + 60 | 0) >> 2] | 0 | 0, $1 | 0, i64toi32_i32$0 | 0, $2 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
|
|
return i64toi32_i32$0 | 0;
|
|
}
|
|
|
|
function char__20std____2____to_address_5babi_v160004_5d_char__28char__29($0) {
|
|
$0 = $0 | 0;
|
|
return $0 | 0;
|
|
}
|
|
|
|
function std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______get_long_cap_5babi_v160004_5d_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
return (HEAP32[((std____2____compressed_pair_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_20std____2__allocator_char____first_5babi_v160004_5d_28_29_20const($0 | 0) | 0) + 8 | 0) >> 2] | 0) & 2147483647 | 0 | 0;
|
|
}
|
|
|
|
function std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______get_long_pointer_5babi_v160004_5d_28_29($0) {
|
|
$0 = $0 | 0;
|
|
return HEAP32[(std____2____compressed_pair_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_20std____2__allocator_char____first_5babi_v160004_5d_28_29($0 | 0) | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______get_short_pointer_5babi_v160004_5d_28_29($0) {
|
|
$0 = $0 | 0;
|
|
return std____2__pointer_traits_char____pointer_to_5babi_v160004_5d_28char__29(std____2____compressed_pair_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_20std____2__allocator_char____first_5babi_v160004_5d_28_29($0 | 0) | 0 | 0) | 0 | 0;
|
|
}
|
|
|
|
function std____2__char_traits_char___assign_28char__2c_20char_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
HEAP8[$0 >> 0] = HEAPU8[$1 >> 0] | 0;
|
|
}
|
|
|
|
function std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____max_size_5babi_v160004_5d_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
$0 = unsigned_20long_20std____2__allocator_traits_std____2__allocator_char____max_size_5babi_v160004_5d_std____2__allocator_char__2c_20void_2c_20void__28std____2__allocator_char__20const__29(std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______alloc_5babi_v160004_5d_28_29_20const($0 | 0) | 0 | 0) | 0;
|
|
return ($0 >>> ($0 >>> 0 > ((std____2__numeric_limits_unsigned_20long___max_5babi_v160004_5d_28_29() | 0) >>> 1 | 0) >>> 0) | 0) + -16 | 0 | 0;
|
|
}
|
|
|
|
function std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______recommend_5babi_v160004_5d_28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
var $1 = 0, $7 = 0;
|
|
$1 = 10;
|
|
label$1 : {
|
|
if ($0 >>> 0 < 11 >>> 0) {
|
|
break label$1
|
|
}
|
|
$0 = unsigned_20long_20std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______align_it_5babi_v160004_5d_16ul__28unsigned_20long_29($0 + 1 | 0 | 0) | 0;
|
|
$7 = $0;
|
|
$0 = $0 + -1 | 0;
|
|
$1 = ($0 | 0) == (11 | 0) ? $7 : $0;
|
|
}
|
|
return $1 | 0;
|
|
}
|
|
|
|
function std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______alloc_5babi_v160004_5d_28_29($0) {
|
|
$0 = $0 | 0;
|
|
return std____2____compressed_pair_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_20std____2__allocator_char____second_5babi_v160004_5d_28_29($0 | 0) | 0 | 0;
|
|
}
|
|
|
|
function std____2____allocation_result_std____2__allocator_traits_std____2__allocator_char____pointer__20std____2____allocate_at_least_5babi_v160004_5d_std____2__allocator_char___28std____2__allocator_char___2c_20unsigned_20long_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$1 = std____2__allocator_char___allocate_5babi_v160004_5d_28unsigned_20long_29($1 | 0, $2 | 0) | 0;
|
|
HEAP32[($0 + 4 | 0) >> 2] = $2;
|
|
HEAP32[$0 >> 2] = $1;
|
|
}
|
|
|
|
function std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______begin_lifetime_5babi_v160004_5d_28char__2c_20unsigned_20long_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
}
|
|
|
|
function std____2__char_traits_char___copy_28char__2c_20char_20const__2c_20unsigned_20long_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
std____2__enable_if___is_cpp17_random_access_iterator_char_20const____value_2c_20char____type_20std____2__copy_n_5babi_v160004_5d_char_20const__2c_20unsigned_20long_2c_20char___28char_20const__2c_20unsigned_20long_2c_20char__29($1 | 0, $2 | 0, $0 | 0) | 0;
|
|
return $0 | 0;
|
|
}
|
|
|
|
function std____2__allocator_traits_std____2__allocator_char____deallocate_5babi_v160004_5d_28std____2__allocator_char___2c_20char__2c_20unsigned_20long_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
std____2__allocator_char___deallocate_5babi_v160004_5d_28char__2c_20unsigned_20long_29($0 | 0, $1 | 0, $2 | 0);
|
|
}
|
|
|
|
function std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______set_long_pointer_5babi_v160004_5d_28char__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
(wasm2js_i32$0 = std____2____compressed_pair_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_20std____2__allocator_char____first_5babi_v160004_5d_28_29($0 | 0) | 0, wasm2js_i32$1 = $1), HEAP32[wasm2js_i32$0 >> 2] = wasm2js_i32$1;
|
|
}
|
|
|
|
function std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______set_long_cap_5babi_v160004_5d_28unsigned_20long_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $2 = 0;
|
|
$2 = std____2____compressed_pair_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_20std____2__allocator_char____first_5babi_v160004_5d_28_29($0 | 0) | 0;
|
|
HEAP32[($2 + 8 | 0) >> 2] = (HEAP32[($2 + 8 | 0) >> 2] | 0) & -2147483648 | 0 | ($1 & 2147483647 | 0) | 0;
|
|
$0 = std____2____compressed_pair_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_20std____2__allocator_char____first_5babi_v160004_5d_28_29($0 | 0) | 0;
|
|
HEAP32[($0 + 8 | 0) >> 2] = HEAP32[($0 + 8 | 0) >> 2] | 0 | -2147483648 | 0;
|
|
}
|
|
|
|
function std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______set_long_size_5babi_v160004_5d_28unsigned_20long_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
(wasm2js_i32$0 = std____2____compressed_pair_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_20std____2__allocator_char____first_5babi_v160004_5d_28_29($0 | 0) | 0, wasm2js_i32$1 = $1), HEAP32[(wasm2js_i32$0 + 4 | 0) >> 2] = wasm2js_i32$1;
|
|
}
|
|
|
|
function std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______throw_length_error_5babi_v160004_5d_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
std____2____throw_length_error_5babi_v160004_5d_28char_20const__29(80508 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______fits_in_sso_5babi_v160004_5d_28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
return $0 >>> 0 < 11 >>> 0 | 0;
|
|
}
|
|
|
|
function std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______set_short_size_5babi_v160004_5d_28unsigned_20long_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $2 = 0;
|
|
$2 = std____2____compressed_pair_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_20std____2__allocator_char____first_5babi_v160004_5d_28_29($0 | 0) | 0;
|
|
HEAP8[($2 + 11 | 0) >> 0] = (HEAPU8[($2 + 11 | 0) >> 0] | 0) & 128 | 0 | $1 | 0;
|
|
$0 = std____2____compressed_pair_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_20std____2__allocator_char____first_5babi_v160004_5d_28_29($0 | 0) | 0;
|
|
HEAP8[($0 + 11 | 0) >> 0] = (HEAPU8[($0 + 11 | 0) >> 0] | 0) & 127 | 0;
|
|
}
|
|
|
|
function std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______alloc_5babi_v160004_5d_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
return std____2____compressed_pair_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_20std____2__allocator_char____second_5babi_v160004_5d_28_29_20const($0 | 0) | 0 | 0;
|
|
}
|
|
|
|
function unsigned_20long_20std____2__allocator_traits_std____2__allocator_char____max_size_5babi_v160004_5d_std____2__allocator_char__2c_20void_2c_20void__28std____2__allocator_char__20const__29($0) {
|
|
$0 = $0 | 0;
|
|
return std____2__numeric_limits_unsigned_20long___max_5babi_v160004_5d_28_29() | 0 | 0;
|
|
}
|
|
|
|
function std____2__numeric_limits_unsigned_20long___max_5babi_v160004_5d_28_29() {
|
|
return std____2____libcpp_numeric_limits_unsigned_20long_2c_20true___max_5babi_v160004_5d_28_29() | 0 | 0;
|
|
}
|
|
|
|
function std____2____throw_length_error_5babi_v160004_5d_28char_20const__29($0) {
|
|
$0 = $0 | 0;
|
|
abort();
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function std____2____compressed_pair_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_20std____2__allocator_char____first_5babi_v160004_5d_28_29($0) {
|
|
$0 = $0 | 0;
|
|
return std____2____compressed_pair_elem_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_200_2c_20false_____get_5babi_v160004_5d_28_29($0 | 0) | 0 | 0;
|
|
}
|
|
|
|
function std____2__pointer_traits_char____pointer_to_5babi_v160004_5d_28char__29($0) {
|
|
$0 = $0 | 0;
|
|
return $0 | 0;
|
|
}
|
|
|
|
function std____2__allocator_char___allocate_5babi_v160004_5d_28unsigned_20long_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
label$1 : {
|
|
if ((unsigned_20long_20std____2__allocator_traits_std____2__allocator_char____max_size_5babi_v160004_5d_std____2__allocator_char__2c_20void_2c_20void__28std____2__allocator_char__20const__29($0 | 0) | 0) >>> 0 >= $1 >>> 0) {
|
|
break label$1
|
|
}
|
|
std____throw_bad_array_new_length_5babi_v160004_5d_28_29();
|
|
wasm2js_trap();
|
|
}
|
|
return std____2____libcpp_allocate_5babi_v160004_5d_28unsigned_20long_2c_20unsigned_20long_29($1 | 0, 1 | 0) | 0 | 0;
|
|
}
|
|
|
|
function std____2____compressed_pair_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_20std____2__allocator_char____second_5babi_v160004_5d_28_29($0) {
|
|
$0 = $0 | 0;
|
|
return std____2____compressed_pair_elem_std____2__allocator_char__2c_201_2c_20true_____get_5babi_v160004_5d_28_29($0 | 0) | 0 | 0;
|
|
}
|
|
|
|
function unsigned_20long_20std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______align_it_5babi_v160004_5d_16ul__28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
return ($0 + 15 | 0) & -16 | 0 | 0;
|
|
}
|
|
|
|
function std____2__enable_if___is_cpp17_random_access_iterator_char_20const____value_2c_20char____type_20std____2__copy_n_5babi_v160004_5d_char_20const__2c_20unsigned_20long_2c_20char___28char_20const__2c_20unsigned_20long_2c_20char__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
return char__20std____2__copy_5babi_v160004_5d_char_20const__2c_20char___28char_20const__2c_20char_20const__2c_20char__29($0 | 0, $0 + $1 | 0 | 0, $2 | 0) | 0 | 0;
|
|
}
|
|
|
|
function std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char_____basic_string_28_29($0) {
|
|
$0 = $0 | 0;
|
|
void_20std____2____debug_db_erase_c_5babi_v160004_5d_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____28std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____29($0 | 0);
|
|
label$1 : {
|
|
if (!(std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______is_long_5babi_v160004_5d_28_29_20const($0 | 0) | 0)) {
|
|
break label$1
|
|
}
|
|
std____2__allocator_traits_std____2__allocator_char____deallocate_5babi_v160004_5d_28std____2__allocator_char___2c_20char__2c_20unsigned_20long_29(std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______alloc_5babi_v160004_5d_28_29($0 | 0) | 0 | 0, std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______get_long_pointer_5babi_v160004_5d_28_29($0 | 0) | 0 | 0, std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______get_long_cap_5babi_v160004_5d_28_29_20const($0 | 0) | 0 | 0);
|
|
}
|
|
return $0 | 0;
|
|
}
|
|
|
|
function void_20std____2____debug_db_erase_c_5babi_v160004_5d_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____28std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____29($0) {
|
|
$0 = $0 | 0;
|
|
}
|
|
|
|
function std____2__allocator_char___deallocate_5babi_v160004_5d_28char__2c_20unsigned_20long_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
std____2____libcpp_deallocate_5babi_v160004_5d_28void__2c_20unsigned_20long_2c_20unsigned_20long_29($1 | 0, $2 | 0, 1 | 0);
|
|
}
|
|
|
|
function std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______init_28char_20const__2c_20unsigned_20long_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
label$1 : {
|
|
if ((std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char____max_size_5babi_v160004_5d_28_29_20const($0 | 0) | 0) >>> 0 < $2 >>> 0) {
|
|
break label$1
|
|
}
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!(std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______fits_in_sso_5babi_v160004_5d_28unsigned_20long_29($2 | 0) | 0)) {
|
|
break label$3
|
|
}
|
|
std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______set_short_size_5babi_v160004_5d_28unsigned_20long_29($0 | 0, $2 | 0);
|
|
$4 = std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______get_short_pointer_5babi_v160004_5d_28_29($0 | 0) | 0;
|
|
break label$2;
|
|
}
|
|
std____2____allocation_result_std____2__allocator_traits_std____2__allocator_char____pointer__20std____2____allocate_at_least_5babi_v160004_5d_std____2__allocator_char___28std____2__allocator_char___2c_20unsigned_20long_29($3 + 8 | 0 | 0, std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______alloc_5babi_v160004_5d_28_29($0 | 0) | 0 | 0, (std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______recommend_5babi_v160004_5d_28unsigned_20long_29($2 | 0) | 0) + 1 | 0 | 0);
|
|
$4 = HEAP32[($3 + 8 | 0) >> 2] | 0;
|
|
std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______begin_lifetime_5babi_v160004_5d_28char__2c_20unsigned_20long_29($4 | 0, HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______set_long_pointer_5babi_v160004_5d_28char__29($0 | 0, $4 | 0);
|
|
std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______set_long_cap_5babi_v160004_5d_28unsigned_20long_29($0 | 0, HEAP32[($3 + 12 | 0) >> 2] | 0 | 0);
|
|
std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______set_long_size_5babi_v160004_5d_28unsigned_20long_29($0 | 0, $2 | 0);
|
|
}
|
|
std____2__char_traits_char___copy_28char__2c_20char_20const__2c_20unsigned_20long_29(char__20std____2____to_address_5babi_v160004_5d_char__28char__29($4 | 0) | 0 | 0, $1 | 0, $2 | 0) | 0;
|
|
HEAP8[($3 + 7 | 0) >> 0] = 0;
|
|
std____2__char_traits_char___assign_28char__2c_20char_20const__29($4 + $2 | 0 | 0, $3 + 7 | 0 | 0);
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return;
|
|
}
|
|
std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______throw_length_error_5babi_v160004_5d_28_29_20const($0 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function std____2____compressed_pair_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_20std____2__allocator_char____second_5babi_v160004_5d_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
return std____2____compressed_pair_elem_std____2__allocator_char__2c_201_2c_20true_____get_5babi_v160004_5d_28_29_20const($0 | 0) | 0 | 0;
|
|
}
|
|
|
|
function std____2____libcpp_numeric_limits_unsigned_20long_2c_20true___max_5babi_v160004_5d_28_29() {
|
|
return -1 | 0;
|
|
}
|
|
|
|
function std____2____compressed_pair_elem_std____2__allocator_char__2c_201_2c_20true_____get_5babi_v160004_5d_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
return $0 | 0;
|
|
}
|
|
|
|
function std____2____compressed_pair_elem_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char______rep_2c_200_2c_20false_____get_5babi_v160004_5d_28_29($0) {
|
|
$0 = $0 | 0;
|
|
return $0 | 0;
|
|
}
|
|
|
|
function std____throw_bad_array_new_length_5babi_v160004_5d_28_29() {
|
|
abort();
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function std____2____libcpp_allocate_5babi_v160004_5d_28unsigned_20long_2c_20unsigned_20long_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
label$1 : {
|
|
if (!(std____2____is_overaligned_for_new_5babi_v160004_5d_28unsigned_20long_29($1 | 0) | 0)) {
|
|
break label$1
|
|
}
|
|
return void__20std____2____libcpp_operator_new_5babi_v160004_5d_unsigned_20long_2c_20std__align_val_t__28unsigned_20long_2c_20std__align_val_t_29($0 | 0, $1 | 0) | 0 | 0;
|
|
}
|
|
return void__20std____2____libcpp_operator_new_5babi_v160004_5d_unsigned_20long__28unsigned_20long_29($0 | 0) | 0 | 0;
|
|
}
|
|
|
|
function std____2____is_overaligned_for_new_5babi_v160004_5d_28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
return $0 >>> 0 > 8 >>> 0 | 0;
|
|
}
|
|
|
|
function void__20std____2____libcpp_operator_new_5babi_v160004_5d_unsigned_20long_2c_20std__align_val_t__28unsigned_20long_2c_20std__align_val_t_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
return operator_20new_28unsigned_20long_2c_20std__align_val_t_29($0 | 0, $1 | 0) | 0 | 0;
|
|
}
|
|
|
|
function void__20std____2____libcpp_operator_new_5babi_v160004_5d_unsigned_20long__28unsigned_20long_29($0) {
|
|
$0 = $0 | 0;
|
|
return operator_20new_28unsigned_20long_29($0 | 0) | 0 | 0;
|
|
}
|
|
|
|
function std____2____compressed_pair_elem_std____2__allocator_char__2c_201_2c_20true_____get_5babi_v160004_5d_28_29($0) {
|
|
$0 = $0 | 0;
|
|
return $0 | 0;
|
|
}
|
|
|
|
function char__20std____2__copy_5babi_v160004_5d_char_20const__2c_20char___28char_20const__2c_20char_20const__2c_20char__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $3 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
std____2__pair_char_20const__2c_20char___20std____2____copy_5babi_v160004_5d_std____2___ClassicAlgPolicy_2c_20char_20const__2c_20char_20const__2c_20char___28char_20const__2c_20char_20const__2c_20char__29($3 + 8 | 0 | 0, $0 | 0, $1 | 0, $2 | 0);
|
|
$2 = HEAP32[($3 + 12 | 0) >> 2] | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
return $2 | 0;
|
|
}
|
|
|
|
function std____2__pair_char_20const__2c_20char___20std____2____copy_5babi_v160004_5d_std____2___ClassicAlgPolicy_2c_20char_20const__2c_20char_20const__2c_20char___28char_20const__2c_20char_20const__2c_20char__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
std____2__pair_char_20const__2c_20char___20std____2____dispatch_copy_or_move_5babi_v160004_5d_std____2___ClassicAlgPolicy_2c_20std____2____copy_loop_std____2___ClassicAlgPolicy__2c_20std____2____copy_trivial_2c_20char_20const__2c_20char_20const__2c_20char___28char_20const__2c_20char_20const__2c_20char__29($0 | 0, $1 | 0, $2 | 0, $3 | 0);
|
|
}
|
|
|
|
function std____2__pair_char_20const__2c_20char___20std____2____dispatch_copy_or_move_5babi_v160004_5d_std____2___ClassicAlgPolicy_2c_20std____2____copy_loop_std____2___ClassicAlgPolicy__2c_20std____2____copy_trivial_2c_20char_20const__2c_20char_20const__2c_20char___28char_20const__2c_20char_20const__2c_20char__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
std____2__pair_char_20const__2c_20char___20std____2____unwrap_and_dispatch_5babi_v160004_5d_std____2____overload_std____2____copy_loop_std____2___ClassicAlgPolicy__2c_20std____2____copy_trivial__2c_20char_20const__2c_20char_20const__2c_20char__2c_200__28char_20const__2c_20char_20const__2c_20char__29($0 | 0, $1 | 0, $2 | 0, $3 | 0);
|
|
}
|
|
|
|
function std____2__pair_char_20const__2c_20char___20std____2____unwrap_and_dispatch_5babi_v160004_5d_std____2____overload_std____2____copy_loop_std____2___ClassicAlgPolicy__2c_20std____2____copy_trivial__2c_20char_20const__2c_20char_20const__2c_20char__2c_200__28char_20const__2c_20char_20const__2c_20char__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $4 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 32 | 0;
|
|
__stack_pointer = $4;
|
|
auto_20std____2____unwrap_range_5babi_v160004_5d_char_20const__2c_20char_20const___28char_20const__2c_20char_20const__29($4 + 24 | 0 | 0, $1 | 0, $2 | 0);
|
|
std____2__pair_char_20const__2c_20char___20std____2____copy_trivial__operator_28_29_5babi_v160004_5d_char_20const_2c_20char_2c_200__28char_20const__2c_20char_20const__2c_20char__29_20const($4 + 16 | 0 | 0, $4 + 12 | 0 | 0, HEAP32[($4 + 24 | 0) >> 2] | 0 | 0, HEAP32[($4 + 28 | 0) >> 2] | 0 | 0, decltype_28std____2____unwrap_iter_impl_char__2c_20true_____unwrap_28std__declval_char___28_29_29_29_20std____2____unwrap_iter_5babi_v160004_5d_char__2c_20std____2____unwrap_iter_impl_char__2c_20true__2c_200__28char__29($3 | 0) | 0 | 0);
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = char_20const__20std____2____rewrap_range_5babi_v160004_5d_char_20const__2c_20char_20const__2c_20char_20const___28char_20const__2c_20char_20const__29($1 | 0, HEAP32[($4 + 16 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = char__20std____2____rewrap_iter_5babi_v160004_5d_char__2c_20char__2c_20std____2____unwrap_iter_impl_char__2c_20true___28char__2c_20char__29($3 | 0, HEAP32[($4 + 20 | 0) >> 2] | 0 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
std____2__pair_std____2____unwrap_ref_decay_char_20const____type_2c_20std____2____unwrap_ref_decay_char____type__20std____2__make_pair_5babi_v160004_5d_char_20const__2c_20char___28char_20const____2c_20char____29($0 | 0, $4 + 12 | 0 | 0, $4 + 8 | 0 | 0);
|
|
__stack_pointer = $4 + 32 | 0;
|
|
}
|
|
|
|
function auto_20std____2____unwrap_range_5babi_v160004_5d_char_20const__2c_20char_20const___28char_20const__2c_20char_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
std____2____unwrap_range_impl_char_20const__2c_20char_20const______unwrap_5babi_v160004_5d_28char_20const__2c_20char_20const__29($0 | 0, $1 | 0, $2 | 0);
|
|
}
|
|
|
|
function decltype_28std____2____unwrap_iter_impl_char__2c_20true_____unwrap_28std__declval_char___28_29_29_29_20std____2____unwrap_iter_5babi_v160004_5d_char__2c_20std____2____unwrap_iter_impl_char__2c_20true__2c_200__28char__29($0) {
|
|
$0 = $0 | 0;
|
|
return std____2____unwrap_iter_impl_char__2c_20true_____unwrap_5babi_v160004_5d_28char__29($0 | 0) | 0 | 0;
|
|
}
|
|
|
|
function std____2__pair_char_20const__2c_20char___20std____2____copy_trivial__operator_28_29_5babi_v160004_5d_char_20const_2c_20char_2c_200__28char_20const__2c_20char_20const__2c_20char__29_20const($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
std____2__pair_char_20const__2c_20char___20std____2____copy_trivial_impl_5babi_v160004_5d_char_20const_2c_20char__28char_20const__2c_20char_20const__2c_20char__29($0 | 0, $2 | 0, $3 | 0, $4 | 0);
|
|
}
|
|
|
|
function char_20const__20std____2____rewrap_range_5babi_v160004_5d_char_20const__2c_20char_20const__2c_20char_20const___28char_20const__2c_20char_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
return std____2____unwrap_range_impl_char_20const__2c_20char_20const______rewrap_5babi_v160004_5d_28char_20const__2c_20char_20const__29($0 | 0, $1 | 0) | 0 | 0;
|
|
}
|
|
|
|
function char__20std____2____rewrap_iter_5babi_v160004_5d_char__2c_20char__2c_20std____2____unwrap_iter_impl_char__2c_20true___28char__2c_20char__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
return std____2____unwrap_iter_impl_char__2c_20true_____rewrap_5babi_v160004_5d_28char__2c_20char__29($0 | 0, $1 | 0) | 0 | 0;
|
|
}
|
|
|
|
function std____2__pair_std____2____unwrap_ref_decay_char_20const____type_2c_20std____2____unwrap_ref_decay_char____type__20std____2__make_pair_5babi_v160004_5d_char_20const__2c_20char___28char_20const____2c_20char____29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
std____2__pair_char_20const__2c_20char____pair_5babi_v160004_5d_char_20const__2c_20char__2c_20_28void__290__28char_20const____2c_20char____29($0 | 0, $1 | 0, $2 | 0) | 0;
|
|
}
|
|
|
|
function std____2____unwrap_range_impl_char_20const__2c_20char_20const______unwrap_5babi_v160004_5d_28char_20const__2c_20char_20const__29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $3 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$3 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $3;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = decltype_28std____2____unwrap_iter_impl_char_20const__2c_20true_____unwrap_28std__declval_char_20const___28_29_29_29_20std____2____unwrap_iter_5babi_v160004_5d_char_20const__2c_20std____2____unwrap_iter_impl_char_20const__2c_20true__2c_200__28char_20const__29($1 | 0) | 0), HEAP32[(wasm2js_i32$0 + 12 | 0) >> 2] = wasm2js_i32$1;
|
|
(wasm2js_i32$0 = $3, wasm2js_i32$1 = decltype_28std____2____unwrap_iter_impl_char_20const__2c_20true_____unwrap_28std__declval_char_20const___28_29_29_29_20std____2____unwrap_iter_5babi_v160004_5d_char_20const__2c_20std____2____unwrap_iter_impl_char_20const__2c_20true__2c_200__28char_20const__29($2 | 0) | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
std____2__pair_char_20const__2c_20char_20const____pair_5babi_v160004_5d_char_20const__2c_20char_20const__2c_20_28void__290__28char_20const____2c_20char_20const____29($0 | 0, $3 + 12 | 0 | 0, $3 + 8 | 0 | 0) | 0;
|
|
__stack_pointer = $3 + 16 | 0;
|
|
}
|
|
|
|
function std____2__pair_char_20const__2c_20char___20std____2____copy_trivial_impl_5babi_v160004_5d_char_20const_2c_20char__28char_20const__2c_20char_20const__2c_20char__29($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $4 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0;
|
|
$4 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $4;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $2;
|
|
$2 = $2 - $1 | 0;
|
|
(wasm2js_i32$0 = $4, wasm2js_i32$1 = (memmove($3 | 0, $1 | 0, $2 | 0) | 0) + $2 | 0), HEAP32[(wasm2js_i32$0 + 8 | 0) >> 2] = wasm2js_i32$1;
|
|
std____2__pair_std____2____unwrap_ref_decay_char_20const_____type_2c_20std____2____unwrap_ref_decay_char____type__20std____2__make_pair_5babi_v160004_5d_char_20const___2c_20char___28char_20const___2c_20char____29($0 | 0, $4 + 12 | 0 | 0, $4 + 8 | 0 | 0);
|
|
__stack_pointer = $4 + 16 | 0;
|
|
}
|
|
|
|
function std____2____unwrap_iter_impl_char__2c_20true_____unwrap_5babi_v160004_5d_28char__29($0) {
|
|
$0 = $0 | 0;
|
|
return char__20std____2____to_address_5babi_v160004_5d_char__28char__29($0 | 0) | 0 | 0;
|
|
}
|
|
|
|
function std____2__pair_char_20const__2c_20char____pair_5babi_v160004_5d_char_20const__2c_20char__2c_20_28void__290__28char_20const____2c_20char____29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
HEAP32[$0 >> 2] = HEAP32[$1 >> 2] | 0;
|
|
HEAP32[($0 + 4 | 0) >> 2] = HEAP32[$2 >> 2] | 0;
|
|
return $0 | 0;
|
|
}
|
|
|
|
function std____2____unwrap_range_impl_char_20const__2c_20char_20const______rewrap_5babi_v160004_5d_28char_20const__2c_20char_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
return char_20const__20std____2____rewrap_iter_5babi_v160004_5d_char_20const__2c_20char_20const__2c_20std____2____unwrap_iter_impl_char_20const__2c_20true___28char_20const__2c_20char_20const__29($0 | 0, $1 | 0) | 0 | 0;
|
|
}
|
|
|
|
function std____2____unwrap_iter_impl_char__2c_20true_____rewrap_5babi_v160004_5d_28char__2c_20char__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
return $0 + ($1 - (char__20std____2____to_address_5babi_v160004_5d_char__28char__29($0 | 0) | 0) | 0) | 0 | 0;
|
|
}
|
|
|
|
function decltype_28std____2____unwrap_iter_impl_char_20const__2c_20true_____unwrap_28std__declval_char_20const___28_29_29_29_20std____2____unwrap_iter_5babi_v160004_5d_char_20const__2c_20std____2____unwrap_iter_impl_char_20const__2c_20true__2c_200__28char_20const__29($0) {
|
|
$0 = $0 | 0;
|
|
return std____2____unwrap_iter_impl_char_20const__2c_20true_____unwrap_5babi_v160004_5d_28char_20const__29($0 | 0) | 0 | 0;
|
|
}
|
|
|
|
function std____2__pair_char_20const__2c_20char_20const____pair_5babi_v160004_5d_char_20const__2c_20char_20const__2c_20_28void__290__28char_20const____2c_20char_20const____29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
HEAP32[$0 >> 2] = HEAP32[$1 >> 2] | 0;
|
|
HEAP32[($0 + 4 | 0) >> 2] = HEAP32[$2 >> 2] | 0;
|
|
return $0 | 0;
|
|
}
|
|
|
|
function std____2____unwrap_iter_impl_char_20const__2c_20true_____unwrap_5babi_v160004_5d_28char_20const__29($0) {
|
|
$0 = $0 | 0;
|
|
return char_20const__20std____2____to_address_5babi_v160004_5d_char_20const__28char_20const__29($0 | 0) | 0 | 0;
|
|
}
|
|
|
|
function std____2__pair_std____2____unwrap_ref_decay_char_20const_____type_2c_20std____2____unwrap_ref_decay_char____type__20std____2__make_pair_5babi_v160004_5d_char_20const___2c_20char___28char_20const___2c_20char____29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
std____2__pair_char_20const__2c_20char____pair_5babi_v160004_5d_char_20const___2c_20char__2c_20_28void__290__28char_20const___2c_20char____29($0 | 0, $1 | 0, $2 | 0) | 0;
|
|
}
|
|
|
|
function std____2__pair_char_20const__2c_20char____pair_5babi_v160004_5d_char_20const___2c_20char__2c_20_28void__290__28char_20const___2c_20char____29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
HEAP32[$0 >> 2] = HEAP32[$1 >> 2] | 0;
|
|
HEAP32[($0 + 4 | 0) >> 2] = HEAP32[$2 >> 2] | 0;
|
|
return $0 | 0;
|
|
}
|
|
|
|
function char_20const__20std____2____rewrap_iter_5babi_v160004_5d_char_20const__2c_20char_20const__2c_20std____2____unwrap_iter_impl_char_20const__2c_20true___28char_20const__2c_20char_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
return std____2____unwrap_iter_impl_char_20const__2c_20true_____rewrap_5babi_v160004_5d_28char_20const__2c_20char_20const__29($0 | 0, $1 | 0) | 0 | 0;
|
|
}
|
|
|
|
function std____2____unwrap_iter_impl_char_20const__2c_20true_____rewrap_5babi_v160004_5d_28char_20const__2c_20char_20const__29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
return $0 + ($1 - (char_20const__20std____2____to_address_5babi_v160004_5d_char_20const__28char_20const__29($0 | 0) | 0) | 0) | 0 | 0;
|
|
}
|
|
|
|
function std____2____libcpp_deallocate_5babi_v160004_5d_28void__2c_20unsigned_20long_2c_20unsigned_20long_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
label$1 : {
|
|
if (!(std____2____is_overaligned_for_new_5babi_v160004_5d_28unsigned_20long_29($2 | 0) | 0)) {
|
|
break label$1
|
|
}
|
|
void_20std____2____do_deallocate_handle_size_5babi_v160004_5d_std__align_val_t__28void__2c_20unsigned_20long_2c_20std__align_val_t_29($0 | 0, $1 | 0, $2 | 0);
|
|
return;
|
|
}
|
|
void_20std____2____do_deallocate_handle_size_5babi_v160004_5d___28void__2c_20unsigned_20long_29($0 | 0, $1 | 0);
|
|
}
|
|
|
|
function void_20std____2____do_deallocate_handle_size_5babi_v160004_5d_std__align_val_t__28void__2c_20unsigned_20long_2c_20std__align_val_t_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
void_20std____2____libcpp_operator_delete_5babi_v160004_5d_void__2c_20std__align_val_t__28void__2c_20std__align_val_t_29($0 | 0, $2 | 0);
|
|
}
|
|
|
|
function void_20std____2____do_deallocate_handle_size_5babi_v160004_5d___28void__2c_20unsigned_20long_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
void_20std____2____libcpp_operator_delete_5babi_v160004_5d_void___28void__29($0 | 0);
|
|
}
|
|
|
|
function void_20std____2____libcpp_operator_delete_5babi_v160004_5d_void__2c_20std__align_val_t__28void__2c_20std__align_val_t_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
operator_20delete_28void__2c_20std__align_val_t_29($0 | 0, $1 | 0);
|
|
}
|
|
|
|
function void_20std____2____libcpp_operator_delete_5babi_v160004_5d_void___28void__29($0) {
|
|
$0 = $0 | 0;
|
|
operator_20delete_28void__29($0 | 0);
|
|
}
|
|
|
|
function fputc($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
return do_putc($0 | 0, $1 | 0) | 0 | 0;
|
|
}
|
|
|
|
function do_putc($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $2 = 0, $3 = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
$2 = HEAP32[($1 + 76 | 0) >> 2] | 0;
|
|
if (($2 | 0) < (0 | 0)) {
|
|
break label$2
|
|
}
|
|
if (!$2) {
|
|
break label$1
|
|
}
|
|
if (($2 & -1073741825 | 0 | 0) != (HEAP32[((__get_tp() | 0) + 24 | 0) >> 2] | 0 | 0)) {
|
|
break label$1
|
|
}
|
|
}
|
|
label$3 : {
|
|
$2 = $0 & 255 | 0;
|
|
if (($2 | 0) == (HEAP32[($1 + 80 | 0) >> 2] | 0 | 0)) {
|
|
break label$3
|
|
}
|
|
$3 = HEAP32[($1 + 20 | 0) >> 2] | 0;
|
|
if (($3 | 0) == (HEAP32[($1 + 16 | 0) >> 2] | 0 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($1 + 20 | 0) >> 2] = $3 + 1 | 0;
|
|
HEAP8[$3 >> 0] = $0;
|
|
return $2 | 0;
|
|
}
|
|
return __overflow($1 | 0, $2 | 0) | 0 | 0;
|
|
}
|
|
return locking_putc($0 | 0, $1 | 0) | 0 | 0;
|
|
}
|
|
|
|
function locking_putc($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $3 = 0, $2 = 0, $4 = 0;
|
|
label$1 : {
|
|
$2 = $1 + 76 | 0;
|
|
if (!(a_cas($2 | 0) | 0)) {
|
|
break label$1
|
|
}
|
|
__lockfile($1 | 0) | 0;
|
|
}
|
|
label$2 : {
|
|
label$3 : {
|
|
$3 = $0 & 255 | 0;
|
|
if (($3 | 0) == (HEAP32[($1 + 80 | 0) >> 2] | 0 | 0)) {
|
|
break label$3
|
|
}
|
|
$4 = HEAP32[($1 + 20 | 0) >> 2] | 0;
|
|
if (($4 | 0) == (HEAP32[($1 + 16 | 0) >> 2] | 0 | 0)) {
|
|
break label$3
|
|
}
|
|
HEAP32[($1 + 20 | 0) >> 2] = $4 + 1 | 0;
|
|
HEAP8[$4 >> 0] = $0;
|
|
break label$2;
|
|
}
|
|
$3 = __overflow($1 | 0, $3 | 0) | 0;
|
|
}
|
|
label$4 : {
|
|
if (!((a_swap($2 | 0) | 0) & 1073741824 | 0)) {
|
|
break label$4
|
|
}
|
|
__wake($2 | 0);
|
|
}
|
|
return $3 | 0;
|
|
}
|
|
|
|
function a_cas($0) {
|
|
$0 = $0 | 0;
|
|
var $1 = 0;
|
|
$1 = HEAP32[$0 >> 2] | 0;
|
|
HEAP32[$0 >> 2] = $1 ? $1 : 1073741823;
|
|
return $1 | 0;
|
|
}
|
|
|
|
function a_swap($0) {
|
|
$0 = $0 | 0;
|
|
var $1 = 0;
|
|
$1 = HEAP32[$0 >> 2] | 0;
|
|
HEAP32[$0 >> 2] = 0;
|
|
return $1 | 0;
|
|
}
|
|
|
|
function __wake($0) {
|
|
$0 = $0 | 0;
|
|
emscripten_futex_wake($0 | 0, 1 | 0) | 0;
|
|
}
|
|
|
|
function abort_message($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $3 = 0, $2 = 0;
|
|
$2 = __stack_pointer - 16 | 0;
|
|
__stack_pointer = $2;
|
|
$3 = HEAP32[(0 + 109264 | 0) >> 2] | 0;
|
|
fwrite(88317 | 0, 11 | 0, 1 | 0, $3 | 0) | 0;
|
|
HEAP32[($2 + 12 | 0) >> 2] = $1;
|
|
vfprintf($3 | 0, $0 | 0, $1 | 0) | 0;
|
|
fputc(10 | 0, $3 | 0) | 0;
|
|
abort();
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function void_20_28_std____2___28anonymous_20namespace_29____libcpp_atomic_load_5babi_v160004_5d_void_20_28__29_28_29__28void_20_28__20const__29_28_29_2c_20int_29_29_28_29($0) {
|
|
$0 = $0 | 0;
|
|
return HEAP32[$0 >> 2] | 0 | 0;
|
|
}
|
|
|
|
function std__get_new_handler_28_29() {
|
|
return void_20_28_std____2___28anonymous_20namespace_29____libcpp_atomic_load_5babi_v160004_5d_void_20_28__29_28_29__28void_20_28__20const__29_28_29_2c_20int_29_29_28_29(117988 | 0) | 0 | 0;
|
|
}
|
|
|
|
function __cxa_pure_virtual() {
|
|
abort_message(88287 | 0, 0 | 0);
|
|
wasm2js_trap();
|
|
}
|
|
|
|
function __cxxabiv1____shim_type_info_____shim_type_info_28_29($0) {
|
|
$0 = $0 | 0;
|
|
return std__type_info___type_info_28_29($0 | 0) | 0 | 0;
|
|
}
|
|
|
|
function __cxxabiv1____shim_type_info__noop1_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
}
|
|
|
|
function __cxxabiv1____shim_type_info__noop2_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
}
|
|
|
|
function __cxxabiv1____fundamental_type_info_____fundamental_type_info_28_29($0) {
|
|
$0 = $0 | 0;
|
|
operator_20delete_28void__29(__cxxabiv1____shim_type_info_____shim_type_info_28_29($0 | 0) | 0 | 0);
|
|
}
|
|
|
|
function __cxxabiv1____class_type_info_____class_type_info_28_29($0) {
|
|
$0 = $0 | 0;
|
|
operator_20delete_28void__29(__cxxabiv1____shim_type_info_____shim_type_info_28_29($0 | 0) | 0 | 0);
|
|
}
|
|
|
|
function __cxxabiv1____si_class_type_info_____si_class_type_info_28_29($0) {
|
|
$0 = $0 | 0;
|
|
operator_20delete_28void__29(__cxxabiv1____shim_type_info_____shim_type_info_28_29($0 | 0) | 0 | 0);
|
|
}
|
|
|
|
function __cxxabiv1____vmi_class_type_info_____vmi_class_type_info_28_29($0) {
|
|
$0 = $0 | 0;
|
|
operator_20delete_28void__29(__cxxabiv1____shim_type_info_____shim_type_info_28_29($0 | 0) | 0 | 0);
|
|
}
|
|
|
|
function __cxxabiv1____pointer_type_info_____pointer_type_info_28_29($0) {
|
|
$0 = $0 | 0;
|
|
operator_20delete_28void__29(__cxxabiv1____shim_type_info_____shim_type_info_28_29($0 | 0) | 0 | 0);
|
|
}
|
|
|
|
function __cxxabiv1____fundamental_type_info__can_catch_28__cxxabiv1____shim_type_info_20const__2c_20void___29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
return is_equal_28std__type_info_20const__2c_20std__type_info_20const__2c_20bool_29($0 | 0, $1 | 0, 0 | 0) | 0 | 0;
|
|
}
|
|
|
|
function is_equal_28std__type_info_20const__2c_20std__type_info_20const__2c_20bool_29($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
label$1 : {
|
|
if ($2) {
|
|
break label$1
|
|
}
|
|
return (HEAP32[($0 + 4 | 0) >> 2] | 0 | 0) == (HEAP32[($1 + 4 | 0) >> 2] | 0 | 0) | 0;
|
|
}
|
|
label$2 : {
|
|
if (($0 | 0) != ($1 | 0)) {
|
|
break label$2
|
|
}
|
|
return 1 | 0;
|
|
}
|
|
return !(strcmp(std__type_info__name_5babi_v160004_5d_28_29_20const($0 | 0) | 0 | 0, std__type_info__name_5babi_v160004_5d_28_29_20const($1 | 0) | 0 | 0) | 0) | 0;
|
|
}
|
|
|
|
function std__type_info__name_5babi_v160004_5d_28_29_20const($0) {
|
|
$0 = $0 | 0;
|
|
return HEAP32[($0 + 4 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function __cxxabiv1____class_type_info__can_catch_28__cxxabiv1____shim_type_info_20const__2c_20void___29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $3;
|
|
$4 = 1;
|
|
label$1 : {
|
|
if (is_equal_28std__type_info_20const__2c_20std__type_info_20const__2c_20bool_29($0 | 0, $1 | 0, 0 | 0) | 0) {
|
|
break label$1
|
|
}
|
|
$4 = 0;
|
|
if (!$1) {
|
|
break label$1
|
|
}
|
|
$4 = 0;
|
|
$1 = __dynamic_cast($1 | 0, 109304 | 0, 109352 | 0, 0 | 0) | 0;
|
|
if (!$1) {
|
|
break label$1
|
|
}
|
|
__memset($3 + 12 | 0 | 0, 0 | 0, 52 | 0) | 0;
|
|
HEAP32[($3 + 56 | 0) >> 2] = 1;
|
|
HEAP32[($3 + 20 | 0) >> 2] = -1;
|
|
HEAP32[($3 + 16 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $1;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$1 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($1, $3 + 8 | 0, HEAP32[$2 >> 2] | 0, 1);
|
|
label$2 : {
|
|
$4 = HEAP32[($3 + 32 | 0) >> 2] | 0;
|
|
if (($4 | 0) != (1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[$2 >> 2] = HEAP32[($3 + 24 | 0) >> 2] | 0;
|
|
}
|
|
$4 = ($4 | 0) == (1 | 0);
|
|
}
|
|
__stack_pointer = $3 + 64 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function __dynamic_cast($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $4 = 0, i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, $6 = 0, $5 = 0, $9 = 0, wasm2js_i32$0 = 0, wasm2js_i32$1 = 0, wasm2js_i32$2 = 0, wasm2js_i32$3 = 0, wasm2js_i32$4 = 0, wasm2js_i32$5 = 0, wasm2js_i32$6 = 0, wasm2js_i32$7 = 0, wasm2js_i32$8 = 0;
|
|
$4 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $4;
|
|
$5 = HEAP32[$0 >> 2] | 0;
|
|
$6 = HEAP32[($5 + -4 | 0) >> 2] | 0;
|
|
$5 = HEAP32[($5 + -8 | 0) >> 2] | 0;
|
|
i64toi32_i32$1 = $4 + 32 | 0;
|
|
i64toi32_i32$0 = 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = 0;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $4 + 40 | 0;
|
|
i64toi32_i32$0 = 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = 0;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $4 + 48 | 0;
|
|
i64toi32_i32$0 = 0;
|
|
HEAP32[i64toi32_i32$1 >> 2] = 0;
|
|
HEAP32[(i64toi32_i32$1 + 4 | 0) >> 2] = i64toi32_i32$0;
|
|
i64toi32_i32$1 = $4 + 55 | 0;
|
|
i64toi32_i32$0 = 0;
|
|
$9 = 0;
|
|
HEAP8[i64toi32_i32$1 >> 0] = $9;
|
|
HEAP8[(i64toi32_i32$1 + 1 | 0) >> 0] = $9 >>> 8 | 0;
|
|
HEAP8[(i64toi32_i32$1 + 2 | 0) >> 0] = $9 >>> 16 | 0;
|
|
HEAP8[(i64toi32_i32$1 + 3 | 0) >> 0] = $9 >>> 24 | 0;
|
|
HEAP8[(i64toi32_i32$1 + 4 | 0) >> 0] = i64toi32_i32$0;
|
|
HEAP8[(i64toi32_i32$1 + 5 | 0) >> 0] = i64toi32_i32$0 >>> 8 | 0;
|
|
HEAP8[(i64toi32_i32$1 + 6 | 0) >> 0] = i64toi32_i32$0 >>> 16 | 0;
|
|
HEAP8[(i64toi32_i32$1 + 7 | 0) >> 0] = i64toi32_i32$0 >>> 24 | 0;
|
|
i64toi32_i32$1 = $4;
|
|
i64toi32_i32$0 = 0;
|
|
HEAP32[($4 + 24 | 0) >> 2] = 0;
|
|
HEAP32[($4 + 28 | 0) >> 2] = i64toi32_i32$0;
|
|
HEAP32[($4 + 20 | 0) >> 2] = $3;
|
|
HEAP32[($4 + 16 | 0) >> 2] = $1;
|
|
HEAP32[($4 + 12 | 0) >> 2] = $0;
|
|
HEAP32[($4 + 8 | 0) >> 2] = $2;
|
|
$0 = $0 + $5 | 0;
|
|
$3 = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(is_equal_28std__type_info_20const__2c_20std__type_info_20const__2c_20bool_29($6 | 0, $2 | 0, 0 | 0) | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($4 + 56 | 0) >> 2] = 1;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($6, $4 + 8 | 0, $0, $0, 1, 0);
|
|
$3 = (HEAP32[($4 + 32 | 0) >> 2] | 0 | 0) == (1 | 0) ? $0 : 0;
|
|
break label$1;
|
|
}
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$6 >> 2] | 0) + 24 | 0) >> 2] | 0 | 0]($6, $4 + 8 | 0, $0, 1, 0);
|
|
label$3 : {
|
|
switch (HEAP32[($4 + 44 | 0) >> 2] | 0 | 0) {
|
|
case 0:
|
|
$3 = (wasm2js_i32$0 = (wasm2js_i32$3 = (wasm2js_i32$6 = HEAP32[($4 + 28 | 0) >> 2] | 0, wasm2js_i32$7 = 0, wasm2js_i32$8 = (HEAP32[($4 + 40 | 0) >> 2] | 0 | 0) == (1 | 0), wasm2js_i32$8 ? wasm2js_i32$6 : wasm2js_i32$7), wasm2js_i32$4 = 0, wasm2js_i32$5 = (HEAP32[($4 + 36 | 0) >> 2] | 0 | 0) == (1 | 0), wasm2js_i32$5 ? wasm2js_i32$3 : wasm2js_i32$4), wasm2js_i32$1 = 0, wasm2js_i32$2 = (HEAP32[($4 + 48 | 0) >> 2] | 0 | 0) == (1 | 0), wasm2js_i32$2 ? wasm2js_i32$0 : wasm2js_i32$1);
|
|
break label$1;
|
|
case 1:
|
|
break label$3;
|
|
default:
|
|
break label$1;
|
|
};
|
|
}
|
|
label$5 : {
|
|
if ((HEAP32[($4 + 32 | 0) >> 2] | 0 | 0) == (1 | 0)) {
|
|
break label$5
|
|
}
|
|
if (HEAP32[($4 + 48 | 0) >> 2] | 0) {
|
|
break label$1
|
|
}
|
|
if ((HEAP32[($4 + 36 | 0) >> 2] | 0 | 0) != (1 | 0)) {
|
|
break label$1
|
|
}
|
|
if ((HEAP32[($4 + 40 | 0) >> 2] | 0 | 0) != (1 | 0)) {
|
|
break label$1
|
|
}
|
|
}
|
|
$3 = HEAP32[($4 + 24 | 0) >> 2] | 0;
|
|
}
|
|
__stack_pointer = $4 + 64 | 0;
|
|
return $3 | 0;
|
|
}
|
|
|
|
function __cxxabiv1____class_type_info__process_found_base_class_28__cxxabiv1____dynamic_cast_info__2c_20void__2c_20int_29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $4 = 0;
|
|
label$1 : {
|
|
$4 = HEAP32[($1 + 16 | 0) >> 2] | 0;
|
|
if ($4) {
|
|
break label$1
|
|
}
|
|
HEAP32[($1 + 36 | 0) >> 2] = 1;
|
|
HEAP32[($1 + 24 | 0) >> 2] = $3;
|
|
HEAP32[($1 + 16 | 0) >> 2] = $2;
|
|
return;
|
|
}
|
|
label$2 : {
|
|
label$3 : {
|
|
if (($4 | 0) != ($2 | 0)) {
|
|
break label$3
|
|
}
|
|
if ((HEAP32[($1 + 24 | 0) >> 2] | 0 | 0) != (2 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($1 + 24 | 0) >> 2] = $3;
|
|
return;
|
|
}
|
|
HEAP8[($1 + 54 | 0) >> 0] = 1;
|
|
HEAP32[($1 + 24 | 0) >> 2] = 2;
|
|
HEAP32[($1 + 36 | 0) >> 2] = (HEAP32[($1 + 36 | 0) >> 2] | 0) + 1 | 0;
|
|
}
|
|
}
|
|
|
|
function __cxxabiv1____class_type_info__has_unambiguous_public_base_28__cxxabiv1____dynamic_cast_info__2c_20void__2c_20int_29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
label$1 : {
|
|
if (!(is_equal_28std__type_info_20const__2c_20std__type_info_20const__2c_20bool_29($0 | 0, HEAP32[($1 + 8 | 0) >> 2] | 0 | 0, 0 | 0) | 0)) {
|
|
break label$1
|
|
}
|
|
__cxxabiv1____class_type_info__process_found_base_class_28__cxxabiv1____dynamic_cast_info__2c_20void__2c_20int_29_20const($1 | 0, $1 | 0, $2 | 0, $3 | 0);
|
|
}
|
|
}
|
|
|
|
function __cxxabiv1____si_class_type_info__has_unambiguous_public_base_28__cxxabiv1____dynamic_cast_info__2c_20void__2c_20int_29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
label$1 : {
|
|
if (!(is_equal_28std__type_info_20const__2c_20std__type_info_20const__2c_20bool_29($0 | 0, HEAP32[($1 + 8 | 0) >> 2] | 0 | 0, 0 | 0) | 0)) {
|
|
break label$1
|
|
}
|
|
__cxxabiv1____class_type_info__process_found_base_class_28__cxxabiv1____dynamic_cast_info__2c_20void__2c_20int_29_20const($1 | 0, $1 | 0, $2 | 0, $3 | 0);
|
|
return;
|
|
}
|
|
$0 = HEAP32[($0 + 8 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$0 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($0, $1, $2, $3);
|
|
}
|
|
|
|
function __cxxabiv1____base_class_type_info__has_unambiguous_public_base_28__cxxabiv1____dynamic_cast_info__2c_20void__2c_20int_29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $5 = 0, $4 = 0;
|
|
$4 = HEAP32[($0 + 4 | 0) >> 2] | 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
if ($2) {
|
|
break label$2
|
|
}
|
|
$5 = 0;
|
|
break label$1;
|
|
}
|
|
$5 = $4 >> 8 | 0;
|
|
if (!($4 & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$5 = update_offset_to_base_28char_20const__2c_20long_29(HEAP32[$2 >> 2] | 0 | 0, $5 | 0) | 0;
|
|
}
|
|
$0 = HEAP32[$0 >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$0 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($0, $1, $2 + $5 | 0, $4 & 2 | 0 ? $3 : 2);
|
|
}
|
|
|
|
function update_offset_to_base_28char_20const__2c_20long_29($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
return HEAP32[($0 + $1 | 0) >> 2] | 0 | 0;
|
|
}
|
|
|
|
function __cxxabiv1____vmi_class_type_info__has_unambiguous_public_base_28__cxxabiv1____dynamic_cast_info__2c_20void__2c_20int_29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var $4 = 0, $5 = 0;
|
|
label$1 : {
|
|
if (!(is_equal_28std__type_info_20const__2c_20std__type_info_20const__2c_20bool_29($0 | 0, HEAP32[($1 + 8 | 0) >> 2] | 0 | 0, 0 | 0) | 0)) {
|
|
break label$1
|
|
}
|
|
__cxxabiv1____class_type_info__process_found_base_class_28__cxxabiv1____dynamic_cast_info__2c_20void__2c_20int_29_20const($0 | 0, $1 | 0, $2 | 0, $3 | 0);
|
|
return;
|
|
}
|
|
$4 = HEAP32[($0 + 12 | 0) >> 2] | 0;
|
|
$5 = $0 + 16 | 0;
|
|
__cxxabiv1____base_class_type_info__has_unambiguous_public_base_28__cxxabiv1____dynamic_cast_info__2c_20void__2c_20int_29_20const($5 | 0, $1 | 0, $2 | 0, $3 | 0);
|
|
label$2 : {
|
|
$0 = $0 + 24 | 0;
|
|
$4 = $5 + ($4 << 3 | 0) | 0;
|
|
if ($0 >>> 0 >= $4 >>> 0) {
|
|
break label$2
|
|
}
|
|
label$3 : while (1) {
|
|
__cxxabiv1____base_class_type_info__has_unambiguous_public_base_28__cxxabiv1____dynamic_cast_info__2c_20void__2c_20int_29_20const($0 | 0, $1 | 0, $2 | 0, $3 | 0);
|
|
if (HEAPU8[($1 + 54 | 0) >> 0] | 0) {
|
|
break label$2
|
|
}
|
|
$0 = $0 + 8 | 0;
|
|
if ($0 >>> 0 < $4 >>> 0) {
|
|
continue label$3
|
|
}
|
|
break label$3;
|
|
};
|
|
}
|
|
}
|
|
|
|
function __cxxabiv1____pbase_type_info__can_catch_28__cxxabiv1____shim_type_info_20const__2c_20void___29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $3 = 0, $4 = 0;
|
|
$3 = 1;
|
|
label$1 : {
|
|
label$2 : {
|
|
if ((HEAPU8[($0 + 8 | 0) >> 0] | 0) & 24 | 0) {
|
|
break label$2
|
|
}
|
|
$3 = 0;
|
|
if (!$1) {
|
|
break label$1
|
|
}
|
|
$4 = __dynamic_cast($1 | 0, 109304 | 0, 109400 | 0, 0 | 0) | 0;
|
|
if (!$4) {
|
|
break label$1
|
|
}
|
|
$3 = ((HEAPU8[($4 + 8 | 0) >> 0] | 0) & 24 | 0 | 0) != (0 | 0);
|
|
}
|
|
$3 = is_equal_28std__type_info_20const__2c_20std__type_info_20const__2c_20bool_29($0 | 0, $1 | 0, $3 | 0) | 0;
|
|
}
|
|
return $3 | 0;
|
|
}
|
|
|
|
function __cxxabiv1____pointer_type_info__can_catch_28__cxxabiv1____shim_type_info_20const__2c_20void___29_20const($0, $1, $2) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
var $4 = 0, $3 = 0, $5 = 0, $6 = 0;
|
|
$3 = __stack_pointer - 64 | 0;
|
|
__stack_pointer = $3;
|
|
label$1 : {
|
|
label$2 : {
|
|
if (!(is_equal_28std__type_info_20const__2c_20std__type_info_20const__2c_20bool_29($1 | 0, 109668 | 0, 0 | 0) | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[$2 >> 2] = 0;
|
|
$4 = 1;
|
|
break label$1;
|
|
}
|
|
label$3 : {
|
|
if (!(__cxxabiv1____pbase_type_info__can_catch_28__cxxabiv1____shim_type_info_20const__2c_20void___29_20const($0 | 0, $1 | 0, $1 | 0) | 0)) {
|
|
break label$3
|
|
}
|
|
$4 = 1;
|
|
$1 = HEAP32[$2 >> 2] | 0;
|
|
if (!$1) {
|
|
break label$1
|
|
}
|
|
HEAP32[$2 >> 2] = HEAP32[$1 >> 2] | 0;
|
|
break label$1;
|
|
}
|
|
label$4 : {
|
|
if (!$1) {
|
|
break label$4
|
|
}
|
|
$4 = 0;
|
|
$1 = __dynamic_cast($1 | 0, 109304 | 0, 109448 | 0, 0 | 0) | 0;
|
|
if (!$1) {
|
|
break label$1
|
|
}
|
|
label$5 : {
|
|
$5 = HEAP32[$2 >> 2] | 0;
|
|
if (!$5) {
|
|
break label$5
|
|
}
|
|
HEAP32[$2 >> 2] = HEAP32[$5 >> 2] | 0;
|
|
}
|
|
$5 = HEAP32[($1 + 8 | 0) >> 2] | 0;
|
|
$6 = HEAP32[($0 + 8 | 0) >> 2] | 0;
|
|
if (($5 & ($6 ^ -1 | 0) | 0) & 7 | 0) {
|
|
break label$1
|
|
}
|
|
if ((($5 ^ -1 | 0) & $6 | 0) & 96 | 0) {
|
|
break label$1
|
|
}
|
|
$4 = 1;
|
|
if (is_equal_28std__type_info_20const__2c_20std__type_info_20const__2c_20bool_29(HEAP32[($0 + 12 | 0) >> 2] | 0 | 0, HEAP32[($1 + 12 | 0) >> 2] | 0 | 0, 0 | 0) | 0) {
|
|
break label$1
|
|
}
|
|
label$6 : {
|
|
if (!(is_equal_28std__type_info_20const__2c_20std__type_info_20const__2c_20bool_29(HEAP32[($0 + 12 | 0) >> 2] | 0 | 0, 109656 | 0, 0 | 0) | 0)) {
|
|
break label$6
|
|
}
|
|
$1 = HEAP32[($1 + 12 | 0) >> 2] | 0;
|
|
if (!$1) {
|
|
break label$1
|
|
}
|
|
$4 = !(__dynamic_cast($1 | 0, 109304 | 0, 109500 | 0, 0 | 0) | 0);
|
|
break label$1;
|
|
}
|
|
$5 = HEAP32[($0 + 12 | 0) >> 2] | 0;
|
|
if (!$5) {
|
|
break label$4
|
|
}
|
|
$4 = 0;
|
|
label$7 : {
|
|
$6 = __dynamic_cast($5 | 0, 109304 | 0, 109448 | 0, 0 | 0) | 0;
|
|
if (!$6) {
|
|
break label$7
|
|
}
|
|
if (!((HEAPU8[($0 + 8 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$4 = __cxxabiv1____pointer_type_info__can_catch_nested_28__cxxabiv1____shim_type_info_20const__29_20const($6 | 0, HEAP32[($1 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
break label$1;
|
|
}
|
|
$4 = 0;
|
|
label$8 : {
|
|
$6 = __dynamic_cast($5 | 0, 109304 | 0, 109560 | 0, 0 | 0) | 0;
|
|
if (!$6) {
|
|
break label$8
|
|
}
|
|
if (!((HEAPU8[($0 + 8 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$4 = __cxxabiv1____pointer_to_member_type_info__can_catch_nested_28__cxxabiv1____shim_type_info_20const__29_20const($6 | 0, HEAP32[($1 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
break label$1;
|
|
}
|
|
$4 = 0;
|
|
$0 = __dynamic_cast($5 | 0, 109304 | 0, 109352 | 0, 0 | 0) | 0;
|
|
if (!$0) {
|
|
break label$1
|
|
}
|
|
$1 = HEAP32[($1 + 12 | 0) >> 2] | 0;
|
|
if (!$1) {
|
|
break label$1
|
|
}
|
|
$4 = 0;
|
|
$1 = __dynamic_cast($1 | 0, 109304 | 0, 109352 | 0, 0 | 0) | 0;
|
|
if (!$1) {
|
|
break label$1
|
|
}
|
|
__memset($3 + 12 | 0 | 0, 0 | 0, 52 | 0) | 0;
|
|
HEAP32[($3 + 56 | 0) >> 2] = 1;
|
|
HEAP32[($3 + 20 | 0) >> 2] = -1;
|
|
HEAP32[($3 + 16 | 0) >> 2] = $0;
|
|
HEAP32[($3 + 8 | 0) >> 2] = $1;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$1 >> 2] | 0) + 28 | 0) >> 2] | 0 | 0]($1, $3 + 8 | 0, HEAP32[$2 >> 2] | 0, 1);
|
|
label$9 : {
|
|
$1 = HEAP32[($3 + 32 | 0) >> 2] | 0;
|
|
if (($1 | 0) != (1 | 0)) {
|
|
break label$9
|
|
}
|
|
if (!(HEAP32[$2 >> 2] | 0)) {
|
|
break label$9
|
|
}
|
|
HEAP32[$2 >> 2] = HEAP32[($3 + 24 | 0) >> 2] | 0;
|
|
}
|
|
$4 = ($1 | 0) == (1 | 0);
|
|
break label$1;
|
|
}
|
|
$4 = 0;
|
|
}
|
|
__stack_pointer = $3 + 64 | 0;
|
|
return $4 | 0;
|
|
}
|
|
|
|
function __cxxabiv1____pointer_type_info__can_catch_nested_28__cxxabiv1____shim_type_info_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $2 = 0, $3 = 0;
|
|
label$1 : {
|
|
label$2 : while (1) {
|
|
label$3 : {
|
|
if ($1) {
|
|
break label$3
|
|
}
|
|
return 0 | 0;
|
|
}
|
|
$2 = 0;
|
|
$1 = __dynamic_cast($1 | 0, 109304 | 0, 109448 | 0, 0 | 0) | 0;
|
|
if (!$1) {
|
|
break label$1
|
|
}
|
|
if ((HEAP32[($1 + 8 | 0) >> 2] | 0) & ((HEAP32[($0 + 8 | 0) >> 2] | 0) ^ -1 | 0) | 0) {
|
|
break label$1
|
|
}
|
|
label$4 : {
|
|
if (!(is_equal_28std__type_info_20const__2c_20std__type_info_20const__2c_20bool_29(HEAP32[($0 + 12 | 0) >> 2] | 0 | 0, HEAP32[($1 + 12 | 0) >> 2] | 0 | 0, 0 | 0) | 0)) {
|
|
break label$4
|
|
}
|
|
return 1 | 0;
|
|
}
|
|
if (!((HEAPU8[($0 + 8 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$3 = HEAP32[($0 + 12 | 0) >> 2] | 0;
|
|
if (!$3) {
|
|
break label$1
|
|
}
|
|
label$5 : {
|
|
$0 = __dynamic_cast($3 | 0, 109304 | 0, 109448 | 0, 0 | 0) | 0;
|
|
if (!$0) {
|
|
break label$5
|
|
}
|
|
$1 = HEAP32[($1 + 12 | 0) >> 2] | 0;
|
|
continue label$2;
|
|
}
|
|
break label$2;
|
|
};
|
|
$2 = 0;
|
|
$0 = __dynamic_cast($3 | 0, 109304 | 0, 109560 | 0, 0 | 0) | 0;
|
|
if (!$0) {
|
|
break label$1
|
|
}
|
|
$2 = __cxxabiv1____pointer_to_member_type_info__can_catch_nested_28__cxxabiv1____shim_type_info_20const__29_20const($0 | 0, HEAP32[($1 + 12 | 0) >> 2] | 0 | 0) | 0;
|
|
}
|
|
return $2 | 0;
|
|
}
|
|
|
|
function __cxxabiv1____pointer_to_member_type_info__can_catch_nested_28__cxxabiv1____shim_type_info_20const__29_20const($0, $1) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
var $2 = 0;
|
|
$2 = 0;
|
|
label$1 : {
|
|
if (!$1) {
|
|
break label$1
|
|
}
|
|
$1 = __dynamic_cast($1 | 0, 109304 | 0, 109560 | 0, 0 | 0) | 0;
|
|
if (!$1) {
|
|
break label$1
|
|
}
|
|
if ((HEAP32[($1 + 8 | 0) >> 2] | 0) & ((HEAP32[($0 + 8 | 0) >> 2] | 0) ^ -1 | 0) | 0) {
|
|
break label$1
|
|
}
|
|
$2 = 0;
|
|
if (!(is_equal_28std__type_info_20const__2c_20std__type_info_20const__2c_20bool_29(HEAP32[($0 + 12 | 0) >> 2] | 0 | 0, HEAP32[($1 + 12 | 0) >> 2] | 0 | 0, 0 | 0) | 0)) {
|
|
break label$1
|
|
}
|
|
$2 = is_equal_28std__type_info_20const__2c_20std__type_info_20const__2c_20bool_29(HEAP32[($0 + 16 | 0) >> 2] | 0 | 0, HEAP32[($1 + 16 | 0) >> 2] | 0 | 0, 0 | 0) | 0;
|
|
}
|
|
return $2 | 0;
|
|
}
|
|
|
|
function __cxxabiv1____class_type_info__process_static_type_above_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20void_20const__2c_20int_29_20const($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
HEAP8[($1 + 53 | 0) >> 0] = 1;
|
|
label$1 : {
|
|
if ((HEAP32[($1 + 4 | 0) >> 2] | 0 | 0) != ($3 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP8[($1 + 52 | 0) >> 0] = 1;
|
|
label$2 : {
|
|
label$3 : {
|
|
$3 = HEAP32[($1 + 16 | 0) >> 2] | 0;
|
|
if ($3) {
|
|
break label$3
|
|
}
|
|
HEAP32[($1 + 36 | 0) >> 2] = 1;
|
|
HEAP32[($1 + 24 | 0) >> 2] = $4;
|
|
HEAP32[($1 + 16 | 0) >> 2] = $2;
|
|
if (($4 | 0) != (1 | 0)) {
|
|
break label$1
|
|
}
|
|
if ((HEAP32[($1 + 48 | 0) >> 2] | 0 | 0) == (1 | 0)) {
|
|
break label$2
|
|
}
|
|
break label$1;
|
|
}
|
|
label$4 : {
|
|
if (($3 | 0) != ($2 | 0)) {
|
|
break label$4
|
|
}
|
|
label$5 : {
|
|
$3 = HEAP32[($1 + 24 | 0) >> 2] | 0;
|
|
if (($3 | 0) != (2 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAP32[($1 + 24 | 0) >> 2] = $4;
|
|
$3 = $4;
|
|
}
|
|
if ((HEAP32[($1 + 48 | 0) >> 2] | 0 | 0) != (1 | 0)) {
|
|
break label$1
|
|
}
|
|
if (($3 | 0) == (1 | 0)) {
|
|
break label$2
|
|
}
|
|
break label$1;
|
|
}
|
|
HEAP32[($1 + 36 | 0) >> 2] = (HEAP32[($1 + 36 | 0) >> 2] | 0) + 1 | 0;
|
|
}
|
|
HEAP8[($1 + 54 | 0) >> 0] = 1;
|
|
}
|
|
}
|
|
|
|
function __cxxabiv1____class_type_info__process_static_type_below_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20int_29_20const($0, $1, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
label$1 : {
|
|
if ((HEAP32[($1 + 4 | 0) >> 2] | 0 | 0) != ($2 | 0)) {
|
|
break label$1
|
|
}
|
|
if ((HEAP32[($1 + 28 | 0) >> 2] | 0 | 0) == (1 | 0)) {
|
|
break label$1
|
|
}
|
|
HEAP32[($1 + 28 | 0) >> 2] = $3;
|
|
}
|
|
}
|
|
|
|
function __cxxabiv1____vmi_class_type_info__search_below_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20int_2c_20bool_29_20const($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $5 = 0, $8 = 0, $6 = 0, $7 = 0;
|
|
label$1 : {
|
|
if (!(is_equal_28std__type_info_20const__2c_20std__type_info_20const__2c_20bool_29($0 | 0, HEAP32[($1 + 8 | 0) >> 2] | 0 | 0, $4 | 0) | 0)) {
|
|
break label$1
|
|
}
|
|
__cxxabiv1____class_type_info__process_static_type_below_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20int_29_20const($1 | 0, $1 | 0, $2 | 0, $3 | 0);
|
|
return;
|
|
}
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!(is_equal_28std__type_info_20const__2c_20std__type_info_20const__2c_20bool_29($0 | 0, HEAP32[$1 >> 2] | 0 | 0, $4 | 0) | 0)) {
|
|
break label$3
|
|
}
|
|
label$4 : {
|
|
label$5 : {
|
|
if ((HEAP32[($1 + 16 | 0) >> 2] | 0 | 0) == ($2 | 0)) {
|
|
break label$5
|
|
}
|
|
if ((HEAP32[($1 + 20 | 0) >> 2] | 0 | 0) != ($2 | 0)) {
|
|
break label$4
|
|
}
|
|
}
|
|
if (($3 | 0) != (1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($1 + 32 | 0) >> 2] = 1;
|
|
return;
|
|
}
|
|
HEAP32[($1 + 32 | 0) >> 2] = $3;
|
|
label$6 : {
|
|
if ((HEAP32[($1 + 44 | 0) >> 2] | 0 | 0) == (4 | 0)) {
|
|
break label$6
|
|
}
|
|
$5 = $0 + 16 | 0;
|
|
$3 = $5 + ((HEAP32[($0 + 12 | 0) >> 2] | 0) << 3 | 0) | 0;
|
|
$6 = 0;
|
|
$7 = 0;
|
|
label$7 : {
|
|
label$8 : {
|
|
label$9 : {
|
|
label$10 : while (1) {
|
|
if ($5 >>> 0 >= $3 >>> 0) {
|
|
break label$9
|
|
}
|
|
HEAP16[($1 + 52 | 0) >> 1] = 0;
|
|
__cxxabiv1____base_class_type_info__search_above_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20void_20const__2c_20int_2c_20bool_29_20const($5 | 0, $1 | 0, $2 | 0, $2 | 0, 1 | 0, $4 | 0);
|
|
if (HEAPU8[($1 + 54 | 0) >> 0] | 0) {
|
|
break label$9
|
|
}
|
|
label$11 : {
|
|
if (!(HEAPU8[($1 + 53 | 0) >> 0] | 0)) {
|
|
break label$11
|
|
}
|
|
label$12 : {
|
|
if (!(HEAPU8[($1 + 52 | 0) >> 0] | 0)) {
|
|
break label$12
|
|
}
|
|
$8 = 1;
|
|
if ((HEAP32[($1 + 24 | 0) >> 2] | 0 | 0) == (1 | 0)) {
|
|
break label$8
|
|
}
|
|
$6 = 1;
|
|
$7 = 1;
|
|
$8 = 1;
|
|
if ((HEAPU8[($0 + 8 | 0) >> 0] | 0) & 2 | 0) {
|
|
break label$11
|
|
}
|
|
break label$8;
|
|
}
|
|
$6 = 1;
|
|
$8 = $7;
|
|
if (!((HEAPU8[($0 + 8 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$8
|
|
}
|
|
}
|
|
$5 = $5 + 8 | 0;
|
|
continue label$10;
|
|
};
|
|
}
|
|
$5 = 4;
|
|
$8 = $7;
|
|
if (!($6 & 1 | 0)) {
|
|
break label$7
|
|
}
|
|
}
|
|
$5 = 3;
|
|
}
|
|
HEAP32[($1 + 44 | 0) >> 2] = $5;
|
|
if ($8 & 1 | 0) {
|
|
break label$2
|
|
}
|
|
}
|
|
HEAP32[($1 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($1 + 40 | 0) >> 2] = (HEAP32[($1 + 40 | 0) >> 2] | 0) + 1 | 0;
|
|
if ((HEAP32[($1 + 36 | 0) >> 2] | 0 | 0) != (1 | 0)) {
|
|
break label$2
|
|
}
|
|
if ((HEAP32[($1 + 24 | 0) >> 2] | 0 | 0) != (2 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP8[($1 + 54 | 0) >> 0] = 1;
|
|
return;
|
|
}
|
|
$8 = HEAP32[($0 + 12 | 0) >> 2] | 0;
|
|
$6 = $0 + 16 | 0;
|
|
__cxxabiv1____base_class_type_info__search_below_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20int_2c_20bool_29_20const($6 | 0, $1 | 0, $2 | 0, $3 | 0, $4 | 0);
|
|
$5 = $0 + 24 | 0;
|
|
$8 = $6 + ($8 << 3 | 0) | 0;
|
|
if ($5 >>> 0 >= $8 >>> 0) {
|
|
break label$2
|
|
}
|
|
label$13 : {
|
|
label$14 : {
|
|
$0 = HEAP32[($0 + 8 | 0) >> 2] | 0;
|
|
if ($0 & 2 | 0) {
|
|
break label$14
|
|
}
|
|
if ((HEAP32[($1 + 36 | 0) >> 2] | 0 | 0) != (1 | 0)) {
|
|
break label$13
|
|
}
|
|
}
|
|
label$15 : while (1) {
|
|
if (HEAPU8[($1 + 54 | 0) >> 0] | 0) {
|
|
break label$2
|
|
}
|
|
__cxxabiv1____base_class_type_info__search_below_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20int_2c_20bool_29_20const($5 | 0, $1 | 0, $2 | 0, $3 | 0, $4 | 0);
|
|
$5 = $5 + 8 | 0;
|
|
if ($5 >>> 0 < $8 >>> 0) {
|
|
continue label$15
|
|
}
|
|
break label$2;
|
|
};
|
|
}
|
|
label$16 : {
|
|
if ($0 & 1 | 0) {
|
|
break label$16
|
|
}
|
|
label$17 : while (1) {
|
|
if (HEAPU8[($1 + 54 | 0) >> 0] | 0) {
|
|
break label$2
|
|
}
|
|
if ((HEAP32[($1 + 36 | 0) >> 2] | 0 | 0) == (1 | 0)) {
|
|
break label$2
|
|
}
|
|
__cxxabiv1____base_class_type_info__search_below_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20int_2c_20bool_29_20const($5 | 0, $1 | 0, $2 | 0, $3 | 0, $4 | 0);
|
|
$5 = $5 + 8 | 0;
|
|
if ($5 >>> 0 < $8 >>> 0) {
|
|
continue label$17
|
|
}
|
|
break label$2;
|
|
};
|
|
}
|
|
label$18 : while (1) {
|
|
if (HEAPU8[($1 + 54 | 0) >> 0] | 0) {
|
|
break label$2
|
|
}
|
|
label$19 : {
|
|
if ((HEAP32[($1 + 36 | 0) >> 2] | 0 | 0) != (1 | 0)) {
|
|
break label$19
|
|
}
|
|
if ((HEAP32[($1 + 24 | 0) >> 2] | 0 | 0) == (1 | 0)) {
|
|
break label$2
|
|
}
|
|
}
|
|
__cxxabiv1____base_class_type_info__search_below_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20int_2c_20bool_29_20const($5 | 0, $1 | 0, $2 | 0, $3 | 0, $4 | 0);
|
|
$5 = $5 + 8 | 0;
|
|
if ($5 >>> 0 < $8 >>> 0) {
|
|
continue label$18
|
|
}
|
|
break label$18;
|
|
};
|
|
}
|
|
}
|
|
|
|
function __cxxabiv1____base_class_type_info__search_above_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20void_20const__2c_20int_2c_20bool_29_20const($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $6 = 0, $7 = 0;
|
|
$6 = HEAP32[($0 + 4 | 0) >> 2] | 0;
|
|
$7 = $6 >> 8 | 0;
|
|
label$1 : {
|
|
if (!($6 & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$7 = update_offset_to_base_28char_20const__2c_20long_29(HEAP32[$3 >> 2] | 0 | 0, $7 | 0) | 0;
|
|
}
|
|
$0 = HEAP32[$0 >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$0 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($0, $1, $2, $3 + $7 | 0, $6 & 2 | 0 ? $4 : 2, $5);
|
|
}
|
|
|
|
function __cxxabiv1____base_class_type_info__search_below_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20int_2c_20bool_29_20const($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var $5 = 0, $6 = 0;
|
|
$5 = HEAP32[($0 + 4 | 0) >> 2] | 0;
|
|
$6 = $5 >> 8 | 0;
|
|
label$1 : {
|
|
if (!($5 & 1 | 0)) {
|
|
break label$1
|
|
}
|
|
$6 = update_offset_to_base_28char_20const__2c_20long_29(HEAP32[$2 >> 2] | 0 | 0, $6 | 0) | 0;
|
|
}
|
|
$0 = HEAP32[$0 >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$0 >> 2] | 0) + 24 | 0) >> 2] | 0 | 0]($0, $1, $2 + $6 | 0, $5 & 2 | 0 ? $3 : 2, $4);
|
|
}
|
|
|
|
function __cxxabiv1____si_class_type_info__search_below_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20int_2c_20bool_29_20const($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
label$1 : {
|
|
if (!(is_equal_28std__type_info_20const__2c_20std__type_info_20const__2c_20bool_29($0 | 0, HEAP32[($1 + 8 | 0) >> 2] | 0 | 0, $4 | 0) | 0)) {
|
|
break label$1
|
|
}
|
|
__cxxabiv1____class_type_info__process_static_type_below_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20int_29_20const($1 | 0, $1 | 0, $2 | 0, $3 | 0);
|
|
return;
|
|
}
|
|
label$2 : {
|
|
label$3 : {
|
|
if (!(is_equal_28std__type_info_20const__2c_20std__type_info_20const__2c_20bool_29($0 | 0, HEAP32[$1 >> 2] | 0 | 0, $4 | 0) | 0)) {
|
|
break label$3
|
|
}
|
|
label$4 : {
|
|
label$5 : {
|
|
if ((HEAP32[($1 + 16 | 0) >> 2] | 0 | 0) == ($2 | 0)) {
|
|
break label$5
|
|
}
|
|
if ((HEAP32[($1 + 20 | 0) >> 2] | 0 | 0) != ($2 | 0)) {
|
|
break label$4
|
|
}
|
|
}
|
|
if (($3 | 0) != (1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($1 + 32 | 0) >> 2] = 1;
|
|
return;
|
|
}
|
|
HEAP32[($1 + 32 | 0) >> 2] = $3;
|
|
label$6 : {
|
|
if ((HEAP32[($1 + 44 | 0) >> 2] | 0 | 0) == (4 | 0)) {
|
|
break label$6
|
|
}
|
|
HEAP16[($1 + 52 | 0) >> 1] = 0;
|
|
$0 = HEAP32[($0 + 8 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$0 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($0, $1, $2, $2, 1, $4);
|
|
label$7 : {
|
|
if (!(HEAPU8[($1 + 53 | 0) >> 0] | 0)) {
|
|
break label$7
|
|
}
|
|
HEAP32[($1 + 44 | 0) >> 2] = 3;
|
|
if (!(HEAPU8[($1 + 52 | 0) >> 0] | 0)) {
|
|
break label$6
|
|
}
|
|
break label$2;
|
|
}
|
|
HEAP32[($1 + 44 | 0) >> 2] = 4;
|
|
}
|
|
HEAP32[($1 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($1 + 40 | 0) >> 2] = (HEAP32[($1 + 40 | 0) >> 2] | 0) + 1 | 0;
|
|
if ((HEAP32[($1 + 36 | 0) >> 2] | 0 | 0) != (1 | 0)) {
|
|
break label$2
|
|
}
|
|
if ((HEAP32[($1 + 24 | 0) >> 2] | 0 | 0) != (2 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP8[($1 + 54 | 0) >> 0] = 1;
|
|
return;
|
|
}
|
|
$0 = HEAP32[($0 + 8 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$0 >> 2] | 0) + 24 | 0) >> 2] | 0 | 0]($0, $1, $2, $3, $4);
|
|
}
|
|
}
|
|
|
|
function __cxxabiv1____class_type_info__search_below_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20int_2c_20bool_29_20const($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
label$1 : {
|
|
if (!(is_equal_28std__type_info_20const__2c_20std__type_info_20const__2c_20bool_29($0 | 0, HEAP32[($1 + 8 | 0) >> 2] | 0 | 0, $4 | 0) | 0)) {
|
|
break label$1
|
|
}
|
|
__cxxabiv1____class_type_info__process_static_type_below_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20int_29_20const($1 | 0, $1 | 0, $2 | 0, $3 | 0);
|
|
return;
|
|
}
|
|
label$2 : {
|
|
if (!(is_equal_28std__type_info_20const__2c_20std__type_info_20const__2c_20bool_29($0 | 0, HEAP32[$1 >> 2] | 0 | 0, $4 | 0) | 0)) {
|
|
break label$2
|
|
}
|
|
label$3 : {
|
|
label$4 : {
|
|
if ((HEAP32[($1 + 16 | 0) >> 2] | 0 | 0) == ($2 | 0)) {
|
|
break label$4
|
|
}
|
|
if ((HEAP32[($1 + 20 | 0) >> 2] | 0 | 0) != ($2 | 0)) {
|
|
break label$3
|
|
}
|
|
}
|
|
if (($3 | 0) != (1 | 0)) {
|
|
break label$2
|
|
}
|
|
HEAP32[($1 + 32 | 0) >> 2] = 1;
|
|
return;
|
|
}
|
|
HEAP32[($1 + 20 | 0) >> 2] = $2;
|
|
HEAP32[($1 + 32 | 0) >> 2] = $3;
|
|
HEAP32[($1 + 40 | 0) >> 2] = (HEAP32[($1 + 40 | 0) >> 2] | 0) + 1 | 0;
|
|
label$5 : {
|
|
if ((HEAP32[($1 + 36 | 0) >> 2] | 0 | 0) != (1 | 0)) {
|
|
break label$5
|
|
}
|
|
if ((HEAP32[($1 + 24 | 0) >> 2] | 0 | 0) != (2 | 0)) {
|
|
break label$5
|
|
}
|
|
HEAP8[($1 + 54 | 0) >> 0] = 1;
|
|
}
|
|
HEAP32[($1 + 44 | 0) >> 2] = 4;
|
|
}
|
|
}
|
|
|
|
function __cxxabiv1____vmi_class_type_info__search_above_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20void_20const__2c_20int_2c_20bool_29_20const($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
var $6 = 0, $8 = 0, $7 = 0, $10 = 0, $12 = 0, $11 = 0, $9 = 0;
|
|
label$1 : {
|
|
if (!(is_equal_28std__type_info_20const__2c_20std__type_info_20const__2c_20bool_29($0 | 0, HEAP32[($1 + 8 | 0) >> 2] | 0 | 0, $5 | 0) | 0)) {
|
|
break label$1
|
|
}
|
|
__cxxabiv1____class_type_info__process_static_type_above_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20void_20const__2c_20int_29_20const($1 | 0, $1 | 0, $2 | 0, $3 | 0, $4 | 0);
|
|
return;
|
|
}
|
|
$6 = HEAPU8[($1 + 53 | 0) >> 0] | 0;
|
|
$7 = HEAP32[($0 + 12 | 0) >> 2] | 0;
|
|
HEAP8[($1 + 53 | 0) >> 0] = 0;
|
|
$8 = HEAPU8[($1 + 52 | 0) >> 0] | 0;
|
|
HEAP8[($1 + 52 | 0) >> 0] = 0;
|
|
$9 = $0 + 16 | 0;
|
|
__cxxabiv1____base_class_type_info__search_above_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20void_20const__2c_20int_2c_20bool_29_20const($9 | 0, $1 | 0, $2 | 0, $3 | 0, $4 | 0, $5 | 0);
|
|
$10 = HEAPU8[($1 + 53 | 0) >> 0] | 0;
|
|
$11 = $6 | $10 | 0;
|
|
$12 = HEAPU8[($1 + 52 | 0) >> 0] | 0;
|
|
$8 = $8 | $12 | 0;
|
|
label$2 : {
|
|
$6 = $0 + 24 | 0;
|
|
$7 = $9 + ($7 << 3 | 0) | 0;
|
|
if ($6 >>> 0 >= $7 >>> 0) {
|
|
break label$2
|
|
}
|
|
label$3 : while (1) {
|
|
if (HEAPU8[($1 + 54 | 0) >> 0] | 0) {
|
|
break label$2
|
|
}
|
|
label$4 : {
|
|
label$5 : {
|
|
if (!($12 & 255 | 0)) {
|
|
break label$5
|
|
}
|
|
if ((HEAP32[($1 + 24 | 0) >> 2] | 0 | 0) == (1 | 0)) {
|
|
break label$2
|
|
}
|
|
if ((HEAPU8[($0 + 8 | 0) >> 0] | 0) & 2 | 0) {
|
|
break label$4
|
|
}
|
|
break label$2;
|
|
}
|
|
if (!($10 & 255 | 0)) {
|
|
break label$4
|
|
}
|
|
if (!((HEAPU8[($0 + 8 | 0) >> 0] | 0) & 1 | 0)) {
|
|
break label$2
|
|
}
|
|
}
|
|
HEAP16[($1 + 52 | 0) >> 1] = 0;
|
|
__cxxabiv1____base_class_type_info__search_above_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20void_20const__2c_20int_2c_20bool_29_20const($6 | 0, $1 | 0, $2 | 0, $3 | 0, $4 | 0, $5 | 0);
|
|
$10 = HEAPU8[($1 + 53 | 0) >> 0] | 0;
|
|
$11 = $10 | $11 | 0;
|
|
$12 = HEAPU8[($1 + 52 | 0) >> 0] | 0;
|
|
$8 = $12 | $8 | 0;
|
|
$6 = $6 + 8 | 0;
|
|
if ($6 >>> 0 < $7 >>> 0) {
|
|
continue label$3
|
|
}
|
|
break label$3;
|
|
};
|
|
}
|
|
HEAP8[($1 + 53 | 0) >> 0] = ($11 & 255 | 0 | 0) != (0 | 0);
|
|
HEAP8[($1 + 52 | 0) >> 0] = ($8 & 255 | 0 | 0) != (0 | 0);
|
|
}
|
|
|
|
function __cxxabiv1____si_class_type_info__search_above_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20void_20const__2c_20int_2c_20bool_29_20const($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
label$1 : {
|
|
if (!(is_equal_28std__type_info_20const__2c_20std__type_info_20const__2c_20bool_29($0 | 0, HEAP32[($1 + 8 | 0) >> 2] | 0 | 0, $5 | 0) | 0)) {
|
|
break label$1
|
|
}
|
|
__cxxabiv1____class_type_info__process_static_type_above_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20void_20const__2c_20int_29_20const($1 | 0, $1 | 0, $2 | 0, $3 | 0, $4 | 0);
|
|
return;
|
|
}
|
|
$0 = HEAP32[($0 + 8 | 0) >> 2] | 0;
|
|
FUNCTION_TABLE[HEAP32[((HEAP32[$0 >> 2] | 0) + 20 | 0) >> 2] | 0 | 0]($0, $1, $2, $3, $4, $5);
|
|
}
|
|
|
|
function __cxxabiv1____class_type_info__search_above_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20void_20const__2c_20int_2c_20bool_29_20const($0, $1, $2, $3, $4, $5) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
$5 = $5 | 0;
|
|
label$1 : {
|
|
if (!(is_equal_28std__type_info_20const__2c_20std__type_info_20const__2c_20bool_29($0 | 0, HEAP32[($1 + 8 | 0) >> 2] | 0 | 0, $5 | 0) | 0)) {
|
|
break label$1
|
|
}
|
|
__cxxabiv1____class_type_info__process_static_type_above_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20void_20const__2c_20int_29_20const($1 | 0, $1 | 0, $2 | 0, $3 | 0, $4 | 0);
|
|
}
|
|
}
|
|
|
|
function std__type_info___type_info_28_29($0) {
|
|
$0 = $0 | 0;
|
|
return $0 | 0;
|
|
}
|
|
|
|
function emscripten_stack_init() {
|
|
__stack_base = 65536;
|
|
__stack_end = (0 + 15 | 0) & -16 | 0;
|
|
}
|
|
|
|
function emscripten_stack_get_free() {
|
|
return __stack_pointer - __stack_end | 0 | 0;
|
|
}
|
|
|
|
function emscripten_stack_get_base() {
|
|
return __stack_base | 0;
|
|
}
|
|
|
|
function emscripten_stack_get_end() {
|
|
return __stack_end | 0;
|
|
}
|
|
|
|
function stackSave() {
|
|
return __stack_pointer | 0;
|
|
}
|
|
|
|
function stackRestore($0) {
|
|
$0 = $0 | 0;
|
|
__stack_pointer = $0;
|
|
}
|
|
|
|
function stackAlloc($0) {
|
|
$0 = $0 | 0;
|
|
var $1 = 0;
|
|
$1 = (__stack_pointer - $0 | 0) & -16 | 0;
|
|
__stack_pointer = $1;
|
|
return $1 | 0;
|
|
}
|
|
|
|
function emscripten_stack_get_current() {
|
|
return __stack_pointer | 0;
|
|
}
|
|
|
|
function setTempRet0($0) {
|
|
$0 = $0 | 0;
|
|
tempRet0 = $0;
|
|
}
|
|
|
|
function fflush($0) {
|
|
$0 = $0 | 0;
|
|
var $1 = 0, i64toi32_i32$1 = 0, $2 = 0, i64toi32_i32$0 = 0, $3 = 0;
|
|
label$1 : {
|
|
if ($0) {
|
|
break label$1
|
|
}
|
|
$1 = 0;
|
|
label$2 : {
|
|
if (!(HEAP32[(0 + 113e3 | 0) >> 2] | 0)) {
|
|
break label$2
|
|
}
|
|
$1 = fflush(HEAP32[(0 + 113e3 | 0) >> 2] | 0 | 0) | 0;
|
|
}
|
|
label$3 : {
|
|
if (!(HEAP32[(0 + 113152 | 0) >> 2] | 0)) {
|
|
break label$3
|
|
}
|
|
$1 = fflush(HEAP32[(0 + 113152 | 0) >> 2] | 0 | 0) | 0 | $1 | 0;
|
|
}
|
|
label$4 : {
|
|
$0 = HEAP32[(__ofl_lock() | 0) >> 2] | 0;
|
|
if (!$0) {
|
|
break label$4
|
|
}
|
|
label$5 : while (1) {
|
|
$2 = 0;
|
|
label$6 : {
|
|
if ((HEAP32[($0 + 76 | 0) >> 2] | 0 | 0) < (0 | 0)) {
|
|
break label$6
|
|
}
|
|
$2 = __lockfile($0 | 0) | 0;
|
|
}
|
|
label$7 : {
|
|
if ((HEAP32[($0 + 20 | 0) >> 2] | 0 | 0) == (HEAP32[($0 + 28 | 0) >> 2] | 0 | 0)) {
|
|
break label$7
|
|
}
|
|
$1 = fflush($0 | 0) | 0 | $1 | 0;
|
|
}
|
|
label$8 : {
|
|
if (!$2) {
|
|
break label$8
|
|
}
|
|
__unlockfile($0 | 0);
|
|
}
|
|
$0 = HEAP32[($0 + 56 | 0) >> 2] | 0;
|
|
if ($0) {
|
|
continue label$5
|
|
}
|
|
break label$5;
|
|
};
|
|
}
|
|
__ofl_unlock();
|
|
return $1 | 0;
|
|
}
|
|
$2 = 0;
|
|
label$9 : {
|
|
if ((HEAP32[($0 + 76 | 0) >> 2] | 0 | 0) < (0 | 0)) {
|
|
break label$9
|
|
}
|
|
$2 = __lockfile($0 | 0) | 0;
|
|
}
|
|
label$10 : {
|
|
label$11 : {
|
|
label$12 : {
|
|
if ((HEAP32[($0 + 20 | 0) >> 2] | 0 | 0) == (HEAP32[($0 + 28 | 0) >> 2] | 0 | 0)) {
|
|
break label$12
|
|
}
|
|
FUNCTION_TABLE[HEAP32[($0 + 36 | 0) >> 2] | 0 | 0]($0, 0, 0) | 0;
|
|
if (HEAP32[($0 + 20 | 0) >> 2] | 0) {
|
|
break label$12
|
|
}
|
|
$1 = -1;
|
|
if ($2) {
|
|
break label$11
|
|
}
|
|
break label$10;
|
|
}
|
|
label$13 : {
|
|
$1 = HEAP32[($0 + 4 | 0) >> 2] | 0;
|
|
$3 = HEAP32[($0 + 8 | 0) >> 2] | 0;
|
|
if (($1 | 0) == ($3 | 0)) {
|
|
break label$13
|
|
}
|
|
i64toi32_i32$1 = $1 - $3 | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$1 >> 31 | 0;
|
|
i64toi32_i32$0 = FUNCTION_TABLE[HEAP32[($0 + 40 | 0) >> 2] | 0 | 0]($0, i64toi32_i32$1, i64toi32_i32$0, 1) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
}
|
|
$1 = 0;
|
|
HEAP32[($0 + 28 | 0) >> 2] = 0;
|
|
i64toi32_i32$0 = $0;
|
|
i64toi32_i32$1 = 0;
|
|
HEAP32[($0 + 16 | 0) >> 2] = 0;
|
|
HEAP32[($0 + 20 | 0) >> 2] = i64toi32_i32$1;
|
|
i64toi32_i32$0 = $0;
|
|
i64toi32_i32$1 = 0;
|
|
HEAP32[($0 + 4 | 0) >> 2] = 0;
|
|
HEAP32[($0 + 8 | 0) >> 2] = i64toi32_i32$1;
|
|
if (!$2) {
|
|
break label$10
|
|
}
|
|
}
|
|
__unlockfile($0 | 0);
|
|
}
|
|
return $1 | 0;
|
|
}
|
|
|
|
function dynCall_jiji(fptr, $0, $1, $1$hi, $2) {
|
|
fptr = fptr | 0;
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$1$hi = $1$hi | 0;
|
|
$2 = $2 | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0;
|
|
i64toi32_i32$0 = $1$hi;
|
|
i64toi32_i32$0 = FUNCTION_TABLE[fptr | 0]($0, $1, i64toi32_i32$0, $2) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$HIGH_BITS;
|
|
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
|
|
return i64toi32_i32$0 | 0;
|
|
}
|
|
|
|
function legalstub$dynCall_jiji($0, $1, $2, $3, $4) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$4 = $4 | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $17 = 0, $18 = 0, $6 = 0, $7 = 0, $9 = 0, $9$hi = 0, $12$hi = 0, $5 = 0, $5$hi = 0;
|
|
$6 = $0;
|
|
$7 = $1;
|
|
i64toi32_i32$0 = 0;
|
|
$9 = $2;
|
|
$9$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 0;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$1 = 0;
|
|
i64toi32_i32$3 = 32;
|
|
i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
|
|
$17 = 0;
|
|
} else {
|
|
i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$0 << i64toi32_i32$4 | 0) | 0;
|
|
$17 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
|
|
}
|
|
$12$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = $9$hi;
|
|
i64toi32_i32$0 = $9;
|
|
i64toi32_i32$2 = $12$hi;
|
|
i64toi32_i32$3 = $17;
|
|
i64toi32_i32$2 = i64toi32_i32$1 | i64toi32_i32$2 | 0;
|
|
i64toi32_i32$2 = dynCall_jiji($6 | 0, $7 | 0, i64toi32_i32$0 | i64toi32_i32$3 | 0 | 0, i64toi32_i32$2 | 0, $4 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
$5 = i64toi32_i32$2;
|
|
$5$hi = i64toi32_i32$0;
|
|
i64toi32_i32$1 = i64toi32_i32$2;
|
|
i64toi32_i32$2 = 0;
|
|
i64toi32_i32$3 = 32;
|
|
i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$2 = 0;
|
|
$18 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
|
|
} else {
|
|
i64toi32_i32$2 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
|
|
$18 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$1 >>> i64toi32_i32$4 | 0) | 0;
|
|
}
|
|
setTempRet0($18 | 0);
|
|
i64toi32_i32$2 = $5$hi;
|
|
return $5 | 0;
|
|
}
|
|
|
|
function legalfunc$_embind_register_bigint($0, $1, $2, $3, $3$hi, $4, $4$hi) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
$3$hi = $3$hi | 0;
|
|
$4 = $4 | 0;
|
|
$4$hi = $4$hi | 0;
|
|
var i64toi32_i32$4 = 0, i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, i64toi32_i32$3 = 0, i64toi32_i32$2 = 0, $18 = 0, $19 = 0, $5 = 0, $6 = 0, $7 = 0, $9 = 0, $12 = 0, $14 = 0;
|
|
$5 = $0;
|
|
$6 = $1;
|
|
$7 = $2;
|
|
i64toi32_i32$0 = $3$hi;
|
|
$9 = $3;
|
|
i64toi32_i32$2 = $3;
|
|
i64toi32_i32$1 = 0;
|
|
i64toi32_i32$3 = 32;
|
|
i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$1 = 0;
|
|
$18 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
|
|
} else {
|
|
i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
|
|
$18 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
|
|
}
|
|
$12 = $18;
|
|
i64toi32_i32$1 = $4$hi;
|
|
$14 = $4;
|
|
i64toi32_i32$0 = $4;
|
|
i64toi32_i32$2 = 0;
|
|
i64toi32_i32$3 = 32;
|
|
i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$2 = 0;
|
|
$19 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0;
|
|
} else {
|
|
i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0;
|
|
$19 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$1 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$0 >>> i64toi32_i32$4 | 0) | 0;
|
|
}
|
|
legalimport$_embind_register_bigint($5 | 0, $6 | 0, $7 | 0, $9 | 0, $12 | 0, $14 | 0, $19 | 0);
|
|
}
|
|
|
|
function legalfunc$__wasi_fd_seek($0, $1, $1$hi, $2, $3) {
|
|
$0 = $0 | 0;
|
|
$1 = $1 | 0;
|
|
$1$hi = $1$hi | 0;
|
|
$2 = $2 | 0;
|
|
$3 = $3 | 0;
|
|
var i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, i64toi32_i32$3 = 0, $12 = 0, $4 = 0, $6 = 0, i64toi32_i32$2 = 0;
|
|
$4 = $0;
|
|
i64toi32_i32$0 = $1$hi;
|
|
$6 = $1;
|
|
i64toi32_i32$2 = $1;
|
|
i64toi32_i32$1 = 0;
|
|
i64toi32_i32$3 = 32;
|
|
i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$1 = 0;
|
|
$12 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
|
|
} else {
|
|
i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
|
|
$12 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
|
|
}
|
|
return legalimport$__wasi_fd_seek($4 | 0, $6 | 0, $12 | 0, $2 | 0, $3 | 0) | 0 | 0;
|
|
}
|
|
|
|
function _ZN17compiler_builtins3int3mul3Mul3mul17h070e9a1c69faec5bE(var$0, var$0$hi, var$1, var$1$hi) {
|
|
var$0 = var$0 | 0;
|
|
var$0$hi = var$0$hi | 0;
|
|
var$1 = var$1 | 0;
|
|
var$1$hi = var$1$hi | 0;
|
|
var i64toi32_i32$4 = 0, i64toi32_i32$0 = 0, i64toi32_i32$1 = 0, var$2 = 0, i64toi32_i32$2 = 0, i64toi32_i32$3 = 0, var$3 = 0, var$4 = 0, var$5 = 0, $21 = 0, $22 = 0, var$6 = 0, $24 = 0, $17 = 0, $18 = 0, $23 = 0, $29 = 0, $45 = 0, $56$hi = 0, $62$hi = 0;
|
|
i64toi32_i32$0 = var$1$hi;
|
|
var$2 = var$1;
|
|
var$4 = var$2 >>> 16 | 0;
|
|
i64toi32_i32$0 = var$0$hi;
|
|
var$3 = var$0;
|
|
var$5 = var$3 >>> 16 | 0;
|
|
$17 = Math_imul(var$4, var$5);
|
|
$18 = var$2;
|
|
i64toi32_i32$2 = var$3;
|
|
i64toi32_i32$1 = 0;
|
|
i64toi32_i32$3 = 32;
|
|
i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$1 = 0;
|
|
$21 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
|
|
} else {
|
|
i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
|
|
$21 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
|
|
}
|
|
$23 = $17 + Math_imul($18, $21) | 0;
|
|
i64toi32_i32$1 = var$1$hi;
|
|
i64toi32_i32$0 = var$1;
|
|
i64toi32_i32$2 = 0;
|
|
i64toi32_i32$3 = 32;
|
|
i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$2 = 0;
|
|
$22 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0;
|
|
} else {
|
|
i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0;
|
|
$22 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$1 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$0 >>> i64toi32_i32$4 | 0) | 0;
|
|
}
|
|
$29 = $23 + Math_imul($22, var$3) | 0;
|
|
var$2 = var$2 & 65535 | 0;
|
|
var$3 = var$3 & 65535 | 0;
|
|
var$6 = Math_imul(var$2, var$3);
|
|
var$2 = (var$6 >>> 16 | 0) + Math_imul(var$2, var$5) | 0;
|
|
$45 = $29 + (var$2 >>> 16 | 0) | 0;
|
|
var$2 = (var$2 & 65535 | 0) + Math_imul(var$4, var$3) | 0;
|
|
i64toi32_i32$2 = 0;
|
|
i64toi32_i32$1 = $45 + (var$2 >>> 16 | 0) | 0;
|
|
i64toi32_i32$0 = 0;
|
|
i64toi32_i32$3 = 32;
|
|
i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$0 = i64toi32_i32$1 << i64toi32_i32$4 | 0;
|
|
$24 = 0;
|
|
} else {
|
|
i64toi32_i32$0 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$1 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$2 << i64toi32_i32$4 | 0) | 0;
|
|
$24 = i64toi32_i32$1 << i64toi32_i32$4 | 0;
|
|
}
|
|
$56$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = 0;
|
|
$62$hi = i64toi32_i32$0;
|
|
i64toi32_i32$0 = $56$hi;
|
|
i64toi32_i32$2 = $24;
|
|
i64toi32_i32$1 = $62$hi;
|
|
i64toi32_i32$3 = var$2 << 16 | 0 | (var$6 & 65535 | 0) | 0;
|
|
i64toi32_i32$1 = i64toi32_i32$0 | i64toi32_i32$1 | 0;
|
|
i64toi32_i32$2 = i64toi32_i32$2 | i64toi32_i32$3 | 0;
|
|
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
|
|
return i64toi32_i32$2 | 0;
|
|
}
|
|
|
|
function _ZN17compiler_builtins3int4udiv10divmod_u6417h6026910b5ed08e40E(var$0, var$0$hi, var$1, var$1$hi) {
|
|
var$0 = var$0 | 0;
|
|
var$0$hi = var$0$hi | 0;
|
|
var$1 = var$1 | 0;
|
|
var$1$hi = var$1$hi | 0;
|
|
var i64toi32_i32$2 = 0, i64toi32_i32$3 = 0, i64toi32_i32$4 = 0, i64toi32_i32$1 = 0, i64toi32_i32$0 = 0, i64toi32_i32$5 = 0, var$2 = 0, var$3 = 0, var$4 = 0, var$5 = 0, var$5$hi = 0, var$6 = 0, var$6$hi = 0, i64toi32_i32$6 = 0, $37 = 0, $38 = 0, $39 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, var$8$hi = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, var$7$hi = 0, $49 = 0, $63$hi = 0, $65 = 0, $65$hi = 0, $120$hi = 0, $129$hi = 0, $134$hi = 0, var$8 = 0, $140 = 0, $140$hi = 0, $142$hi = 0, $144 = 0, $144$hi = 0, $151 = 0, $151$hi = 0, $154$hi = 0, var$7 = 0, $165$hi = 0;
|
|
label$1 : {
|
|
label$2 : {
|
|
label$3 : {
|
|
label$4 : {
|
|
label$5 : {
|
|
label$6 : {
|
|
label$7 : {
|
|
label$8 : {
|
|
label$9 : {
|
|
label$10 : {
|
|
label$11 : {
|
|
i64toi32_i32$0 = var$0$hi;
|
|
i64toi32_i32$2 = var$0;
|
|
i64toi32_i32$1 = 0;
|
|
i64toi32_i32$3 = 32;
|
|
i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$1 = 0;
|
|
$37 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
|
|
} else {
|
|
i64toi32_i32$1 = i64toi32_i32$0 >>> i64toi32_i32$4 | 0;
|
|
$37 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$0 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
|
|
}
|
|
var$2 = $37;
|
|
if (var$2) {
|
|
i64toi32_i32$1 = var$1$hi;
|
|
var$3 = var$1;
|
|
if (!var$3) {
|
|
break label$11
|
|
}
|
|
i64toi32_i32$1 = var$1$hi;
|
|
i64toi32_i32$0 = var$1;
|
|
i64toi32_i32$2 = 0;
|
|
i64toi32_i32$3 = 32;
|
|
i64toi32_i32$4 = i64toi32_i32$3 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$3 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$2 = 0;
|
|
$38 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0;
|
|
} else {
|
|
i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$4 | 0;
|
|
$38 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$1 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$0 >>> i64toi32_i32$4 | 0) | 0;
|
|
}
|
|
var$4 = $38;
|
|
if (!var$4) {
|
|
break label$9
|
|
}
|
|
var$2 = Math_clz32(var$4) - Math_clz32(var$2) | 0;
|
|
if (var$2 >>> 0 <= 31 >>> 0) {
|
|
break label$8
|
|
}
|
|
break label$2;
|
|
}
|
|
i64toi32_i32$2 = var$1$hi;
|
|
i64toi32_i32$1 = var$1;
|
|
i64toi32_i32$0 = 1;
|
|
i64toi32_i32$3 = 0;
|
|
if (i64toi32_i32$2 >>> 0 > i64toi32_i32$0 >>> 0 | ((i64toi32_i32$2 | 0) == (i64toi32_i32$0 | 0) & i64toi32_i32$1 >>> 0 >= i64toi32_i32$3 >>> 0 | 0) | 0) {
|
|
break label$2
|
|
}
|
|
i64toi32_i32$1 = var$0$hi;
|
|
var$2 = var$0;
|
|
i64toi32_i32$1 = var$1$hi;
|
|
var$3 = var$1;
|
|
var$2 = (var$2 >>> 0) / (var$3 >>> 0) | 0;
|
|
i64toi32_i32$1 = 0;
|
|
__wasm_intrinsics_temp_i64 = var$0 - Math_imul(var$2, var$3) | 0;
|
|
__wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
i64toi32_i32$2 = var$2;
|
|
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
|
|
return i64toi32_i32$2 | 0;
|
|
}
|
|
i64toi32_i32$2 = var$1$hi;
|
|
i64toi32_i32$3 = var$1;
|
|
i64toi32_i32$1 = 0;
|
|
i64toi32_i32$0 = 32;
|
|
i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$1 = 0;
|
|
$39 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0;
|
|
} else {
|
|
i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0;
|
|
$39 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0;
|
|
}
|
|
var$3 = $39;
|
|
i64toi32_i32$1 = var$0$hi;
|
|
if (!var$0) {
|
|
break label$7
|
|
}
|
|
if (!var$3) {
|
|
break label$6
|
|
}
|
|
var$4 = var$3 + -1 | 0;
|
|
if (var$4 & var$3 | 0) {
|
|
break label$6
|
|
}
|
|
i64toi32_i32$1 = 0;
|
|
i64toi32_i32$2 = var$4 & var$2 | 0;
|
|
i64toi32_i32$3 = 0;
|
|
i64toi32_i32$0 = 32;
|
|
i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$3 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
|
|
$40 = 0;
|
|
} else {
|
|
i64toi32_i32$3 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0;
|
|
$40 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
|
|
}
|
|
$63$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = var$0$hi;
|
|
i64toi32_i32$1 = var$0;
|
|
i64toi32_i32$2 = 0;
|
|
i64toi32_i32$0 = -1;
|
|
i64toi32_i32$2 = i64toi32_i32$3 & i64toi32_i32$2 | 0;
|
|
$65 = i64toi32_i32$1 & i64toi32_i32$0 | 0;
|
|
$65$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $63$hi;
|
|
i64toi32_i32$3 = $40;
|
|
i64toi32_i32$1 = $65$hi;
|
|
i64toi32_i32$0 = $65;
|
|
i64toi32_i32$1 = i64toi32_i32$2 | i64toi32_i32$1 | 0;
|
|
__wasm_intrinsics_temp_i64 = i64toi32_i32$3 | i64toi32_i32$0 | 0;
|
|
__wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
i64toi32_i32$3 = var$2 >>> ((__wasm_ctz_i32(var$3 | 0) | 0) & 31 | 0) | 0;
|
|
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
|
|
return i64toi32_i32$3 | 0;
|
|
}
|
|
}
|
|
var$4 = var$3 + -1 | 0;
|
|
if (!(var$4 & var$3 | 0)) {
|
|
break label$5
|
|
}
|
|
var$2 = (Math_clz32(var$3) + 33 | 0) - Math_clz32(var$2) | 0;
|
|
var$3 = 0 - var$2 | 0;
|
|
break label$3;
|
|
}
|
|
var$3 = 63 - var$2 | 0;
|
|
var$2 = var$2 + 1 | 0;
|
|
break label$3;
|
|
}
|
|
var$4 = (var$2 >>> 0) / (var$3 >>> 0) | 0;
|
|
i64toi32_i32$3 = 0;
|
|
i64toi32_i32$2 = var$2 - Math_imul(var$4, var$3) | 0;
|
|
i64toi32_i32$1 = 0;
|
|
i64toi32_i32$0 = 32;
|
|
i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
|
|
$41 = 0;
|
|
} else {
|
|
i64toi32_i32$1 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$3 << i64toi32_i32$4 | 0) | 0;
|
|
$41 = i64toi32_i32$2 << i64toi32_i32$4 | 0;
|
|
}
|
|
__wasm_intrinsics_temp_i64 = $41;
|
|
__wasm_intrinsics_temp_i64$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = 0;
|
|
i64toi32_i32$2 = var$4;
|
|
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
|
|
return i64toi32_i32$2 | 0;
|
|
}
|
|
var$2 = Math_clz32(var$3) - Math_clz32(var$2) | 0;
|
|
if (var$2 >>> 0 < 31 >>> 0) {
|
|
break label$4
|
|
}
|
|
break label$2;
|
|
}
|
|
i64toi32_i32$2 = var$0$hi;
|
|
i64toi32_i32$2 = 0;
|
|
__wasm_intrinsics_temp_i64 = var$4 & var$0 | 0;
|
|
__wasm_intrinsics_temp_i64$hi = i64toi32_i32$2;
|
|
if ((var$3 | 0) == (1 | 0)) {
|
|
break label$1
|
|
}
|
|
i64toi32_i32$2 = var$0$hi;
|
|
i64toi32_i32$2 = 0;
|
|
$120$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = var$0$hi;
|
|
i64toi32_i32$3 = var$0;
|
|
i64toi32_i32$1 = $120$hi;
|
|
i64toi32_i32$0 = __wasm_ctz_i32(var$3 | 0) | 0;
|
|
i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$1 = 0;
|
|
$42 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0;
|
|
} else {
|
|
i64toi32_i32$1 = i64toi32_i32$2 >>> i64toi32_i32$4 | 0;
|
|
$42 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$2 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$3 >>> i64toi32_i32$4 | 0) | 0;
|
|
}
|
|
i64toi32_i32$3 = $42;
|
|
i64toi32_i32$HIGH_BITS = i64toi32_i32$1;
|
|
return i64toi32_i32$3 | 0;
|
|
}
|
|
var$3 = 63 - var$2 | 0;
|
|
var$2 = var$2 + 1 | 0;
|
|
}
|
|
i64toi32_i32$3 = var$0$hi;
|
|
i64toi32_i32$3 = 0;
|
|
$129$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = var$0$hi;
|
|
i64toi32_i32$2 = var$0;
|
|
i64toi32_i32$1 = $129$hi;
|
|
i64toi32_i32$0 = var$2 & 63 | 0;
|
|
i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$1 = 0;
|
|
$43 = i64toi32_i32$3 >>> i64toi32_i32$4 | 0;
|
|
} else {
|
|
i64toi32_i32$1 = i64toi32_i32$3 >>> i64toi32_i32$4 | 0;
|
|
$43 = (((1 << i64toi32_i32$4 | 0) - 1 | 0) & i64toi32_i32$3 | 0) << (32 - i64toi32_i32$4 | 0) | 0 | (i64toi32_i32$2 >>> i64toi32_i32$4 | 0) | 0;
|
|
}
|
|
var$5 = $43;
|
|
var$5$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = var$0$hi;
|
|
i64toi32_i32$1 = 0;
|
|
$134$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = var$0$hi;
|
|
i64toi32_i32$3 = var$0;
|
|
i64toi32_i32$2 = $134$hi;
|
|
i64toi32_i32$0 = var$3 & 63 | 0;
|
|
i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$2 = i64toi32_i32$3 << i64toi32_i32$4 | 0;
|
|
$44 = 0;
|
|
} else {
|
|
i64toi32_i32$2 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$3 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$1 << i64toi32_i32$4 | 0) | 0;
|
|
$44 = i64toi32_i32$3 << i64toi32_i32$4 | 0;
|
|
}
|
|
var$0 = $44;
|
|
var$0$hi = i64toi32_i32$2;
|
|
label$13 : {
|
|
if (var$2) {
|
|
i64toi32_i32$2 = var$1$hi;
|
|
i64toi32_i32$1 = var$1;
|
|
i64toi32_i32$3 = -1;
|
|
i64toi32_i32$0 = -1;
|
|
i64toi32_i32$4 = i64toi32_i32$1 + i64toi32_i32$0 | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$2 + i64toi32_i32$3 | 0;
|
|
if (i64toi32_i32$4 >>> 0 < i64toi32_i32$0 >>> 0) {
|
|
i64toi32_i32$5 = i64toi32_i32$5 + 1 | 0
|
|
}
|
|
var$8 = i64toi32_i32$4;
|
|
var$8$hi = i64toi32_i32$5;
|
|
label$15 : while (1) {
|
|
i64toi32_i32$5 = var$5$hi;
|
|
i64toi32_i32$2 = var$5;
|
|
i64toi32_i32$1 = 0;
|
|
i64toi32_i32$0 = 1;
|
|
i64toi32_i32$3 = i64toi32_i32$0 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$1 = i64toi32_i32$2 << i64toi32_i32$3 | 0;
|
|
$45 = 0;
|
|
} else {
|
|
i64toi32_i32$1 = ((1 << i64toi32_i32$3 | 0) - 1 | 0) & (i64toi32_i32$2 >>> (32 - i64toi32_i32$3 | 0) | 0) | 0 | (i64toi32_i32$5 << i64toi32_i32$3 | 0) | 0;
|
|
$45 = i64toi32_i32$2 << i64toi32_i32$3 | 0;
|
|
}
|
|
$140 = $45;
|
|
$140$hi = i64toi32_i32$1;
|
|
i64toi32_i32$1 = var$0$hi;
|
|
i64toi32_i32$5 = var$0;
|
|
i64toi32_i32$2 = 0;
|
|
i64toi32_i32$0 = 63;
|
|
i64toi32_i32$3 = i64toi32_i32$0 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$2 = 0;
|
|
$46 = i64toi32_i32$1 >>> i64toi32_i32$3 | 0;
|
|
} else {
|
|
i64toi32_i32$2 = i64toi32_i32$1 >>> i64toi32_i32$3 | 0;
|
|
$46 = (((1 << i64toi32_i32$3 | 0) - 1 | 0) & i64toi32_i32$1 | 0) << (32 - i64toi32_i32$3 | 0) | 0 | (i64toi32_i32$5 >>> i64toi32_i32$3 | 0) | 0;
|
|
}
|
|
$142$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = $140$hi;
|
|
i64toi32_i32$1 = $140;
|
|
i64toi32_i32$5 = $142$hi;
|
|
i64toi32_i32$0 = $46;
|
|
i64toi32_i32$5 = i64toi32_i32$2 | i64toi32_i32$5 | 0;
|
|
var$5 = i64toi32_i32$1 | i64toi32_i32$0 | 0;
|
|
var$5$hi = i64toi32_i32$5;
|
|
$144 = var$5;
|
|
$144$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = var$8$hi;
|
|
i64toi32_i32$5 = var$5$hi;
|
|
i64toi32_i32$5 = var$8$hi;
|
|
i64toi32_i32$2 = var$8;
|
|
i64toi32_i32$1 = var$5$hi;
|
|
i64toi32_i32$0 = var$5;
|
|
i64toi32_i32$3 = i64toi32_i32$2 - i64toi32_i32$0 | 0;
|
|
i64toi32_i32$6 = i64toi32_i32$2 >>> 0 < i64toi32_i32$0 >>> 0;
|
|
i64toi32_i32$4 = i64toi32_i32$6 + i64toi32_i32$1 | 0;
|
|
i64toi32_i32$4 = i64toi32_i32$5 - i64toi32_i32$4 | 0;
|
|
i64toi32_i32$5 = i64toi32_i32$3;
|
|
i64toi32_i32$2 = 0;
|
|
i64toi32_i32$0 = 63;
|
|
i64toi32_i32$1 = i64toi32_i32$0 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$2 = i64toi32_i32$4 >> 31 | 0;
|
|
$47 = i64toi32_i32$4 >> i64toi32_i32$1 | 0;
|
|
} else {
|
|
i64toi32_i32$2 = i64toi32_i32$4 >> i64toi32_i32$1 | 0;
|
|
$47 = (((1 << i64toi32_i32$1 | 0) - 1 | 0) & i64toi32_i32$4 | 0) << (32 - i64toi32_i32$1 | 0) | 0 | (i64toi32_i32$5 >>> i64toi32_i32$1 | 0) | 0;
|
|
}
|
|
var$6 = $47;
|
|
var$6$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = var$1$hi;
|
|
i64toi32_i32$2 = var$6$hi;
|
|
i64toi32_i32$4 = var$6;
|
|
i64toi32_i32$5 = var$1$hi;
|
|
i64toi32_i32$0 = var$1;
|
|
i64toi32_i32$5 = i64toi32_i32$2 & i64toi32_i32$5 | 0;
|
|
$151 = i64toi32_i32$4 & i64toi32_i32$0 | 0;
|
|
$151$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = $144$hi;
|
|
i64toi32_i32$2 = $144;
|
|
i64toi32_i32$4 = $151$hi;
|
|
i64toi32_i32$0 = $151;
|
|
i64toi32_i32$1 = i64toi32_i32$2 - i64toi32_i32$0 | 0;
|
|
i64toi32_i32$6 = i64toi32_i32$2 >>> 0 < i64toi32_i32$0 >>> 0;
|
|
i64toi32_i32$3 = i64toi32_i32$6 + i64toi32_i32$4 | 0;
|
|
i64toi32_i32$3 = i64toi32_i32$5 - i64toi32_i32$3 | 0;
|
|
var$5 = i64toi32_i32$1;
|
|
var$5$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = var$0$hi;
|
|
i64toi32_i32$5 = var$0;
|
|
i64toi32_i32$2 = 0;
|
|
i64toi32_i32$0 = 1;
|
|
i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$2 = i64toi32_i32$5 << i64toi32_i32$4 | 0;
|
|
$48 = 0;
|
|
} else {
|
|
i64toi32_i32$2 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$5 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$3 << i64toi32_i32$4 | 0) | 0;
|
|
$48 = i64toi32_i32$5 << i64toi32_i32$4 | 0;
|
|
}
|
|
$154$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = var$7$hi;
|
|
i64toi32_i32$2 = $154$hi;
|
|
i64toi32_i32$3 = $48;
|
|
i64toi32_i32$5 = var$7$hi;
|
|
i64toi32_i32$0 = var$7;
|
|
i64toi32_i32$5 = i64toi32_i32$2 | i64toi32_i32$5 | 0;
|
|
var$0 = i64toi32_i32$3 | i64toi32_i32$0 | 0;
|
|
var$0$hi = i64toi32_i32$5;
|
|
i64toi32_i32$5 = var$6$hi;
|
|
i64toi32_i32$2 = var$6;
|
|
i64toi32_i32$3 = 0;
|
|
i64toi32_i32$0 = 1;
|
|
i64toi32_i32$3 = i64toi32_i32$5 & i64toi32_i32$3 | 0;
|
|
var$6 = i64toi32_i32$2 & i64toi32_i32$0 | 0;
|
|
var$6$hi = i64toi32_i32$3;
|
|
var$7 = var$6;
|
|
var$7$hi = i64toi32_i32$3;
|
|
var$2 = var$2 + -1 | 0;
|
|
if (var$2) {
|
|
continue label$15
|
|
}
|
|
break label$15;
|
|
};
|
|
break label$13;
|
|
}
|
|
}
|
|
i64toi32_i32$3 = var$5$hi;
|
|
__wasm_intrinsics_temp_i64 = var$5;
|
|
__wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = var$0$hi;
|
|
i64toi32_i32$5 = var$0;
|
|
i64toi32_i32$2 = 0;
|
|
i64toi32_i32$0 = 1;
|
|
i64toi32_i32$4 = i64toi32_i32$0 & 31 | 0;
|
|
if (32 >>> 0 <= (i64toi32_i32$0 & 63 | 0) >>> 0) {
|
|
i64toi32_i32$2 = i64toi32_i32$5 << i64toi32_i32$4 | 0;
|
|
$49 = 0;
|
|
} else {
|
|
i64toi32_i32$2 = ((1 << i64toi32_i32$4 | 0) - 1 | 0) & (i64toi32_i32$5 >>> (32 - i64toi32_i32$4 | 0) | 0) | 0 | (i64toi32_i32$3 << i64toi32_i32$4 | 0) | 0;
|
|
$49 = i64toi32_i32$5 << i64toi32_i32$4 | 0;
|
|
}
|
|
$165$hi = i64toi32_i32$2;
|
|
i64toi32_i32$2 = var$6$hi;
|
|
i64toi32_i32$2 = $165$hi;
|
|
i64toi32_i32$3 = $49;
|
|
i64toi32_i32$5 = var$6$hi;
|
|
i64toi32_i32$0 = var$6;
|
|
i64toi32_i32$5 = i64toi32_i32$2 | i64toi32_i32$5 | 0;
|
|
i64toi32_i32$3 = i64toi32_i32$3 | i64toi32_i32$0 | 0;
|
|
i64toi32_i32$HIGH_BITS = i64toi32_i32$5;
|
|
return i64toi32_i32$3 | 0;
|
|
}
|
|
i64toi32_i32$3 = var$0$hi;
|
|
__wasm_intrinsics_temp_i64 = var$0;
|
|
__wasm_intrinsics_temp_i64$hi = i64toi32_i32$3;
|
|
i64toi32_i32$3 = 0;
|
|
var$0 = 0;
|
|
var$0$hi = i64toi32_i32$3;
|
|
}
|
|
i64toi32_i32$3 = var$0$hi;
|
|
i64toi32_i32$5 = var$0;
|
|
i64toi32_i32$HIGH_BITS = i64toi32_i32$3;
|
|
return i64toi32_i32$5 | 0;
|
|
}
|
|
|
|
function __wasm_ctz_i32(var$0) {
|
|
var$0 = var$0 | 0;
|
|
if (var$0) {
|
|
return 31 - Math_clz32((var$0 + -1 | 0) ^ var$0 | 0) | 0 | 0
|
|
}
|
|
return 32 | 0;
|
|
}
|
|
|
|
function __wasm_i64_mul(var$0, var$0$hi, var$1, var$1$hi) {
|
|
var$0 = var$0 | 0;
|
|
var$0$hi = var$0$hi | 0;
|
|
var$1 = var$1 | 0;
|
|
var$1$hi = var$1$hi | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0;
|
|
i64toi32_i32$0 = var$0$hi;
|
|
i64toi32_i32$0 = var$1$hi;
|
|
i64toi32_i32$0 = var$0$hi;
|
|
i64toi32_i32$1 = var$1$hi;
|
|
i64toi32_i32$1 = _ZN17compiler_builtins3int3mul3Mul3mul17h070e9a1c69faec5bE(var$0 | 0, i64toi32_i32$0 | 0, var$1 | 0, i64toi32_i32$1 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
i64toi32_i32$HIGH_BITS = i64toi32_i32$0;
|
|
return i64toi32_i32$1 | 0;
|
|
}
|
|
|
|
function __wasm_i64_udiv(var$0, var$0$hi, var$1, var$1$hi) {
|
|
var$0 = var$0 | 0;
|
|
var$0$hi = var$0$hi | 0;
|
|
var$1 = var$1 | 0;
|
|
var$1$hi = var$1$hi | 0;
|
|
var i64toi32_i32$0 = 0, i64toi32_i32$1 = 0;
|
|
i64toi32_i32$0 = var$0$hi;
|
|
i64toi32_i32$0 = var$1$hi;
|
|
i64toi32_i32$0 = var$0$hi;
|
|
i64toi32_i32$1 = var$1$hi;
|
|
i64toi32_i32$1 = _ZN17compiler_builtins3int4udiv10divmod_u6417h6026910b5ed08e40E(var$0 | 0, i64toi32_i32$0 | 0, var$1 | 0, i64toi32_i32$1 | 0) | 0;
|
|
i64toi32_i32$0 = i64toi32_i32$HIGH_BITS;
|
|
i64toi32_i32$HIGH_BITS = i64toi32_i32$0;
|
|
return i64toi32_i32$1 | 0;
|
|
}
|
|
|
|
function __wasm_rotl_i32(var$0, var$1) {
|
|
var$0 = var$0 | 0;
|
|
var$1 = var$1 | 0;
|
|
var var$2 = 0;
|
|
var$2 = var$1 & 31 | 0;
|
|
var$1 = (0 - var$1 | 0) & 31 | 0;
|
|
return ((-1 >>> var$2 | 0) & var$0 | 0) << var$2 | 0 | (((-1 << var$1 | 0) & var$0 | 0) >>> var$1 | 0) | 0 | 0;
|
|
}
|
|
|
|
// EMSCRIPTEN_END_FUNCS
|
|
;
|
|
bufferView = HEAPU8;
|
|
initActiveSegments(imports);
|
|
var FUNCTION_TABLE = Table([null, __cxx_global_array_dtor, __cxx_global_array_dtor_5, __cxx_global_array_dtor_6, __cxx_global_array_dtor_7, __cxx_global_array_dtor_8, __cxx_global_array_dtor_9, __cxx_global_array_dtor_10, embind_init_bullet_28_29, void_20const__20emscripten__internal__getActualType_btDebugDraw__28btDebugDraw__29, void_20emscripten__internal__raw_destructor_btDebugDraw__28btDebugDraw__29, void_20const__20emscripten__internal__getActualType_btDebugDrawWrapper__28btDebugDrawWrapper__29, void_20emscripten__internal__raw_destructor_btDebugDrawWrapper__28btDebugDrawWrapper__29, btDebugDrawWrapper__20emscripten__internal__wrapped_new_btDebugDrawWrapper__2c_20btDebugDrawWrapper_2c_20emscripten__val__28emscripten__val___29, emscripten__internal__Invoker_btDebugDrawWrapper__2c_20emscripten__val_____invoke_28btDebugDrawWrapper__20_28__29_28emscripten__val___29_2c_20emscripten___EM_VAL__29, emscripten__val_20emscripten__internal__wrapped_extend_btDebugDrawWrapper__28std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const__29, emscripten__internal__Invoker_emscripten__val_2c_20std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const____invoke_28emscripten__val_20_28__29_28std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const__29_2c_20emscripten__internal__BindingType_std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___2c_20void____unnamed___2c_20emscripten___EM_VAL__29, void_20const__20emscripten__internal__getActualType_btControllerHitReport__28btControllerHitReport__29, void_20emscripten__internal__raw_destructor_btControllerHitReport__28btControllerHitReport__29, void_20const__20emscripten__internal__getActualType_btControllerHitReportWrapper__28btControllerHitReportWrapper__29, void_20emscripten__internal__raw_destructor_btControllerHitReportWrapper__28btControllerHitReportWrapper__29, btControllerHitReportWrapper__20emscripten__internal__wrapped_new_btControllerHitReportWrapper__2c_20btControllerHitReportWrapper_2c_20emscripten__val__28emscripten__val___29, emscripten__internal__Invoker_btControllerHitReportWrapper__2c_20emscripten__val_____invoke_28btControllerHitReportWrapper__20_28__29_28emscripten__val___29_2c_20emscripten___EM_VAL__29, emscripten__val_20emscripten__internal__wrapped_extend_btControllerHitReportWrapper__28std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const__29, void_20const__20emscripten__internal__getActualType_cc__ccMotionState__28cc__ccMotionState__29, void_20emscripten__internal__raw_destructor_cc__ccMotionState__28cc__ccMotionState__29, void_20const__20emscripten__internal__getActualType_ccMotionStateWrapper__28ccMotionStateWrapper__29, void_20emscripten__internal__raw_destructor_ccMotionStateWrapper__28ccMotionStateWrapper__29, ccMotionStateWrapper__20emscripten__internal__wrapped_new_ccMotionStateWrapper__2c_20ccMotionStateWrapper_2c_20emscripten__val__28emscripten__val___29, emscripten__internal__Invoker_ccMotionStateWrapper__2c_20emscripten__val_____invoke_28ccMotionStateWrapper__20_28__29_28emscripten__val___29_2c_20emscripten___EM_VAL__29, emscripten__val_20emscripten__internal__wrapped_extend_ccMotionStateWrapper__28std____2__basic_string_char_2c_20std____2__char_traits_char__2c_20std____2__allocator_char___20const__2c_20emscripten__val_20const__29, _malloc_28int_29, _free_28int_29, _read_f32_28int_29, _write_f32_28int_2c_20float_29, _safe_delete_28int_2c_20int_29, Vec3_new_28float_2c_20float_2c_20float_29, Vec3_x_28int_29, Vec3_y_28int_29, Vec3_z_28int_29, Vec3_set_28int_2c_20float_2c_20float_2c_20float_29, Quat_new_28float_2c_20float_2c_20float_2c_20float_29, Quat_x_28int_29, Quat_y_28int_29, Quat_z_28int_29, Quat_w_28int_29, Quat_set_28int_2c_20float_2c_20float_2c_20float_2c_20float_29, Transform_new_28_29, Transform_setIdentity_28int_29, Transform_setRotation_28int_2c_20int_29, Transform_getOrigin_28int_29, Transform_getRotation_28int_2c_20int_29, Transform_getRotationAndOrigin_28int_2c_20int_29, MotionState_getWorldTransform, MotionState_setWorldTransform, ccMotionState_setup, int_array_size_28int_29, int_array_at_28int_2c_20int_29, Vec3_array_at_28int_2c_20int_29, TypedConstraint_getFixedBody_28_29, TypedConstraint_getDbgDrawSize_28int_29, TypedConstraint_setDbgDrawSize_28int_2c_20float_29, TypedConstraint_setMaxImpulseThreshold_28int_2c_20float_29, HingeConstraint_new_28int_2c_20int_2c_20int_2c_20int_29, HingeConstraint_setFrames_28int_2c_20int_2c_20int_29, HingeConstraint_setLimit_28int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float_29, HingeConstraint_enableMotor_28int_2c_20bool_29, HingeConstraint_setAngularOnly_28int_2c_20bool_29, HingeConstraint_setMaxMotorImpulse_28int_2c_20float_29, HingeConstraint_setMotorTarget_28int_2c_20float_2c_20float_29, HingeConstraint_setMotorVelocity_28int_2c_20float_29, P2PConstraint_new_28int_2c_20int_2c_20int_2c_20int_29, P2PConstraint_setPivotA_28int_2c_20int_29, P2PConstraint_setPivotB_28int_2c_20int_29, FixedConstraint_new_28int_2c_20int_2c_20int_2c_20int_29, FixedConstraint_setFrames_28int_2c_20int_2c_20int_29, Generic6DofSpring2Constraint_new_28int_2c_20int_2c_20int_2c_20int_2c_20int_29, Generic6DofSpring2Constraint_setFrames_28int_2c_20int_2c_20int_29, Generic6DofSpring2Constraint_setLimit_28int_2c_20int_2c_20float_2c_20float_29, Generic6DofSpring2Constraint_enableSpring_28int_2c_20int_2c_20bool_29, Generic6DofSpring2Constraint_setStiffness_28int_2c_20int_2c_20float_29, Generic6DofSpring2Constraint_setDamping_28int_2c_20int_2c_20float_29, Generic6DofSpring2Constraint_setBounce_28int_2c_20int_2c_20float_29, Generic6DofSpring2Constraint_setEquilibriumPoint_28int_2c_20int_2c_20float_29, Generic6DofSpring2Constraint_enableMotor_28int_2c_20int_2c_20bool_29, Generic6DofSpring2Constraint_setMaxMotorForce_28int_2c_20int_2c_20float_29, Generic6DofSpring2Constraint_setTargetVelocity_28int_2c_20int_2c_20float_29, Generic6DofSpring2Constraint_setServo_28int_2c_20int_2c_20bool_29, Generic6DofSpring2Constraint_setServoTarget_28int_2c_20int_2c_20float_29, CollisionShape_isCompound_28int_29, CollisionShape_setLocalScaling_28int_2c_20int_29, CollisionShape_calculateLocalInertia_28int_2c_20float_2c_20int_29, CollisionShape_getAabb_28int_2c_20int_2c_20int_2c_20int_29, CollisionShape_setMargin_28int_2c_20float_29, CollisionShape_setMaterial_28int_2c_20int_29, CollisionShape_setUserPointer_28int_2c_20int_29, EmptyShape_static_28_29, ConvexInternalShape_getImplicitShapeDimensions_28int_29, BoxShape_new_28int_29, BoxShape_setUnscaledHalfExtents_28int_2c_20int_29, SphereShape_new_28float_29, SphereShape_setUnscaledRadius_28int_2c_20float_29, CylinderShape_new_28int_29, CylinderShape_updateProp_28int_2c_20float_2c_20float_2c_20int_29, CapsuleShape_new_28float_2c_20float_29, CapsuleShape_updateProp_28int_2c_20float_2c_20float_2c_20int_29, ConeShape_new_28float_2c_20float_29, ConeShape_setRadius_28int_2c_20float_29, ConeShape_setHeight_28int_2c_20float_29, ConeShape_setConeUpIndex_28int_2c_20int_29, StaticPlaneShape_new_28int_2c_20float_29, StaticPlaneShape_getPlaneNormal_28int_29, StaticPlaneShape_setPlaneConstant_28int_2c_20float_29, TerrainShape_new_28int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29, TriangleMesh_new_28_29, TriangleMesh_addTriangle_28int_2c_20int_2c_20int_2c_20int_2c_20bool_29, BvhTriangleMeshShape_new_28int_2c_20bool_2c_20bool_29, BvhTriangleMeshShape_getOptimizedBvh_28int_29, BvhTriangleMeshShape_setOptimizedBvh_28int_2c_20int_2c_20float_2c_20float_2c_20float_29, ScaledBvhTriangleMeshShape_new_28int_2c_20float_2c_20float_2c_20float_29, ConvexTriangleMeshShape_new_28int_29, SimplexShape_new_28_29, SimplexShape_addVertex_28int_2c_20int_29, ccCompoundShape_new_28_29, CompoundShape_getNumChildShapes_28int_29, CompoundShape_addChildShape_28int_2c_20int_2c_20int_29, CompoundShape_getChildShape_28int_2c_20int_29, CompoundShape_removeChildShape_28int_2c_20int_29, CompoundShape_updateChildTransform_28int_2c_20int_2c_20int_2c_20bool_29, CollisionObject_new_28_29, CollisionObject_getCollisionShape_28int_29, CollisionObject_setCollisionShape_28int_2c_20int_29, CollisionObject_setContactProcessingThreshold_28int_2c_20int_29, CollisionObject_isSleeping_28int_29, CollisionObject_getActivationState_28int_29, CollisionObject_forceActivationState_28int_2c_20int_29, CollisionObject_activate_28int_2c_20bool_29, CollisionObject_isActive_28int_29, CollisionObject_isKinematicObject_28int_29, CollisionObject_isStaticObject_28int_29, CollisionObject_isStaticOrKinematicObject_28int_29, CollisionObject_getWorldTransform_28int_29, CollisionObject_setCollisionFlags_28int_2c_20int_29, CollisionObject_getCollisionFlags_28int_29, CollisionObject_setCcdMotionThreshold_28int_2c_20float_29, CollisionObject_setCcdSweptSphereRadius_28int_2c_20float_29, CollisionObject_setUserIndex_28int_2c_20int_29, CollisionObject_getUserIndex_28int_29, CollisionObject_setMaterial_28int_2c_20float_2c_20float_2c_20float_2c_20float_29, CollisionObject_setIgnoreCollisionCheck_28int_2c_20int_2c_20bool_29, RigidBody_new_28float_2c_20int_29, RigidBody_getFlags_28int_29, RigidBody_setFlags_28int_2c_20int_29, RigidBody_setGravity_28int_2c_20int_29, RigidBody_setDamping_28int_2c_20float_2c_20float_29, RigidBody_setMass_28int_2c_20float_29, RigidBody_setMassProps_28int_2c_20float_2c_20int_29, RigidBody_setLinearFactor_28int_2c_20int_29, RigidBody_setAngularFactor_28int_2c_20int_29, RigidBody_setLinearVelocity_28int_2c_20int_29, RigidBody_getLinearVelocity_28int_29, RigidBody_setAngularVelocity_28int_2c_20int_29, RigidBody_getAngularVelocity_28int_29, RigidBody_clearState_28int_29, RigidBody_clearForces_28int_29, RigidBody_wantsSleeping_28int_29, RigidBody_setSleepingThresholds_28int_2c_20float_2c_20float_29, RigidBody_getLinearSleepingThreshold_28int_29, RigidBody_getMotionState_28int_29, RigidBody_applyTorque_28int_2c_20int_29, RigidBody_applyForce_28int_2c_20int_2c_20int_29, RigidBody_applyImpulse_28int_2c_20int_2c_20int_29, RigidBody_getWorldTransform_28int_2c_20int_29, DefaultCollisionConfiguration_static_28_29, CollisionDispatcher_new_28_29, Dispatcher_getNumManifolds_28int_29, Dispatcher_getManifoldByIndexInternal_28int_2c_20int_29, ManifoldPoint_getShape0_28int_29, ManifoldPoint_getShape1_28int_29, ManifoldPoint_get_m_index0_28int_29, ManifoldPoint_get_m_index1_28int_29, PersistentManifold_getBody0_28int_29, PersistentManifold_getBody1_28int_29, PersistentManifold_getNumContacts_28int_29, PersistentManifold_getContactPoint_28int_2c_20int_29, ManifoldPoint_get_m_localPointA_28int_29, ManifoldPoint_get_m_localPointB_28int_29, ManifoldPoint_get_m_positionWorldOnA_28int_29, ManifoldPoint_get_m_positionWorldOnB_28int_29, ManifoldPoint_get_m_normalWorldOnB_28int_29, DbvtBroadphase_new_28_29, SequentialImpulseConstraintSolver_new_28_29, CollisionWorld_addCollisionObject_28int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int_29, CollisionWorld_removeCollisionObject_28int_2c_20int_29, CollisionWorld_rayTest_28int_2c_20int_2c_20int_2c_20int_29, CollisionWorld_convexSweepTest_28int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float_29, CollisionWorld_setDebugDrawer_28int_2c_20int_29, CollisionWorld_debugDrawWorld_28int_29, ccDiscreteDynamicsWorld_new_28int_2c_20int_2c_20int_29, ccDiscreteDynamicsWorld_setAllowSleep_28int_2c_20bool_29, DynamicsWorld_setGravity_28int_2c_20int_29, DynamicsWorld_stepSimulation_28int_2c_20float_2c_20int_2c_20float_29, DynamicsWorld_addRigidBody_28int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int_29, DynamicsWorld_removeRigidBody_28int_2c_20int_29, DynamicsWorld_addConstraint_28int_2c_20int_2c_20bool_29, DynamicsWorld_removeConstraint_28int_2c_20int_29, DynamicsWorld_addAction_28int_2c_20int_29, DynamicsWorld_removeAction_28int_2c_20int_29, DebugDraw_setDebugMode_28int_2c_20int_29, DebugDraw_getDebugMode_28int_29, DebugDraw_setActiveObjectColor_28int_2c_20float_2c_20float_2c_20float_29, DebugDraw_setDeactiveObjectColor_28int_2c_20float_2c_20float_2c_20float_29, DebugDraw_setWantsDeactivationObjectColor_28int_2c_20float_2c_20float_2c_20float_29, DebugDraw_setDisabledDeactivationObjectColor_28int_2c_20float_2c_20float_2c_20float_29, DebugDraw_setDisabledSimulationObjectColor_28int_2c_20float_2c_20float_2c_20float_29, DebugDraw_setAABBColor_28int_2c_20float_2c_20float_2c_20float_29, DebugDraw_setContactPointColor_28int_2c_20float_2c_20float_2c_20float_29, DebugDraw_setConstraintLimitColor_28int_2c_20float_2c_20float_2c_20float_29, RayCallback_hasHit_28int_29, ConvexCallback_hasHit_28int_29, ccAllRayCallback_static_28_29, ccAllRayCallback_setFlags_28int_2c_20int_29, ccAllRayCallback_reset_28int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29, ccAllRayCallback_getHitPointWorld_28int_29, ccAllRayCallback_getHitNormalWorld_28int_29, ccAllRayCallback_getCollisionShapePtrs_28int_29, ccClosestRayCallback_static_28_29, ccClosestRayCallback_setFlags_28int_2c_20int_29, ccClosestRayCallback_reset_28int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29, ccClosestRayCallback_getHitPointWorld_28int_29, ccClosestRayCallback_getHitNormalWorld_28int_29, ccClosestRayCallback_getCollisionShapePtr_28int_29, ccAllConvexCallback_static_28_29, ccAllConvexCallback_reset_28int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29, ccAllConvexCallback_getHitPointWorld_28int_29, ccAllConvexCallback_getHitNormalWorld_28int_29, ccAllConvexCallback_getCollisionShapePtrs_28int_29, ccClosestConvexCallback_static_28_29, ccClosestConvexCallback_reset_28int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29, ccClosestConvexCallback_getHitPointWorld_28int_29, ccClosestConvexCallback_getHitNormalWorld_28int_29, ccClosestConvexCallback_getCollisionShapePtr_28int_29, ccMaterial_new_28_29, ccMaterial_set_28int_2c_20float_2c_20float_2c_20float_2c_20float_29, CharacterController_getGhostObject, CharacterController_getCollisionShape, ControllerHit_getHitWorldPos, ControllerHit_getHitWorldNormal, ControllerHit_getHitMotionDir, ControllerHit_getHitMotionLength, ControllerShapeHit_getHitShape, ControllerShapeHit_getHitCollisionObject, CharacterController_move, CharacterController_getPosition, CharacterController_setContactOffset, CharacterController_setStepOffset, CharacterController_setSlopeLimit, CharacterController_setCollision, CharacterController_setOverlapRecovery, CapsuleCharacterControllerDesc_new, CapsuleCharacterController_new, CapsuleCharacterController_setRadius, CapsuleCharacterController_setHeight, BoxCharacterControllerDesc_new, BoxCharacterController_new, BoxCharacterController_setHalfHeight, BoxCharacterController_setHalfSideExtent, BoxCharacterController_setHalfForwardExtent, emscripten__internal__MethodInvoker_void_20_28btIDebugDraw____29_28_29_2c_20void_2c_20btIDebugDraw____invoke_28void_20_28btIDebugDraw____20const__29_28_29_2c_20btIDebugDraw__29, emscripten__internal__MethodInvoker_void_20_28btDebugDraw____29_28int_2c_20int_2c_20int_29_2c_20void_2c_20btDebugDraw__2c_20int_2c_20int_2c_20int___invoke_28void_20_28btDebugDraw____20const__29_28int_2c_20int_2c_20int_29_2c_20btDebugDraw__2c_20int_2c_20int_2c_20int_29, btDebugDraw__20emscripten__base_btDebugDraw___convertPointer_btDebugDrawWrapper_2c_20btDebugDraw__28btDebugDrawWrapper__29, btDebugDrawWrapper__20emscripten__base_btDebugDraw___convertPointer_btDebugDraw_2c_20btDebugDrawWrapper__28btDebugDraw__29, emscripten__class__btDebugDraw_2c_20emscripten__internal__NoBaseClass__20const__20emscripten__class__btDebugDraw_2c_20emscripten__internal__NoBaseClass___allow_subclass_btDebugDrawWrapper__28char_20const__2c_20emscripten__constructor___29_20const___lambda__28btDebugDrawWrapper__29____invoke_28btDebugDrawWrapper__29, emscripten__internal__FunctionInvoker_void_20_28__29_28btDebugDrawWrapper__29_2c_20void_2c_20btDebugDrawWrapper____invoke_28void_20_28___29_28btDebugDrawWrapper__29_2c_20btDebugDrawWrapper__29, emscripten__internal__MethodInvoker_void_20_28btControllerHitReport____29_28int_2c_20int_29_2c_20void_2c_20btControllerHitReport__2c_20int_2c_20int___invoke_28void_20_28btControllerHitReport____20const__29_28int_2c_20int_29_2c_20btControllerHitReport__2c_20int_2c_20int_29, btControllerHitReport__20emscripten__base_btControllerHitReport___convertPointer_btControllerHitReportWrapper_2c_20btControllerHitReport__28btControllerHitReportWrapper__29, btControllerHitReportWrapper__20emscripten__base_btControllerHitReport___convertPointer_btControllerHitReport_2c_20btControllerHitReportWrapper__28btControllerHitReport__29, emscripten__class__btControllerHitReport_2c_20emscripten__internal__NoBaseClass__20const__20emscripten__class__btControllerHitReport_2c_20emscripten__internal__NoBaseClass___allow_subclass_btControllerHitReportWrapper__28char_20const__2c_20emscripten__constructor___29_20const___lambda__28btControllerHitReportWrapper__29____invoke_28btControllerHitReportWrapper__29, emscripten__internal__FunctionInvoker_void_20_28__29_28btControllerHitReportWrapper__29_2c_20void_2c_20btControllerHitReportWrapper____invoke_28void_20_28___29_28btControllerHitReportWrapper__29_2c_20btControllerHitReportWrapper__29, emscripten__internal__MethodInvoker_void_20_28cc__ccMotionState____29_28int_29_2c_20void_2c_20cc__ccMotionState__2c_20int___invoke_28void_20_28cc__ccMotionState____20const__29_28int_29_2c_20cc__ccMotionState__2c_20int_29, cc__ccMotionState__20emscripten__base_cc__ccMotionState___convertPointer_ccMotionStateWrapper_2c_20cc__ccMotionState__28ccMotionStateWrapper__29, ccMotionStateWrapper__20emscripten__base_cc__ccMotionState___convertPointer_cc__ccMotionState_2c_20ccMotionStateWrapper__28cc__ccMotionState__29, emscripten__class__cc__ccMotionState_2c_20emscripten__internal__NoBaseClass__20const__20emscripten__class__cc__ccMotionState_2c_20emscripten__internal__NoBaseClass___allow_subclass_ccMotionStateWrapper__28char_20const__2c_20emscripten__constructor___29_20const___lambda__28ccMotionStateWrapper__29____invoke_28ccMotionStateWrapper__29, emscripten__internal__FunctionInvoker_void_20_28__29_28ccMotionStateWrapper__29_2c_20void_2c_20ccMotionStateWrapper____invoke_28void_20_28___29_28ccMotionStateWrapper__29_2c_20ccMotionStateWrapper__29, emscripten__internal__Invoker_int_2c_20int___invoke_28int_20_28__29_28int_29_2c_20int_29, emscripten__internal__Invoker_void_2c_20int___invoke_28void_20_28__29_28int_29_2c_20int_29, emscripten__internal__Invoker_float_2c_20int___invoke_28float_20_28__29_28int_29_2c_20int_29, emscripten__internal__Invoker_void_2c_20int_2c_20float___invoke_28void_20_28__29_28int_2c_20float_29_2c_20int_2c_20float_29, emscripten__internal__Invoker_void_2c_20int_2c_20int___invoke_28void_20_28__29_28int_2c_20int_29_2c_20int_2c_20int_29, emscripten__internal__Invoker_int_2c_20float_2c_20float_2c_20float___invoke_28int_20_28__29_28float_2c_20float_2c_20float_29_2c_20float_2c_20float_2c_20float_29, emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20float_2c_20float___invoke_28void_20_28__29_28int_2c_20float_2c_20float_2c_20float_29_2c_20int_2c_20float_2c_20float_2c_20float_29, emscripten__internal__Invoker_int_2c_20float_2c_20float_2c_20float_2c_20float___invoke_28int_20_28__29_28float_2c_20float_2c_20float_2c_20float_29_2c_20float_2c_20float_2c_20float_2c_20float_29, emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float___invoke_28void_20_28__29_28int_2c_20float_2c_20float_2c_20float_2c_20float_29_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_29, emscripten__internal__Invoker_int___invoke_28int_20_28__29_28_29_29, emscripten__internal__Invoker_int_2c_20int_2c_20int___invoke_28int_20_28__29_28int_2c_20int_29_2c_20int_2c_20int_29, emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20int___invoke_28void_20_28__29_28int_2c_20int_2c_20int_29_2c_20int_2c_20int_2c_20int_29, emscripten__internal__Invoker_int_2c_20int_2c_20int_2c_20int_2c_20int___invoke_28int_20_28__29_28int_2c_20int_2c_20int_2c_20int_29_2c_20int_2c_20int_2c_20int_2c_20int_29, emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float___invoke_28void_20_28__29_28int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float_29_2c_20int_2c_20float_2c_20float_2c_20float_2c_20float_2c_20float_29, emscripten__internal__Invoker_void_2c_20int_2c_20bool___invoke_28void_20_28__29_28int_2c_20bool_29_2c_20int_2c_20bool_29, emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20float___invoke_28void_20_28__29_28int_2c_20float_2c_20float_29_2c_20int_2c_20float_2c_20float_29, emscripten__internal__Invoker_int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int___invoke_28int_20_28__29_28int_2c_20int_2c_20int_2c_20int_2c_20int_29_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_29, emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20float_2c_20float___invoke_28void_20_28__29_28int_2c_20int_2c_20float_2c_20float_29_2c_20int_2c_20int_2c_20float_2c_20float_29, emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20bool___invoke_28void_20_28__29_28int_2c_20int_2c_20bool_29_2c_20int_2c_20int_2c_20bool_29, emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20float___invoke_28void_20_28__29_28int_2c_20int_2c_20float_29_2c_20int_2c_20int_2c_20float_29, emscripten__internal__Invoker_bool_2c_20int___invoke_28bool_20_28__29_28int_29_2c_20int_29, emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20int___invoke_28void_20_28__29_28int_2c_20float_2c_20int_29_2c_20int_2c_20float_2c_20int_29, emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20int_2c_20int___invoke_28void_20_28__29_28int_2c_20int_2c_20int_2c_20int_29_2c_20int_2c_20int_2c_20int_2c_20int_29, emscripten__internal__Invoker_int_2c_20float___invoke_28int_20_28__29_28float_29_2c_20float_29, emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20float_2c_20int___invoke_28void_20_28__29_28int_2c_20float_2c_20float_2c_20int_29_2c_20int_2c_20float_2c_20float_2c_20int_29, emscripten__internal__Invoker_int_2c_20float_2c_20float___invoke_28int_20_28__29_28float_2c_20float_29_2c_20float_2c_20float_29, emscripten__internal__Invoker_int_2c_20int_2c_20float___invoke_28int_20_28__29_28int_2c_20float_29_2c_20int_2c_20float_29, emscripten__internal__Invoker_int_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float___invoke_28int_20_28__29_28int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29, emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20bool___invoke_28void_20_28__29_28int_2c_20int_2c_20int_2c_20int_2c_20bool_29_2c_20int_2c_20int_2c_20int_2c_20int_2c_20bool_29, emscripten__internal__Invoker_int_2c_20int_2c_20bool_2c_20bool___invoke_28int_20_28__29_28int_2c_20bool_2c_20bool_29_2c_20int_2c_20bool_2c_20bool_29, emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float___invoke_28void_20_28__29_28int_2c_20int_2c_20float_2c_20float_2c_20float_29_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29, emscripten__internal__Invoker_int_2c_20int_2c_20float_2c_20float_2c_20float___invoke_28int_20_28__29_28int_2c_20float_2c_20float_2c_20float_29_2c_20int_2c_20float_2c_20float_2c_20float_29, emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20int_2c_20bool___invoke_28void_20_28__29_28int_2c_20int_2c_20int_2c_20bool_29_2c_20int_2c_20int_2c_20int_2c_20bool_29, emscripten__internal__Invoker_int_2c_20float_2c_20int___invoke_28int_20_28__29_28float_2c_20int_29_2c_20float_2c_20int_29, emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int___invoke_28void_20_28__29_28int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int_29_2c_20int_2c_20int_2c_20unsigned_20int_2c_20unsigned_20int_29, emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float___invoke_28void_20_28__29_28int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float_29_2c_20int_2c_20int_2c_20int_2c_20int_2c_20int_2c_20float_29, emscripten__internal__Invoker_int_2c_20int_2c_20int_2c_20int___invoke_28int_20_28__29_28int_2c_20int_2c_20int_29_2c_20int_2c_20int_2c_20int_29, emscripten__internal__Invoker_void_2c_20int_2c_20float_2c_20int_2c_20float___invoke_28void_20_28__29_28int_2c_20float_2c_20int_2c_20float_29_2c_20int_2c_20float_2c_20int_2c_20float_29, emscripten__internal__Invoker_void_2c_20int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool___invoke_28void_20_28__29_28int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29_2c_20int_2c_20int_2c_20int_2c_20unsigned_20int_2c_20bool_29, emscripten__internal__Invoker_int_2c_20int_2c_20int_2c_20float_2c_20float___invoke_28int_20_28__29_28int_2c_20int_2c_20float_2c_20float_29_2c_20int_2c_20int_2c_20float_2c_20float_29, emscripten__internal__Invoker_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float___invoke_28int_20_28__29_28float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_29_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_29, emscripten__internal__Invoker_int_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float___invoke_28int_20_28__29_28float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29_2c_20float_2c_20float_2c_20float_2c_20int_2c_20int_2c_20int_2c_20float_2c_20float_2c_20float_29, cc__ccClosestRayResultCallback___ccClosestRayResultCallback_28_29, cc__ccClosestRayResultCallback___ccClosestRayResultCallback_28_29_1, cc__ccClosestRayResultCallback__needsCollision_28btBroadphaseProxy__29_20const, cc__ccClosestRayResultCallback__addSingleResult_28btCollisionWorld__LocalRayResult__2c_20bool_29, btCollisionWorld__ClosestRayResultCallback___ClosestRayResultCallback_28_29, btCollisionWorld__ClosestRayResultCallback___ClosestRayResultCallback_28_29_1, btCollisionWorld__RayResultCallback__needsCollision_28btBroadphaseProxy__29_20const, btCollisionWorld__ClosestRayResultCallback__addSingleResult_28btCollisionWorld__LocalRayResult__2c_20bool_29, btCollisionWorld__RayResultCallback___RayResultCallback_28_29, btCollisionWorld__RayResultCallback___RayResultCallback_28_29_1, __cxa_pure_virtual, cc__ccAllHitsRayResultCallback___ccAllHitsRayResultCallback_28_29, cc__ccAllHitsRayResultCallback___ccAllHitsRayResultCallback_28_29_1, cc__ccAllHitsRayResultCallback__needsCollision_28btBroadphaseProxy__29_20const, cc__ccAllHitsRayResultCallback__addSingleResult_28btCollisionWorld__LocalRayResult__2c_20bool_29, btCollisionWorld__AllHitsRayResultCallback___AllHitsRayResultCallback_28_29, btCollisionWorld__AllHitsRayResultCallback___AllHitsRayResultCallback_28_29_1, btCollisionWorld__AllHitsRayResultCallback__addSingleResult_28btCollisionWorld__LocalRayResult__2c_20bool_29, cc__ccClosestConvexResultCallback___ccClosestConvexResultCallback_28_29, cc__ccClosestConvexResultCallback___ccClosestConvexResultCallback_28_29_1, cc__ccClosestConvexResultCallback__needsCollision_28btBroadphaseProxy__29_20const, cc__ccClosestConvexResultCallback__addSingleResult_28btCollisionWorld__LocalConvexResult__2c_20bool_29, btCollisionWorld__ClosestConvexResultCallback___ClosestConvexResultCallback_28_29, btCollisionWorld__ClosestConvexResultCallback___ClosestConvexResultCallback_28_29_1, btCollisionWorld__ConvexResultCallback__needsCollision_28btBroadphaseProxy__29_20const, btCollisionWorld__ClosestConvexResultCallback__addSingleResult_28btCollisionWorld__LocalConvexResult__2c_20bool_29, btCollisionWorld__ConvexResultCallback___ConvexResultCallback_28_29, btCollisionWorld__ConvexResultCallback___ConvexResultCallback_28_29_1, cc__ccAllHitsConvexResultCallback___ccAllHitsConvexResultCallback_28_29, cc__ccAllHitsConvexResultCallback___ccAllHitsConvexResultCallback_28_29_1, cc__ccAllHitsConvexResultCallback__needsCollision_28btBroadphaseProxy__29_20const, cc__ccAllHitsConvexResultCallback__addSingleResult_28btCollisionWorld__LocalConvexResult__2c_20bool_29, btCollisionWorld__AllHitsConvexResultCallback___AllHitsConvexResultCallback_28_29, btCollisionWorld__AllHitsConvexResultCallback___AllHitsConvexResultCallback_28_29_1, btCollisionWorld__AllHitsConvexResultCallback__addSingleResult_28btCollisionWorld__LocalConvexResult__2c_20bool_29, cc__ccCompoundShape___ccCompoundShape_28_29, cc__ccCompoundShape___ccCompoundShape_28_29_1, btCompoundShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const, btCollisionShape__getBoundingSphere_28btVector3__2c_20float__29_20const, btCollisionShape__getAngularMotionDisc_28_29_20const, btCollisionShape__getContactBreakingThreshold_28float_29_20const, btCompoundShape__setLocalScaling_28btVector3_20const__29, btCompoundShape__getLocalScaling_28_29_20const, btCompoundShape__calculateLocalInertia_28float_2c_20btVector3__29_20const, btCompoundShape__getName_28_29_20const, btCollisionShape__getAnisotropicRollingFrictionDirection_28_29_20const, btCompoundShape__setMargin_28float_29, btCompoundShape__getMargin_28_29_20const, btCompoundShape__calculateSerializeBufferSize_28_29_20const, btCompoundShape__serialize_28void__2c_20btSerializer__29_20const, btCollisionShape__serializeSingleShape_28btSerializer__29_20const, btCompoundShape__removeChildShape_28btCollisionShape__29, btCompoundShape__recalculateLocalAabb_28_29, btMotionState___btMotionState_28_29, btMotionState___btMotionState_28_29_1, btDebugDrawWrapper___btDebugDrawWrapper_28_29, btDebugDrawWrapper___btDebugDrawWrapper_28_29_1, btDebugDraw__getDefaultColors_28_29_20const, btDebugDraw__setDefaultColors_28btIDebugDraw__DefaultColors_20const__29, btDebugDraw__drawLine_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29, btIDebugDraw__drawLine_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29, btIDebugDraw__drawSphere_28float_2c_20btTransform_20const__2c_20btVector3_20const__29, btIDebugDraw__drawSphere_28btVector3_20const__2c_20float_2c_20btVector3_20const__29, btIDebugDraw__drawTriangle_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_29, btIDebugDraw__drawTriangle_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_29, btDebugDraw__drawContactPoint_28btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20int_2c_20btVector3_20const__29, btDebugDraw__reportErrorWarning_28char_20const__29, btDebugDraw__draw3dText_28btVector3_20const__2c_20char_20const__29, btDebugDraw__setDebugMode_28int_29, btDebugDraw__getDebugMode_28_29_20const, btIDebugDraw__drawAabb_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29, btIDebugDraw__drawTransform_28btTransform_20const__2c_20float_29, btIDebugDraw__drawArc_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20float_2c_20float_2c_20float_2c_20btVector3_20const__2c_20bool_2c_20float_29, btIDebugDraw__drawSpherePatch_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20float_2c_20float_2c_20float_2c_20float_2c_20btVector3_20const__2c_20float_2c_20bool_29, btIDebugDraw__drawBox_28btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29, btIDebugDraw__drawBox_28btVector3_20const__2c_20btVector3_20const__2c_20btTransform_20const__2c_20btVector3_20const__29, btIDebugDraw__drawCapsule_28float_2c_20float_2c_20int_2c_20btTransform_20const__2c_20btVector3_20const__29, btIDebugDraw__drawCylinder_28float_2c_20float_2c_20int_2c_20btTransform_20const__2c_20btVector3_20const__29, btIDebugDraw__drawCone_28float_2c_20float_2c_20int_2c_20btTransform_20const__2c_20btVector3_20const__29, btIDebugDraw__drawPlane_28btVector3_20const__2c_20float_2c_20btTransform_20const__2c_20btVector3_20const__29, btDebugDrawWrapper__clearLines_28_29, btDebugDrawWrapper__flushLines_28_29, btDebugDrawWrapper__onDebugDrawLine_28int_2c_20int_2c_20int_29, emscripten__wrapper_btDebugDraw____wrapper_28_29, emscripten__wrapper_btDebugDraw____wrapper_28_29_1, btIDebugDraw__clearLines_28_29, btIDebugDraw__flushLines_28_29, btDebugDraw___btDebugDraw_28_29, btDebugDraw___btDebugDraw_28_29_1, btIDebugDraw___btIDebugDraw_28_29, btIDebugDraw___btIDebugDraw_28_29_1, btIDebugDraw__getDefaultColors_28_29_20const, btIDebugDraw__setDefaultColors_28btIDebugDraw__DefaultColors_20const__29, btControllerHitReport__onShapeHit_28btControllerShapeHit_20const__29, btControllerHitReport__onControllerHit_28btControllersHit_20const__29, btControllerHitReportWrapper___btControllerHitReportWrapper_28_29, btControllerHitReportWrapper___btControllerHitReportWrapper_28_29_1, btControllerHitReportWrapper__onShapeHitExt_28int_2c_20int_29, emscripten__wrapper_btControllerHitReport____wrapper_28_29, emscripten__wrapper_btControllerHitReport____wrapper_28_29_1, btControllerHitReport___btControllerHitReport_28_29, btControllerHitReport___btControllerHitReport_28_29_1, btUserControllerHitReport___btUserControllerHitReport_28_29, btUserControllerHitReport___btUserControllerHitReport_28_29_1, ccMotionStateWrapper___ccMotionStateWrapper_28_29, ccMotionStateWrapper___ccMotionStateWrapper_28_29_1, cc__ccMotionState__getWorldTransform_28btTransform__29_20const, cc__ccMotionState__setWorldTransform_28btTransform_20const__29, ccMotionStateWrapper__syncPhysicsToGraphics_28int_29, emscripten__wrapper_cc__ccMotionState____wrapper_28_29, emscripten__wrapper_cc__ccMotionState____wrapper_28_29_1, cc__ccMotionState___ccMotionState_28_29, cc__ccMotionState___ccMotionState_28_29_1, btAlignedAllocDefault_28unsigned_20long_2c_20int_29, btAlignedFreeDefault_28void__29, btAllocDefault_28unsigned_20long_29, btFreeDefault_28void__29, btDbvtBroadphase___btDbvtBroadphase_28_29, btDbvtBroadphase___btDbvtBroadphase_28_29_1, btDbvtBroadphase__createProxy_28btVector3_20const__2c_20btVector3_20const__2c_20int_2c_20void__2c_20int_2c_20int_2c_20btDispatcher__29, btDbvtBroadphase__destroyProxy_28btBroadphaseProxy__2c_20btDispatcher__29, btDbvtBroadphase__setAabb_28btBroadphaseProxy__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btDispatcher__29, btDbvtBroadphase__getAabb_28btBroadphaseProxy__2c_20btVector3__2c_20btVector3__29_20const, btDbvtBroadphase__rayTest_28btVector3_20const__2c_20btVector3_20const__2c_20btBroadphaseRayCallback__2c_20btVector3_20const__2c_20btVector3_20const__29, btDbvtBroadphase__aabbTest_28btVector3_20const__2c_20btVector3_20const__2c_20btBroadphaseAabbCallback__29, btDbvtBroadphase__calculateOverlappingPairs_28btDispatcher__29, btDbvtBroadphase__getOverlappingPairCache_28_29, btDbvtBroadphase__getOverlappingPairCache_28_29_20const, btDbvtBroadphase__getBroadphaseAabb_28btVector3__2c_20btVector3__29_20const, btDbvtBroadphase__resetPool_28btDispatcher__29, btDbvtBroadphase__printStats_28_29, btBroadphaseInterface___btBroadphaseInterface_28_29, btBroadphaseInterface___btBroadphaseInterface_28_29_1, btBroadphaseInterface__resetPool_28btDispatcher__29, btDbvtTreeCollider___btDbvtTreeCollider_28_29, btDbvtTreeCollider___btDbvtTreeCollider_28_29_1, btDbvtTreeCollider__Process_28btDbvtNode_20const__2c_20btDbvtNode_20const__29, btDbvtTreeCollider__Process_28btDbvtNode_20const__29, btDbvt__ICollide__Process_28btDbvtNode_20const__2c_20float_29, btDbvt__ICollide__Descent_28btDbvtNode_20const__29, btDbvt__ICollide__AllLeaves_28btDbvtNode_20const__29, btDbvt__ICollide___ICollide_28_29, btDbvt__ICollide___ICollide_28_29_1, btDbvt__ICollide__Process_28btDbvtNode_20const__2c_20btDbvtNode_20const__29, btDbvt__ICollide__Process_28btDbvtNode_20const__29, BroadphaseRayTester___BroadphaseRayTester_28_29, BroadphaseRayTester___BroadphaseRayTester_28_29_1, BroadphaseRayTester__Process_28btDbvtNode_20const__29, BroadphaseAabbTester___BroadphaseAabbTester_28_29, BroadphaseAabbTester___BroadphaseAabbTester_28_29_1, BroadphaseAabbTester__Process_28btDbvtNode_20const__29, btEnterProfileZoneDefault_28char_20const__29, btLeaveProfileZoneDefault_28_29, btHashedOverlappingPairCache___btHashedOverlappingPairCache_28_29, btHashedOverlappingPairCache___btHashedOverlappingPairCache_28_29_1, btHashedOverlappingPairCache__addOverlappingPair_28btBroadphaseProxy__2c_20btBroadphaseProxy__29, btHashedOverlappingPairCache__removeOverlappingPair_28btBroadphaseProxy__2c_20btBroadphaseProxy__2c_20btDispatcher__29, btHashedOverlappingPairCache__removeOverlappingPairsContainingProxy_28btBroadphaseProxy__2c_20btDispatcher__29, btHashedOverlappingPairCache__getOverlappingPairArrayPtr_28_29, btHashedOverlappingPairCache__getOverlappingPairArrayPtr_28_29_20const, btHashedOverlappingPairCache__getOverlappingPairArray_28_29, btHashedOverlappingPairCache__cleanOverlappingPair_28btBroadphasePair__2c_20btDispatcher__29, btHashedOverlappingPairCache__getNumOverlappingPairs_28_29_20const, btHashedOverlappingPairCache__cleanProxyFromPairs_28btBroadphaseProxy__2c_20btDispatcher__29, btHashedOverlappingPairCache__setOverlapFilterCallback_28btOverlapFilterCallback__29, btHashedOverlappingPairCache__processAllOverlappingPairs_28btOverlapCallback__2c_20btDispatcher__29, btHashedOverlappingPairCache__findPair_28btBroadphaseProxy__2c_20btBroadphaseProxy__29, btHashedOverlappingPairCache__hasDeferredRemoval_28_29, btHashedOverlappingPairCache__setInternalGhostPairCallback_28btOverlappingPairCallback__29, btHashedOverlappingPairCache__sortOverlappingPairs_28btDispatcher__29, btOverlappingPairCache___btOverlappingPairCache_28_29, btOverlappingPairCache___btOverlappingPairCache_28_29_1, btOverlappingPairCallback___btOverlappingPairCallback_28_29, btOverlappingPairCallback___btOverlappingPairCallback_28_29_1, btHashedOverlappingPairCache__cleanProxyFromPairs_28btBroadphaseProxy__2c_20btDispatcher__29__CleanPairCallback___CleanPairCallback_28_29, btHashedOverlappingPairCache__cleanProxyFromPairs_28btBroadphaseProxy__2c_20btDispatcher__29__CleanPairCallback___CleanPairCallback_28_29_1, btHashedOverlappingPairCache__cleanProxyFromPairs_28btBroadphaseProxy__2c_20btDispatcher__29__CleanPairCallback__processOverlap_28btBroadphasePair__29, btOverlapCallback___btOverlapCallback_28_29, btOverlapCallback___btOverlapCallback_28_29_1, btHashedOverlappingPairCache__removeOverlappingPairsContainingProxy_28btBroadphaseProxy__2c_20btDispatcher__29__RemovePairCallback___RemovePairCallback_28_29, btHashedOverlappingPairCache__removeOverlappingPairsContainingProxy_28btBroadphaseProxy__2c_20btDispatcher__29__RemovePairCallback___RemovePairCallback_28_29_1, btHashedOverlappingPairCache__removeOverlappingPairsContainingProxy_28btBroadphaseProxy__2c_20btDispatcher__29__RemovePairCallback__processOverlap_28btBroadphasePair__29, btDispatcher___btDispatcher_28_29, btDispatcher___btDispatcher_28_29_1, btCollisionDispatcher__defaultNearCallback_28btBroadphasePair__2c_20btCollisionDispatcher__2c_20btDispatcherInfo_20const__29, btCollisionDispatcher___btCollisionDispatcher_28_29, btCollisionDispatcher___btCollisionDispatcher_28_29_1, btCollisionDispatcher__findAlgorithm_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btPersistentManifold__2c_20ebtDispatcherQueryType_29, btCollisionDispatcher__getNewManifold_28btCollisionObject_20const__2c_20btCollisionObject_20const__29, btCollisionDispatcher__releaseManifold_28btPersistentManifold__29, btCollisionDispatcher__clearManifold_28btPersistentManifold__29, btCollisionDispatcher__needsCollision_28btCollisionObject_20const__2c_20btCollisionObject_20const__29, btCollisionDispatcher__needsResponse_28btCollisionObject_20const__2c_20btCollisionObject_20const__29, btCollisionDispatcher__dispatchAllCollisionPairs_28btOverlappingPairCache__2c_20btDispatcherInfo_20const__2c_20btDispatcher__29, btCollisionDispatcher__getNumManifolds_28_29_20const, btCollisionDispatcher__getManifoldByIndexInternal_28int_29, btCollisionDispatcher__getInternalManifoldPointer_28_29, btCollisionDispatcher__getInternalManifoldPool_28_29, btCollisionDispatcher__getInternalManifoldPool_28_29_20const, btCollisionDispatcher__allocateCollisionAlgorithm_28int_29, btCollisionDispatcher__freeCollisionAlgorithm_28void__29, btDiscreteCollisionDetectorInterface__Result___Result_28_29, btDiscreteCollisionDetectorInterface__Result___Result_28_29_1, btCollisionPairCallback___btCollisionPairCallback_28_29, btCollisionPairCallback___btCollisionPairCallback_28_29_1, btCollisionPairCallback__processOverlap_28btBroadphasePair__29, btCollisionObject___btCollisionObject_28_29, btCollisionObject___btCollisionObject_28_29_1, btCollisionObject__setCollisionShape_28btCollisionShape__29, btCollisionObject__checkCollideWithOverride_28btCollisionObject_20const__29_20const, btCollisionObject__calculateSerializeBufferSize_28_29_20const, btCollisionObject__serialize_28void__2c_20btSerializer__29_20const, btCollisionObject__serializeSingleObject_28btSerializer__29_20const, btCollisionWorld___btCollisionWorld_28_29, btCollisionWorld___btCollisionWorld_28_29_1, btCollisionWorld__updateAabbs_28_29, btCollisionWorld__computeOverlappingPairs_28_29, btCollisionWorld__setDebugDrawer_28btIDebugDraw__29, btCollisionWorld__getDebugDrawer_28_29, btCollisionWorld__debugDrawWorld_28_29, btCollisionWorld__debugDrawObject_28btTransform_20const__2c_20btCollisionShape_20const__2c_20btVector3_20const__29, btCollisionWorld__rayTest_28btVector3_20const__2c_20btVector3_20const__2c_20btCollisionWorld__RayResultCallback__29_20const, btCollisionWorld__addCollisionObject_28btCollisionObject__2c_20int_2c_20int_29, btCollisionWorld__removeCollisionObject_28btCollisionObject__29, btCollisionWorld__performDiscreteCollisionDetection_28_29, btCollisionWorld__serialize_28btSerializer__29, btConvexCast__CastResult__DebugDraw_28float_29, btConvexCast__CastResult__drawCoordSystem_28btTransform_20const__29, btConvexCast__CastResult__reportFailure_28int_2c_20int_29, btConvexCast__CastResult___CastResult_28_29, btConvexCast__CastResult___CastResult_28_29_1, btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__BridgeTriangleRaycastCallback___BridgeTriangleRaycastCallback_28_29, btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__BridgeTriangleRaycastCallback___BridgeTriangleRaycastCallback_28_29_1, btTriangleRaycastCallback__processTriangle_28btVector3__2c_20int_2c_20int_29, btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__BridgeTriangleRaycastCallback__reportHit_28btVector3_20const__2c_20float_2c_20int_2c_20int_29, btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__RayTester___RayTester_28_29, btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__RayTester___RayTester_28_29_1, btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__RayTester__Process_28btDbvtNode_20const__29, btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__LocalInfoAdder2___LocalInfoAdder2_28_29, btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__LocalInfoAdder2___LocalInfoAdder2_28_29_1, btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__LocalInfoAdder2__needsCollision_28btBroadphaseProxy__29_20const, btCollisionWorld__rayTestSingleInternal_28btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__RayResultCallback__29__LocalInfoAdder2__addSingleResult_28btCollisionWorld__LocalRayResult__2c_20bool_29, btConvexPenetrationDepthSolver___btConvexPenetrationDepthSolver_28_29, btConvexPenetrationDepthSolver___btConvexPenetrationDepthSolver_28_29_1, btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__BridgeTriangleConvexcastCallback___BridgeTriangleConvexcastCallback_28_29, btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__BridgeTriangleConvexcastCallback___BridgeTriangleConvexcastCallback_28_29_2, btTriangleConvexcastCallback__processTriangle_28btVector3__2c_20int_2c_20int_29, btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__BridgeTriangleConvexcastCallback__reportHit_28btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20int_2c_20int_29, btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__BridgeTriangleConvexcastCallback___BridgeTriangleConvexcastCallback_28_29_1, btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__BridgeTriangleConvexcastCallback___BridgeTriangleConvexcastCallback_28_29_3, btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__BridgeTriangleConvexcastCallback__reportHit_28btVector3_20const__2c_20btVector3_20const__2c_20float_2c_20int_2c_20int_29_1, btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__btCompoundLeafCallback___btCompoundLeafCallback_28_29, btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__btCompoundLeafCallback___btCompoundLeafCallback_28_29_1, btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__btCompoundLeafCallback__Process_28btDbvtNode_20const__29, btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__btCompoundLeafCallback__ProcessChild_28int_2c_20btTransform_20const__2c_20btCollisionShape_20const__29__LocalInfoAdder___LocalInfoAdder_28_29, btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__btCompoundLeafCallback__ProcessChild_28int_2c_20btTransform_20const__2c_20btCollisionShape_20const__29__LocalInfoAdder___LocalInfoAdder_28_29_1, btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__btCompoundLeafCallback__ProcessChild_28int_2c_20btTransform_20const__2c_20btCollisionShape_20const__29__LocalInfoAdder__needsCollision_28btBroadphaseProxy__29_20const, btCollisionWorld__objectQuerySingleInternal_28btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionWorld__ConvexResultCallback__2c_20float_29__btCompoundLeafCallback__ProcessChild_28int_2c_20btTransform_20const__2c_20btCollisionShape_20const__29__LocalInfoAdder__addSingleResult_28btCollisionWorld__LocalConvexResult__2c_20bool_29, btSingleRayCallback___btSingleRayCallback_28_29, btSingleRayCallback___btSingleRayCallback_28_29_1, btSingleRayCallback__process_28btBroadphaseProxy_20const__29, btBroadphaseRayCallback___btBroadphaseRayCallback_28_29, btBroadphaseRayCallback___btBroadphaseRayCallback_28_29_1, btBroadphaseAabbCallback___btBroadphaseAabbCallback_28_29, btBroadphaseAabbCallback___btBroadphaseAabbCallback_28_29_1, btSingleSweepCallback___btSingleSweepCallback_28_29, btSingleSweepCallback___btSingleSweepCallback_28_29_1, btSingleSweepCallback__process_28btBroadphaseProxy_20const__29, DebugDrawcallback___DebugDrawcallback_28_29, DebugDrawcallback___DebugDrawcallback_28_29_1, DebugDrawcallback__processTriangle_28btVector3__2c_20int_2c_20int_29, DebugDrawcallback__internalProcessTriangleIndex_28btVector3__2c_20int_2c_20int_29, non_virtual_20thunk_20to_20DebugDrawcallback___DebugDrawcallback_28_29, non_virtual_20thunk_20to_20DebugDrawcallback___DebugDrawcallback_28_29_1, non_virtual_20thunk_20to_20DebugDrawcallback__internalProcessTriangleIndex_28btVector3__2c_20int_2c_20int_29, btCollisionAlgorithm___btCollisionAlgorithm_28_29_1, btCollisionAlgorithm___btCollisionAlgorithm_28_29, btActivatingCollisionAlgorithm___btActivatingCollisionAlgorithm_28_29, btActivatingCollisionAlgorithm___btActivatingCollisionAlgorithm_28_29_1, btConvexConvexAlgorithm__CreateFunc___CreateFunc_28_29, btConvexConvexAlgorithm___btConvexConvexAlgorithm_28_29, btConvexConvexAlgorithm__btConvexConvexAlgorithm_28btPersistentManifold__2c_20btCollisionAlgorithmConstructionInfo_20const__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btConvexPenetrationDepthSolver__2c_20int_2c_20int_29, btConvexConvexAlgorithm__CreateFunc___CreateFunc_28_29_1, btConvexConvexAlgorithm__CreateFunc__CreateCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29, btConvexConvexAlgorithm___btConvexConvexAlgorithm_28_29_1, btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29, btConvexConvexAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29, btConvexConvexAlgorithm__getAllContactManifolds_28btAlignedObjectArray_btPersistentManifold____29, btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btDummyResult___btDummyResult_28_29, btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btDummyResult___btDummyResult_28_29_1, btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btDummyResult__setShapeIdentifiersA_28int_2c_20int_29, btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btDummyResult__setShapeIdentifiersB_28int_2c_20int_29, btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btDummyResult__addContactPoint_28btVector3_20const__2c_20btVector3_20const__2c_20float_29, btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btWithoutMarginResult___btWithoutMarginResult_28_29, btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btWithoutMarginResult___btWithoutMarginResult_28_29_1, btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btWithoutMarginResult__setShapeIdentifiersA_28int_2c_20int_29, btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btWithoutMarginResult__setShapeIdentifiersB_28int_2c_20int_29, btConvexConvexAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__btWithoutMarginResult__addContactPoint_28btVector3_20const__2c_20btVector3_20const__2c_20float_29, btPerturbedContactResult___btPerturbedContactResult_28_29, btPerturbedContactResult___btPerturbedContactResult_28_29_1, btManifoldResult__setShapeIdentifiersA_28int_2c_20int_29, btManifoldResult__setShapeIdentifiersB_28int_2c_20int_29, btPerturbedContactResult__addContactPoint_28btVector3_20const__2c_20btVector3_20const__2c_20float_29, btConvexTriangleCallback__btConvexTriangleCallback_28btDispatcher__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20bool_29, btConvexTriangleCallback___btConvexTriangleCallback_28_29, btConvexConcaveCollisionAlgorithm___btConvexConcaveCollisionAlgorithm_28_29, btConvexConcaveCollisionAlgorithm___btConvexConcaveCollisionAlgorithm_28_29_1, btConvexConcaveCollisionAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29, btConvexConcaveCollisionAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29, btConvexConcaveCollisionAlgorithm__getAllContactManifolds_28btAlignedObjectArray_btPersistentManifold____29, btConvexTriangleCallback___btConvexTriangleCallback_28_29_1, btConvexTriangleCallback__processTriangle_28btVector3__2c_20int_2c_20int_29, btTriangleShape___btTriangleShape_28_29, btTriangleShape___btTriangleShape_28_29_1, btTriangleShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const, btConvexInternalShape__setLocalScaling_28btVector3_20const__29, btConvexInternalShape__getLocalScaling_28_29_20const, btTriangleShape__calculateLocalInertia_28float_2c_20btVector3__29_20const, btTriangleShape__getName_28_29_20const, btConvexInternalShape__setMargin_28float_29, btConvexInternalShape__getMargin_28_29_20const, btConvexInternalShape__calculateSerializeBufferSize_28_29_20const, btConvexInternalShape__serialize_28void__2c_20btSerializer__29_20const, btConvexInternalShape__localGetSupportingVertex_28btVector3_20const__29_20const, btTriangleShape__localGetSupportingVertexWithoutMargin_28btVector3_20const__29_20const, btConvexShape__project_28btTransform_20const__2c_20btVector3_20const__2c_20float__2c_20float__2c_20btVector3__2c_20btVector3__29_20const, btTriangleShape__batchedUnitVectorGetSupportingVertexWithoutMargin_28btVector3_20const__2c_20btVector3__2c_20int_29_20const, btConvexInternalShape__getAabbSlow_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const, btTriangleShape__getNumPreferredPenetrationDirections_28_29_20const, btTriangleShape__getPreferredPenetrationDirection_28int_2c_20btVector3__29_20const, btPolyhedralConvexShape__initializePolyhedralFeatures_28int_29, btTriangleShape__getNumVertices_28_29_20const, btTriangleShape__getNumEdges_28_29_20const, btTriangleShape__getEdge_28int_2c_20btVector3__2c_20btVector3__29_20const, btTriangleShape__getVertex_28int_2c_20btVector3__29_20const, btTriangleShape__getNumPlanes_28_29_20const, btTriangleShape__getPlane_28btVector3__2c_20btVector3__2c_20int_29_20const, btTriangleShape__isInside_28btVector3_20const__2c_20float_29_20const, btTriangleShape__getPlaneEquation_28int_2c_20btVector3__2c_20btVector3__29_20const, btConvexConcaveCollisionAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__LocalTriangleSphereCastCallback___LocalTriangleSphereCastCallback_28_29, btConvexConcaveCollisionAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__LocalTriangleSphereCastCallback___LocalTriangleSphereCastCallback_28_29_1, btConvexConcaveCollisionAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29__LocalTriangleSphereCastCallback__processTriangle_28btVector3__2c_20int_2c_20int_29, btCompoundCollisionAlgorithm___btCompoundCollisionAlgorithm_28_29, btCompoundCollisionAlgorithm___btCompoundCollisionAlgorithm_28_29_1, btCompoundCollisionAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29, btCompoundCollisionAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29, btCompoundCollisionAlgorithm__getAllContactManifolds_28btAlignedObjectArray_btPersistentManifold____29, btCompoundLeafCallback___btCompoundLeafCallback_28_29, btCompoundLeafCallback___btCompoundLeafCallback_28_29_1, btCompoundLeafCallback__Process_28btDbvtNode_20const__29, btCompoundCompoundCollisionAlgorithm___btCompoundCompoundCollisionAlgorithm_28_29, btCompoundCompoundCollisionAlgorithm___btCompoundCompoundCollisionAlgorithm_28_29_1, btCompoundCompoundCollisionAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29, btCompoundCompoundCollisionAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29, btCompoundCompoundCollisionAlgorithm__getAllContactManifolds_28btAlignedObjectArray_btPersistentManifold____29, btCompoundCompoundLeafCallback___btCompoundCompoundLeafCallback_28_29, btCompoundCompoundLeafCallback___btCompoundCompoundLeafCallback_28_29_1, btCompoundCompoundLeafCallback__Process_28btDbvtNode_20const__2c_20btDbvtNode_20const__29, btBoxBoxDetector___btBoxBoxDetector_28_29_1, btBoxBoxDetector___btBoxBoxDetector_28_29, btBoxBoxDetector__getClosestPoints_28btDiscreteCollisionDetectorInterface__ClosestPointInput_20const__2c_20btDiscreteCollisionDetectorInterface__Result__2c_20btIDebugDraw__2c_20bool_29, btDiscreteCollisionDetectorInterface___btDiscreteCollisionDetectorInterface_28_29, btDiscreteCollisionDetectorInterface___btDiscreteCollisionDetectorInterface_28_29_1, btBoxBoxCollisionAlgorithm___btBoxBoxCollisionAlgorithm_28_29, btBoxBoxCollisionAlgorithm___btBoxBoxCollisionAlgorithm_28_29_1, btBoxBoxCollisionAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29, btBoxBoxCollisionAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29, btBoxBoxCollisionAlgorithm__getAllContactManifolds_28btAlignedObjectArray_btPersistentManifold____29, btConvexPlaneCollisionAlgorithm___btConvexPlaneCollisionAlgorithm_28_29, btConvexPlaneCollisionAlgorithm___btConvexPlaneCollisionAlgorithm_28_29_1, btConvexPlaneCollisionAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29, btConvexPlaneCollisionAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29, btConvexPlaneCollisionAlgorithm__getAllContactManifolds_28btAlignedObjectArray_btPersistentManifold____29, btDefaultCollisionConfiguration___btDefaultCollisionConfiguration_28_29, btDefaultCollisionConfiguration___btDefaultCollisionConfiguration_28_29_1, btDefaultCollisionConfiguration__getPersistentManifoldPool_28_29, btDefaultCollisionConfiguration__getCollisionAlgorithmPool_28_29, btDefaultCollisionConfiguration__getCollisionAlgorithmCreateFunc_28int_2c_20int_29, btDefaultCollisionConfiguration__getClosestPointsAlgorithmCreateFunc_28int_2c_20int_29, btCollisionConfiguration___btCollisionConfiguration_28_29, btCollisionConfiguration___btCollisionConfiguration_28_29_1, btConvexConcaveCollisionAlgorithm__CreateFunc___CreateFunc_28_29, btConvexConcaveCollisionAlgorithm__CreateFunc___CreateFunc_28_29_1, btConvexConcaveCollisionAlgorithm__CreateFunc__CreateCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29, btCollisionAlgorithmCreateFunc___btCollisionAlgorithmCreateFunc_28_29, btCollisionAlgorithmCreateFunc___btCollisionAlgorithmCreateFunc_28_29_1, btCollisionAlgorithmCreateFunc__CreateCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29, btConvexConcaveCollisionAlgorithm__SwappedCreateFunc___SwappedCreateFunc_28_29, btConvexConcaveCollisionAlgorithm__SwappedCreateFunc___SwappedCreateFunc_28_29_1, btConvexConcaveCollisionAlgorithm__SwappedCreateFunc__CreateCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29, btCompoundCollisionAlgorithm__CreateFunc___CreateFunc_28_29, btCompoundCollisionAlgorithm__CreateFunc___CreateFunc_28_29_1, btCompoundCollisionAlgorithm__CreateFunc__CreateCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29, btCompoundCompoundCollisionAlgorithm__CreateFunc___CreateFunc_28_29, btCompoundCompoundCollisionAlgorithm__CreateFunc___CreateFunc_28_29_1, btCompoundCompoundCollisionAlgorithm__CreateFunc__CreateCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29, btCompoundCollisionAlgorithm__SwappedCreateFunc___SwappedCreateFunc_28_29, btCompoundCollisionAlgorithm__SwappedCreateFunc___SwappedCreateFunc_28_29_1, btCompoundCollisionAlgorithm__SwappedCreateFunc__CreateCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29, btEmptyAlgorithm__CreateFunc___CreateFunc_28_29, btEmptyAlgorithm__CreateFunc___CreateFunc_28_29_1, btEmptyAlgorithm__CreateFunc__CreateCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29, btSphereSphereCollisionAlgorithm__CreateFunc___CreateFunc_28_29, btSphereSphereCollisionAlgorithm__CreateFunc___CreateFunc_28_29_1, btSphereSphereCollisionAlgorithm__CreateFunc__CreateCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29, btSphereTriangleCollisionAlgorithm__CreateFunc___CreateFunc_28_29, btSphereTriangleCollisionAlgorithm__CreateFunc___CreateFunc_28_29_1, btSphereTriangleCollisionAlgorithm__CreateFunc__CreateCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29, btBoxBoxCollisionAlgorithm__CreateFunc___CreateFunc_28_29, btBoxBoxCollisionAlgorithm__CreateFunc___CreateFunc_28_29_1, btBoxBoxCollisionAlgorithm__CreateFunc__CreateCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29, btConvexPlaneCollisionAlgorithm__CreateFunc___CreateFunc_28_29, btConvexPlaneCollisionAlgorithm__CreateFunc___CreateFunc_28_29_1, btConvexPlaneCollisionAlgorithm__CreateFunc__CreateCollisionAlgorithm_28btCollisionAlgorithmConstructionInfo__2c_20btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__29, btEmptyAlgorithm___btEmptyAlgorithm_28_29, btEmptyAlgorithm___btEmptyAlgorithm_28_29_1, btEmptyAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29, btEmptyAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29, btEmptyAlgorithm__getAllContactManifolds_28btAlignedObjectArray_btPersistentManifold____29, btHashedSimplePairCache___btHashedSimplePairCache_28_29, btHashedSimplePairCache___btHashedSimplePairCache_28_29_1, btHashedSimplePairCache__removeOverlappingPair_28int_2c_20int_29, btHashedSimplePairCache__addOverlappingPair_28int_2c_20int_29, btHashedSimplePairCache__getOverlappingPairArrayPtr_28_29, btManifoldResult___btManifoldResult_28_29, btManifoldResult___btManifoldResult_28_29_1, btManifoldResult__addContactPoint_28btVector3_20const__2c_20btVector3_20const__2c_20float_29, btSphereSphereCollisionAlgorithm___btSphereSphereCollisionAlgorithm_28_29, btSphereSphereCollisionAlgorithm___btSphereSphereCollisionAlgorithm_28_29_1, btSphereSphereCollisionAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29, btSphereSphereCollisionAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29, btSphereSphereCollisionAlgorithm__getAllContactManifolds_28btAlignedObjectArray_btPersistentManifold____29, btSphereTriangleCollisionAlgorithm___btSphereTriangleCollisionAlgorithm_28_29, btSphereTriangleCollisionAlgorithm___btSphereTriangleCollisionAlgorithm_28_29_1, btSphereTriangleCollisionAlgorithm__processCollision_28btCollisionObjectWrapper_20const__2c_20btCollisionObjectWrapper_20const__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29, btSphereTriangleCollisionAlgorithm__calculateTimeOfImpact_28btCollisionObject__2c_20btCollisionObject__2c_20btDispatcherInfo_20const__2c_20btManifoldResult__29, btSphereTriangleCollisionAlgorithm__getAllContactManifolds_28btAlignedObjectArray_btPersistentManifold____29, SphereTriangleDetector___SphereTriangleDetector_28_29, SphereTriangleDetector___SphereTriangleDetector_28_29_1, SphereTriangleDetector__getClosestPoints_28btDiscreteCollisionDetectorInterface__ClosestPointInput_20const__2c_20btDiscreteCollisionDetectorInterface__Result__2c_20btIDebugDraw__2c_20bool_29, btBoxShape___btBoxShape_28_29, btBoxShape___btBoxShape_28_29_1, btBoxShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const, btBoxShape__setLocalScaling_28btVector3_20const__29, btBoxShape__calculateLocalInertia_28float_2c_20btVector3__29_20const, btBoxShape__getName_28_29_20const, btBoxShape__setMargin_28float_29, btBoxShape__localGetSupportingVertex_28btVector3_20const__29_20const, btBoxShape__localGetSupportingVertexWithoutMargin_28btVector3_20const__29_20const, btBoxShape__batchedUnitVectorGetSupportingVertexWithoutMargin_28btVector3_20const__2c_20btVector3__2c_20int_29_20const, btBoxShape__getNumPreferredPenetrationDirections_28_29_20const, btBoxShape__getPreferredPenetrationDirection_28int_2c_20btVector3__29_20const, btBoxShape__getNumVertices_28_29_20const, btBoxShape__getNumEdges_28_29_20const, btBoxShape__getEdge_28int_2c_20btVector3__2c_20btVector3__29_20const, btBoxShape__getVertex_28int_2c_20btVector3__29_20const, btBoxShape__getNumPlanes_28_29_20const, btBoxShape__getPlane_28btVector3__2c_20btVector3__2c_20int_29_20const, btBoxShape__isInside_28btVector3_20const__2c_20float_29_20const, btBoxShape__getPlaneEquation_28btVector4__2c_20int_29_20const, btQuantizedBvh___btQuantizedBvh_28_29, btQuantizedBvh__btQuantizedBvh_28_29, btQuantizedBvh___btQuantizedBvh_28_29_1, btQuantizedBvh__serialize_28void__2c_20unsigned_20int_2c_20bool_29_20const, btQuantizedBvh__calculateSerializeBufferSizeNew_28_29_20const, btQuantizedBvh__serialize_28void__2c_20btSerializer__29_20const, btQuantizedBvh__deSerializeFloat_28btQuantizedBvhFloatData__29, btQuantizedBvh__deSerializeDouble_28btQuantizedBvhDoubleData__29, btBvhTriangleMeshShape___btBvhTriangleMeshShape_28_29, btBvhTriangleMeshShape___btBvhTriangleMeshShape_28_29_1, btTriangleMeshShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const, btBvhTriangleMeshShape__setLocalScaling_28btVector3_20const__29, btTriangleMeshShape__getLocalScaling_28_29_20const, btTriangleMeshShape__calculateLocalInertia_28float_2c_20btVector3__29_20const, btBvhTriangleMeshShape__getName_28_29_20const, btConcaveShape__setMargin_28float_29, btConcaveShape__getMargin_28_29_20const, btBvhTriangleMeshShape__calculateSerializeBufferSize_28_29_20const, btBvhTriangleMeshShape__serialize_28void__2c_20btSerializer__29_20const, btBvhTriangleMeshShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const, btTriangleMeshShape__localGetSupportingVertex_28btVector3_20const__29_20const, btTriangleMeshShape__localGetSupportingVertexWithoutMargin_28btVector3_20const__29_20const, btBvhTriangleMeshShape__serializeSingleBvh_28btSerializer__29_20const, btBvhTriangleMeshShape__serializeSingleTriangleInfoMap_28btSerializer__29_20const, btBvhTriangleMeshShape__performRaycast_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29__MyNodeOverlapCallback___MyNodeOverlapCallback_28_29, btBvhTriangleMeshShape__performRaycast_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29__MyNodeOverlapCallback___MyNodeOverlapCallback_28_29_1, btBvhTriangleMeshShape__performRaycast_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29__MyNodeOverlapCallback__processNode_28int_2c_20int_29, btNodeOverlapCallback___btNodeOverlapCallback_28_29, btNodeOverlapCallback___btNodeOverlapCallback_28_29_1, btBvhTriangleMeshShape__performConvexcast_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29__MyNodeOverlapCallback___MyNodeOverlapCallback_28_29, btBvhTriangleMeshShape__performConvexcast_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29__MyNodeOverlapCallback___MyNodeOverlapCallback_28_29_1, btBvhTriangleMeshShape__performConvexcast_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__2c_20btVector3_20const__29__MyNodeOverlapCallback__processNode_28int_2c_20int_29, btBvhTriangleMeshShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const__MyNodeOverlapCallback___MyNodeOverlapCallback_28_29, btBvhTriangleMeshShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const__MyNodeOverlapCallback___MyNodeOverlapCallback_28_29_1, btBvhTriangleMeshShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const__MyNodeOverlapCallback__processNode_28int_2c_20int_29, btCapsuleShape___btCapsuleShape_28_29, btCapsuleShape___btCapsuleShape_28_29_1, btCapsuleShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const, btCapsuleShape__setLocalScaling_28btVector3_20const__29, btCapsuleShape__calculateLocalInertia_28float_2c_20btVector3__29_20const, btCapsuleShape__getName_28_29_20const, btCapsuleShape__getAnisotropicRollingFrictionDirection_28_29_20const, btCapsuleShape__setMargin_28float_29, btCapsuleShape__calculateSerializeBufferSize_28_29_20const, btCapsuleShape__serialize_28void__2c_20btSerializer__29_20const, btCapsuleShape__localGetSupportingVertexWithoutMargin_28btVector3_20const__29_20const, btCapsuleShape__batchedUnitVectorGetSupportingVertexWithoutMargin_28btVector3_20const__2c_20btVector3__2c_20int_29_20const, btConvexInternalShape__getNumPreferredPenetrationDirections_28_29_20const, btConvexInternalShape__getPreferredPenetrationDirection_28int_2c_20btVector3__29_20const, btCollisionShape___btCollisionShape_28_29, btCollisionShape___btCollisionShape_28_29_1, btCollisionShape__calculateSerializeBufferSize_28_29_20const, btCollisionShape__serialize_28void__2c_20btSerializer__29_20const, btCompoundShape___btCompoundShape_28_29, btCompoundShape___btCompoundShape_28_29_1, btConeShape___btConeShape_28_29, btConeShape___btConeShape_28_29_1, btConvexInternalShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const, btConeShape__setLocalScaling_28btVector3_20const__29, btConeShape__calculateLocalInertia_28float_2c_20btVector3__29_20const, btConeShape__getName_28_29_20const, btConeShape__getAnisotropicRollingFrictionDirection_28_29_20const, btConeShape__calculateSerializeBufferSize_28_29_20const, btConeShape__serialize_28void__2c_20btSerializer__29_20const, btConeShape__localGetSupportingVertex_28btVector3_20const__29_20const, btConeShape__localGetSupportingVertexWithoutMargin_28btVector3_20const__29_20const, btConeShape__batchedUnitVectorGetSupportingVertexWithoutMargin_28btVector3_20const__2c_20btVector3__2c_20int_29_20const, btConvexInternalShape___btConvexInternalShape_28_29, btConvexInternalShape___btConvexInternalShape_28_29_1, btConvexShape___btConvexShape_28_29, btConvexShape___btConvexShape_28_29_1, btConvexTriangleMeshShape___btConvexTriangleMeshShape_28_29, btConvexTriangleMeshShape___btConvexTriangleMeshShape_28_29_1, btPolyhedralConvexAabbCachingShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const, btConvexTriangleMeshShape__setLocalScaling_28btVector3_20const__29, btConvexTriangleMeshShape__getLocalScaling_28_29_20const, btPolyhedralConvexShape__calculateLocalInertia_28float_2c_20btVector3__29_20const, btConvexTriangleMeshShape__getName_28_29_20const, btConvexTriangleMeshShape__localGetSupportingVertex_28btVector3_20const__29_20const, btConvexTriangleMeshShape__localGetSupportingVertexWithoutMargin_28btVector3_20const__29_20const, btConvexTriangleMeshShape__batchedUnitVectorGetSupportingVertexWithoutMargin_28btVector3_20const__2c_20btVector3__2c_20int_29_20const, btConvexTriangleMeshShape__getNumVertices_28_29_20const, btConvexTriangleMeshShape__getNumEdges_28_29_20const, btConvexTriangleMeshShape__getEdge_28int_2c_20btVector3__2c_20btVector3__29_20const, btConvexTriangleMeshShape__getVertex_28int_2c_20btVector3__29_20const, btConvexTriangleMeshShape__getNumPlanes_28_29_20const, btConvexTriangleMeshShape__getPlane_28btVector3__2c_20btVector3__2c_20int_29_20const, btConvexTriangleMeshShape__isInside_28btVector3_20const__2c_20float_29_20const, LocalSupportVertexCallback___LocalSupportVertexCallback_28_29, LocalSupportVertexCallback___LocalSupportVertexCallback_28_29_1, LocalSupportVertexCallback__internalProcessTriangleIndex_28btVector3__2c_20int_2c_20int_29, btCylinderShape___btCylinderShape_28_29, btCylinderShape___btCylinderShape_28_29_1, btCylinderShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const, btCylinderShape__setLocalScaling_28btVector3_20const__29, btCylinderShape__calculateLocalInertia_28float_2c_20btVector3__29_20const, btCylinderShape__getName_28_29_20const, btCylinderShape__getAnisotropicRollingFrictionDirection_28_29_20const, btCylinderShape__setMargin_28float_29, btCylinderShape__calculateSerializeBufferSize_28_29_20const, btCylinderShape__serialize_28void__2c_20btSerializer__29_20const, btCylinderShape__localGetSupportingVertex_28btVector3_20const__29_20const, btCylinderShape__localGetSupportingVertexWithoutMargin_28btVector3_20const__29_20const, btCylinderShape__batchedUnitVectorGetSupportingVertexWithoutMargin_28btVector3_20const__2c_20btVector3__2c_20int_29_20const, btCylinderShape__getRadius_28_29_20const, btConcaveShape___btConcaveShape_28_29, btConcaveShape___btConcaveShape_28_29_1, btEmptyShape___btEmptyShape_28_29, btEmptyShape___btEmptyShape_28_29_1, btEmptyShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const, btEmptyShape__setLocalScaling_28btVector3_20const__29, btEmptyShape__getLocalScaling_28_29_20const, btEmptyShape__calculateLocalInertia_28float_2c_20btVector3__29_20const, btEmptyShape__getName_28_29_20const, btEmptyShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const, btHeightfieldTerrainShape___btHeightfieldTerrainShape_28_29, btHeightfieldTerrainShape___btHeightfieldTerrainShape_28_29_1, btHeightfieldTerrainShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const, btHeightfieldTerrainShape__setLocalScaling_28btVector3_20const__29, btHeightfieldTerrainShape__getLocalScaling_28_29_20const, btHeightfieldTerrainShape__calculateLocalInertia_28float_2c_20btVector3__29_20const, btHeightfieldTerrainShape__getName_28_29_20const, btHeightfieldTerrainShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const, btHeightfieldTerrainShape__getRawHeightFieldValue_28int_2c_20int_29_20const, btOptimizedBvh___btOptimizedBvh_28_29, btOptimizedBvh___btOptimizedBvh_28_29_1, btOptimizedBvh__serializeInPlace_28void__2c_20unsigned_20int_2c_20bool_29_20const, btOptimizedBvh__build_28btStridingMeshInterface__2c_20bool_2c_20btVector3_20const__2c_20btVector3_20const__29__QuantizedNodeTriangleCallback___QuantizedNodeTriangleCallback_28_29, btOptimizedBvh__build_28btStridingMeshInterface__2c_20bool_2c_20btVector3_20const__2c_20btVector3_20const__29__QuantizedNodeTriangleCallback___QuantizedNodeTriangleCallback_28_29_1, btOptimizedBvh__build_28btStridingMeshInterface__2c_20bool_2c_20btVector3_20const__2c_20btVector3_20const__29__QuantizedNodeTriangleCallback__internalProcessTriangleIndex_28btVector3__2c_20int_2c_20int_29, btOptimizedBvh__build_28btStridingMeshInterface__2c_20bool_2c_20btVector3_20const__2c_20btVector3_20const__29__NodeTriangleCallback___NodeTriangleCallback_28_29, btOptimizedBvh__build_28btStridingMeshInterface__2c_20bool_2c_20btVector3_20const__2c_20btVector3_20const__29__NodeTriangleCallback___NodeTriangleCallback_28_29_1, btOptimizedBvh__build_28btStridingMeshInterface__2c_20bool_2c_20btVector3_20const__2c_20btVector3_20const__29__NodeTriangleCallback__internalProcessTriangleIndex_28btVector3__2c_20int_2c_20int_29, btConvexPolyhedron___btConvexPolyhedron_28_29, btConvexPolyhedron___btConvexPolyhedron_28_29_1, btPolyhedralConvexShape___btPolyhedralConvexShape_28_29, btPolyhedralConvexShape___btPolyhedralConvexShape_28_29_1, btPolyhedralConvexShape__localGetSupportingVertexWithoutMargin_28btVector3_20const__29_20const, btPolyhedralConvexShape__batchedUnitVectorGetSupportingVertexWithoutMargin_28btVector3_20const__2c_20btVector3__2c_20int_29_20const, btPolyhedralConvexAabbCachingShape___btPolyhedralConvexAabbCachingShape_28_29, btPolyhedralConvexAabbCachingShape___btPolyhedralConvexAabbCachingShape_28_29_1, btPolyhedralConvexAabbCachingShape__setLocalScaling_28btVector3_20const__29, btScaledBvhTriangleMeshShape___btScaledBvhTriangleMeshShape_28_29, btScaledBvhTriangleMeshShape___btScaledBvhTriangleMeshShape_28_29_1, btScaledBvhTriangleMeshShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const, btScaledBvhTriangleMeshShape__setLocalScaling_28btVector3_20const__29, btScaledBvhTriangleMeshShape__getLocalScaling_28_29_20const, btScaledBvhTriangleMeshShape__calculateLocalInertia_28float_2c_20btVector3__29_20const, btScaledBvhTriangleMeshShape__getName_28_29_20const, btScaledBvhTriangleMeshShape__calculateSerializeBufferSize_28_29_20const, btScaledBvhTriangleMeshShape__serialize_28void__2c_20btSerializer__29_20const, btScaledBvhTriangleMeshShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const, btScaledTriangleCallback___btScaledTriangleCallback_28_29, btScaledTriangleCallback___btScaledTriangleCallback_28_29_1, btScaledTriangleCallback__processTriangle_28btVector3__2c_20int_2c_20int_29, btSphereShape___btSphereShape_28_29, btSphereShape___btSphereShape_28_29_1, btSphereShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const, btSphereShape__calculateLocalInertia_28float_2c_20btVector3__29_20const, btSphereShape__getName_28_29_20const, btSphereShape__setMargin_28float_29, btSphereShape__getMargin_28_29_20const, btSphereShape__localGetSupportingVertex_28btVector3_20const__29_20const, btSphereShape__localGetSupportingVertexWithoutMargin_28btVector3_20const__29_20const, btSphereShape__batchedUnitVectorGetSupportingVertexWithoutMargin_28btVector3_20const__2c_20btVector3__2c_20int_29_20const, btStaticPlaneShape___btStaticPlaneShape_28_29, btStaticPlaneShape___btStaticPlaneShape_28_29_1, btStaticPlaneShape__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const, btStaticPlaneShape__setLocalScaling_28btVector3_20const__29, btStaticPlaneShape__getLocalScaling_28_29_20const, btStaticPlaneShape__calculateLocalInertia_28float_2c_20btVector3__29_20const, btStaticPlaneShape__getName_28_29_20const, btStaticPlaneShape__calculateSerializeBufferSize_28_29_20const, btStaticPlaneShape__serialize_28void__2c_20btSerializer__29_20const, btStaticPlaneShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const, btBU_Simplex1to4___btBU_Simplex1to4_28_29, btBU_Simplex1to4___btBU_Simplex1to4_28_29_1, btBU_Simplex1to4__getAabb_28btTransform_20const__2c_20btVector3__2c_20btVector3__29_20const, btBU_Simplex1to4__getName_28_29_20const, btBU_Simplex1to4__getNumVertices_28_29_20const, btBU_Simplex1to4__getNumEdges_28_29_20const, btBU_Simplex1to4__getEdge_28int_2c_20btVector3__2c_20btVector3__29_20const, btBU_Simplex1to4__getVertex_28int_2c_20btVector3__29_20const, btBU_Simplex1to4__getNumPlanes_28_29_20const, btBU_Simplex1to4__getPlane_28btVector3__2c_20btVector3__2c_20int_29_20const, btBU_Simplex1to4__isInside_28btVector3_20const__2c_20float_29_20const, btBU_Simplex1to4__getIndex_28int_29_20const, btTriangleCallback___btTriangleCallback_28_29, btTriangleCallback___btTriangleCallback_28_29_1, btInternalTriangleIndexCallback___btInternalTriangleIndexCallback_28_29, btInternalTriangleIndexCallback___btInternalTriangleIndexCallback_28_29_1, btStridingMeshInterface___btStridingMeshInterface_28_29, btStridingMeshInterface___btStridingMeshInterface_28_29_1, btStridingMeshInterface__InternalProcessAllTriangles_28btInternalTriangleIndexCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const, btStridingMeshInterface__hasPremadeAabb_28_29_20const, btStridingMeshInterface__setPremadeAabb_28btVector3_20const__2c_20btVector3_20const__29_20const, btStridingMeshInterface__getPremadeAabb_28btVector3__2c_20btVector3__29_20const, btStridingMeshInterface__calculateSerializeBufferSize_28_29_20const, btStridingMeshInterface__serialize_28void__2c_20btSerializer__29_20const, btTriangleIndexVertexArray___btTriangleIndexVertexArray_28_29, btTriangleIndexVertexArray___btTriangleIndexVertexArray_28_29_1, btTriangleIndexVertexArray__getLockedVertexIndexBase_28unsigned_20char___2c_20int__2c_20PHY_ScalarType__2c_20int__2c_20unsigned_20char___2c_20int__2c_20int__2c_20PHY_ScalarType__2c_20int_29, btTriangleIndexVertexArray__getLockedReadOnlyVertexIndexBase_28unsigned_20char_20const___2c_20int__2c_20PHY_ScalarType__2c_20int__2c_20unsigned_20char_20const___2c_20int__2c_20int__2c_20PHY_ScalarType__2c_20int_29_20const, btTriangleIndexVertexArray__unLockVertexBase_28int_29, btTriangleIndexVertexArray__unLockReadOnlyVertexBase_28int_29_20const, btTriangleIndexVertexArray__getNumSubParts_28_29_20const, btTriangleIndexVertexArray__preallocateVertices_28int_29, btTriangleIndexVertexArray__preallocateIndices_28int_29, btTriangleIndexVertexArray__hasPremadeAabb_28_29_20const, btTriangleIndexVertexArray__setPremadeAabb_28btVector3_20const__2c_20btVector3_20const__29_20const, btTriangleIndexVertexArray__getPremadeAabb_28btVector3__2c_20btVector3__29_20const, btTriangleMesh___btTriangleMesh_28_29, btTriangleMesh___btTriangleMesh_28_29_1, btTriangleMesh__preallocateVertices_28int_29, btTriangleMesh__preallocateIndices_28int_29, btTriangleMeshShape___btTriangleMeshShape_28_29, btTriangleMeshShape___btTriangleMeshShape_28_29_1, btTriangleMeshShape__setLocalScaling_28btVector3_20const__29, btTriangleMeshShape__getName_28_29_20const, btTriangleMeshShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const, btTriangleMeshShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const__FilteredCallback___FilteredCallback_28_29, btTriangleMeshShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const__FilteredCallback___FilteredCallback_28_29_1, btTriangleMeshShape__processAllTriangles_28btTriangleCallback__2c_20btVector3_20const__2c_20btVector3_20const__29_20const__FilteredCallback__internalProcessTriangleIndex_28btVector3__2c_20int_2c_20int_29, SupportVertexCallback___SupportVertexCallback_28_29, SupportVertexCallback___SupportVertexCallback_28_29_1, SupportVertexCallback__processTriangle_28btVector3__2c_20int_2c_20int_29, btContinuousConvexCollision___btContinuousConvexCollision_28_29, btContinuousConvexCollision___btContinuousConvexCollision_28_29_1, btContinuousConvexCollision__calcTimeOfImpact_28btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btConvexCast__CastResult__29, btPointCollector___btPointCollector_28_29, btPointCollector___btPointCollector_28_29_1, btPointCollector__setShapeIdentifiersA_28int_2c_20int_29, btPointCollector__setShapeIdentifiersB_28int_2c_20int_29, btPointCollector__addContactPoint_28btVector3_20const__2c_20btVector3_20const__2c_20float_29, btConvexCast___btConvexCast_28_29, btConvexCast___btConvexCast_28_29_1, btGjkConvexCast___btGjkConvexCast_28_29, btGjkConvexCast___btGjkConvexCast_28_29_1, btGjkConvexCast__calcTimeOfImpact_28btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btConvexCast__CastResult__29, btConvexShape__localGetSupportVertexNonVirtual_28btVector3_20const__29_20const, btConvexShape__localGetSupportVertexWithoutMarginNonVirtual_28btVector3_20const__29_20const, btGjkEpaPenetrationDepthSolver___btGjkEpaPenetrationDepthSolver_28_29, btGjkEpaPenetrationDepthSolver___btGjkEpaPenetrationDepthSolver_28_29_1, btGjkEpaPenetrationDepthSolver__calcPenDepth_28btVoronoiSimplexSolver__2c_20btConvexShape_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3__2c_20btVector3__2c_20btVector3__2c_20btIDebugDraw__29, btGjkPairDetector___btGjkPairDetector_28_29, btGjkPairDetector___btGjkPairDetector_28_29_1, btGjkPairDetector__getClosestPoints_28btDiscreteCollisionDetectorInterface__ClosestPointInput_20const__2c_20btDiscreteCollisionDetectorInterface__Result__2c_20btIDebugDraw__2c_20bool_29, btMinkowskiPenetrationDepthSolver___btMinkowskiPenetrationDepthSolver_28_29, btMinkowskiPenetrationDepthSolver___btMinkowskiPenetrationDepthSolver_28_29_1, btMinkowskiPenetrationDepthSolver__calcPenDepth_28btVoronoiSimplexSolver__2c_20btConvexShape_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3__2c_20btVector3__2c_20btVector3__2c_20btIDebugDraw__29, btMinkowskiPenetrationDepthSolver__calcPenDepth_28btVoronoiSimplexSolver__2c_20btConvexShape_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3__2c_20btVector3__2c_20btVector3__2c_20btIDebugDraw__29__btIntermediateResult___btIntermediateResult_28_29, btMinkowskiPenetrationDepthSolver__calcPenDepth_28btVoronoiSimplexSolver__2c_20btConvexShape_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3__2c_20btVector3__2c_20btVector3__2c_20btIDebugDraw__29__btIntermediateResult___btIntermediateResult_28_29_1, btMinkowskiPenetrationDepthSolver__calcPenDepth_28btVoronoiSimplexSolver__2c_20btConvexShape_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3__2c_20btVector3__2c_20btVector3__2c_20btIDebugDraw__29__btIntermediateResult__setShapeIdentifiersA_28int_2c_20int_29, btMinkowskiPenetrationDepthSolver__calcPenDepth_28btVoronoiSimplexSolver__2c_20btConvexShape_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3__2c_20btVector3__2c_20btVector3__2c_20btIDebugDraw__29__btIntermediateResult__setShapeIdentifiersB_28int_2c_20int_29, btMinkowskiPenetrationDepthSolver__calcPenDepth_28btVoronoiSimplexSolver__2c_20btConvexShape_20const__2c_20btConvexShape_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btVector3__2c_20btVector3__2c_20btVector3__2c_20btIDebugDraw__29__btIntermediateResult__addContactPoint_28btVector3_20const__2c_20btVector3_20const__2c_20float_29, btTriangleRaycastCallback___btTriangleRaycastCallback_28_29, btTriangleRaycastCallback___btTriangleRaycastCallback_28_29_1, btTriangleConvexcastCallback___btTriangleConvexcastCallback_28_29, btTriangleConvexcastCallback___btTriangleConvexcastCallback_28_29_1, btSubsimplexConvexCast___btSubsimplexConvexCast_28_29, btSubsimplexConvexCast___btSubsimplexConvexCast_28_29_1, btSubsimplexConvexCast__calcTimeOfImpact_28btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btTransform_20const__2c_20btConvexCast__CastResult__29, btFixedConstraint___btFixedConstraint_28_29, btFixedConstraint___btFixedConstraint_28_29_1, btGeneric6DofSpring2Constraint__buildJacobian_28_29, btTypedConstraint__setupSolverConstraint_28btAlignedObjectArray_btSolverConstraint___2c_20int_2c_20int_2c_20float_29, btGeneric6DofSpring2Constraint__getInfo1_28btTypedConstraint__btConstraintInfo1__29, btGeneric6DofSpring2Constraint__getInfo2_28btTypedConstraint__btConstraintInfo2__29, btTypedConstraint__solveConstraintObsolete_28btSolverBody__2c_20btSolverBody__2c_20float_29, btGeneric6DofSpring2Constraint__setParam_28int_2c_20float_2c_20int_29, btGeneric6DofSpring2Constraint__getParam_28int_2c_20int_29_20const, btGeneric6DofSpring2Constraint__calculateSerializeBufferSize_28_29_20const, btGeneric6DofSpring2Constraint__serialize_28void__2c_20btSerializer__29_20const, btGeneric6DofSpring2Constraint___btGeneric6DofSpring2Constraint_28_29, btGeneric6DofSpring2Constraint___btGeneric6DofSpring2Constraint_28_29_1, btHingeConstraint___btHingeConstraint_28_29, btHingeConstraint___btHingeConstraint_28_29_1, btHingeConstraint__buildJacobian_28_29, btHingeConstraint__getInfo1_28btTypedConstraint__btConstraintInfo1__29, btHingeConstraint__getInfo2_28btTypedConstraint__btConstraintInfo2__29, btHingeConstraint__setParam_28int_2c_20float_2c_20int_29, btHingeConstraint__getParam_28int_2c_20int_29_20const, btHingeConstraint__calculateSerializeBufferSize_28_29_20const, btHingeConstraint__serialize_28void__2c_20btSerializer__29_20const, btHingeConstraint__getFlags_28_29_20const, btPoint2PointConstraint___btPoint2PointConstraint_28_29, btPoint2PointConstraint___btPoint2PointConstraint_28_29_1, btPoint2PointConstraint__buildJacobian_28_29, btPoint2PointConstraint__getInfo1_28btTypedConstraint__btConstraintInfo1__29, btPoint2PointConstraint__getInfo2_28btTypedConstraint__btConstraintInfo2__29, btPoint2PointConstraint__setParam_28int_2c_20float_2c_20int_29, btPoint2PointConstraint__getParam_28int_2c_20int_29_20const, btPoint2PointConstraint__calculateSerializeBufferSize_28_29_20const, btPoint2PointConstraint__serialize_28void__2c_20btSerializer__29_20const, btPoint2PointConstraint__getFlags_28_29_20const, gResolveSingleConstraintRowGeneric_scalar_reference_28btSolverBody__2c_20btSolverBody__2c_20btSolverConstraint_20const__29, gResolveSingleConstraintRowLowerLimit_scalar_reference_28btSolverBody__2c_20btSolverBody__2c_20btSolverConstraint_20const__29, gResolveSplitPenetrationImpulse_scalar_reference_28btSolverBody__2c_20btSolverBody__2c_20btSolverConstraint_20const__29, btSequentialImpulseConstraintSolver___btSequentialImpulseConstraintSolver_28_29, btSequentialImpulseConstraintSolver___btSequentialImpulseConstraintSolver_28_29_1, btConstraintSolver__prepareSolve_28int_2c_20int_29, btSequentialImpulseConstraintSolver__solveGroup_28btCollisionObject___2c_20int_2c_20btPersistentManifold___2c_20int_2c_20btTypedConstraint___2c_20int_2c_20btContactSolverInfo_20const__2c_20btIDebugDraw__2c_20btDispatcher__29, btConstraintSolver__allSolved_28btContactSolverInfo_20const__2c_20btIDebugDraw__29, btSequentialImpulseConstraintSolver__reset_28_29, btSequentialImpulseConstraintSolver__getSolverType_28_29_20const, btSequentialImpulseConstraintSolver__convertContacts_28btPersistentManifold___2c_20int_2c_20btContactSolverInfo_20const__29, btSequentialImpulseConstraintSolver__solveGroupCacheFriendlySplitImpulseIterations_28btCollisionObject___2c_20int_2c_20btPersistentManifold___2c_20int_2c_20btTypedConstraint___2c_20int_2c_20btContactSolverInfo_20const__2c_20btIDebugDraw__29, btSequentialImpulseConstraintSolver__solveGroupCacheFriendlyFinish_28btCollisionObject___2c_20int_2c_20btContactSolverInfo_20const__29, btSequentialImpulseConstraintSolver__solveSingleIteration_28int_2c_20btCollisionObject___2c_20int_2c_20btPersistentManifold___2c_20int_2c_20btTypedConstraint___2c_20int_2c_20btContactSolverInfo_20const__2c_20btIDebugDraw__29, btSequentialImpulseConstraintSolver__solveGroupCacheFriendlySetup_28btCollisionObject___2c_20int_2c_20btPersistentManifold___2c_20int_2c_20btTypedConstraint___2c_20int_2c_20btContactSolverInfo_20const__2c_20btIDebugDraw__29, btSequentialImpulseConstraintSolver__solveGroupCacheFriendlyIterations_28btCollisionObject___2c_20int_2c_20btPersistentManifold___2c_20int_2c_20btTypedConstraint___2c_20int_2c_20btContactSolverInfo_20const__2c_20btIDebugDraw__29, btConstraintSolver___btConstraintSolver_28_29, btConstraintSolver___btConstraintSolver_28_29_1, __cxx_global_array_dtor_1, btTypedConstraint___btTypedConstraint_28_29, btTypedConstraint___btTypedConstraint_28_29_1, btTypedConstraint__buildJacobian_28_29, btTypedConstraint__calculateSerializeBufferSize_28_29_20const, btTypedConstraint__serialize_28void__2c_20btSerializer__29_20const, btRigidBody___btRigidBody_28_29, btRigidBody___btRigidBody_28_29_1, btRigidBody__calculateSerializeBufferSize_28_29_20const, btRigidBody__serialize_28void__2c_20btSerializer__29_20const, btRigidBody__serializeSingleObject_28btSerializer__29_20const, btSimulationIslandManager___btSimulationIslandManager_28_29, btSimulationIslandManager___btSimulationIslandManager_28_29_1, btSimulationIslandManager__updateActivationState_28btCollisionWorld__2c_20btDispatcher__29, btSimulationIslandManager__storeIslandActivationState_28btCollisionWorld__29, btDiscreteDynamicsWorld___btDiscreteDynamicsWorld_28_29, btDiscreteDynamicsWorld___btDiscreteDynamicsWorld_28_29_1, btDiscreteDynamicsWorld__debugDrawWorld_28_29, btDiscreteDynamicsWorld__addCollisionObject_28btCollisionObject__2c_20int_2c_20int_29, btDiscreteDynamicsWorld__removeCollisionObject_28btCollisionObject__29, btDiscreteDynamicsWorld__serialize_28btSerializer__29, btDiscreteDynamicsWorld__stepSimulation_28float_2c_20int_2c_20float_29, btDiscreteDynamicsWorld__addConstraint_28btTypedConstraint__2c_20bool_29, btDiscreteDynamicsWorld__removeConstraint_28btTypedConstraint__29, btDiscreteDynamicsWorld__addAction_28btActionInterface__29, btDiscreteDynamicsWorld__removeAction_28btActionInterface__29, btDiscreteDynamicsWorld__setGravity_28btVector3_20const__29, btDiscreteDynamicsWorld__getGravity_28_29_20const, btDiscreteDynamicsWorld__synchronizeMotionStates_28_29, btDiscreteDynamicsWorld__addRigidBody_28btRigidBody__29, btDiscreteDynamicsWorld__addRigidBody_28btRigidBody__2c_20int_2c_20int_29, btDiscreteDynamicsWorld__removeRigidBody_28btRigidBody__29, btDiscreteDynamicsWorld__setConstraintSolver_28btConstraintSolver__29, btDiscreteDynamicsWorld__getConstraintSolver_28_29, btDiscreteDynamicsWorld__getNumConstraints_28_29_20const, btDiscreteDynamicsWorld__getConstraint_28int_29, btDiscreteDynamicsWorld__getConstraint_28int_29_20const, btDiscreteDynamicsWorld__getWorldType_28_29_20const, btDiscreteDynamicsWorld__clearForces_28_29, btDiscreteDynamicsWorld__addVehicle_28btActionInterface__29, btDiscreteDynamicsWorld__removeVehicle_28btActionInterface__29, btDiscreteDynamicsWorld__addCharacter_28btActionInterface__29, btDiscreteDynamicsWorld__removeCharacter_28btActionInterface__29, btDiscreteDynamicsWorld__predictUnconstraintMotion_28float_29, btDiscreteDynamicsWorld__integrateTransforms_28float_29, btDiscreteDynamicsWorld__calculateSimulationIslands_28_29, btDiscreteDynamicsWorld__solveConstraints_28btContactSolverInfo__29, btDiscreteDynamicsWorld__updateActivationState_28float_29, btDiscreteDynamicsWorld__internalSingleStepSimulation_28float_29, btDiscreteDynamicsWorld__createPredictiveContacts_28float_29, btDiscreteDynamicsWorld__saveKinematicState_28float_29, btDiscreteDynamicsWorld__debugDrawConstraint_28btTypedConstraint__29, btDiscreteDynamicsWorld__applyGravity_28_29, btDiscreteDynamicsWorld__setNumTasks_28int_29, btDiscreteDynamicsWorld__updateVehicles_28float_29, btDynamicsWorld___btDynamicsWorld_28_29, btDynamicsWorld___btDynamicsWorld_28_29_1, btDynamicsWorld__addConstraint_28btTypedConstraint__2c_20bool_29, btDynamicsWorld__removeConstraint_28btTypedConstraint__29, btDynamicsWorld__getNumConstraints_28_29_20const, btDynamicsWorld__getConstraint_28int_29, btDynamicsWorld__getConstraint_28int_29_20const, btDynamicsWorld__addVehicle_28btActionInterface__29, btDynamicsWorld__removeVehicle_28btActionInterface__29, btDynamicsWorld__addCharacter_28btActionInterface__29, btDynamicsWorld__removeCharacter_28btActionInterface__29, InplaceSolverIslandCallback___InplaceSolverIslandCallback_28_29, InplaceSolverIslandCallback___InplaceSolverIslandCallback_28_29_1, InplaceSolverIslandCallback__processIsland_28btCollisionObject___2c_20int_2c_20btPersistentManifold___2c_20int_2c_20int_29, btSimulationIslandManager__IslandCallback___IslandCallback_28_29, btSimulationIslandManager__IslandCallback___IslandCallback_28_29_1, btClosestNotMeConvexResultCallback___btClosestNotMeConvexResultCallback_28_29, btClosestNotMeConvexResultCallback___btClosestNotMeConvexResultCallback_28_29_1, btClosestNotMeConvexResultCallback__needsCollision_28btBroadphaseProxy__29_20const, btClosestNotMeConvexResultCallback__addSingleResult_28btCollisionWorld__LocalConvexResult__2c_20bool_29, cc__ccDiscreteDynamicsWorld___ccDiscreteDynamicsWorld_28_29, cc__ccDiscreteDynamicsWorld___ccDiscreteDynamicsWorld_28_29_1, cc__ccDiscreteDynamicsWorld__createPredictiveContacts_28float_29, cc__ccDiscreteDynamicsWorld__applyGravity_28_29, cc__ccOverlapFilterCallback___ccOverlapFilterCallback_28_29, cc__ccOverlapFilterCallback___ccOverlapFilterCallback_28_29_1, cc__ccOverlapFilterCallback__needBroadphaseCollision_28btBroadphaseProxy__2c_20btBroadphaseProxy__29_20const, btOverlapFilterCallback___btOverlapFilterCallback_28_29, btOverlapFilterCallback___btOverlapFilterCallback_28_29_1, btGhostPairCallback___btGhostPairCallback_28_29, btGhostPairCallback___btGhostPairCallback_28_29_1, btGhostPairCallback__addOverlappingPair_28btBroadphaseProxy__2c_20btBroadphaseProxy__29, btGhostPairCallback__removeOverlappingPair_28btBroadphaseProxy__2c_20btBroadphaseProxy__2c_20btDispatcher__29, btGhostPairCallback__removeOverlappingPairsContainingProxy_28btBroadphaseProxy__2c_20btDispatcher__29, cc__ccNotMeClosestConvexResultCallback___ccNotMeClosestConvexResultCallback_28_29, cc__ccNotMeClosestConvexResultCallback___ccNotMeClosestConvexResultCallback_28_29_1, cc__ccNotMeClosestConvexResultCallback__needsCollision_28btBroadphaseProxy__29_20const, cc__ccNotMeClosestConvexResultCallback__addSingleResult_28btCollisionWorld__LocalConvexResult__2c_20bool_29, btGhostObject___btGhostObject_28_29, btPairCachingGhostObject___btPairCachingGhostObject_28_29, btGhostObject___btGhostObject_28_29_1, btGhostObject__addOverlappingObjectInternal_28btBroadphaseProxy__2c_20btBroadphaseProxy__29, btGhostObject__removeOverlappingObjectInternal_28btBroadphaseProxy__2c_20btDispatcher__2c_20btBroadphaseProxy__29, btPairCachingGhostObject___btPairCachingGhostObject_28_29_1, btPairCachingGhostObject__addOverlappingObjectInternal_28btBroadphaseProxy__2c_20btBroadphaseProxy__29, btPairCachingGhostObject__removeOverlappingObjectInternal_28btBroadphaseProxy__2c_20btDispatcher__2c_20btBroadphaseProxy__29, __cxx_global_array_dtor_2, btCharacterController___btCharacterController_28_29, btCharacterController___btCharacterController_28_29_1, btCharacterController__updateAction_28btCollisionWorld__2c_20float_29, btCharacterController__debugDraw_28btIDebugDraw__29, btCharacterController__getType_28_29, btCapsuleCharacterController___btCapsuleCharacterController_28_29, btCapsuleCharacterController___btCapsuleCharacterController_28_29_1, btCapsuleCharacterController__getFullHalfHeight_28_29, btBoxCharacterController___btBoxCharacterController_28_29, btBoxCharacterController___btBoxCharacterController_28_29_1, btBoxCharacterController__getFullHalfHeight_28_29, btKinematicClosestNotMeConvexResultCallback___btKinematicClosestNotMeConvexResultCallback_28_29, btKinematicClosestNotMeConvexResultCallback___btKinematicClosestNotMeConvexResultCallback_28_29_1, btKinematicClosestNotMeConvexResultCallback__addSingleResult_28btCollisionWorld__LocalConvexResult__2c_20bool_29, btActionInterface___btActionInterface_28_29, btActionInterface___btActionInterface_28_29_1, embind_init_builtin_28_29, __emscripten_stdout_close, __stdio_write, __emscripten_stdout_seek, fmt_fp, pop_arg_long_double, __stdio_close, __stdio_seek, __cxxabiv1____shim_type_info_____shim_type_info_28_29, __cxxabiv1____fundamental_type_info_____fundamental_type_info_28_29, __cxxabiv1____shim_type_info__noop1_28_29_20const, __cxxabiv1____shim_type_info__noop2_28_29_20const, __cxxabiv1____fundamental_type_info__can_catch_28__cxxabiv1____shim_type_info_20const__2c_20void___29_20const, __cxxabiv1____class_type_info_____class_type_info_28_29, __cxxabiv1____class_type_info__can_catch_28__cxxabiv1____shim_type_info_20const__2c_20void___29_20const, __cxxabiv1____class_type_info__search_above_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20void_20const__2c_20int_2c_20bool_29_20const, __cxxabiv1____class_type_info__search_below_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20int_2c_20bool_29_20const, __cxxabiv1____class_type_info__has_unambiguous_public_base_28__cxxabiv1____dynamic_cast_info__2c_20void__2c_20int_29_20const, __cxxabiv1____si_class_type_info_____si_class_type_info_28_29, __cxxabiv1____si_class_type_info__search_above_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20void_20const__2c_20int_2c_20bool_29_20const, __cxxabiv1____si_class_type_info__search_below_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20int_2c_20bool_29_20const, __cxxabiv1____si_class_type_info__has_unambiguous_public_base_28__cxxabiv1____dynamic_cast_info__2c_20void__2c_20int_29_20const, __cxxabiv1____vmi_class_type_info_____vmi_class_type_info_28_29, __cxxabiv1____vmi_class_type_info__search_above_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20void_20const__2c_20int_2c_20bool_29_20const, __cxxabiv1____vmi_class_type_info__search_below_dst_28__cxxabiv1____dynamic_cast_info__2c_20void_20const__2c_20int_2c_20bool_29_20const, __cxxabiv1____vmi_class_type_info__has_unambiguous_public_base_28__cxxabiv1____dynamic_cast_info__2c_20void__2c_20int_29_20const, __cxxabiv1____pointer_type_info_____pointer_type_info_28_29, __cxxabiv1____pointer_type_info__can_catch_28__cxxabiv1____shim_type_info_20const__2c_20void___29_20const]);
|
|
function __wasm_memory_size() {
|
|
return buffer.byteLength / 65536 | 0;
|
|
}
|
|
|
|
function __wasm_memory_grow(pagesToAdd) {
|
|
pagesToAdd = pagesToAdd | 0;
|
|
var oldPages = __wasm_memory_size() | 0;
|
|
var newPages = oldPages + pagesToAdd | 0;
|
|
if ((oldPages < newPages) && (newPages < 65536)) {
|
|
var newBuffer = new ArrayBuffer(Math_imul(newPages, 65536));
|
|
var newHEAP8 = new Int8Array(newBuffer);
|
|
newHEAP8.set(HEAP8);
|
|
HEAP8 = new Int8Array(newBuffer);
|
|
HEAP16 = new Int16Array(newBuffer);
|
|
HEAP32 = new Int32Array(newBuffer);
|
|
HEAPU8 = new Uint8Array(newBuffer);
|
|
HEAPU16 = new Uint16Array(newBuffer);
|
|
HEAPU32 = new Uint32Array(newBuffer);
|
|
HEAPF32 = new Float32Array(newBuffer);
|
|
HEAPF64 = new Float64Array(newBuffer);
|
|
buffer = newBuffer;
|
|
memory.buffer = buffer;
|
|
bufferView = HEAPU8;
|
|
}
|
|
return oldPages;
|
|
}
|
|
|
|
return {
|
|
"__wasm_call_ctors": __wasm_call_ctors,
|
|
"malloc": dlmalloc,
|
|
"free": dlfree,
|
|
"__indirect_function_table": FUNCTION_TABLE,
|
|
"__getTypeName": __getTypeName,
|
|
"_embind_initialize_bindings": _embind_initialize_bindings,
|
|
"__errno_location": __errno_location,
|
|
"fflush": fflush,
|
|
"emscripten_stack_init": emscripten_stack_init,
|
|
"emscripten_stack_get_free": emscripten_stack_get_free,
|
|
"emscripten_stack_get_base": emscripten_stack_get_base,
|
|
"emscripten_stack_get_end": emscripten_stack_get_end,
|
|
"stackSave": stackSave,
|
|
"stackRestore": stackRestore,
|
|
"stackAlloc": stackAlloc,
|
|
"emscripten_stack_get_current": emscripten_stack_get_current,
|
|
"dynCall_jiji": legalstub$dynCall_jiji
|
|
};
|
|
}
|
|
|
|
return asmFunc(info);
|
|
}
|
|
|
|
)(info);
|
|
},
|
|
|
|
instantiate: /** @suppress{checkTypes} */ function(binary, info) {
|
|
return {
|
|
then: function(ok) {
|
|
var module = new WebAssembly.Module(binary);
|
|
ok({
|
|
'instance': new WebAssembly.Instance(module, info)
|
|
});
|
|
// Emulate a simple WebAssembly.instantiate(..).then(()=>{}).catch(()=>{}) syntax.
|
|
return { catch: function() {} };
|
|
}
|
|
};
|
|
},
|
|
|
|
RuntimeError: Error
|
|
};
|
|
|
|
// We don't need to actually download a wasm binary, mark it as present but empty.
|
|
wasmBinary = [];
|
|
|
|
// end include: wasm2js.js
|
|
if (typeof WebAssembly != 'object') {
|
|
abort('no native wasm support detected');
|
|
}
|
|
|
|
// Wasm globals
|
|
|
|
var wasmMemory;
|
|
|
|
//========================================
|
|
// Runtime essentials
|
|
//========================================
|
|
|
|
// whether we are quitting the application. no code should run after this.
|
|
// set in exit() and abort()
|
|
var ABORT = false;
|
|
|
|
// set by exit() and abort(). Passed to 'onExit' handler.
|
|
// NOTE: This is also used as the process return code code in shell environments
|
|
// but only when noExitRuntime is false.
|
|
var EXITSTATUS;
|
|
|
|
/** @type {function(*, string=)} */
|
|
function assert(condition, text) {
|
|
if (!condition) {
|
|
abort('Assertion failed' + (text ? ': ' + text : ''));
|
|
}
|
|
}
|
|
|
|
// We used to include malloc/free by default in the past. Show a helpful error in
|
|
// builds with assertions.
|
|
|
|
// Memory management
|
|
|
|
var HEAP,
|
|
/** @type {!Int8Array} */
|
|
HEAP8,
|
|
/** @type {!Uint8Array} */
|
|
HEAPU8,
|
|
/** @type {!Int16Array} */
|
|
HEAP16,
|
|
/** @type {!Uint16Array} */
|
|
HEAPU16,
|
|
/** @type {!Int32Array} */
|
|
HEAP32,
|
|
/** @type {!Uint32Array} */
|
|
HEAPU32,
|
|
/** @type {!Float32Array} */
|
|
HEAPF32,
|
|
/** @type {!Float64Array} */
|
|
HEAPF64;
|
|
|
|
function updateMemoryViews() {
|
|
var b = wasmMemory.buffer;
|
|
Module['HEAP8'] = HEAP8 = new Int8Array(b);
|
|
Module['HEAP16'] = HEAP16 = new Int16Array(b);
|
|
Module['HEAP32'] = HEAP32 = new Int32Array(b);
|
|
Module['HEAPU8'] = HEAPU8 = new Uint8Array(b);
|
|
Module['HEAPU16'] = HEAPU16 = new Uint16Array(b);
|
|
Module['HEAPU32'] = HEAPU32 = new Uint32Array(b);
|
|
Module['HEAPF32'] = HEAPF32 = new Float32Array(b);
|
|
Module['HEAPF64'] = HEAPF64 = new Float64Array(b);
|
|
}
|
|
|
|
assert(!Module['STACK_SIZE'], 'STACK_SIZE can no longer be set at runtime. Use -sSTACK_SIZE at link time')
|
|
|
|
assert(typeof Int32Array != 'undefined' && typeof Float64Array !== 'undefined' && Int32Array.prototype.subarray != undefined && Int32Array.prototype.set != undefined,
|
|
'JS engine does not provide full typed array support');
|
|
|
|
// In non-standalone/normal mode, we create the memory here.
|
|
// include: runtime_init_memory.js
|
|
// Create the wasm memory. (Note: this only applies if IMPORTED_MEMORY is defined)
|
|
|
|
var INITIAL_MEMORY = Module['INITIAL_MEMORY'] || 16777216;legacyModuleProp('INITIAL_MEMORY', 'INITIAL_MEMORY');
|
|
|
|
assert(INITIAL_MEMORY >= 65536, 'INITIAL_MEMORY should be larger than STACK_SIZE, was ' + INITIAL_MEMORY + '! (STACK_SIZE=' + 65536 + ')');
|
|
|
|
// check for full engine support (use string 'subarray' to avoid closure compiler confusion)
|
|
|
|
if (Module['wasmMemory']) {
|
|
wasmMemory = Module['wasmMemory'];
|
|
} else
|
|
{
|
|
wasmMemory = new WebAssembly.Memory({
|
|
'initial': INITIAL_MEMORY / 65536,
|
|
// In theory we should not need to emit the maximum if we want "unlimited"
|
|
// or 4GB of memory, but VMs error on that atm, see
|
|
// https://github.com/emscripten-core/emscripten/issues/14130
|
|
// And in the pthreads case we definitely need to emit a maximum. So
|
|
// always emit one.
|
|
'maximum': 2147483648 / 65536
|
|
});
|
|
}
|
|
|
|
updateMemoryViews();
|
|
|
|
// If the user provides an incorrect length, just use that length instead rather than providing the user to
|
|
// specifically provide the memory length with Module['INITIAL_MEMORY'].
|
|
INITIAL_MEMORY = wasmMemory.buffer.byteLength;
|
|
assert(INITIAL_MEMORY % 65536 === 0);
|
|
|
|
// end include: runtime_init_memory.js
|
|
|
|
// include: runtime_init_table.js
|
|
// In regular non-RELOCATABLE mode the table is exported
|
|
// from the wasm module and this will be assigned once
|
|
// the exports are available.
|
|
var wasmTable;
|
|
|
|
// end include: runtime_init_table.js
|
|
// include: runtime_stack_check.js
|
|
// Initializes the stack cookie. Called at the startup of main and at the startup of each thread in pthreads mode.
|
|
function writeStackCookie() {
|
|
var max = _emscripten_stack_get_end();
|
|
assert((max & 3) == 0);
|
|
// If the stack ends at address zero we write our cookies 4 bytes into the
|
|
// stack. This prevents interference with SAFE_HEAP and ASAN which also
|
|
// monitor writes to address zero.
|
|
if (max == 0) {
|
|
max += 4;
|
|
}
|
|
// The stack grow downwards towards _emscripten_stack_get_end.
|
|
// We write cookies to the final two words in the stack and detect if they are
|
|
// ever overwritten.
|
|
HEAPU32[((max)>>2)] = 0x02135467;
|
|
HEAPU32[(((max)+(4))>>2)] = 0x89BACDFE;
|
|
// Also test the global address 0 for integrity.
|
|
HEAPU32[((0)>>2)] = 1668509029;
|
|
}
|
|
|
|
function checkStackCookie() {
|
|
if (ABORT) return;
|
|
var max = _emscripten_stack_get_end();
|
|
// See writeStackCookie().
|
|
if (max == 0) {
|
|
max += 4;
|
|
}
|
|
var cookie1 = HEAPU32[((max)>>2)];
|
|
var cookie2 = HEAPU32[(((max)+(4))>>2)];
|
|
if (cookie1 != 0x02135467 || cookie2 != 0x89BACDFE) {
|
|
abort(`Stack overflow! Stack cookie has been overwritten at ${ptrToString(max)}, expected hex dwords 0x89BACDFE and 0x2135467, but received ${ptrToString(cookie2)} ${ptrToString(cookie1)}`);
|
|
}
|
|
// Also test the global address 0 for integrity.
|
|
if (HEAPU32[((0)>>2)] != 0x63736d65 /* 'emsc' */) {
|
|
abort('Runtime error: The application has corrupted its heap memory area (address zero)!');
|
|
}
|
|
}
|
|
|
|
// end include: runtime_stack_check.js
|
|
// include: runtime_assertions.js
|
|
// Endianness check
|
|
(function() {
|
|
var h16 = new Int16Array(1);
|
|
var h8 = new Int8Array(h16.buffer);
|
|
h16[0] = 0x6373;
|
|
if (h8[0] !== 0x73 || h8[1] !== 0x63) throw 'Runtime error: expected the system to be little-endian! (Run with -sSUPPORT_BIG_ENDIAN to bypass)';
|
|
})();
|
|
|
|
// end include: runtime_assertions.js
|
|
var __ATPRERUN__ = []; // functions called before the runtime is initialized
|
|
var __ATINIT__ = []; // functions called during startup
|
|
var __ATEXIT__ = []; // functions called during shutdown
|
|
var __ATPOSTRUN__ = []; // functions called after the main() is called
|
|
|
|
var runtimeInitialized = false;
|
|
|
|
var runtimeKeepaliveCounter = 0;
|
|
|
|
function keepRuntimeAlive() {
|
|
return noExitRuntime || runtimeKeepaliveCounter > 0;
|
|
}
|
|
|
|
function preRun() {
|
|
if (Module['preRun']) {
|
|
if (typeof Module['preRun'] == 'function') Module['preRun'] = [Module['preRun']];
|
|
while (Module['preRun'].length) {
|
|
addOnPreRun(Module['preRun'].shift());
|
|
}
|
|
}
|
|
callRuntimeCallbacks(__ATPRERUN__);
|
|
}
|
|
|
|
function initRuntime() {
|
|
assert(!runtimeInitialized);
|
|
runtimeInitialized = true;
|
|
|
|
checkStackCookie();
|
|
|
|
|
|
callRuntimeCallbacks(__ATINIT__);
|
|
}
|
|
|
|
function postRun() {
|
|
checkStackCookie();
|
|
|
|
if (Module['postRun']) {
|
|
if (typeof Module['postRun'] == 'function') Module['postRun'] = [Module['postRun']];
|
|
while (Module['postRun'].length) {
|
|
addOnPostRun(Module['postRun'].shift());
|
|
}
|
|
}
|
|
|
|
callRuntimeCallbacks(__ATPOSTRUN__);
|
|
}
|
|
|
|
function addOnPreRun(cb) {
|
|
__ATPRERUN__.unshift(cb);
|
|
}
|
|
|
|
function addOnInit(cb) {
|
|
__ATINIT__.unshift(cb);
|
|
}
|
|
|
|
function addOnExit(cb) {
|
|
}
|
|
|
|
function addOnPostRun(cb) {
|
|
__ATPOSTRUN__.unshift(cb);
|
|
}
|
|
|
|
// include: runtime_math.js
|
|
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/imul
|
|
|
|
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/fround
|
|
|
|
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/clz32
|
|
|
|
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Math/trunc
|
|
|
|
assert(Math.imul, 'This browser does not support Math.imul(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill');
|
|
assert(Math.fround, 'This browser does not support Math.fround(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill');
|
|
assert(Math.clz32, 'This browser does not support Math.clz32(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill');
|
|
assert(Math.trunc, 'This browser does not support Math.trunc(), build with LEGACY_VM_SUPPORT or POLYFILL_OLD_MATH_FUNCTIONS to add in a polyfill');
|
|
|
|
// end include: runtime_math.js
|
|
// A counter of dependencies for calling run(). If we need to
|
|
// do asynchronous work before running, increment this and
|
|
// decrement it. Incrementing must happen in a place like
|
|
// Module.preRun (used by emcc to add file preloading).
|
|
// Note that you can add dependencies in preRun, even though
|
|
// it happens right before run - run will be postponed until
|
|
// the dependencies are met.
|
|
var runDependencies = 0;
|
|
var runDependencyWatcher = null;
|
|
var dependenciesFulfilled = null; // overridden to take different actions when all run dependencies are fulfilled
|
|
var runDependencyTracking = {};
|
|
|
|
function getUniqueRunDependency(id) {
|
|
var orig = id;
|
|
while (1) {
|
|
if (!runDependencyTracking[id]) return id;
|
|
id = orig + Math.random();
|
|
}
|
|
}
|
|
|
|
function addRunDependency(id) {
|
|
runDependencies++;
|
|
|
|
if (Module['monitorRunDependencies']) {
|
|
Module['monitorRunDependencies'](runDependencies);
|
|
}
|
|
|
|
if (id) {
|
|
assert(!runDependencyTracking[id]);
|
|
runDependencyTracking[id] = 1;
|
|
if (runDependencyWatcher === null && typeof setInterval != 'undefined') {
|
|
// Check for missing dependencies every few seconds
|
|
runDependencyWatcher = setInterval(() => {
|
|
if (ABORT) {
|
|
clearInterval(runDependencyWatcher);
|
|
runDependencyWatcher = null;
|
|
return;
|
|
}
|
|
var shown = false;
|
|
for (var dep in runDependencyTracking) {
|
|
if (!shown) {
|
|
shown = true;
|
|
err('still waiting on run dependencies:');
|
|
}
|
|
err('dependency: ' + dep);
|
|
}
|
|
if (shown) {
|
|
err('(end of list)');
|
|
}
|
|
}, 10000);
|
|
}
|
|
} else {
|
|
err('warning: run dependency added without ID');
|
|
}
|
|
}
|
|
|
|
function removeRunDependency(id) {
|
|
runDependencies--;
|
|
|
|
if (Module['monitorRunDependencies']) {
|
|
Module['monitorRunDependencies'](runDependencies);
|
|
}
|
|
|
|
if (id) {
|
|
assert(runDependencyTracking[id]);
|
|
delete runDependencyTracking[id];
|
|
} else {
|
|
err('warning: run dependency removed without ID');
|
|
}
|
|
if (runDependencies == 0) {
|
|
if (runDependencyWatcher !== null) {
|
|
clearInterval(runDependencyWatcher);
|
|
runDependencyWatcher = null;
|
|
}
|
|
if (dependenciesFulfilled) {
|
|
var callback = dependenciesFulfilled;
|
|
dependenciesFulfilled = null;
|
|
callback(); // can add another dependenciesFulfilled
|
|
}
|
|
}
|
|
}
|
|
|
|
/** @param {string|number=} what */
|
|
function abort(what) {
|
|
if (Module['onAbort']) {
|
|
Module['onAbort'](what);
|
|
}
|
|
|
|
what = 'Aborted(' + what + ')';
|
|
// TODO(sbc): Should we remove printing and leave it up to whoever
|
|
// catches the exception?
|
|
err(what);
|
|
|
|
ABORT = true;
|
|
EXITSTATUS = 1;
|
|
|
|
// Use a wasm runtime error, because a JS error might be seen as a foreign
|
|
// exception, which means we'd run destructors on it. We need the error to
|
|
// simply make the program stop.
|
|
// FIXME This approach does not work in Wasm EH because it currently does not assume
|
|
// all RuntimeErrors are from traps; it decides whether a RuntimeError is from
|
|
// a trap or not based on a hidden field within the object. So at the moment
|
|
// we don't have a way of throwing a wasm trap from JS. TODO Make a JS API that
|
|
// allows this in the wasm spec.
|
|
|
|
// Suppress closure compiler warning here. Closure compiler's builtin extern
|
|
// defintion for WebAssembly.RuntimeError claims it takes no arguments even
|
|
// though it can.
|
|
// TODO(https://github.com/google/closure-compiler/pull/3913): Remove if/when upstream closure gets fixed.
|
|
/** @suppress {checkTypes} */
|
|
var e = new WebAssembly.RuntimeError(what);
|
|
|
|
readyPromiseReject(e);
|
|
// Throw the error whether or not MODULARIZE is set because abort is used
|
|
// in code paths apart from instantiation where an exception is expected
|
|
// to be thrown when abort is called.
|
|
throw e;
|
|
}
|
|
|
|
// include: memoryprofiler.js
|
|
// end include: memoryprofiler.js
|
|
// show errors on likely calls to FS when it was not included
|
|
var FS = {
|
|
error: function() {
|
|
abort('Filesystem support (FS) was not included. The problem is that you are using files from JS, but files were not used from C/C++, so filesystem support was not auto-included. You can force-include filesystem support with -sFORCE_FILESYSTEM');
|
|
},
|
|
init: function() { FS.error() },
|
|
createDataFile: function() { FS.error() },
|
|
createPreloadedFile: function() { FS.error() },
|
|
createLazyFile: function() { FS.error() },
|
|
open: function() { FS.error() },
|
|
mkdev: function() { FS.error() },
|
|
registerDevice: function() { FS.error() },
|
|
analyzePath: function() { FS.error() },
|
|
|
|
ErrnoError: function ErrnoError() { FS.error() },
|
|
};
|
|
Module['FS_createDataFile'] = FS.createDataFile;
|
|
Module['FS_createPreloadedFile'] = FS.createPreloadedFile;
|
|
|
|
// include: URIUtils.js
|
|
// Prefix of data URIs emitted by SINGLE_FILE and related options.
|
|
var dataURIPrefix = 'data:application/octet-stream;base64,';
|
|
|
|
// Indicates whether filename is a base64 data URI.
|
|
function isDataURI(filename) {
|
|
// Prefix of data URIs emitted by SINGLE_FILE and related options.
|
|
return filename.startsWith(dataURIPrefix);
|
|
}
|
|
|
|
// Indicates whether filename is delivered via file protocol (as opposed to http/https)
|
|
function isFileURI(filename) {
|
|
return filename.startsWith('file://');
|
|
}
|
|
|
|
// end include: URIUtils.js
|
|
/** @param {boolean=} fixedasm */
|
|
function createExportWrapper(name, fixedasm) {
|
|
return function() {
|
|
var displayName = name;
|
|
var asm = fixedasm;
|
|
if (!fixedasm) {
|
|
asm = Module['asm'];
|
|
}
|
|
assert(runtimeInitialized, 'native function `' + displayName + '` called before runtime initialization');
|
|
if (!asm[name]) {
|
|
assert(asm[name], 'exported native function `' + displayName + '` not found');
|
|
}
|
|
return asm[name].apply(null, arguments);
|
|
};
|
|
}
|
|
|
|
// include: runtime_exceptions.js
|
|
// end include: runtime_exceptions.js
|
|
var wasmBinaryFile;
|
|
wasmBinaryFile = '<<< WASM_BINARY_FILE >>>';
|
|
if (!isDataURI(wasmBinaryFile)) {
|
|
wasmBinaryFile = locateFile(wasmBinaryFile);
|
|
}
|
|
|
|
function getBinary(file) {
|
|
try {
|
|
if (file == wasmBinaryFile && wasmBinary) {
|
|
return new Uint8Array(wasmBinary);
|
|
}
|
|
var binary = tryParseAsDataURI(file);
|
|
if (binary) {
|
|
return binary;
|
|
}
|
|
if (readBinary) {
|
|
return readBinary(file);
|
|
}
|
|
throw "both async and sync fetching of the wasm failed";
|
|
}
|
|
catch (err) {
|
|
abort(err);
|
|
}
|
|
}
|
|
|
|
function getBinaryPromise(binaryFile) {
|
|
// If we don't have the binary yet, try to load it asynchronously.
|
|
// Fetch has some additional restrictions over XHR, like it can't be used on a file:// url.
|
|
// See https://github.com/github/fetch/pull/92#issuecomment-140665932
|
|
// Cordova or Electron apps are typically loaded from a file:// url.
|
|
// So use fetch if it is available and the url is not a file, otherwise fall back to XHR.
|
|
if (!wasmBinary && (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER)) {
|
|
if (typeof fetch == 'function'
|
|
) {
|
|
return fetch(binaryFile, { credentials: 'same-origin' }).then((response) => {
|
|
if (!response['ok']) {
|
|
throw "failed to load wasm binary file at '" + binaryFile + "'";
|
|
}
|
|
return response['arrayBuffer']();
|
|
}).catch(() => getBinary(binaryFile));
|
|
}
|
|
}
|
|
|
|
// Otherwise, getBinary should be able to get it synchronously
|
|
return Promise.resolve().then(() => getBinary(binaryFile));
|
|
}
|
|
|
|
function instantiateArrayBuffer(binaryFile, imports, receiver) {
|
|
return getBinaryPromise(binaryFile).then((binary) => {
|
|
return WebAssembly.instantiate(binary, imports);
|
|
}).then((instance) => {
|
|
return instance;
|
|
}).then(receiver, (reason) => {
|
|
err('failed to asynchronously prepare wasm: ' + reason);
|
|
|
|
// Warn on some common problems.
|
|
if (isFileURI(wasmBinaryFile)) {
|
|
err('warning: Loading from a file URI (' + wasmBinaryFile + ') is not supported in most browsers. See https://emscripten.org/docs/getting_started/FAQ.html#how-do-i-run-a-local-webserver-for-testing-why-does-my-program-stall-in-downloading-or-preparing');
|
|
}
|
|
abort(reason);
|
|
});
|
|
}
|
|
|
|
function instantiateAsync(binary, binaryFile, imports, callback) {
|
|
if (!binary &&
|
|
typeof WebAssembly.instantiateStreaming == 'function' &&
|
|
!isDataURI(binaryFile) &&
|
|
typeof fetch == 'function') {
|
|
return fetch(binaryFile, { credentials: 'same-origin' }).then((response) => {
|
|
// Suppress closure warning here since the upstream definition for
|
|
// instantiateStreaming only allows Promise<Repsponse> rather than
|
|
// an actual Response.
|
|
// TODO(https://github.com/google/closure-compiler/pull/3913): Remove if/when upstream closure is fixed.
|
|
/** @suppress {checkTypes} */
|
|
var result = WebAssembly.instantiateStreaming(response, imports);
|
|
|
|
return result.then(
|
|
callback,
|
|
function(reason) {
|
|
// We expect the most common failure cause to be a bad MIME type for the binary,
|
|
// in which case falling back to ArrayBuffer instantiation should work.
|
|
err('wasm streaming compile failed: ' + reason);
|
|
err('falling back to ArrayBuffer instantiation');
|
|
return instantiateArrayBuffer(binaryFile, imports, callback);
|
|
});
|
|
});
|
|
} else {
|
|
return instantiateArrayBuffer(binaryFile, imports, callback);
|
|
}
|
|
}
|
|
|
|
// Create the wasm instance.
|
|
// Receives the wasm imports, returns the exports.
|
|
function createWasm() {
|
|
// prepare imports
|
|
var info = {
|
|
'env': wasmImports,
|
|
'wasi_snapshot_preview1': wasmImports,
|
|
};
|
|
// Load the wasm module and create an instance of using native support in the JS engine.
|
|
// handle a generated wasm instance, receiving its exports and
|
|
// performing other necessary setup
|
|
/** @param {WebAssembly.Module=} module*/
|
|
function receiveInstance(instance, module) {
|
|
var exports = instance.exports;
|
|
|
|
Module['asm'] = exports;
|
|
|
|
wasmTable = Module['asm']['__indirect_function_table'];
|
|
assert(wasmTable, "table not found in wasm exports");
|
|
|
|
addOnInit(Module['asm']['__wasm_call_ctors']);
|
|
|
|
removeRunDependency('wasm-instantiate');
|
|
return exports;
|
|
}
|
|
// wait for the pthread pool (if any)
|
|
addRunDependency('wasm-instantiate');
|
|
|
|
// Prefer streaming instantiation if available.
|
|
// Async compilation can be confusing when an error on the page overwrites Module
|
|
// (for example, if the order of elements is wrong, and the one defining Module is
|
|
// later), so we save Module and check it later.
|
|
var trueModule = Module;
|
|
function receiveInstantiationResult(result) {
|
|
// 'result' is a ResultObject object which has both the module and instance.
|
|
// receiveInstance() will swap in the exports (to Module.asm) so they can be called
|
|
assert(Module === trueModule, 'the Module object should not be replaced during async compilation - perhaps the order of HTML elements is wrong?');
|
|
trueModule = null;
|
|
// TODO: Due to Closure regression https://github.com/google/closure-compiler/issues/3193, the above line no longer optimizes out down to the following line.
|
|
// When the regression is fixed, can restore the above PTHREADS-enabled path.
|
|
receiveInstance(result['instance']);
|
|
}
|
|
|
|
// User shell pages can write their own Module.instantiateWasm = function(imports, successCallback) callback
|
|
// to manually instantiate the Wasm module themselves. This allows pages to
|
|
// run the instantiation parallel to any other async startup actions they are
|
|
// performing.
|
|
// Also pthreads and wasm workers initialize the wasm instance through this
|
|
// path.
|
|
if (Module['instantiateWasm']) {
|
|
|
|
try {
|
|
return Module['instantiateWasm'](info, receiveInstance);
|
|
} catch(e) {
|
|
err('Module.instantiateWasm callback failed with error: ' + e);
|
|
// If instantiation fails, reject the module ready promise.
|
|
readyPromiseReject(e);
|
|
}
|
|
}
|
|
|
|
// If instantiation fails, reject the module ready promise.
|
|
instantiateAsync(wasmBinary, wasmBinaryFile, info, receiveInstantiationResult).catch(readyPromiseReject);
|
|
return {}; // no exports yet; we'll fill them in later
|
|
}
|
|
|
|
// Globals used by JS i64 conversions (see makeSetValue)
|
|
var tempDouble;
|
|
var tempI64;
|
|
|
|
// include: runtime_debug.js
|
|
function legacyModuleProp(prop, newName) {
|
|
if (!Object.getOwnPropertyDescriptor(Module, prop)) {
|
|
Object.defineProperty(Module, prop, {
|
|
configurable: true,
|
|
get: function() {
|
|
abort('Module.' + prop + ' has been replaced with plain ' + newName + ' (the initial value can be provided on Module, but after startup the value is only looked for on a local variable of that name)');
|
|
}
|
|
});
|
|
}
|
|
}
|
|
|
|
function ignoredModuleProp(prop) {
|
|
if (Object.getOwnPropertyDescriptor(Module, prop)) {
|
|
abort('`Module.' + prop + '` was supplied but `' + prop + '` not included in INCOMING_MODULE_JS_API');
|
|
}
|
|
}
|
|
|
|
// forcing the filesystem exports a few things by default
|
|
function isExportedByForceFilesystem(name) {
|
|
return name === 'FS_createPath' ||
|
|
name === 'FS_createDataFile' ||
|
|
name === 'FS_createPreloadedFile' ||
|
|
name === 'FS_unlink' ||
|
|
name === 'addRunDependency' ||
|
|
// The old FS has some functionality that WasmFS lacks.
|
|
name === 'FS_createLazyFile' ||
|
|
name === 'FS_createDevice' ||
|
|
name === 'removeRunDependency';
|
|
}
|
|
|
|
function missingGlobal(sym, msg) {
|
|
if (typeof globalThis !== 'undefined') {
|
|
Object.defineProperty(globalThis, sym, {
|
|
configurable: true,
|
|
get: function() {
|
|
warnOnce('`' + sym + '` is not longer defined by emscripten. ' + msg);
|
|
return undefined;
|
|
}
|
|
});
|
|
}
|
|
}
|
|
|
|
missingGlobal('buffer', 'Please use HEAP8.buffer or wasmMemory.buffer');
|
|
|
|
function missingLibrarySymbol(sym) {
|
|
if (typeof globalThis !== 'undefined' && !Object.getOwnPropertyDescriptor(globalThis, sym)) {
|
|
Object.defineProperty(globalThis, sym, {
|
|
configurable: true,
|
|
get: function() {
|
|
// Can't `abort()` here because it would break code that does runtime
|
|
// checks. e.g. `if (typeof SDL === 'undefined')`.
|
|
var msg = '`' + sym + '` is a library symbol and not included by default; add it to your library.js __deps or to DEFAULT_LIBRARY_FUNCS_TO_INCLUDE on the command line';
|
|
// DEFAULT_LIBRARY_FUNCS_TO_INCLUDE requires the name as it appears in
|
|
// library.js, which means $name for a JS name with no prefix, or name
|
|
// for a JS name like _name.
|
|
var librarySymbol = sym;
|
|
if (!librarySymbol.startsWith('_')) {
|
|
librarySymbol = '$' + sym;
|
|
}
|
|
msg += " (e.g. -sDEFAULT_LIBRARY_FUNCS_TO_INCLUDE=" + librarySymbol + ")";
|
|
if (isExportedByForceFilesystem(sym)) {
|
|
msg += '. Alternatively, forcing filesystem support (-sFORCE_FILESYSTEM) can export this for you';
|
|
}
|
|
warnOnce(msg);
|
|
return undefined;
|
|
}
|
|
});
|
|
}
|
|
// Any symbol that is not included from the JS libary is also (by definition)
|
|
// not exported on the Module object.
|
|
unexportedRuntimeSymbol(sym);
|
|
}
|
|
|
|
function unexportedRuntimeSymbol(sym) {
|
|
if (!Object.getOwnPropertyDescriptor(Module, sym)) {
|
|
Object.defineProperty(Module, sym, {
|
|
configurable: true,
|
|
get: function() {
|
|
var msg = "'" + sym + "' was not exported. add it to EXPORTED_RUNTIME_METHODS (see the FAQ)";
|
|
if (isExportedByForceFilesystem(sym)) {
|
|
msg += '. Alternatively, forcing filesystem support (-sFORCE_FILESYSTEM) can export this for you';
|
|
}
|
|
abort(msg);
|
|
}
|
|
});
|
|
}
|
|
}
|
|
|
|
// Used by XXXXX_DEBUG settings to output debug messages.
|
|
function dbg(text) {
|
|
// TODO(sbc): Make this configurable somehow. Its not always convenient for
|
|
// logging to show up as warnings.
|
|
console.warn.apply(console, arguments);
|
|
}
|
|
|
|
// end include: runtime_debug.js
|
|
// === Body ===
|
|
|
|
|
|
// end include: preamble.js
|
|
|
|
/** @constructor */
|
|
function ExitStatus(status) {
|
|
this.name = 'ExitStatus';
|
|
this.message = `Program terminated with exit(${status})`;
|
|
this.status = status;
|
|
}
|
|
|
|
function callRuntimeCallbacks(callbacks) {
|
|
while (callbacks.length > 0) {
|
|
// Pass the module as the first argument.
|
|
callbacks.shift()(Module);
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
* @param {number} ptr
|
|
* @param {string} type
|
|
*/
|
|
function getValue(ptr, type = 'i8') {
|
|
if (type.endsWith('*')) type = '*';
|
|
switch (type) {
|
|
case 'i1': return HEAP8[((ptr)>>0)];
|
|
case 'i8': return HEAP8[((ptr)>>0)];
|
|
case 'i16': return HEAP16[((ptr)>>1)];
|
|
case 'i32': return HEAP32[((ptr)>>2)];
|
|
case 'i64': abort('to do getValue(i64) use WASM_BIGINT');
|
|
case 'float': return HEAPF32[((ptr)>>2)];
|
|
case 'double': return HEAPF64[((ptr)>>3)];
|
|
case '*': return HEAPU32[((ptr)>>2)];
|
|
default: abort(`invalid type for getValue: ${type}`);
|
|
}
|
|
}
|
|
|
|
function intArrayToString(array) {
|
|
var ret = [];
|
|
for (var i = 0; i < array.length; i++) {
|
|
var chr = array[i];
|
|
if (chr > 0xFF) {
|
|
assert(false, `Character code ${chr} (${String.fromCharCode(chr)}) at offset ${i} not in 0x00-0xFF.`);
|
|
chr &= 0xFF;
|
|
}
|
|
ret.push(String.fromCharCode(chr));
|
|
}
|
|
return ret.join('');
|
|
}
|
|
|
|
function ptrToString(ptr) {
|
|
assert(typeof ptr === 'number');
|
|
return '0x' + ptr.toString(16).padStart(8, '0');
|
|
}
|
|
|
|
|
|
/**
|
|
* @param {number} ptr
|
|
* @param {number} value
|
|
* @param {string} type
|
|
*/
|
|
function setValue(ptr, value, type = 'i8') {
|
|
if (type.endsWith('*')) type = '*';
|
|
switch (type) {
|
|
case 'i1': HEAP8[((ptr)>>0)] = value; break;
|
|
case 'i8': HEAP8[((ptr)>>0)] = value; break;
|
|
case 'i16': HEAP16[((ptr)>>1)] = value; break;
|
|
case 'i32': HEAP32[((ptr)>>2)] = value; break;
|
|
case 'i64': abort('to do setValue(i64) use WASM_BIGINT');
|
|
case 'float': HEAPF32[((ptr)>>2)] = value; break;
|
|
case 'double': HEAPF64[((ptr)>>3)] = value; break;
|
|
case '*': HEAPU32[((ptr)>>2)] = value; break;
|
|
default: abort(`invalid type for setValue: ${type}`);
|
|
}
|
|
}
|
|
|
|
function warnOnce(text) {
|
|
if (!warnOnce.shown) warnOnce.shown = {};
|
|
if (!warnOnce.shown[text]) {
|
|
warnOnce.shown[text] = 1;
|
|
err(text);
|
|
}
|
|
}
|
|
|
|
var UTF8Decoder = typeof TextDecoder != 'undefined' ? new TextDecoder('utf8') : undefined;
|
|
|
|
/**
|
|
* Given a pointer 'idx' to a null-terminated UTF8-encoded string in the given
|
|
* array that contains uint8 values, returns a copy of that string as a
|
|
* Javascript String object.
|
|
* heapOrArray is either a regular array, or a JavaScript typed array view.
|
|
* @param {number} idx
|
|
* @param {number=} maxBytesToRead
|
|
* @return {string}
|
|
*/
|
|
function UTF8ArrayToString(heapOrArray, idx, maxBytesToRead) {
|
|
var endIdx = idx + maxBytesToRead;
|
|
var endPtr = idx;
|
|
// TextDecoder needs to know the byte length in advance, it doesn't stop on
|
|
// null terminator by itself. Also, use the length info to avoid running tiny
|
|
// strings through TextDecoder, since .subarray() allocates garbage.
|
|
// (As a tiny code save trick, compare endPtr against endIdx using a negation,
|
|
// so that undefined means Infinity)
|
|
while (heapOrArray[endPtr] && !(endPtr >= endIdx)) ++endPtr;
|
|
|
|
if (endPtr - idx > 16 && heapOrArray.buffer && UTF8Decoder) {
|
|
return UTF8Decoder.decode(heapOrArray.subarray(idx, endPtr));
|
|
}
|
|
var str = '';
|
|
// If building with TextDecoder, we have already computed the string length
|
|
// above, so test loop end condition against that
|
|
while (idx < endPtr) {
|
|
// For UTF8 byte structure, see:
|
|
// http://en.wikipedia.org/wiki/UTF-8#Description
|
|
// https://www.ietf.org/rfc/rfc2279.txt
|
|
// https://tools.ietf.org/html/rfc3629
|
|
var u0 = heapOrArray[idx++];
|
|
if (!(u0 & 0x80)) { str += String.fromCharCode(u0); continue; }
|
|
var u1 = heapOrArray[idx++] & 63;
|
|
if ((u0 & 0xE0) == 0xC0) { str += String.fromCharCode(((u0 & 31) << 6) | u1); continue; }
|
|
var u2 = heapOrArray[idx++] & 63;
|
|
if ((u0 & 0xF0) == 0xE0) {
|
|
u0 = ((u0 & 15) << 12) | (u1 << 6) | u2;
|
|
} else {
|
|
if ((u0 & 0xF8) != 0xF0) warnOnce('Invalid UTF-8 leading byte ' + ptrToString(u0) + ' encountered when deserializing a UTF-8 string in wasm memory to a JS string!');
|
|
u0 = ((u0 & 7) << 18) | (u1 << 12) | (u2 << 6) | (heapOrArray[idx++] & 63);
|
|
}
|
|
|
|
if (u0 < 0x10000) {
|
|
str += String.fromCharCode(u0);
|
|
} else {
|
|
var ch = u0 - 0x10000;
|
|
str += String.fromCharCode(0xD800 | (ch >> 10), 0xDC00 | (ch & 0x3FF));
|
|
}
|
|
}
|
|
return str;
|
|
}
|
|
|
|
|
|
/**
|
|
* Given a pointer 'ptr' to a null-terminated UTF8-encoded string in the
|
|
* emscripten HEAP, returns a copy of that string as a Javascript String object.
|
|
*
|
|
* @param {number} ptr
|
|
* @param {number=} maxBytesToRead - An optional length that specifies the
|
|
* maximum number of bytes to read. You can omit this parameter to scan the
|
|
* string until the first 0 byte. If maxBytesToRead is passed, and the string
|
|
* at [ptr, ptr+maxBytesToReadr[ contains a null byte in the middle, then the
|
|
* string will cut short at that byte index (i.e. maxBytesToRead will not
|
|
* produce a string of exact length [ptr, ptr+maxBytesToRead[) N.B. mixing
|
|
* frequent uses of UTF8ToString() with and without maxBytesToRead may throw
|
|
* JS JIT optimizations off, so it is worth to consider consistently using one
|
|
* @return {string}
|
|
*/
|
|
function UTF8ToString(ptr, maxBytesToRead) {
|
|
assert(typeof ptr == 'number');
|
|
return ptr ? UTF8ArrayToString(HEAPU8, ptr, maxBytesToRead) : '';
|
|
}
|
|
function ___assert_fail(condition, filename, line, func) {
|
|
abort(`Assertion failed: ${UTF8ToString(condition)}, at: ` + [filename ? UTF8ToString(filename) : 'unknown filename', line, func ? UTF8ToString(func) : 'unknown function']);
|
|
}
|
|
|
|
var char_0 = 48;
|
|
|
|
var char_9 = 57;
|
|
function makeLegalFunctionName(name) {
|
|
if (undefined === name) {
|
|
return '_unknown';
|
|
}
|
|
name = name.replace(/[^a-zA-Z0-9_]/g, '$');
|
|
var f = name.charCodeAt(0);
|
|
if (f >= char_0 && f <= char_9) {
|
|
return `_${name}`;
|
|
}
|
|
return name;
|
|
}
|
|
function createNamedFunction(name, body) {
|
|
name = makeLegalFunctionName(name);
|
|
// Use an abject with a computed property name to create a new function with
|
|
// a name specified at runtime, but without using `new Function` or `eval`.
|
|
return {
|
|
[name]: function() {
|
|
return body.apply(this, arguments);
|
|
}
|
|
}[name];
|
|
}
|
|
|
|
/** @constructor */
|
|
function HandleAllocator() {
|
|
// Reserve slot 0 so that 0 is always an invalid handle
|
|
this.allocated = [undefined];
|
|
this.freelist = [];
|
|
this.get = function(id) {
|
|
assert(this.allocated[id] !== undefined, `invalid handle: ${id}`);
|
|
return this.allocated[id];
|
|
};
|
|
this.has = function(id) {
|
|
return this.allocated[id] !== undefined;
|
|
};
|
|
this.allocate = function(handle) {
|
|
var id = this.freelist.pop() || this.allocated.length;
|
|
this.allocated[id] = handle;
|
|
return id;
|
|
};
|
|
this.free = function(id) {
|
|
assert(this.allocated[id] !== undefined);
|
|
// Set the slot to `undefined` rather than using `delete` here since
|
|
// apparently arrays with holes in them can be less efficient.
|
|
this.allocated[id] = undefined;
|
|
this.freelist.push(id);
|
|
};
|
|
}
|
|
var emval_handles = new HandleAllocator();;
|
|
|
|
function extendError(baseErrorType, errorName) {
|
|
var errorClass = createNamedFunction(errorName, function(message) {
|
|
this.name = errorName;
|
|
this.message = message;
|
|
|
|
var stack = (new Error(message)).stack;
|
|
if (stack !== undefined) {
|
|
this.stack = this.toString() + '\n' +
|
|
stack.replace(/^Error(:[^\n]*)?\n/, '');
|
|
}
|
|
});
|
|
errorClass.prototype = Object.create(baseErrorType.prototype);
|
|
errorClass.prototype.constructor = errorClass;
|
|
errorClass.prototype.toString = function() {
|
|
if (this.message === undefined) {
|
|
return this.name;
|
|
} else {
|
|
return `${this.name}: ${this.message}`;
|
|
}
|
|
};
|
|
|
|
return errorClass;
|
|
}
|
|
var BindingError = undefined;
|
|
function throwBindingError(message) {
|
|
throw new BindingError(message);
|
|
}
|
|
|
|
function count_emval_handles() {
|
|
var count = 0;
|
|
for (var i = emval_handles.reserved; i < emval_handles.allocated.length; ++i) {
|
|
if (emval_handles.allocated[i] !== undefined) {
|
|
++count;
|
|
}
|
|
}
|
|
return count;
|
|
}
|
|
|
|
function init_emval() {
|
|
// reserve some special values. These never get de-allocated.
|
|
// The HandleAllocator takes care of reserving zero.
|
|
emval_handles.allocated.push(
|
|
{value: undefined},
|
|
{value: null},
|
|
{value: true},
|
|
{value: false},
|
|
);
|
|
emval_handles.reserved = emval_handles.allocated.length
|
|
Module['count_emval_handles'] = count_emval_handles;
|
|
}
|
|
var Emval = {toValue:(handle) => {
|
|
if (!handle) {
|
|
throwBindingError('Cannot use deleted val. handle = ' + handle);
|
|
}
|
|
return emval_handles.get(handle).value;
|
|
},toHandle:(value) => {
|
|
switch (value) {
|
|
case undefined: return 1;
|
|
case null: return 2;
|
|
case true: return 3;
|
|
case false: return 4;
|
|
default:{
|
|
return emval_handles.allocate({refcount: 1, value: value});
|
|
}
|
|
}
|
|
}};
|
|
|
|
var PureVirtualError = undefined;
|
|
|
|
function embind_init_charCodes() {
|
|
var codes = new Array(256);
|
|
for (var i = 0; i < 256; ++i) {
|
|
codes[i] = String.fromCharCode(i);
|
|
}
|
|
embind_charCodes = codes;
|
|
}
|
|
var embind_charCodes = undefined;
|
|
function readLatin1String(ptr) {
|
|
var ret = "";
|
|
var c = ptr;
|
|
while (HEAPU8[c]) {
|
|
ret += embind_charCodes[HEAPU8[c++]];
|
|
}
|
|
return ret;
|
|
}
|
|
|
|
function getInheritedInstanceCount() {
|
|
return Object.keys(registeredInstances).length;
|
|
}
|
|
|
|
function getLiveInheritedInstances() {
|
|
var rv = [];
|
|
for (var k in registeredInstances) {
|
|
if (registeredInstances.hasOwnProperty(k)) {
|
|
rv.push(registeredInstances[k]);
|
|
}
|
|
}
|
|
return rv;
|
|
}
|
|
|
|
var deletionQueue = [];
|
|
function flushPendingDeletes() {
|
|
while (deletionQueue.length) {
|
|
var obj = deletionQueue.pop();
|
|
obj.$$.deleteScheduled = false;
|
|
obj['delete']();
|
|
}
|
|
}
|
|
|
|
var delayFunction = undefined;
|
|
|
|
|
|
function setDelayFunction(fn) {
|
|
delayFunction = fn;
|
|
if (deletionQueue.length && delayFunction) {
|
|
delayFunction(flushPendingDeletes);
|
|
}
|
|
}
|
|
function init_embind() {
|
|
Module['getInheritedInstanceCount'] = getInheritedInstanceCount;
|
|
Module['getLiveInheritedInstances'] = getLiveInheritedInstances;
|
|
Module['flushPendingDeletes'] = flushPendingDeletes;
|
|
Module['setDelayFunction'] = setDelayFunction;
|
|
}
|
|
var registeredInstances = {};
|
|
|
|
function getBasestPointer(class_, ptr) {
|
|
if (ptr === undefined) {
|
|
throwBindingError('ptr should not be undefined');
|
|
}
|
|
while (class_.baseClass) {
|
|
ptr = class_.upcast(ptr);
|
|
class_ = class_.baseClass;
|
|
}
|
|
return ptr;
|
|
}
|
|
|
|
function registerInheritedInstance(class_, ptr, instance) {
|
|
ptr = getBasestPointer(class_, ptr);
|
|
if (registeredInstances.hasOwnProperty(ptr)) {
|
|
throwBindingError(`Tried to register registered instance: ${ptr}`);
|
|
} else {
|
|
registeredInstances[ptr] = instance;
|
|
}
|
|
}
|
|
|
|
var registeredTypes = {};
|
|
|
|
|
|
|
|
function getTypeName(type) {
|
|
var ptr = ___getTypeName(type);
|
|
var rv = readLatin1String(ptr);
|
|
_free(ptr);
|
|
return rv;
|
|
}
|
|
|
|
function requireRegisteredType(rawType, humanName) {
|
|
var impl = registeredTypes[rawType];
|
|
if (undefined === impl) {
|
|
throwBindingError(humanName + " has unknown type " + getTypeName(rawType));
|
|
}
|
|
return impl;
|
|
}
|
|
|
|
|
|
|
|
|
|
function unregisterInheritedInstance(class_, ptr) {
|
|
ptr = getBasestPointer(class_, ptr);
|
|
if (registeredInstances.hasOwnProperty(ptr)) {
|
|
delete registeredInstances[ptr];
|
|
} else {
|
|
throwBindingError(`Tried to unregister unregistered instance: ${ptr}`);
|
|
}
|
|
}
|
|
|
|
function detachFinalizer(handle) {}
|
|
|
|
var finalizationRegistry = false;
|
|
|
|
|
|
function runDestructor($$) {
|
|
if ($$.smartPtr) {
|
|
$$.smartPtrType.rawDestructor($$.smartPtr);
|
|
} else {
|
|
$$.ptrType.registeredClass.rawDestructor($$.ptr);
|
|
}
|
|
}
|
|
function releaseClassHandle($$) {
|
|
$$.count.value -= 1;
|
|
var toDelete = 0 === $$.count.value;
|
|
if (toDelete) {
|
|
runDestructor($$);
|
|
}
|
|
}
|
|
|
|
function downcastPointer(ptr, ptrClass, desiredClass) {
|
|
if (ptrClass === desiredClass) {
|
|
return ptr;
|
|
}
|
|
if (undefined === desiredClass.baseClass) {
|
|
return null; // no conversion
|
|
}
|
|
|
|
var rv = downcastPointer(ptr, ptrClass, desiredClass.baseClass);
|
|
if (rv === null) {
|
|
return null;
|
|
}
|
|
return desiredClass.downcast(rv);
|
|
}
|
|
|
|
var registeredPointers = {};
|
|
|
|
|
|
function getInheritedInstance(class_, ptr) {
|
|
ptr = getBasestPointer(class_, ptr);
|
|
return registeredInstances[ptr];
|
|
}
|
|
|
|
var InternalError = undefined;
|
|
function throwInternalError(message) {
|
|
throw new InternalError(message);
|
|
}
|
|
|
|
function makeClassHandle(prototype, record) {
|
|
if (!record.ptrType || !record.ptr) {
|
|
throwInternalError('makeClassHandle requires ptr and ptrType');
|
|
}
|
|
var hasSmartPtrType = !!record.smartPtrType;
|
|
var hasSmartPtr = !!record.smartPtr;
|
|
if (hasSmartPtrType !== hasSmartPtr) {
|
|
throwInternalError('Both smartPtrType and smartPtr must be specified');
|
|
}
|
|
record.count = { value: 1 };
|
|
return attachFinalizer(Object.create(prototype, {
|
|
$$: {
|
|
value: record,
|
|
},
|
|
}));
|
|
}
|
|
function RegisteredPointer_fromWireType(ptr) {
|
|
// ptr is a raw pointer (or a raw smartpointer)
|
|
|
|
// rawPointer is a maybe-null raw pointer
|
|
var rawPointer = this.getPointee(ptr);
|
|
if (!rawPointer) {
|
|
this.destructor(ptr);
|
|
return null;
|
|
}
|
|
|
|
var registeredInstance = getInheritedInstance(this.registeredClass, rawPointer);
|
|
if (undefined !== registeredInstance) {
|
|
// JS object has been neutered, time to repopulate it
|
|
if (0 === registeredInstance.$$.count.value) {
|
|
registeredInstance.$$.ptr = rawPointer;
|
|
registeredInstance.$$.smartPtr = ptr;
|
|
return registeredInstance['clone']();
|
|
} else {
|
|
// else, just increment reference count on existing object
|
|
// it already has a reference to the smart pointer
|
|
var rv = registeredInstance['clone']();
|
|
this.destructor(ptr);
|
|
return rv;
|
|
}
|
|
}
|
|
|
|
function makeDefaultHandle() {
|
|
if (this.isSmartPointer) {
|
|
return makeClassHandle(this.registeredClass.instancePrototype, {
|
|
ptrType: this.pointeeType,
|
|
ptr: rawPointer,
|
|
smartPtrType: this,
|
|
smartPtr: ptr,
|
|
});
|
|
} else {
|
|
return makeClassHandle(this.registeredClass.instancePrototype, {
|
|
ptrType: this,
|
|
ptr: ptr,
|
|
});
|
|
}
|
|
}
|
|
|
|
var actualType = this.registeredClass.getActualType(rawPointer);
|
|
var registeredPointerRecord = registeredPointers[actualType];
|
|
if (!registeredPointerRecord) {
|
|
return makeDefaultHandle.call(this);
|
|
}
|
|
|
|
var toType;
|
|
if (this.isConst) {
|
|
toType = registeredPointerRecord.constPointerType;
|
|
} else {
|
|
toType = registeredPointerRecord.pointerType;
|
|
}
|
|
var dp = downcastPointer(
|
|
rawPointer,
|
|
this.registeredClass,
|
|
toType.registeredClass);
|
|
if (dp === null) {
|
|
return makeDefaultHandle.call(this);
|
|
}
|
|
if (this.isSmartPointer) {
|
|
return makeClassHandle(toType.registeredClass.instancePrototype, {
|
|
ptrType: toType,
|
|
ptr: dp,
|
|
smartPtrType: this,
|
|
smartPtr: ptr,
|
|
});
|
|
} else {
|
|
return makeClassHandle(toType.registeredClass.instancePrototype, {
|
|
ptrType: toType,
|
|
ptr: dp,
|
|
});
|
|
}
|
|
}
|
|
function attachFinalizer(handle) {
|
|
if ('undefined' === typeof FinalizationRegistry) {
|
|
attachFinalizer = (handle) => handle;
|
|
return handle;
|
|
}
|
|
// If the running environment has a FinalizationRegistry (see
|
|
// https://github.com/tc39/proposal-weakrefs), then attach finalizers
|
|
// for class handles. We check for the presence of FinalizationRegistry
|
|
// at run-time, not build-time.
|
|
finalizationRegistry = new FinalizationRegistry((info) => {
|
|
console.warn(info.leakWarning.stack.replace(/^Error: /, ''));
|
|
releaseClassHandle(info.$$);
|
|
});
|
|
attachFinalizer = (handle) => {
|
|
var $$ = handle.$$;
|
|
var hasSmartPtr = !!$$.smartPtr;
|
|
if (hasSmartPtr) {
|
|
// We should not call the destructor on raw pointers in case other code expects the pointee to live
|
|
var info = { $$: $$ };
|
|
// Create a warning as an Error instance in advance so that we can store
|
|
// the current stacktrace and point to it when / if a leak is detected.
|
|
// This is more useful than the empty stacktrace of `FinalizationRegistry`
|
|
// callback.
|
|
var cls = $$.ptrType.registeredClass;
|
|
info.leakWarning = new Error(`Embind found a leaked C++ instance ${cls.name} <${ptrToString($$.ptr)}>.\n` +
|
|
"We'll free it automatically in this case, but this functionality is not reliable across various environments.\n" +
|
|
"Make sure to invoke .delete() manually once you're done with the instance instead.\n" +
|
|
"Originally allocated"); // `.stack` will add "at ..." after this sentence
|
|
if ('captureStackTrace' in Error) {
|
|
Error.captureStackTrace(info.leakWarning, RegisteredPointer_fromWireType);
|
|
}
|
|
finalizationRegistry.register(handle, info, handle);
|
|
}
|
|
return handle;
|
|
};
|
|
detachFinalizer = (handle) => finalizationRegistry.unregister(handle);
|
|
return attachFinalizer(handle);
|
|
}
|
|
function __embind_create_inheriting_constructor(constructorName, wrapperType, properties) {
|
|
constructorName = readLatin1String(constructorName);
|
|
wrapperType = requireRegisteredType(wrapperType, 'wrapper');
|
|
properties = Emval.toValue(properties);
|
|
|
|
var arraySlice = [].slice;
|
|
|
|
var registeredClass = wrapperType.registeredClass;
|
|
var wrapperPrototype = registeredClass.instancePrototype;
|
|
var baseClass = registeredClass.baseClass;
|
|
var baseClassPrototype = baseClass.instancePrototype;
|
|
var baseConstructor = registeredClass.baseClass.constructor;
|
|
var ctor = createNamedFunction(constructorName, function() {
|
|
registeredClass.baseClass.pureVirtualFunctions.forEach(function(name) {
|
|
if (this[name] === baseClassPrototype[name]) {
|
|
throw new PureVirtualError(`Pure virtual function ${name} must be implemented in JavaScript`);
|
|
}
|
|
}.bind(this));
|
|
|
|
Object.defineProperty(this, '__parent', {
|
|
value: wrapperPrototype
|
|
});
|
|
this["__construct"].apply(this, arraySlice.call(arguments));
|
|
});
|
|
|
|
// It's a little nasty that we're modifying the wrapper prototype here.
|
|
|
|
wrapperPrototype["__construct"] = function __construct() {
|
|
if (this === wrapperPrototype) {
|
|
throwBindingError("Pass correct 'this' to __construct");
|
|
}
|
|
|
|
var inner = baseConstructor["implement"].apply(
|
|
undefined,
|
|
[this].concat(arraySlice.call(arguments)));
|
|
detachFinalizer(inner);
|
|
var $$ = inner.$$;
|
|
inner["notifyOnDestruction"]();
|
|
$$.preservePointerOnDelete = true;
|
|
Object.defineProperties(this, { $$: {
|
|
value: $$
|
|
}});
|
|
attachFinalizer(this);
|
|
registerInheritedInstance(registeredClass, $$.ptr, this);
|
|
};
|
|
|
|
wrapperPrototype["__destruct"] = function __destruct() {
|
|
if (this === wrapperPrototype) {
|
|
throwBindingError("Pass correct 'this' to __destruct");
|
|
}
|
|
|
|
detachFinalizer(this);
|
|
unregisterInheritedInstance(registeredClass, this.$$.ptr);
|
|
};
|
|
|
|
ctor.prototype = Object.create(wrapperPrototype);
|
|
for (var p in properties) {
|
|
ctor.prototype[p] = properties[p];
|
|
}
|
|
return Emval.toHandle(ctor);
|
|
}
|
|
|
|
function __embind_register_bigint(primitiveType, name, size, minRange, maxRange) {}
|
|
|
|
function getShiftFromSize(size) {
|
|
switch (size) {
|
|
case 1: return 0;
|
|
case 2: return 1;
|
|
case 4: return 2;
|
|
case 8: return 3;
|
|
default:
|
|
throw new TypeError(`Unknown type size: ${size}`);
|
|
}
|
|
}
|
|
|
|
|
|
var awaitingDependencies = {};
|
|
|
|
|
|
var typeDependencies = {};
|
|
|
|
|
|
|
|
|
|
|
|
function whenDependentTypesAreResolved(myTypes, dependentTypes, getTypeConverters) {
|
|
myTypes.forEach(function(type) {
|
|
typeDependencies[type] = dependentTypes;
|
|
});
|
|
|
|
function onComplete(typeConverters) {
|
|
var myTypeConverters = getTypeConverters(typeConverters);
|
|
if (myTypeConverters.length !== myTypes.length) {
|
|
throwInternalError('Mismatched type converter count');
|
|
}
|
|
for (var i = 0; i < myTypes.length; ++i) {
|
|
registerType(myTypes[i], myTypeConverters[i]);
|
|
}
|
|
}
|
|
|
|
var typeConverters = new Array(dependentTypes.length);
|
|
var unregisteredTypes = [];
|
|
var registered = 0;
|
|
dependentTypes.forEach((dt, i) => {
|
|
if (registeredTypes.hasOwnProperty(dt)) {
|
|
typeConverters[i] = registeredTypes[dt];
|
|
} else {
|
|
unregisteredTypes.push(dt);
|
|
if (!awaitingDependencies.hasOwnProperty(dt)) {
|
|
awaitingDependencies[dt] = [];
|
|
}
|
|
awaitingDependencies[dt].push(() => {
|
|
typeConverters[i] = registeredTypes[dt];
|
|
++registered;
|
|
if (registered === unregisteredTypes.length) {
|
|
onComplete(typeConverters);
|
|
}
|
|
});
|
|
}
|
|
});
|
|
if (0 === unregisteredTypes.length) {
|
|
onComplete(typeConverters);
|
|
}
|
|
}
|
|
/** @param {Object=} options */
|
|
function registerType(rawType, registeredInstance, options = {}) {
|
|
if (!('argPackAdvance' in registeredInstance)) {
|
|
throw new TypeError('registerType registeredInstance requires argPackAdvance');
|
|
}
|
|
|
|
var name = registeredInstance.name;
|
|
if (!rawType) {
|
|
throwBindingError(`type "${name}" must have a positive integer typeid pointer`);
|
|
}
|
|
if (registeredTypes.hasOwnProperty(rawType)) {
|
|
if (options.ignoreDuplicateRegistrations) {
|
|
return;
|
|
} else {
|
|
throwBindingError(`Cannot register type '${name}' twice`);
|
|
}
|
|
}
|
|
|
|
registeredTypes[rawType] = registeredInstance;
|
|
delete typeDependencies[rawType];
|
|
|
|
if (awaitingDependencies.hasOwnProperty(rawType)) {
|
|
var callbacks = awaitingDependencies[rawType];
|
|
delete awaitingDependencies[rawType];
|
|
callbacks.forEach((cb) => cb());
|
|
}
|
|
}
|
|
function __embind_register_bool(rawType, name, size, trueValue, falseValue) {
|
|
var shift = getShiftFromSize(size);
|
|
|
|
name = readLatin1String(name);
|
|
registerType(rawType, {
|
|
name: name,
|
|
'fromWireType': function(wt) {
|
|
// ambiguous emscripten ABI: sometimes return values are
|
|
// true or false, and sometimes integers (0 or 1)
|
|
return !!wt;
|
|
},
|
|
'toWireType': function(destructors, o) {
|
|
return o ? trueValue : falseValue;
|
|
},
|
|
'argPackAdvance': 8,
|
|
'readValueFromPointer': function(pointer) {
|
|
// TODO: if heap is fixed (like in asm.js) this could be executed outside
|
|
var heap;
|
|
if (size === 1) {
|
|
heap = HEAP8;
|
|
} else if (size === 2) {
|
|
heap = HEAP16;
|
|
} else if (size === 4) {
|
|
heap = HEAP32;
|
|
} else {
|
|
throw new TypeError("Unknown boolean type size: " + name);
|
|
}
|
|
return this['fromWireType'](heap[pointer >> shift]);
|
|
},
|
|
destructorFunction: null, // This type does not need a destructor
|
|
});
|
|
}
|
|
|
|
|
|
function ClassHandle_isAliasOf(other) {
|
|
if (!(this instanceof ClassHandle)) {
|
|
return false;
|
|
}
|
|
if (!(other instanceof ClassHandle)) {
|
|
return false;
|
|
}
|
|
|
|
var leftClass = this.$$.ptrType.registeredClass;
|
|
var left = this.$$.ptr;
|
|
var rightClass = other.$$.ptrType.registeredClass;
|
|
var right = other.$$.ptr;
|
|
|
|
while (leftClass.baseClass) {
|
|
left = leftClass.upcast(left);
|
|
leftClass = leftClass.baseClass;
|
|
}
|
|
|
|
while (rightClass.baseClass) {
|
|
right = rightClass.upcast(right);
|
|
rightClass = rightClass.baseClass;
|
|
}
|
|
|
|
return leftClass === rightClass && left === right;
|
|
}
|
|
|
|
function shallowCopyInternalPointer(o) {
|
|
return {
|
|
count: o.count,
|
|
deleteScheduled: o.deleteScheduled,
|
|
preservePointerOnDelete: o.preservePointerOnDelete,
|
|
ptr: o.ptr,
|
|
ptrType: o.ptrType,
|
|
smartPtr: o.smartPtr,
|
|
smartPtrType: o.smartPtrType,
|
|
};
|
|
}
|
|
|
|
function throwInstanceAlreadyDeleted(obj) {
|
|
function getInstanceTypeName(handle) {
|
|
return handle.$$.ptrType.registeredClass.name;
|
|
}
|
|
throwBindingError(getInstanceTypeName(obj) + ' instance already deleted');
|
|
}
|
|
|
|
function ClassHandle_clone() {
|
|
if (!this.$$.ptr) {
|
|
throwInstanceAlreadyDeleted(this);
|
|
}
|
|
|
|
if (this.$$.preservePointerOnDelete) {
|
|
this.$$.count.value += 1;
|
|
return this;
|
|
} else {
|
|
var clone = attachFinalizer(Object.create(Object.getPrototypeOf(this), {
|
|
$$: {
|
|
value: shallowCopyInternalPointer(this.$$),
|
|
}
|
|
}));
|
|
|
|
clone.$$.count.value += 1;
|
|
clone.$$.deleteScheduled = false;
|
|
return clone;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
function ClassHandle_delete() {
|
|
if (!this.$$.ptr) {
|
|
throwInstanceAlreadyDeleted(this);
|
|
}
|
|
|
|
if (this.$$.deleteScheduled && !this.$$.preservePointerOnDelete) {
|
|
throwBindingError('Object already scheduled for deletion');
|
|
}
|
|
|
|
detachFinalizer(this);
|
|
releaseClassHandle(this.$$);
|
|
|
|
if (!this.$$.preservePointerOnDelete) {
|
|
this.$$.smartPtr = undefined;
|
|
this.$$.ptr = undefined;
|
|
}
|
|
}
|
|
|
|
function ClassHandle_isDeleted() {
|
|
return !this.$$.ptr;
|
|
}
|
|
|
|
|
|
|
|
function ClassHandle_deleteLater() {
|
|
if (!this.$$.ptr) {
|
|
throwInstanceAlreadyDeleted(this);
|
|
}
|
|
if (this.$$.deleteScheduled && !this.$$.preservePointerOnDelete) {
|
|
throwBindingError('Object already scheduled for deletion');
|
|
}
|
|
deletionQueue.push(this);
|
|
if (deletionQueue.length === 1 && delayFunction) {
|
|
delayFunction(flushPendingDeletes);
|
|
}
|
|
this.$$.deleteScheduled = true;
|
|
return this;
|
|
}
|
|
function init_ClassHandle() {
|
|
ClassHandle.prototype['isAliasOf'] = ClassHandle_isAliasOf;
|
|
ClassHandle.prototype['clone'] = ClassHandle_clone;
|
|
ClassHandle.prototype['delete'] = ClassHandle_delete;
|
|
ClassHandle.prototype['isDeleted'] = ClassHandle_isDeleted;
|
|
ClassHandle.prototype['deleteLater'] = ClassHandle_deleteLater;
|
|
}
|
|
function ClassHandle() {
|
|
}
|
|
|
|
|
|
|
|
function ensureOverloadTable(proto, methodName, humanName) {
|
|
if (undefined === proto[methodName].overloadTable) {
|
|
var prevFunc = proto[methodName];
|
|
// Inject an overload resolver function that routes to the appropriate overload based on the number of arguments.
|
|
proto[methodName] = function() {
|
|
// TODO This check can be removed in -O3 level "unsafe" optimizations.
|
|
if (!proto[methodName].overloadTable.hasOwnProperty(arguments.length)) {
|
|
throwBindingError(`Function '${humanName}' called with an invalid number of arguments (${arguments.length}) - expects one of (${proto[methodName].overloadTable})!`);
|
|
}
|
|
return proto[methodName].overloadTable[arguments.length].apply(this, arguments);
|
|
};
|
|
// Move the previous function into the overload table.
|
|
proto[methodName].overloadTable = [];
|
|
proto[methodName].overloadTable[prevFunc.argCount] = prevFunc;
|
|
}
|
|
}
|
|
|
|
/** @param {number=} numArguments */
|
|
function exposePublicSymbol(name, value, numArguments) {
|
|
if (Module.hasOwnProperty(name)) {
|
|
if (undefined === numArguments || (undefined !== Module[name].overloadTable && undefined !== Module[name].overloadTable[numArguments])) {
|
|
throwBindingError(`Cannot register public name '${name}' twice`);
|
|
}
|
|
|
|
// We are exposing a function with the same name as an existing function. Create an overload table and a function selector
|
|
// that routes between the two.
|
|
ensureOverloadTable(Module, name, name);
|
|
if (Module.hasOwnProperty(numArguments)) {
|
|
throwBindingError(`Cannot register multiple overloads of a function with the same number of arguments (${numArguments})!`);
|
|
}
|
|
// Add the new function into the overload table.
|
|
Module[name].overloadTable[numArguments] = value;
|
|
}
|
|
else {
|
|
Module[name] = value;
|
|
if (undefined !== numArguments) {
|
|
Module[name].numArguments = numArguments;
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
/** @constructor */
|
|
function RegisteredClass(name,
|
|
constructor,
|
|
instancePrototype,
|
|
rawDestructor,
|
|
baseClass,
|
|
getActualType,
|
|
upcast,
|
|
downcast) {
|
|
this.name = name;
|
|
this.constructor = constructor;
|
|
this.instancePrototype = instancePrototype;
|
|
this.rawDestructor = rawDestructor;
|
|
this.baseClass = baseClass;
|
|
this.getActualType = getActualType;
|
|
this.upcast = upcast;
|
|
this.downcast = downcast;
|
|
this.pureVirtualFunctions = [];
|
|
}
|
|
|
|
|
|
function upcastPointer(ptr, ptrClass, desiredClass) {
|
|
while (ptrClass !== desiredClass) {
|
|
if (!ptrClass.upcast) {
|
|
throwBindingError(`Expected null or instance of ${desiredClass.name}, got an instance of ${ptrClass.name}`);
|
|
}
|
|
ptr = ptrClass.upcast(ptr);
|
|
ptrClass = ptrClass.baseClass;
|
|
}
|
|
return ptr;
|
|
}
|
|
function constNoSmartPtrRawPointerToWireType(destructors, handle) {
|
|
if (handle === null) {
|
|
if (this.isReference) {
|
|
throwBindingError(`null is not a valid ${this.name}`);
|
|
}
|
|
return 0;
|
|
}
|
|
|
|
if (!handle.$$) {
|
|
throwBindingError(`Cannot pass "${embindRepr(handle)}" as a ${this.name}`);
|
|
}
|
|
if (!handle.$$.ptr) {
|
|
throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`);
|
|
}
|
|
var handleClass = handle.$$.ptrType.registeredClass;
|
|
var ptr = upcastPointer(handle.$$.ptr, handleClass, this.registeredClass);
|
|
return ptr;
|
|
}
|
|
|
|
|
|
function genericPointerToWireType(destructors, handle) {
|
|
var ptr;
|
|
if (handle === null) {
|
|
if (this.isReference) {
|
|
throwBindingError(`null is not a valid ${this.name}`);
|
|
}
|
|
|
|
if (this.isSmartPointer) {
|
|
ptr = this.rawConstructor();
|
|
if (destructors !== null) {
|
|
destructors.push(this.rawDestructor, ptr);
|
|
}
|
|
return ptr;
|
|
} else {
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
if (!handle.$$) {
|
|
throwBindingError(`Cannot pass "${embindRepr(handle)}" as a ${this.name}`);
|
|
}
|
|
if (!handle.$$.ptr) {
|
|
throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`);
|
|
}
|
|
if (!this.isConst && handle.$$.ptrType.isConst) {
|
|
throwBindingError(`Cannot convert argument of type ${(handle.$$.smartPtrType ? handle.$$.smartPtrType.name : handle.$$.ptrType.name)} to parameter type ${this.name}`);
|
|
}
|
|
var handleClass = handle.$$.ptrType.registeredClass;
|
|
ptr = upcastPointer(handle.$$.ptr, handleClass, this.registeredClass);
|
|
|
|
if (this.isSmartPointer) {
|
|
// TODO: this is not strictly true
|
|
// We could support BY_EMVAL conversions from raw pointers to smart pointers
|
|
// because the smart pointer can hold a reference to the handle
|
|
if (undefined === handle.$$.smartPtr) {
|
|
throwBindingError('Passing raw pointer to smart pointer is illegal');
|
|
}
|
|
|
|
switch (this.sharingPolicy) {
|
|
case 0: // NONE
|
|
// no upcasting
|
|
if (handle.$$.smartPtrType === this) {
|
|
ptr = handle.$$.smartPtr;
|
|
} else {
|
|
throwBindingError(`Cannot convert argument of type ${(handle.$$.smartPtrType ? handle.$$.smartPtrType.name : handle.$$.ptrType.name)} to parameter type ${this.name}`);
|
|
}
|
|
break;
|
|
|
|
case 1: // INTRUSIVE
|
|
ptr = handle.$$.smartPtr;
|
|
break;
|
|
|
|
case 2: // BY_EMVAL
|
|
if (handle.$$.smartPtrType === this) {
|
|
ptr = handle.$$.smartPtr;
|
|
} else {
|
|
var clonedHandle = handle['clone']();
|
|
ptr = this.rawShare(
|
|
ptr,
|
|
Emval.toHandle(function() {
|
|
clonedHandle['delete']();
|
|
})
|
|
);
|
|
if (destructors !== null) {
|
|
destructors.push(this.rawDestructor, ptr);
|
|
}
|
|
}
|
|
break;
|
|
|
|
default:
|
|
throwBindingError('Unsupporting sharing policy');
|
|
}
|
|
}
|
|
return ptr;
|
|
}
|
|
|
|
|
|
function nonConstNoSmartPtrRawPointerToWireType(destructors, handle) {
|
|
if (handle === null) {
|
|
if (this.isReference) {
|
|
throwBindingError(`null is not a valid ${this.name}`);
|
|
}
|
|
return 0;
|
|
}
|
|
|
|
if (!handle.$$) {
|
|
throwBindingError(`Cannot pass "${embindRepr(handle)}" as a ${this.name}`);
|
|
}
|
|
if (!handle.$$.ptr) {
|
|
throwBindingError(`Cannot pass deleted object as a pointer of type ${this.name}`);
|
|
}
|
|
if (handle.$$.ptrType.isConst) {
|
|
throwBindingError(`Cannot convert argument of type ${handle.$$.ptrType.name} to parameter type ${this.name}`);
|
|
}
|
|
var handleClass = handle.$$.ptrType.registeredClass;
|
|
var ptr = upcastPointer(handle.$$.ptr, handleClass, this.registeredClass);
|
|
return ptr;
|
|
}
|
|
|
|
function simpleReadValueFromPointer(pointer) {
|
|
return this['fromWireType'](HEAP32[((pointer)>>2)]);
|
|
}
|
|
|
|
function RegisteredPointer_getPointee(ptr) {
|
|
if (this.rawGetPointee) {
|
|
ptr = this.rawGetPointee(ptr);
|
|
}
|
|
return ptr;
|
|
}
|
|
|
|
function RegisteredPointer_destructor(ptr) {
|
|
if (this.rawDestructor) {
|
|
this.rawDestructor(ptr);
|
|
}
|
|
}
|
|
|
|
function RegisteredPointer_deleteObject(handle) {
|
|
if (handle !== null) {
|
|
handle['delete']();
|
|
}
|
|
}
|
|
|
|
function init_RegisteredPointer() {
|
|
RegisteredPointer.prototype.getPointee = RegisteredPointer_getPointee;
|
|
RegisteredPointer.prototype.destructor = RegisteredPointer_destructor;
|
|
RegisteredPointer.prototype['argPackAdvance'] = 8;
|
|
RegisteredPointer.prototype['readValueFromPointer'] = simpleReadValueFromPointer;
|
|
RegisteredPointer.prototype['deleteObject'] = RegisteredPointer_deleteObject;
|
|
RegisteredPointer.prototype['fromWireType'] = RegisteredPointer_fromWireType;
|
|
}
|
|
/** @constructor
|
|
@param {*=} pointeeType,
|
|
@param {*=} sharingPolicy,
|
|
@param {*=} rawGetPointee,
|
|
@param {*=} rawConstructor,
|
|
@param {*=} rawShare,
|
|
@param {*=} rawDestructor,
|
|
*/
|
|
function RegisteredPointer(
|
|
name,
|
|
registeredClass,
|
|
isReference,
|
|
isConst,
|
|
|
|
// smart pointer properties
|
|
isSmartPointer,
|
|
pointeeType,
|
|
sharingPolicy,
|
|
rawGetPointee,
|
|
rawConstructor,
|
|
rawShare,
|
|
rawDestructor
|
|
) {
|
|
this.name = name;
|
|
this.registeredClass = registeredClass;
|
|
this.isReference = isReference;
|
|
this.isConst = isConst;
|
|
|
|
// smart pointer properties
|
|
this.isSmartPointer = isSmartPointer;
|
|
this.pointeeType = pointeeType;
|
|
this.sharingPolicy = sharingPolicy;
|
|
this.rawGetPointee = rawGetPointee;
|
|
this.rawConstructor = rawConstructor;
|
|
this.rawShare = rawShare;
|
|
this.rawDestructor = rawDestructor;
|
|
|
|
if (!isSmartPointer && registeredClass.baseClass === undefined) {
|
|
if (isConst) {
|
|
this['toWireType'] = constNoSmartPtrRawPointerToWireType;
|
|
this.destructorFunction = null;
|
|
} else {
|
|
this['toWireType'] = nonConstNoSmartPtrRawPointerToWireType;
|
|
this.destructorFunction = null;
|
|
}
|
|
} else {
|
|
this['toWireType'] = genericPointerToWireType;
|
|
// Here we must leave this.destructorFunction undefined, since whether genericPointerToWireType returns
|
|
// a pointer that needs to be freed up is runtime-dependent, and cannot be evaluated at registration time.
|
|
// TODO: Create an alternative mechanism that allows removing the use of var destructors = []; array in
|
|
// craftInvokerFunction altogether.
|
|
}
|
|
}
|
|
|
|
/** @param {number=} numArguments */
|
|
function replacePublicSymbol(name, value, numArguments) {
|
|
if (!Module.hasOwnProperty(name)) {
|
|
throwInternalError('Replacing nonexistant public symbol');
|
|
}
|
|
// If there's an overload table for this symbol, replace the symbol in the overload table instead.
|
|
if (undefined !== Module[name].overloadTable && undefined !== numArguments) {
|
|
Module[name].overloadTable[numArguments] = value;
|
|
}
|
|
else {
|
|
Module[name] = value;
|
|
Module[name].argCount = numArguments;
|
|
}
|
|
}
|
|
|
|
|
|
|
|
function dynCallLegacy(sig, ptr, args) {
|
|
assert(('dynCall_' + sig) in Module, `bad function pointer type - dynCall function not found for sig '${sig}'`);
|
|
if (args && args.length) {
|
|
// j (64-bit integer) must be passed in as two numbers [low 32, high 32].
|
|
assert(args.length === sig.substring(1).replace(/j/g, '--').length);
|
|
} else {
|
|
assert(sig.length == 1);
|
|
}
|
|
var f = Module['dynCall_' + sig];
|
|
return args && args.length ? f.apply(null, [ptr].concat(args)) : f.call(null, ptr);
|
|
}
|
|
|
|
var wasmTableMirror = [];
|
|
|
|
function getWasmTableEntry(funcPtr) {
|
|
var func = wasmTableMirror[funcPtr];
|
|
if (!func) {
|
|
if (funcPtr >= wasmTableMirror.length) wasmTableMirror.length = funcPtr + 1;
|
|
wasmTableMirror[funcPtr] = func = wasmTable.get(funcPtr);
|
|
}
|
|
assert(wasmTable.get(funcPtr) == func, "JavaScript-side Wasm function table mirror is out of date!");
|
|
return func;
|
|
}
|
|
|
|
/** @param {Object=} args */
|
|
function dynCall(sig, ptr, args) {
|
|
// Without WASM_BIGINT support we cannot directly call function with i64 as
|
|
// part of thier signature, so we rely the dynCall functions generated by
|
|
// wasm-emscripten-finalize
|
|
if (sig.includes('j')) {
|
|
return dynCallLegacy(sig, ptr, args);
|
|
}
|
|
assert(getWasmTableEntry(ptr), `missing table entry in dynCall: ${ptr}`);
|
|
var rtn = getWasmTableEntry(ptr).apply(null, args);
|
|
return rtn;
|
|
|
|
}
|
|
|
|
function getDynCaller(sig, ptr) {
|
|
assert(sig.includes('j') || sig.includes('p'), 'getDynCaller should only be called with i64 sigs')
|
|
var argCache = [];
|
|
return function() {
|
|
argCache.length = 0;
|
|
Object.assign(argCache, arguments);
|
|
return dynCall(sig, ptr, argCache);
|
|
};
|
|
}
|
|
|
|
|
|
function embind__requireFunction(signature, rawFunction) {
|
|
signature = readLatin1String(signature);
|
|
|
|
function makeDynCaller() {
|
|
if (signature.includes('j')) {
|
|
return getDynCaller(signature, rawFunction);
|
|
}
|
|
return getWasmTableEntry(rawFunction);
|
|
}
|
|
|
|
var fp = makeDynCaller();
|
|
if (typeof fp != "function") {
|
|
throwBindingError(`unknown function pointer with signature ${signature}: ${rawFunction}`);
|
|
}
|
|
return fp;
|
|
}
|
|
|
|
|
|
|
|
var UnboundTypeError = undefined;
|
|
|
|
function throwUnboundTypeError(message, types) {
|
|
var unboundTypes = [];
|
|
var seen = {};
|
|
function visit(type) {
|
|
if (seen[type]) {
|
|
return;
|
|
}
|
|
if (registeredTypes[type]) {
|
|
return;
|
|
}
|
|
if (typeDependencies[type]) {
|
|
typeDependencies[type].forEach(visit);
|
|
return;
|
|
}
|
|
unboundTypes.push(type);
|
|
seen[type] = true;
|
|
}
|
|
types.forEach(visit);
|
|
|
|
throw new UnboundTypeError(`${message}: ` + unboundTypes.map(getTypeName).join([', ']));
|
|
}
|
|
|
|
function __embind_register_class(rawType,
|
|
rawPointerType,
|
|
rawConstPointerType,
|
|
baseClassRawType,
|
|
getActualTypeSignature,
|
|
getActualType,
|
|
upcastSignature,
|
|
upcast,
|
|
downcastSignature,
|
|
downcast,
|
|
name,
|
|
destructorSignature,
|
|
rawDestructor) {
|
|
name = readLatin1String(name);
|
|
getActualType = embind__requireFunction(getActualTypeSignature, getActualType);
|
|
if (upcast) {
|
|
upcast = embind__requireFunction(upcastSignature, upcast);
|
|
}
|
|
if (downcast) {
|
|
downcast = embind__requireFunction(downcastSignature, downcast);
|
|
}
|
|
rawDestructor = embind__requireFunction(destructorSignature, rawDestructor);
|
|
var legalFunctionName = makeLegalFunctionName(name);
|
|
|
|
exposePublicSymbol(legalFunctionName, function() {
|
|
// this code cannot run if baseClassRawType is zero
|
|
throwUnboundTypeError(`Cannot construct ${name} due to unbound types`, [baseClassRawType]);
|
|
});
|
|
|
|
whenDependentTypesAreResolved(
|
|
[rawType, rawPointerType, rawConstPointerType],
|
|
baseClassRawType ? [baseClassRawType] : [],
|
|
function(base) {
|
|
base = base[0];
|
|
|
|
var baseClass;
|
|
var basePrototype;
|
|
if (baseClassRawType) {
|
|
baseClass = base.registeredClass;
|
|
basePrototype = baseClass.instancePrototype;
|
|
} else {
|
|
basePrototype = ClassHandle.prototype;
|
|
}
|
|
|
|
var constructor = createNamedFunction(legalFunctionName, function() {
|
|
if (Object.getPrototypeOf(this) !== instancePrototype) {
|
|
throw new BindingError("Use 'new' to construct " + name);
|
|
}
|
|
if (undefined === registeredClass.constructor_body) {
|
|
throw new BindingError(name + " has no accessible constructor");
|
|
}
|
|
var body = registeredClass.constructor_body[arguments.length];
|
|
if (undefined === body) {
|
|
throw new BindingError(`Tried to invoke ctor of ${name} with invalid number of parameters (${arguments.length}) - expected (${Object.keys(registeredClass.constructor_body).toString()}) parameters instead!`);
|
|
}
|
|
return body.apply(this, arguments);
|
|
});
|
|
|
|
var instancePrototype = Object.create(basePrototype, {
|
|
constructor: { value: constructor },
|
|
});
|
|
|
|
constructor.prototype = instancePrototype;
|
|
|
|
var registeredClass = new RegisteredClass(name,
|
|
constructor,
|
|
instancePrototype,
|
|
rawDestructor,
|
|
baseClass,
|
|
getActualType,
|
|
upcast,
|
|
downcast);
|
|
|
|
if (registeredClass.baseClass) {
|
|
// Keep track of class hierarchy. Used to allow sub-classes to inherit class functions.
|
|
if (registeredClass.baseClass.__derivedClasses === undefined) {
|
|
registeredClass.baseClass.__derivedClasses = [];
|
|
}
|
|
|
|
registeredClass.baseClass.__derivedClasses.push(registeredClass);
|
|
}
|
|
|
|
var referenceConverter = new RegisteredPointer(name,
|
|
registeredClass,
|
|
true,
|
|
false,
|
|
false);
|
|
|
|
var pointerConverter = new RegisteredPointer(name + '*',
|
|
registeredClass,
|
|
false,
|
|
false,
|
|
false);
|
|
|
|
var constPointerConverter = new RegisteredPointer(name + ' const*',
|
|
registeredClass,
|
|
false,
|
|
true,
|
|
false);
|
|
|
|
registeredPointers[rawType] = {
|
|
pointerType: pointerConverter,
|
|
constPointerType: constPointerConverter
|
|
};
|
|
|
|
replacePublicSymbol(legalFunctionName, constructor);
|
|
|
|
return [referenceConverter, pointerConverter, constPointerConverter];
|
|
}
|
|
);
|
|
}
|
|
|
|
|
|
function runDestructors(destructors) {
|
|
while (destructors.length) {
|
|
var ptr = destructors.pop();
|
|
var del = destructors.pop();
|
|
del(ptr);
|
|
}
|
|
}
|
|
|
|
function craftInvokerFunction(humanName, argTypes, classType, cppInvokerFunc, cppTargetFunc, /** boolean= */ isAsync) {
|
|
// humanName: a human-readable string name for the function to be generated.
|
|
// argTypes: An array that contains the embind type objects for all types in the function signature.
|
|
// argTypes[0] is the type object for the function return value.
|
|
// argTypes[1] is the type object for function this object/class type, or null if not crafting an invoker for a class method.
|
|
// argTypes[2...] are the actual function parameters.
|
|
// classType: The embind type object for the class to be bound, or null if this is not a method of a class.
|
|
// cppInvokerFunc: JS Function object to the C++-side function that interops into C++ code.
|
|
// cppTargetFunc: Function pointer (an integer to FUNCTION_TABLE) to the target C++ function the cppInvokerFunc will end up calling.
|
|
// isAsync: Optional. If true, returns an async function. Async bindings are only supported with JSPI.
|
|
var argCount = argTypes.length;
|
|
|
|
if (argCount < 2) {
|
|
throwBindingError("argTypes array size mismatch! Must at least get return value and 'this' types!");
|
|
}
|
|
|
|
assert(!isAsync, 'Async bindings are only supported with JSPI.');
|
|
|
|
var isClassMethodFunc = (argTypes[1] !== null && classType !== null);
|
|
|
|
// Free functions with signature "void function()" do not need an invoker that marshalls between wire types.
|
|
// TODO: This omits argument count check - enable only at -O3 or similar.
|
|
// if (ENABLE_UNSAFE_OPTS && argCount == 2 && argTypes[0].name == "void" && !isClassMethodFunc) {
|
|
// return FUNCTION_TABLE[fn];
|
|
// }
|
|
|
|
// Determine if we need to use a dynamic stack to store the destructors for the function parameters.
|
|
// TODO: Remove this completely once all function invokers are being dynamically generated.
|
|
var needsDestructorStack = false;
|
|
|
|
for (var i = 1; i < argTypes.length; ++i) { // Skip return value at index 0 - it's not deleted here.
|
|
if (argTypes[i] !== null && argTypes[i].destructorFunction === undefined) { // The type does not define a destructor function - must use dynamic stack
|
|
needsDestructorStack = true;
|
|
break;
|
|
}
|
|
}
|
|
|
|
var returns = (argTypes[0].name !== "void");
|
|
|
|
var expectedArgCount = argCount - 2;
|
|
var argsWired = new Array(expectedArgCount);
|
|
var invokerFuncArgs = [];
|
|
var destructors = [];
|
|
return function() {
|
|
if (arguments.length !== expectedArgCount) {
|
|
throwBindingError(`function ${humanName} called with ${arguments.length} arguments, expected ${expectedArgCount} args!`);
|
|
}
|
|
destructors.length = 0;
|
|
var thisWired;
|
|
invokerFuncArgs.length = isClassMethodFunc ? 2 : 1;
|
|
invokerFuncArgs[0] = cppTargetFunc;
|
|
if (isClassMethodFunc) {
|
|
thisWired = argTypes[1]['toWireType'](destructors, this);
|
|
invokerFuncArgs[1] = thisWired;
|
|
}
|
|
for (var i = 0; i < expectedArgCount; ++i) {
|
|
argsWired[i] = argTypes[i + 2]['toWireType'](destructors, arguments[i]);
|
|
invokerFuncArgs.push(argsWired[i]);
|
|
}
|
|
|
|
var rv = cppInvokerFunc.apply(null, invokerFuncArgs);
|
|
|
|
function onDone(rv) {
|
|
if (needsDestructorStack) {
|
|
runDestructors(destructors);
|
|
} else {
|
|
for (var i = isClassMethodFunc ? 1 : 2; i < argTypes.length; i++) {
|
|
var param = i === 1 ? thisWired : argsWired[i - 2];
|
|
if (argTypes[i].destructorFunction !== null) {
|
|
argTypes[i].destructorFunction(param);
|
|
}
|
|
}
|
|
}
|
|
|
|
if (returns) {
|
|
return argTypes[0]['fromWireType'](rv);
|
|
}
|
|
}
|
|
|
|
return onDone(rv);
|
|
};
|
|
}
|
|
|
|
|
|
function heap32VectorToArray(count, firstElement) {
|
|
var array = [];
|
|
for (var i = 0; i < count; i++) {
|
|
// TODO(https://github.com/emscripten-core/emscripten/issues/17310):
|
|
// Find a way to hoist the `>> 2` or `>> 3` out of this loop.
|
|
array.push(HEAPU32[(((firstElement)+(i * 4))>>2)]);
|
|
}
|
|
return array;
|
|
}
|
|
|
|
|
|
|
|
|
|
function __embind_register_class_class_function(rawClassType,
|
|
methodName,
|
|
argCount,
|
|
rawArgTypesAddr,
|
|
invokerSignature,
|
|
rawInvoker,
|
|
fn,
|
|
isAsync) {
|
|
var rawArgTypes = heap32VectorToArray(argCount, rawArgTypesAddr);
|
|
methodName = readLatin1String(methodName);
|
|
rawInvoker = embind__requireFunction(invokerSignature, rawInvoker);
|
|
whenDependentTypesAreResolved([], [rawClassType], function(classType) {
|
|
classType = classType[0];
|
|
var humanName = `${classType.name}.${methodName}`;
|
|
|
|
function unboundTypesHandler() {
|
|
throwUnboundTypeError(`Cannot call ${humanName} due to unbound types`, rawArgTypes);
|
|
}
|
|
|
|
if (methodName.startsWith("@@")) {
|
|
methodName = Symbol[methodName.substring(2)];
|
|
}
|
|
|
|
var proto = classType.registeredClass.constructor;
|
|
if (undefined === proto[methodName]) {
|
|
// This is the first function to be registered with this name.
|
|
unboundTypesHandler.argCount = argCount-1;
|
|
proto[methodName] = unboundTypesHandler;
|
|
} else {
|
|
// There was an existing function with the same name registered. Set up
|
|
// a function overload routing table.
|
|
ensureOverloadTable(proto, methodName, humanName);
|
|
proto[methodName].overloadTable[argCount-1] = unboundTypesHandler;
|
|
}
|
|
|
|
whenDependentTypesAreResolved([], rawArgTypes, function(argTypes) {
|
|
// Replace the initial unbound-types-handler stub with the proper
|
|
// function. If multiple overloads are registered, the function handlers
|
|
// go into an overload table.
|
|
var invokerArgsArray = [argTypes[0] /* return value */, null /* no class 'this'*/].concat(argTypes.slice(1) /* actual params */);
|
|
var func = craftInvokerFunction(humanName, invokerArgsArray, null /* no class 'this'*/, rawInvoker, fn, isAsync);
|
|
if (undefined === proto[methodName].overloadTable) {
|
|
func.argCount = argCount-1;
|
|
proto[methodName] = func;
|
|
} else {
|
|
proto[methodName].overloadTable[argCount-1] = func;
|
|
}
|
|
|
|
if (classType.registeredClass.__derivedClasses) {
|
|
for (const derivedClass of classType.registeredClass.__derivedClasses) {
|
|
if (!derivedClass.constructor.hasOwnProperty(methodName)) {
|
|
// TODO: Add support for overloads
|
|
derivedClass.constructor[methodName] = func;
|
|
}
|
|
}
|
|
}
|
|
|
|
return [];
|
|
});
|
|
return [];
|
|
});
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function __embind_register_class_function(rawClassType,
|
|
methodName,
|
|
argCount,
|
|
rawArgTypesAddr, // [ReturnType, ThisType, Args...]
|
|
invokerSignature,
|
|
rawInvoker,
|
|
context,
|
|
isPureVirtual,
|
|
isAsync) {
|
|
var rawArgTypes = heap32VectorToArray(argCount, rawArgTypesAddr);
|
|
methodName = readLatin1String(methodName);
|
|
rawInvoker = embind__requireFunction(invokerSignature, rawInvoker);
|
|
|
|
whenDependentTypesAreResolved([], [rawClassType], function(classType) {
|
|
classType = classType[0];
|
|
var humanName = `${classType.name}.${methodName}`;
|
|
|
|
if (methodName.startsWith("@@")) {
|
|
methodName = Symbol[methodName.substring(2)];
|
|
}
|
|
|
|
if (isPureVirtual) {
|
|
classType.registeredClass.pureVirtualFunctions.push(methodName);
|
|
}
|
|
|
|
function unboundTypesHandler() {
|
|
throwUnboundTypeError(`Cannot call ${humanName} due to unbound types`, rawArgTypes);
|
|
}
|
|
|
|
var proto = classType.registeredClass.instancePrototype;
|
|
var method = proto[methodName];
|
|
if (undefined === method || (undefined === method.overloadTable && method.className !== classType.name && method.argCount === argCount - 2)) {
|
|
// This is the first overload to be registered, OR we are replacing a
|
|
// function in the base class with a function in the derived class.
|
|
unboundTypesHandler.argCount = argCount - 2;
|
|
unboundTypesHandler.className = classType.name;
|
|
proto[methodName] = unboundTypesHandler;
|
|
} else {
|
|
// There was an existing function with the same name registered. Set up
|
|
// a function overload routing table.
|
|
ensureOverloadTable(proto, methodName, humanName);
|
|
proto[methodName].overloadTable[argCount - 2] = unboundTypesHandler;
|
|
}
|
|
|
|
whenDependentTypesAreResolved([], rawArgTypes, function(argTypes) {
|
|
var memberFunction = craftInvokerFunction(humanName, argTypes, classType, rawInvoker, context, isAsync);
|
|
|
|
// Replace the initial unbound-handler-stub function with the appropriate member function, now that all types
|
|
// are resolved. If multiple overloads are registered for this function, the function goes into an overload table.
|
|
if (undefined === proto[methodName].overloadTable) {
|
|
// Set argCount in case an overload is registered later
|
|
memberFunction.argCount = argCount - 2;
|
|
proto[methodName] = memberFunction;
|
|
} else {
|
|
proto[methodName].overloadTable[argCount - 2] = memberFunction;
|
|
}
|
|
|
|
return [];
|
|
});
|
|
return [];
|
|
});
|
|
}
|
|
|
|
function __emval_decref(handle) {
|
|
if (handle >= emval_handles.reserved && 0 === --emval_handles.get(handle).refcount) {
|
|
emval_handles.free(handle);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
function __embind_register_emval(rawType, name) {
|
|
name = readLatin1String(name);
|
|
registerType(rawType, {
|
|
name: name,
|
|
'fromWireType': function(handle) {
|
|
var rv = Emval.toValue(handle);
|
|
__emval_decref(handle);
|
|
return rv;
|
|
},
|
|
'toWireType': function(destructors, value) {
|
|
return Emval.toHandle(value);
|
|
},
|
|
'argPackAdvance': 8,
|
|
'readValueFromPointer': simpleReadValueFromPointer,
|
|
destructorFunction: null, // This type does not need a destructor
|
|
|
|
// TODO: do we need a deleteObject here? write a test where
|
|
// emval is passed into JS via an interface
|
|
});
|
|
}
|
|
|
|
function embindRepr(v) {
|
|
if (v === null) {
|
|
return 'null';
|
|
}
|
|
var t = typeof v;
|
|
if (t === 'object' || t === 'array' || t === 'function') {
|
|
return v.toString();
|
|
} else {
|
|
return '' + v;
|
|
}
|
|
}
|
|
|
|
function floatReadValueFromPointer(name, shift) {
|
|
switch (shift) {
|
|
case 2: return function(pointer) {
|
|
return this['fromWireType'](HEAPF32[pointer >> 2]);
|
|
};
|
|
case 3: return function(pointer) {
|
|
return this['fromWireType'](HEAPF64[pointer >> 3]);
|
|
};
|
|
default:
|
|
throw new TypeError("Unknown float type: " + name);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
function __embind_register_float(rawType, name, size) {
|
|
var shift = getShiftFromSize(size);
|
|
name = readLatin1String(name);
|
|
registerType(rawType, {
|
|
name: name,
|
|
'fromWireType': function(value) {
|
|
return value;
|
|
},
|
|
'toWireType': function(destructors, value) {
|
|
if (typeof value != "number" && typeof value != "boolean") {
|
|
throw new TypeError(`Cannot convert ${embindRepr(value)} to ${this.name}`);
|
|
}
|
|
// The VM will perform JS to Wasm value conversion, according to the spec:
|
|
// https://www.w3.org/TR/wasm-js-api-1/#towebassemblyvalue
|
|
return value;
|
|
},
|
|
'argPackAdvance': 8,
|
|
'readValueFromPointer': floatReadValueFromPointer(name, shift),
|
|
destructorFunction: null, // This type does not need a destructor
|
|
});
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function __embind_register_function(name, argCount, rawArgTypesAddr, signature, rawInvoker, fn, isAsync) {
|
|
var argTypes = heap32VectorToArray(argCount, rawArgTypesAddr);
|
|
name = readLatin1String(name);
|
|
|
|
rawInvoker = embind__requireFunction(signature, rawInvoker);
|
|
|
|
exposePublicSymbol(name, function() {
|
|
throwUnboundTypeError(`Cannot call ${name} due to unbound types`, argTypes);
|
|
}, argCount - 1);
|
|
|
|
whenDependentTypesAreResolved([], argTypes, function(argTypes) {
|
|
var invokerArgsArray = [argTypes[0] /* return value */, null /* no class 'this'*/].concat(argTypes.slice(1) /* actual params */);
|
|
replacePublicSymbol(name, craftInvokerFunction(name, invokerArgsArray, null /* no class 'this'*/, rawInvoker, fn, isAsync), argCount - 1);
|
|
return [];
|
|
});
|
|
}
|
|
|
|
|
|
|
|
function integerReadValueFromPointer(name, shift, signed) {
|
|
// integers are quite common, so generate very specialized functions
|
|
switch (shift) {
|
|
case 0: return signed ?
|
|
function readS8FromPointer(pointer) { return HEAP8[pointer]; } :
|
|
function readU8FromPointer(pointer) { return HEAPU8[pointer]; };
|
|
case 1: return signed ?
|
|
function readS16FromPointer(pointer) { return HEAP16[pointer >> 1]; } :
|
|
function readU16FromPointer(pointer) { return HEAPU16[pointer >> 1]; };
|
|
case 2: return signed ?
|
|
function readS32FromPointer(pointer) { return HEAP32[pointer >> 2]; } :
|
|
function readU32FromPointer(pointer) { return HEAPU32[pointer >> 2]; };
|
|
default:
|
|
throw new TypeError("Unknown integer type: " + name);
|
|
}
|
|
}
|
|
|
|
|
|
function __embind_register_integer(primitiveType, name, size, minRange, maxRange) {
|
|
name = readLatin1String(name);
|
|
// LLVM doesn't have signed and unsigned 32-bit types, so u32 literals come
|
|
// out as 'i32 -1'. Always treat those as max u32.
|
|
if (maxRange === -1) {
|
|
maxRange = 4294967295;
|
|
}
|
|
|
|
var shift = getShiftFromSize(size);
|
|
|
|
var fromWireType = (value) => value;
|
|
|
|
if (minRange === 0) {
|
|
var bitshift = 32 - 8*size;
|
|
fromWireType = (value) => (value << bitshift) >>> bitshift;
|
|
}
|
|
|
|
var isUnsignedType = (name.includes('unsigned'));
|
|
var checkAssertions = (value, toTypeName) => {
|
|
if (typeof value != "number" && typeof value != "boolean") {
|
|
throw new TypeError(`Cannot convert "${embindRepr(value)}" to ${toTypeName}`);
|
|
}
|
|
if (value < minRange || value > maxRange) {
|
|
throw new TypeError(`Passing a number "${embindRepr(value)}" from JS side to C/C++ side to an argument of type "${name}", which is outside the valid range [${minRange}, ${maxRange}]!`);
|
|
}
|
|
}
|
|
var toWireType;
|
|
if (isUnsignedType) {
|
|
toWireType = function(destructors, value) {
|
|
checkAssertions(value, this.name);
|
|
return value >>> 0;
|
|
}
|
|
} else {
|
|
toWireType = function(destructors, value) {
|
|
checkAssertions(value, this.name);
|
|
// The VM will perform JS to Wasm value conversion, according to the spec:
|
|
// https://www.w3.org/TR/wasm-js-api-1/#towebassemblyvalue
|
|
return value;
|
|
}
|
|
}
|
|
registerType(primitiveType, {
|
|
name: name,
|
|
'fromWireType': fromWireType,
|
|
'toWireType': toWireType,
|
|
'argPackAdvance': 8,
|
|
'readValueFromPointer': integerReadValueFromPointer(name, shift, minRange !== 0),
|
|
destructorFunction: null, // This type does not need a destructor
|
|
});
|
|
}
|
|
|
|
|
|
function __embind_register_memory_view(rawType, dataTypeIndex, name) {
|
|
var typeMapping = [
|
|
Int8Array,
|
|
Uint8Array,
|
|
Int16Array,
|
|
Uint16Array,
|
|
Int32Array,
|
|
Uint32Array,
|
|
Float32Array,
|
|
Float64Array,
|
|
];
|
|
|
|
var TA = typeMapping[dataTypeIndex];
|
|
|
|
function decodeMemoryView(handle) {
|
|
handle = handle >> 2;
|
|
var heap = HEAPU32;
|
|
var size = heap[handle]; // in elements
|
|
var data = heap[handle + 1]; // byte offset into emscripten heap
|
|
return new TA(heap.buffer, data, size);
|
|
}
|
|
|
|
name = readLatin1String(name);
|
|
registerType(rawType, {
|
|
name: name,
|
|
'fromWireType': decodeMemoryView,
|
|
'argPackAdvance': 8,
|
|
'readValueFromPointer': decodeMemoryView,
|
|
}, {
|
|
ignoreDuplicateRegistrations: true,
|
|
});
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
function stringToUTF8Array(str, heap, outIdx, maxBytesToWrite) {
|
|
assert(typeof str === 'string');
|
|
// Parameter maxBytesToWrite is not optional. Negative values, 0, null,
|
|
// undefined and false each don't write out any bytes.
|
|
if (!(maxBytesToWrite > 0))
|
|
return 0;
|
|
|
|
var startIdx = outIdx;
|
|
var endIdx = outIdx + maxBytesToWrite - 1; // -1 for string null terminator.
|
|
for (var i = 0; i < str.length; ++i) {
|
|
// Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code
|
|
// unit, not a Unicode code point of the character! So decode
|
|
// UTF16->UTF32->UTF8.
|
|
// See http://unicode.org/faq/utf_bom.html#utf16-3
|
|
// For UTF8 byte structure, see http://en.wikipedia.org/wiki/UTF-8#Description
|
|
// and https://www.ietf.org/rfc/rfc2279.txt
|
|
// and https://tools.ietf.org/html/rfc3629
|
|
var u = str.charCodeAt(i); // possibly a lead surrogate
|
|
if (u >= 0xD800 && u <= 0xDFFF) {
|
|
var u1 = str.charCodeAt(++i);
|
|
u = 0x10000 + ((u & 0x3FF) << 10) | (u1 & 0x3FF);
|
|
}
|
|
if (u <= 0x7F) {
|
|
if (outIdx >= endIdx) break;
|
|
heap[outIdx++] = u;
|
|
} else if (u <= 0x7FF) {
|
|
if (outIdx + 1 >= endIdx) break;
|
|
heap[outIdx++] = 0xC0 | (u >> 6);
|
|
heap[outIdx++] = 0x80 | (u & 63);
|
|
} else if (u <= 0xFFFF) {
|
|
if (outIdx + 2 >= endIdx) break;
|
|
heap[outIdx++] = 0xE0 | (u >> 12);
|
|
heap[outIdx++] = 0x80 | ((u >> 6) & 63);
|
|
heap[outIdx++] = 0x80 | (u & 63);
|
|
} else {
|
|
if (outIdx + 3 >= endIdx) break;
|
|
if (u > 0x10FFFF) warnOnce('Invalid Unicode code point ' + ptrToString(u) + ' encountered when serializing a JS string to a UTF-8 string in wasm memory! (Valid unicode code points should be in range 0-0x10FFFF).');
|
|
heap[outIdx++] = 0xF0 | (u >> 18);
|
|
heap[outIdx++] = 0x80 | ((u >> 12) & 63);
|
|
heap[outIdx++] = 0x80 | ((u >> 6) & 63);
|
|
heap[outIdx++] = 0x80 | (u & 63);
|
|
}
|
|
}
|
|
// Null-terminate the pointer to the buffer.
|
|
heap[outIdx] = 0;
|
|
return outIdx - startIdx;
|
|
}
|
|
function stringToUTF8(str, outPtr, maxBytesToWrite) {
|
|
assert(typeof maxBytesToWrite == 'number', 'stringToUTF8(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!');
|
|
return stringToUTF8Array(str, HEAPU8,outPtr, maxBytesToWrite);
|
|
}
|
|
|
|
function lengthBytesUTF8(str) {
|
|
var len = 0;
|
|
for (var i = 0; i < str.length; ++i) {
|
|
// Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code
|
|
// unit, not a Unicode code point of the character! So decode
|
|
// UTF16->UTF32->UTF8.
|
|
// See http://unicode.org/faq/utf_bom.html#utf16-3
|
|
var c = str.charCodeAt(i); // possibly a lead surrogate
|
|
if (c <= 0x7F) {
|
|
len++;
|
|
} else if (c <= 0x7FF) {
|
|
len += 2;
|
|
} else if (c >= 0xD800 && c <= 0xDFFF) {
|
|
len += 4; ++i;
|
|
} else {
|
|
len += 3;
|
|
}
|
|
}
|
|
return len;
|
|
}
|
|
|
|
|
|
|
|
function __embind_register_std_string(rawType, name) {
|
|
name = readLatin1String(name);
|
|
var stdStringIsUTF8
|
|
//process only std::string bindings with UTF8 support, in contrast to e.g. std::basic_string<unsigned char>
|
|
= (name === "std::string");
|
|
|
|
registerType(rawType, {
|
|
name: name,
|
|
'fromWireType': function(value) {
|
|
var length = HEAPU32[((value)>>2)];
|
|
var payload = value + 4;
|
|
|
|
var str;
|
|
if (stdStringIsUTF8) {
|
|
var decodeStartPtr = payload;
|
|
// Looping here to support possible embedded '0' bytes
|
|
for (var i = 0; i <= length; ++i) {
|
|
var currentBytePtr = payload + i;
|
|
if (i == length || HEAPU8[currentBytePtr] == 0) {
|
|
var maxRead = currentBytePtr - decodeStartPtr;
|
|
var stringSegment = UTF8ToString(decodeStartPtr, maxRead);
|
|
if (str === undefined) {
|
|
str = stringSegment;
|
|
} else {
|
|
str += String.fromCharCode(0);
|
|
str += stringSegment;
|
|
}
|
|
decodeStartPtr = currentBytePtr + 1;
|
|
}
|
|
}
|
|
} else {
|
|
var a = new Array(length);
|
|
for (var i = 0; i < length; ++i) {
|
|
a[i] = String.fromCharCode(HEAPU8[payload + i]);
|
|
}
|
|
str = a.join('');
|
|
}
|
|
|
|
_free(value);
|
|
|
|
return str;
|
|
},
|
|
'toWireType': function(destructors, value) {
|
|
if (value instanceof ArrayBuffer) {
|
|
value = new Uint8Array(value);
|
|
}
|
|
|
|
var length;
|
|
var valueIsOfTypeString = (typeof value == 'string');
|
|
|
|
if (!(valueIsOfTypeString || value instanceof Uint8Array || value instanceof Uint8ClampedArray || value instanceof Int8Array)) {
|
|
throwBindingError('Cannot pass non-string to std::string');
|
|
}
|
|
if (stdStringIsUTF8 && valueIsOfTypeString) {
|
|
length = lengthBytesUTF8(value);
|
|
} else {
|
|
length = value.length;
|
|
}
|
|
|
|
// assumes 4-byte alignment
|
|
var base = _malloc(4 + length + 1);
|
|
var ptr = base + 4;
|
|
HEAPU32[((base)>>2)] = length;
|
|
if (stdStringIsUTF8 && valueIsOfTypeString) {
|
|
stringToUTF8(value, ptr, length + 1);
|
|
} else {
|
|
if (valueIsOfTypeString) {
|
|
for (var i = 0; i < length; ++i) {
|
|
var charCode = value.charCodeAt(i);
|
|
if (charCode > 255) {
|
|
_free(ptr);
|
|
throwBindingError('String has UTF-16 code units that do not fit in 8 bits');
|
|
}
|
|
HEAPU8[ptr + i] = charCode;
|
|
}
|
|
} else {
|
|
for (var i = 0; i < length; ++i) {
|
|
HEAPU8[ptr + i] = value[i];
|
|
}
|
|
}
|
|
}
|
|
|
|
if (destructors !== null) {
|
|
destructors.push(_free, base);
|
|
}
|
|
return base;
|
|
},
|
|
'argPackAdvance': 8,
|
|
'readValueFromPointer': simpleReadValueFromPointer,
|
|
destructorFunction: function(ptr) { _free(ptr); },
|
|
});
|
|
}
|
|
|
|
|
|
|
|
|
|
var UTF16Decoder = typeof TextDecoder != 'undefined' ? new TextDecoder('utf-16le') : undefined;;
|
|
function UTF16ToString(ptr, maxBytesToRead) {
|
|
assert(ptr % 2 == 0, 'Pointer passed to UTF16ToString must be aligned to two bytes!');
|
|
var endPtr = ptr;
|
|
// TextDecoder needs to know the byte length in advance, it doesn't stop on
|
|
// null terminator by itself.
|
|
// Also, use the length info to avoid running tiny strings through
|
|
// TextDecoder, since .subarray() allocates garbage.
|
|
var idx = endPtr >> 1;
|
|
var maxIdx = idx + maxBytesToRead / 2;
|
|
// If maxBytesToRead is not passed explicitly, it will be undefined, and this
|
|
// will always evaluate to true. This saves on code size.
|
|
while (!(idx >= maxIdx) && HEAPU16[idx]) ++idx;
|
|
endPtr = idx << 1;
|
|
|
|
if (endPtr - ptr > 32 && UTF16Decoder)
|
|
return UTF16Decoder.decode(HEAPU8.subarray(ptr, endPtr));
|
|
|
|
// Fallback: decode without UTF16Decoder
|
|
var str = '';
|
|
|
|
// If maxBytesToRead is not passed explicitly, it will be undefined, and the
|
|
// for-loop's condition will always evaluate to true. The loop is then
|
|
// terminated on the first null char.
|
|
for (var i = 0; !(i >= maxBytesToRead / 2); ++i) {
|
|
var codeUnit = HEAP16[(((ptr)+(i*2))>>1)];
|
|
if (codeUnit == 0) break;
|
|
// fromCharCode constructs a character from a UTF-16 code unit, so we can
|
|
// pass the UTF16 string right through.
|
|
str += String.fromCharCode(codeUnit);
|
|
}
|
|
|
|
return str;
|
|
}
|
|
|
|
function stringToUTF16(str, outPtr, maxBytesToWrite) {
|
|
assert(outPtr % 2 == 0, 'Pointer passed to stringToUTF16 must be aligned to two bytes!');
|
|
assert(typeof maxBytesToWrite == 'number', 'stringToUTF16(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!');
|
|
// Backwards compatibility: if max bytes is not specified, assume unsafe unbounded write is allowed.
|
|
if (maxBytesToWrite === undefined) {
|
|
maxBytesToWrite = 0x7FFFFFFF;
|
|
}
|
|
if (maxBytesToWrite < 2) return 0;
|
|
maxBytesToWrite -= 2; // Null terminator.
|
|
var startPtr = outPtr;
|
|
var numCharsToWrite = (maxBytesToWrite < str.length*2) ? (maxBytesToWrite / 2) : str.length;
|
|
for (var i = 0; i < numCharsToWrite; ++i) {
|
|
// charCodeAt returns a UTF-16 encoded code unit, so it can be directly written to the HEAP.
|
|
var codeUnit = str.charCodeAt(i); // possibly a lead surrogate
|
|
HEAP16[((outPtr)>>1)] = codeUnit;
|
|
outPtr += 2;
|
|
}
|
|
// Null-terminate the pointer to the HEAP.
|
|
HEAP16[((outPtr)>>1)] = 0;
|
|
return outPtr - startPtr;
|
|
}
|
|
|
|
function lengthBytesUTF16(str) {
|
|
return str.length*2;
|
|
}
|
|
|
|
function UTF32ToString(ptr, maxBytesToRead) {
|
|
assert(ptr % 4 == 0, 'Pointer passed to UTF32ToString must be aligned to four bytes!');
|
|
var i = 0;
|
|
|
|
var str = '';
|
|
// If maxBytesToRead is not passed explicitly, it will be undefined, and this
|
|
// will always evaluate to true. This saves on code size.
|
|
while (!(i >= maxBytesToRead / 4)) {
|
|
var utf32 = HEAP32[(((ptr)+(i*4))>>2)];
|
|
if (utf32 == 0) break;
|
|
++i;
|
|
// Gotcha: fromCharCode constructs a character from a UTF-16 encoded code (pair), not from a Unicode code point! So encode the code point to UTF-16 for constructing.
|
|
// See http://unicode.org/faq/utf_bom.html#utf16-3
|
|
if (utf32 >= 0x10000) {
|
|
var ch = utf32 - 0x10000;
|
|
str += String.fromCharCode(0xD800 | (ch >> 10), 0xDC00 | (ch & 0x3FF));
|
|
} else {
|
|
str += String.fromCharCode(utf32);
|
|
}
|
|
}
|
|
return str;
|
|
}
|
|
|
|
function stringToUTF32(str, outPtr, maxBytesToWrite) {
|
|
assert(outPtr % 4 == 0, 'Pointer passed to stringToUTF32 must be aligned to four bytes!');
|
|
assert(typeof maxBytesToWrite == 'number', 'stringToUTF32(str, outPtr, maxBytesToWrite) is missing the third parameter that specifies the length of the output buffer!');
|
|
// Backwards compatibility: if max bytes is not specified, assume unsafe unbounded write is allowed.
|
|
if (maxBytesToWrite === undefined) {
|
|
maxBytesToWrite = 0x7FFFFFFF;
|
|
}
|
|
if (maxBytesToWrite < 4) return 0;
|
|
var startPtr = outPtr;
|
|
var endPtr = startPtr + maxBytesToWrite - 4;
|
|
for (var i = 0; i < str.length; ++i) {
|
|
// Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code unit, not a Unicode code point of the character! We must decode the string to UTF-32 to the heap.
|
|
// See http://unicode.org/faq/utf_bom.html#utf16-3
|
|
var codeUnit = str.charCodeAt(i); // possibly a lead surrogate
|
|
if (codeUnit >= 0xD800 && codeUnit <= 0xDFFF) {
|
|
var trailSurrogate = str.charCodeAt(++i);
|
|
codeUnit = 0x10000 + ((codeUnit & 0x3FF) << 10) | (trailSurrogate & 0x3FF);
|
|
}
|
|
HEAP32[((outPtr)>>2)] = codeUnit;
|
|
outPtr += 4;
|
|
if (outPtr + 4 > endPtr) break;
|
|
}
|
|
// Null-terminate the pointer to the HEAP.
|
|
HEAP32[((outPtr)>>2)] = 0;
|
|
return outPtr - startPtr;
|
|
}
|
|
|
|
function lengthBytesUTF32(str) {
|
|
var len = 0;
|
|
for (var i = 0; i < str.length; ++i) {
|
|
// Gotcha: charCodeAt returns a 16-bit word that is a UTF-16 encoded code unit, not a Unicode code point of the character! We must decode the string to UTF-32 to the heap.
|
|
// See http://unicode.org/faq/utf_bom.html#utf16-3
|
|
var codeUnit = str.charCodeAt(i);
|
|
if (codeUnit >= 0xD800 && codeUnit <= 0xDFFF) ++i; // possibly a lead surrogate, so skip over the tail surrogate.
|
|
len += 4;
|
|
}
|
|
|
|
return len;
|
|
}
|
|
function __embind_register_std_wstring(rawType, charSize, name) {
|
|
name = readLatin1String(name);
|
|
var decodeString, encodeString, getHeap, lengthBytesUTF, shift;
|
|
if (charSize === 2) {
|
|
decodeString = UTF16ToString;
|
|
encodeString = stringToUTF16;
|
|
lengthBytesUTF = lengthBytesUTF16;
|
|
getHeap = () => HEAPU16;
|
|
shift = 1;
|
|
} else if (charSize === 4) {
|
|
decodeString = UTF32ToString;
|
|
encodeString = stringToUTF32;
|
|
lengthBytesUTF = lengthBytesUTF32;
|
|
getHeap = () => HEAPU32;
|
|
shift = 2;
|
|
}
|
|
registerType(rawType, {
|
|
name: name,
|
|
'fromWireType': function(value) {
|
|
// Code mostly taken from _embind_register_std_string fromWireType
|
|
var length = HEAPU32[value >> 2];
|
|
var HEAP = getHeap();
|
|
var str;
|
|
|
|
var decodeStartPtr = value + 4;
|
|
// Looping here to support possible embedded '0' bytes
|
|
for (var i = 0; i <= length; ++i) {
|
|
var currentBytePtr = value + 4 + i * charSize;
|
|
if (i == length || HEAP[currentBytePtr >> shift] == 0) {
|
|
var maxReadBytes = currentBytePtr - decodeStartPtr;
|
|
var stringSegment = decodeString(decodeStartPtr, maxReadBytes);
|
|
if (str === undefined) {
|
|
str = stringSegment;
|
|
} else {
|
|
str += String.fromCharCode(0);
|
|
str += stringSegment;
|
|
}
|
|
decodeStartPtr = currentBytePtr + charSize;
|
|
}
|
|
}
|
|
|
|
_free(value);
|
|
|
|
return str;
|
|
},
|
|
'toWireType': function(destructors, value) {
|
|
if (!(typeof value == 'string')) {
|
|
throwBindingError(`Cannot pass non-string to C++ string type ${name}`);
|
|
}
|
|
|
|
// assumes 4-byte alignment
|
|
var length = lengthBytesUTF(value);
|
|
var ptr = _malloc(4 + length + charSize);
|
|
HEAPU32[ptr >> 2] = length >> shift;
|
|
|
|
encodeString(value, ptr + 4, length + charSize);
|
|
|
|
if (destructors !== null) {
|
|
destructors.push(_free, ptr);
|
|
}
|
|
return ptr;
|
|
},
|
|
'argPackAdvance': 8,
|
|
'readValueFromPointer': simpleReadValueFromPointer,
|
|
destructorFunction: function(ptr) { _free(ptr); },
|
|
});
|
|
}
|
|
|
|
|
|
function __embind_register_void(rawType, name) {
|
|
name = readLatin1String(name);
|
|
registerType(rawType, {
|
|
isVoid: true, // void return values can be optimized out sometimes
|
|
name: name,
|
|
'argPackAdvance': 0,
|
|
'fromWireType': function() {
|
|
return undefined;
|
|
},
|
|
'toWireType': function(destructors, o) {
|
|
// TODO: assert if anything else is given?
|
|
return undefined;
|
|
},
|
|
});
|
|
}
|
|
|
|
function emval_allocateDestructors(destructorsRef) {
|
|
var destructors = [];
|
|
HEAPU32[((destructorsRef)>>2)] = Emval.toHandle(destructors);
|
|
return destructors;
|
|
}
|
|
|
|
var emval_symbols = {};
|
|
|
|
function getStringOrSymbol(address) {
|
|
var symbol = emval_symbols[address];
|
|
if (symbol === undefined) {
|
|
return readLatin1String(address);
|
|
}
|
|
return symbol;
|
|
}
|
|
|
|
var emval_methodCallers = [];
|
|
|
|
function __emval_call_void_method(caller, handle, methodName, args) {
|
|
caller = emval_methodCallers[caller];
|
|
handle = Emval.toValue(handle);
|
|
methodName = getStringOrSymbol(methodName);
|
|
caller(handle, methodName, null, args);
|
|
}
|
|
|
|
|
|
function emval_addMethodCaller(caller) {
|
|
var id = emval_methodCallers.length;
|
|
emval_methodCallers.push(caller);
|
|
return id;
|
|
}
|
|
|
|
function emval_lookupTypes(argCount, argTypes) {
|
|
var a = new Array(argCount);
|
|
for (var i = 0; i < argCount; ++i) {
|
|
a[i] = requireRegisteredType(HEAPU32[(((argTypes)+(i * 4))>>2)],
|
|
"parameter " + i);
|
|
}
|
|
return a;
|
|
}
|
|
|
|
|
|
var emval_registeredMethods = [];
|
|
function __emval_get_method_caller(argCount, argTypes) {
|
|
var types = emval_lookupTypes(argCount, argTypes);
|
|
var retType = types[0];
|
|
var signatureName = retType.name + "_$" + types.slice(1).map(function (t) { return t.name; }).join("_") + "$";
|
|
var returnId = emval_registeredMethods[signatureName];
|
|
if (returnId !== undefined) {
|
|
return returnId;
|
|
}
|
|
|
|
var argN = new Array(argCount - 1);
|
|
var invokerFunction = (handle, name, destructors, args) => {
|
|
var offset = 0;
|
|
for (var i = 0; i < argCount - 1; ++i) {
|
|
argN[i] = types[i + 1]['readValueFromPointer'](args + offset);
|
|
offset += types[i + 1]['argPackAdvance'];
|
|
}
|
|
var rv = handle[name].apply(handle, argN);
|
|
for (var i = 0; i < argCount - 1; ++i) {
|
|
if (types[i + 1].deleteObject) {
|
|
types[i + 1].deleteObject(argN[i]);
|
|
}
|
|
}
|
|
if (!retType.isVoid) {
|
|
return retType['toWireType'](destructors, rv);
|
|
}
|
|
};
|
|
returnId = emval_addMethodCaller(invokerFunction);
|
|
emval_registeredMethods[signatureName] = returnId;
|
|
return returnId;
|
|
}
|
|
|
|
function __emval_incref(handle) {
|
|
if (handle > 4) {
|
|
emval_handles.get(handle).refcount += 1;
|
|
}
|
|
}
|
|
|
|
function _abort() {
|
|
abort('native code called abort()');
|
|
}
|
|
|
|
function _emscripten_memcpy_big(dest, src, num) {
|
|
HEAPU8.copyWithin(dest, src, src + num);
|
|
}
|
|
|
|
function getHeapMax() {
|
|
// Stay one Wasm page short of 4GB: while e.g. Chrome is able to allocate
|
|
// full 4GB Wasm memories, the size will wrap back to 0 bytes in Wasm side
|
|
// for any code that deals with heap sizes, which would require special
|
|
// casing all heap size related code to treat 0 specially.
|
|
return 2147483648;
|
|
}
|
|
|
|
function emscripten_realloc_buffer(size) {
|
|
var b = wasmMemory.buffer;
|
|
var pages = (size - b.byteLength + 65535) >>> 16;
|
|
try {
|
|
// round size grow request up to wasm page size (fixed 64KB per spec)
|
|
wasmMemory.grow(pages); // .grow() takes a delta compared to the previous size
|
|
updateMemoryViews();
|
|
return 1 /*success*/;
|
|
} catch(e) {
|
|
err(`emscripten_realloc_buffer: Attempted to grow heap from ${b.byteLength} bytes to ${size} bytes, but got error: ${e}`);
|
|
}
|
|
// implicit 0 return to save code size (caller will cast "undefined" into 0
|
|
// anyhow)
|
|
}
|
|
function _emscripten_resize_heap(requestedSize) {
|
|
var oldSize = HEAPU8.length;
|
|
requestedSize = requestedSize >>> 0;
|
|
// With multithreaded builds, races can happen (another thread might increase the size
|
|
// in between), so return a failure, and let the caller retry.
|
|
assert(requestedSize > oldSize);
|
|
|
|
// Memory resize rules:
|
|
// 1. Always increase heap size to at least the requested size, rounded up
|
|
// to next page multiple.
|
|
// 2a. If MEMORY_GROWTH_LINEAR_STEP == -1, excessively resize the heap
|
|
// geometrically: increase the heap size according to
|
|
// MEMORY_GROWTH_GEOMETRIC_STEP factor (default +20%), At most
|
|
// overreserve by MEMORY_GROWTH_GEOMETRIC_CAP bytes (default 96MB).
|
|
// 2b. If MEMORY_GROWTH_LINEAR_STEP != -1, excessively resize the heap
|
|
// linearly: increase the heap size by at least
|
|
// MEMORY_GROWTH_LINEAR_STEP bytes.
|
|
// 3. Max size for the heap is capped at 2048MB-WASM_PAGE_SIZE, or by
|
|
// MAXIMUM_MEMORY, or by ASAN limit, depending on which is smallest
|
|
// 4. If we were unable to allocate as much memory, it may be due to
|
|
// over-eager decision to excessively reserve due to (3) above.
|
|
// Hence if an allocation fails, cut down on the amount of excess
|
|
// growth, in an attempt to succeed to perform a smaller allocation.
|
|
|
|
// A limit is set for how much we can grow. We should not exceed that
|
|
// (the wasm binary specifies it, so if we tried, we'd fail anyhow).
|
|
var maxHeapSize = getHeapMax();
|
|
if (requestedSize > maxHeapSize) {
|
|
err(`Cannot enlarge memory, asked to go up to ${requestedSize} bytes, but the limit is ${maxHeapSize} bytes!`);
|
|
return false;
|
|
}
|
|
|
|
var alignUp = (x, multiple) => x + (multiple - x % multiple) % multiple;
|
|
|
|
// Loop through potential heap size increases. If we attempt a too eager
|
|
// reservation that fails, cut down on the attempted size and reserve a
|
|
// smaller bump instead. (max 3 times, chosen somewhat arbitrarily)
|
|
for (var cutDown = 1; cutDown <= 4; cutDown *= 2) {
|
|
var overGrownHeapSize = oldSize * (1 + 0.2 / cutDown); // ensure geometric growth
|
|
// but limit overreserving (default to capping at +96MB overgrowth at most)
|
|
overGrownHeapSize = Math.min(overGrownHeapSize, requestedSize + 100663296 );
|
|
|
|
var newSize = Math.min(maxHeapSize, alignUp(Math.max(requestedSize, overGrownHeapSize), 65536));
|
|
|
|
var replacement = emscripten_realloc_buffer(newSize);
|
|
if (replacement) {
|
|
err('Warning: Enlarging memory arrays, this is not fast! ' + [oldSize, newSize]);
|
|
|
|
return true;
|
|
}
|
|
}
|
|
err(`Failed to grow the heap from ${oldSize} bytes to ${newSize} bytes, not enough memory!`);
|
|
return false;
|
|
}
|
|
|
|
var SYSCALLS = {varargs:undefined,get:function() {
|
|
assert(SYSCALLS.varargs != undefined);
|
|
SYSCALLS.varargs += 4;
|
|
var ret = HEAP32[(((SYSCALLS.varargs)-(4))>>2)];
|
|
return ret;
|
|
},getStr:function(ptr) {
|
|
var ret = UTF8ToString(ptr);
|
|
return ret;
|
|
}};
|
|
function _fd_close(fd) {
|
|
abort('fd_close called without SYSCALLS_REQUIRE_FILESYSTEM');
|
|
}
|
|
|
|
function convertI32PairToI53Checked(lo, hi) {
|
|
assert(lo == (lo >>> 0) || lo == (lo|0)); // lo should either be a i32 or a u32
|
|
assert(hi === (hi|0)); // hi should be a i32
|
|
return ((hi + 0x200000) >>> 0 < 0x400001 - !!lo) ? (lo >>> 0) + hi * 4294967296 : NaN;
|
|
}
|
|
|
|
|
|
|
|
|
|
function _fd_seek(fd, offset_low, offset_high, whence, newOffset) {
|
|
return 70;
|
|
}
|
|
|
|
var printCharBuffers = [null,[],[]];
|
|
|
|
function printChar(stream, curr) {
|
|
var buffer = printCharBuffers[stream];
|
|
assert(buffer);
|
|
if (curr === 0 || curr === 10) {
|
|
(stream === 1 ? out : err)(UTF8ArrayToString(buffer, 0));
|
|
buffer.length = 0;
|
|
} else {
|
|
buffer.push(curr);
|
|
}
|
|
}
|
|
|
|
function flush_NO_FILESYSTEM() {
|
|
// flush anything remaining in the buffers during shutdown
|
|
_fflush(0);
|
|
if (printCharBuffers[1].length) printChar(1, 10);
|
|
if (printCharBuffers[2].length) printChar(2, 10);
|
|
}
|
|
|
|
|
|
function _fd_write(fd, iov, iovcnt, pnum) {
|
|
// hack to support printf in SYSCALLS_REQUIRE_FILESYSTEM=0
|
|
var num = 0;
|
|
for (var i = 0; i < iovcnt; i++) {
|
|
var ptr = HEAPU32[((iov)>>2)];
|
|
var len = HEAPU32[(((iov)+(4))>>2)];
|
|
iov += 8;
|
|
for (var j = 0; j < len; j++) {
|
|
printChar(fd, HEAPU8[ptr+j]);
|
|
}
|
|
num += len;
|
|
}
|
|
HEAPU32[((pnum)>>2)] = num;
|
|
return 0;
|
|
}
|
|
BindingError = Module['BindingError'] = extendError(Error, 'BindingError');;
|
|
init_emval();;
|
|
PureVirtualError = Module['PureVirtualError'] = extendError(Error, 'PureVirtualError');;
|
|
embind_init_charCodes();
|
|
init_embind();;
|
|
InternalError = Module['InternalError'] = extendError(Error, 'InternalError');;
|
|
init_ClassHandle();
|
|
init_RegisteredPointer();
|
|
UnboundTypeError = Module['UnboundTypeError'] = extendError(Error, 'UnboundTypeError');;
|
|
// include: base64Utils.js
|
|
// Copied from https://github.com/strophe/strophejs/blob/e06d027/src/polyfills.js#L149
|
|
|
|
// This code was written by Tyler Akins and has been placed in the
|
|
// public domain. It would be nice if you left this header intact.
|
|
// Base64 code from Tyler Akins -- http://rumkin.com
|
|
|
|
/**
|
|
* Decodes a base64 string.
|
|
* @param {string} input The string to decode.
|
|
*/
|
|
var decodeBase64 = typeof atob == 'function' ? atob : function (input) {
|
|
var keyStr = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';
|
|
|
|
var output = '';
|
|
var chr1, chr2, chr3;
|
|
var enc1, enc2, enc3, enc4;
|
|
var i = 0;
|
|
// remove all characters that are not A-Z, a-z, 0-9, +, /, or =
|
|
input = input.replace(/[^A-Za-z0-9\+\/\=]/g, '');
|
|
do {
|
|
enc1 = keyStr.indexOf(input.charAt(i++));
|
|
enc2 = keyStr.indexOf(input.charAt(i++));
|
|
enc3 = keyStr.indexOf(input.charAt(i++));
|
|
enc4 = keyStr.indexOf(input.charAt(i++));
|
|
|
|
chr1 = (enc1 << 2) | (enc2 >> 4);
|
|
chr2 = ((enc2 & 15) << 4) | (enc3 >> 2);
|
|
chr3 = ((enc3 & 3) << 6) | enc4;
|
|
|
|
output = output + String.fromCharCode(chr1);
|
|
|
|
if (enc3 !== 64) {
|
|
output = output + String.fromCharCode(chr2);
|
|
}
|
|
if (enc4 !== 64) {
|
|
output = output + String.fromCharCode(chr3);
|
|
}
|
|
} while (i < input.length);
|
|
return output;
|
|
};
|
|
|
|
// Converts a string of base64 into a byte array.
|
|
// Throws error on invalid input.
|
|
function intArrayFromBase64(s) {
|
|
|
|
try {
|
|
var decoded = decodeBase64(s);
|
|
var bytes = new Uint8Array(decoded.length);
|
|
for (var i = 0 ; i < decoded.length ; ++i) {
|
|
bytes[i] = decoded.charCodeAt(i);
|
|
}
|
|
return bytes;
|
|
} catch (_) {
|
|
throw new Error('Converting base64 string to bytes failed.');
|
|
}
|
|
}
|
|
|
|
// If filename is a base64 data URI, parses and returns data (Buffer on node,
|
|
// Uint8Array otherwise). If filename is not a base64 data URI, returns undefined.
|
|
function tryParseAsDataURI(filename) {
|
|
if (!isDataURI(filename)) {
|
|
return;
|
|
}
|
|
|
|
return intArrayFromBase64(filename.slice(dataURIPrefix.length));
|
|
}
|
|
|
|
|
|
// end include: base64Utils.js
|
|
function checkIncomingModuleAPI() {
|
|
ignoredModuleProp('fetchSettings');
|
|
}
|
|
var wasmImports = {
|
|
"__assert_fail": ___assert_fail,
|
|
"_embind_create_inheriting_constructor": __embind_create_inheriting_constructor,
|
|
"_embind_register_bigint": __embind_register_bigint,
|
|
"_embind_register_bool": __embind_register_bool,
|
|
"_embind_register_class": __embind_register_class,
|
|
"_embind_register_class_class_function": __embind_register_class_class_function,
|
|
"_embind_register_class_function": __embind_register_class_function,
|
|
"_embind_register_emval": __embind_register_emval,
|
|
"_embind_register_float": __embind_register_float,
|
|
"_embind_register_function": __embind_register_function,
|
|
"_embind_register_integer": __embind_register_integer,
|
|
"_embind_register_memory_view": __embind_register_memory_view,
|
|
"_embind_register_std_string": __embind_register_std_string,
|
|
"_embind_register_std_wstring": __embind_register_std_wstring,
|
|
"_embind_register_void": __embind_register_void,
|
|
"_emval_call_void_method": __emval_call_void_method,
|
|
"_emval_decref": __emval_decref,
|
|
"_emval_get_method_caller": __emval_get_method_caller,
|
|
"_emval_incref": __emval_incref,
|
|
"abort": _abort,
|
|
"emscripten_memcpy_big": _emscripten_memcpy_big,
|
|
"emscripten_resize_heap": _emscripten_resize_heap,
|
|
"fd_close": _fd_close,
|
|
"fd_seek": _fd_seek,
|
|
"fd_write": _fd_write,
|
|
"memory": wasmMemory
|
|
};
|
|
var asm = createWasm();
|
|
/** @type {function(...*):?} */
|
|
var ___wasm_call_ctors = createExportWrapper("__wasm_call_ctors");
|
|
/** @type {function(...*):?} */
|
|
var _malloc = createExportWrapper("malloc");
|
|
/** @type {function(...*):?} */
|
|
var _free = createExportWrapper("free");
|
|
/** @type {function(...*):?} */
|
|
var ___getTypeName = createExportWrapper("__getTypeName");
|
|
/** @type {function(...*):?} */
|
|
var __embind_initialize_bindings = Module["__embind_initialize_bindings"] = createExportWrapper("_embind_initialize_bindings");
|
|
/** @type {function(...*):?} */
|
|
var ___errno_location = createExportWrapper("__errno_location");
|
|
/** @type {function(...*):?} */
|
|
var _fflush = Module["_fflush"] = createExportWrapper("fflush");
|
|
/** @type {function(...*):?} */
|
|
var _emscripten_stack_init = function() {
|
|
return (_emscripten_stack_init = Module["asm"]["emscripten_stack_init"]).apply(null, arguments);
|
|
};
|
|
|
|
/** @type {function(...*):?} */
|
|
var _emscripten_stack_get_free = function() {
|
|
return (_emscripten_stack_get_free = Module["asm"]["emscripten_stack_get_free"]).apply(null, arguments);
|
|
};
|
|
|
|
/** @type {function(...*):?} */
|
|
var _emscripten_stack_get_base = function() {
|
|
return (_emscripten_stack_get_base = Module["asm"]["emscripten_stack_get_base"]).apply(null, arguments);
|
|
};
|
|
|
|
/** @type {function(...*):?} */
|
|
var _emscripten_stack_get_end = function() {
|
|
return (_emscripten_stack_get_end = Module["asm"]["emscripten_stack_get_end"]).apply(null, arguments);
|
|
};
|
|
|
|
/** @type {function(...*):?} */
|
|
var stackSave = createExportWrapper("stackSave");
|
|
/** @type {function(...*):?} */
|
|
var stackRestore = createExportWrapper("stackRestore");
|
|
/** @type {function(...*):?} */
|
|
var stackAlloc = createExportWrapper("stackAlloc");
|
|
/** @type {function(...*):?} */
|
|
var _emscripten_stack_get_current = function() {
|
|
return (_emscripten_stack_get_current = Module["asm"]["emscripten_stack_get_current"]).apply(null, arguments);
|
|
};
|
|
|
|
/** @type {function(...*):?} */
|
|
var dynCall_jiji = Module["dynCall_jiji"] = createExportWrapper("dynCall_jiji");
|
|
|
|
|
|
// include: postamble.js
|
|
// === Auto-generated postamble setup entry stuff ===
|
|
|
|
var missingLibrarySymbols = [
|
|
'zeroMemory',
|
|
'exitJS',
|
|
'isLeapYear',
|
|
'ydayFromDate',
|
|
'arraySum',
|
|
'addDays',
|
|
'setErrNo',
|
|
'inetPton4',
|
|
'inetNtop4',
|
|
'inetPton6',
|
|
'inetNtop6',
|
|
'readSockaddr',
|
|
'writeSockaddr',
|
|
'getHostByName',
|
|
'initRandomFill',
|
|
'randomFill',
|
|
'traverseStack',
|
|
'getCallstack',
|
|
'emscriptenLog',
|
|
'convertPCtoSourceLocation',
|
|
'readEmAsmArgs',
|
|
'jstoi_q',
|
|
'jstoi_s',
|
|
'getExecutableName',
|
|
'listenOnce',
|
|
'autoResumeAudioContext',
|
|
'handleException',
|
|
'runtimeKeepalivePush',
|
|
'runtimeKeepalivePop',
|
|
'callUserCallback',
|
|
'maybeExit',
|
|
'safeSetTimeout',
|
|
'asmjsMangle',
|
|
'asyncLoad',
|
|
'alignMemory',
|
|
'mmapAlloc',
|
|
'getNativeTypeSize',
|
|
'STACK_SIZE',
|
|
'STACK_ALIGN',
|
|
'POINTER_SIZE',
|
|
'ASSERTIONS',
|
|
'writeI53ToI64',
|
|
'writeI53ToI64Clamped',
|
|
'writeI53ToI64Signaling',
|
|
'writeI53ToU64Clamped',
|
|
'writeI53ToU64Signaling',
|
|
'readI53FromI64',
|
|
'readI53FromU64',
|
|
'convertI32PairToI53',
|
|
'convertU32PairToI53',
|
|
'getCFunc',
|
|
'ccall',
|
|
'cwrap',
|
|
'uleb128Encode',
|
|
'sigToWasmTypes',
|
|
'generateFuncType',
|
|
'convertJsFunctionToWasm',
|
|
'getEmptyTableSlot',
|
|
'updateTableMap',
|
|
'getFunctionAddress',
|
|
'addFunction',
|
|
'removeFunction',
|
|
'reallyNegative',
|
|
'unSign',
|
|
'strLen',
|
|
'reSign',
|
|
'formatString',
|
|
'intArrayFromString',
|
|
'AsciiToString',
|
|
'stringToAscii',
|
|
'stringToNewUTF8',
|
|
'stringToUTF8OnStack',
|
|
'writeArrayToMemory',
|
|
'registerKeyEventCallback',
|
|
'maybeCStringToJsString',
|
|
'findEventTarget',
|
|
'findCanvasEventTarget',
|
|
'getBoundingClientRect',
|
|
'fillMouseEventData',
|
|
'registerMouseEventCallback',
|
|
'registerWheelEventCallback',
|
|
'registerUiEventCallback',
|
|
'registerFocusEventCallback',
|
|
'fillDeviceOrientationEventData',
|
|
'registerDeviceOrientationEventCallback',
|
|
'fillDeviceMotionEventData',
|
|
'registerDeviceMotionEventCallback',
|
|
'screenOrientation',
|
|
'fillOrientationChangeEventData',
|
|
'registerOrientationChangeEventCallback',
|
|
'fillFullscreenChangeEventData',
|
|
'registerFullscreenChangeEventCallback',
|
|
'JSEvents_requestFullscreen',
|
|
'JSEvents_resizeCanvasForFullscreen',
|
|
'registerRestoreOldStyle',
|
|
'hideEverythingExceptGivenElement',
|
|
'restoreHiddenElements',
|
|
'setLetterbox',
|
|
'softFullscreenResizeWebGLRenderTarget',
|
|
'doRequestFullscreen',
|
|
'fillPointerlockChangeEventData',
|
|
'registerPointerlockChangeEventCallback',
|
|
'registerPointerlockErrorEventCallback',
|
|
'requestPointerLock',
|
|
'fillVisibilityChangeEventData',
|
|
'registerVisibilityChangeEventCallback',
|
|
'registerTouchEventCallback',
|
|
'fillGamepadEventData',
|
|
'registerGamepadEventCallback',
|
|
'registerBeforeUnloadEventCallback',
|
|
'fillBatteryEventData',
|
|
'battery',
|
|
'registerBatteryEventCallback',
|
|
'setCanvasElementSize',
|
|
'getCanvasElementSize',
|
|
'demangle',
|
|
'demangleAll',
|
|
'jsStackTrace',
|
|
'stackTrace',
|
|
'getEnvStrings',
|
|
'checkWasiClock',
|
|
'wasiRightsToMuslOFlags',
|
|
'wasiOFlagsToMuslOFlags',
|
|
'createDyncallWrapper',
|
|
'setImmediateWrapped',
|
|
'clearImmediateWrapped',
|
|
'polyfillSetImmediate',
|
|
'getPromise',
|
|
'makePromise',
|
|
'idsToPromises',
|
|
'makePromiseCallback',
|
|
'setMainLoop',
|
|
'getSocketFromFD',
|
|
'getSocketAddress',
|
|
'heapObjectForWebGLType',
|
|
'heapAccessShiftForWebGLHeap',
|
|
'webgl_enable_ANGLE_instanced_arrays',
|
|
'webgl_enable_OES_vertex_array_object',
|
|
'webgl_enable_WEBGL_draw_buffers',
|
|
'webgl_enable_WEBGL_multi_draw',
|
|
'emscriptenWebGLGet',
|
|
'computeUnpackAlignedImageSize',
|
|
'colorChannelsInGlTextureFormat',
|
|
'emscriptenWebGLGetTexPixelData',
|
|
'__glGenObject',
|
|
'emscriptenWebGLGetUniform',
|
|
'webglGetUniformLocation',
|
|
'webglPrepareUniformLocationsBeforeFirstUse',
|
|
'webglGetLeftBracePos',
|
|
'emscriptenWebGLGetVertexAttrib',
|
|
'__glGetActiveAttribOrUniform',
|
|
'writeGLArray',
|
|
'registerWebGlEventCallback',
|
|
'runAndAbortIfError',
|
|
'SDL_unicode',
|
|
'SDL_ttfContext',
|
|
'SDL_audio',
|
|
'GLFW_Window',
|
|
'ALLOC_NORMAL',
|
|
'ALLOC_STACK',
|
|
'allocate',
|
|
'writeStringToMemory',
|
|
'writeAsciiToMemory',
|
|
'enumReadValueFromPointer',
|
|
'validateThis',
|
|
'craftEmvalAllocator',
|
|
'emval_get_global',
|
|
];
|
|
missingLibrarySymbols.forEach(missingLibrarySymbol)
|
|
|
|
var unexportedSymbols = [
|
|
'run',
|
|
'addOnPreRun',
|
|
'addOnInit',
|
|
'addOnPreMain',
|
|
'addOnExit',
|
|
'addOnPostRun',
|
|
'addRunDependency',
|
|
'removeRunDependency',
|
|
'FS_createFolder',
|
|
'FS_createPath',
|
|
'FS_createDataFile',
|
|
'FS_createLazyFile',
|
|
'FS_createLink',
|
|
'FS_createDevice',
|
|
'FS_unlink',
|
|
'out',
|
|
'err',
|
|
'callMain',
|
|
'abort',
|
|
'keepRuntimeAlive',
|
|
'wasmMemory',
|
|
'stackAlloc',
|
|
'stackSave',
|
|
'stackRestore',
|
|
'getTempRet0',
|
|
'setTempRet0',
|
|
'writeStackCookie',
|
|
'checkStackCookie',
|
|
'intArrayFromBase64',
|
|
'tryParseAsDataURI',
|
|
'ptrToString',
|
|
'getHeapMax',
|
|
'emscripten_realloc_buffer',
|
|
'ENV',
|
|
'MONTH_DAYS_REGULAR',
|
|
'MONTH_DAYS_LEAP',
|
|
'MONTH_DAYS_REGULAR_CUMULATIVE',
|
|
'MONTH_DAYS_LEAP_CUMULATIVE',
|
|
'ERRNO_CODES',
|
|
'ERRNO_MESSAGES',
|
|
'DNS',
|
|
'Protocols',
|
|
'Sockets',
|
|
'timers',
|
|
'warnOnce',
|
|
'UNWIND_CACHE',
|
|
'readEmAsmArgsArray',
|
|
'dynCallLegacy',
|
|
'getDynCaller',
|
|
'dynCall',
|
|
'HandleAllocator',
|
|
'convertI32PairToI53Checked',
|
|
'freeTableIndexes',
|
|
'functionsInTableMap',
|
|
'setValue',
|
|
'getValue',
|
|
'PATH',
|
|
'PATH_FS',
|
|
'UTF8Decoder',
|
|
'UTF8ArrayToString',
|
|
'UTF8ToString',
|
|
'stringToUTF8Array',
|
|
'stringToUTF8',
|
|
'lengthBytesUTF8',
|
|
'intArrayToString',
|
|
'UTF16Decoder',
|
|
'UTF16ToString',
|
|
'stringToUTF16',
|
|
'lengthBytesUTF16',
|
|
'UTF32ToString',
|
|
'stringToUTF32',
|
|
'lengthBytesUTF32',
|
|
'JSEvents',
|
|
'specialHTMLTargets',
|
|
'currentFullscreenStrategy',
|
|
'restoreOldWindowedStyle',
|
|
'ExitStatus',
|
|
'flush_NO_FILESYSTEM',
|
|
'dlopenMissingError',
|
|
'promiseMap',
|
|
'Browser',
|
|
'wget',
|
|
'SYSCALLS',
|
|
'tempFixedLengthArray',
|
|
'miniTempWebGLFloatBuffers',
|
|
'miniTempWebGLIntBuffers',
|
|
'GL',
|
|
'emscripten_webgl_power_preferences',
|
|
'AL',
|
|
'GLUT',
|
|
'EGL',
|
|
'GLEW',
|
|
'IDBStore',
|
|
'SDL',
|
|
'SDL_gfx',
|
|
'GLFW',
|
|
'allocateUTF8',
|
|
'allocateUTF8OnStack',
|
|
'InternalError',
|
|
'BindingError',
|
|
'UnboundTypeError',
|
|
'PureVirtualError',
|
|
'init_embind',
|
|
'throwInternalError',
|
|
'throwBindingError',
|
|
'throwUnboundTypeError',
|
|
'ensureOverloadTable',
|
|
'exposePublicSymbol',
|
|
'replacePublicSymbol',
|
|
'extendError',
|
|
'createNamedFunction',
|
|
'embindRepr',
|
|
'registeredInstances',
|
|
'getBasestPointer',
|
|
'registerInheritedInstance',
|
|
'unregisterInheritedInstance',
|
|
'getInheritedInstance',
|
|
'getInheritedInstanceCount',
|
|
'getLiveInheritedInstances',
|
|
'registeredTypes',
|
|
'awaitingDependencies',
|
|
'typeDependencies',
|
|
'registeredPointers',
|
|
'registerType',
|
|
'whenDependentTypesAreResolved',
|
|
'embind_charCodes',
|
|
'embind_init_charCodes',
|
|
'readLatin1String',
|
|
'getTypeName',
|
|
'heap32VectorToArray',
|
|
'requireRegisteredType',
|
|
'getShiftFromSize',
|
|
'integerReadValueFromPointer',
|
|
'floatReadValueFromPointer',
|
|
'simpleReadValueFromPointer',
|
|
'runDestructors',
|
|
'craftInvokerFunction',
|
|
'embind__requireFunction',
|
|
'tupleRegistrations',
|
|
'structRegistrations',
|
|
'genericPointerToWireType',
|
|
'constNoSmartPtrRawPointerToWireType',
|
|
'nonConstNoSmartPtrRawPointerToWireType',
|
|
'init_RegisteredPointer',
|
|
'RegisteredPointer',
|
|
'RegisteredPointer_getPointee',
|
|
'RegisteredPointer_destructor',
|
|
'RegisteredPointer_deleteObject',
|
|
'RegisteredPointer_fromWireType',
|
|
'runDestructor',
|
|
'releaseClassHandle',
|
|
'finalizationRegistry',
|
|
'detachFinalizer_deps',
|
|
'detachFinalizer',
|
|
'attachFinalizer',
|
|
'makeClassHandle',
|
|
'init_ClassHandle',
|
|
'ClassHandle',
|
|
'ClassHandle_isAliasOf',
|
|
'throwInstanceAlreadyDeleted',
|
|
'ClassHandle_clone',
|
|
'ClassHandle_delete',
|
|
'deletionQueue',
|
|
'ClassHandle_isDeleted',
|
|
'ClassHandle_deleteLater',
|
|
'flushPendingDeletes',
|
|
'delayFunction',
|
|
'setDelayFunction',
|
|
'RegisteredClass',
|
|
'shallowCopyInternalPointer',
|
|
'downcastPointer',
|
|
'upcastPointer',
|
|
'char_0',
|
|
'char_9',
|
|
'makeLegalFunctionName',
|
|
'emval_handles',
|
|
'emval_symbols',
|
|
'init_emval',
|
|
'count_emval_handles',
|
|
'getStringOrSymbol',
|
|
'Emval',
|
|
'emval_newers',
|
|
'emval_lookupTypes',
|
|
'emval_allocateDestructors',
|
|
'emval_methodCallers',
|
|
'emval_addMethodCaller',
|
|
'emval_registeredMethods',
|
|
];
|
|
unexportedSymbols.forEach(unexportedRuntimeSymbol);
|
|
|
|
|
|
|
|
var calledRun;
|
|
|
|
dependenciesFulfilled = function runCaller() {
|
|
// If run has never been called, and we should call run (INVOKE_RUN is true, and Module.noInitialRun is not false)
|
|
if (!calledRun) run();
|
|
if (!calledRun) dependenciesFulfilled = runCaller; // try this again later, after new deps are fulfilled
|
|
};
|
|
|
|
function stackCheckInit() {
|
|
// This is normally called automatically during __wasm_call_ctors but need to
|
|
// get these values before even running any of the ctors so we call it redundantly
|
|
// here.
|
|
_emscripten_stack_init();
|
|
// TODO(sbc): Move writeStackCookie to native to to avoid this.
|
|
writeStackCookie();
|
|
}
|
|
|
|
function run() {
|
|
|
|
if (runDependencies > 0) {
|
|
return;
|
|
}
|
|
|
|
stackCheckInit();
|
|
|
|
preRun();
|
|
|
|
// a preRun added a dependency, run will be called later
|
|
if (runDependencies > 0) {
|
|
return;
|
|
}
|
|
|
|
function doRun() {
|
|
// run may have just been called through dependencies being fulfilled just in this very frame,
|
|
// or while the async setStatus time below was happening
|
|
if (calledRun) return;
|
|
calledRun = true;
|
|
Module['calledRun'] = true;
|
|
|
|
if (ABORT) return;
|
|
|
|
initRuntime();
|
|
|
|
readyPromiseResolve(Module);
|
|
if (Module['onRuntimeInitialized']) Module['onRuntimeInitialized']();
|
|
|
|
assert(!Module['_main'], 'compiled without a main, but one is present. if you added it from JS, use Module["onRuntimeInitialized"]');
|
|
|
|
postRun();
|
|
}
|
|
|
|
if (Module['setStatus']) {
|
|
Module['setStatus']('Running...');
|
|
setTimeout(function() {
|
|
setTimeout(function() {
|
|
Module['setStatus']('');
|
|
}, 1);
|
|
doRun();
|
|
}, 1);
|
|
} else
|
|
{
|
|
doRun();
|
|
}
|
|
checkStackCookie();
|
|
}
|
|
|
|
function checkUnflushedContent() {
|
|
// Compiler settings do not allow exiting the runtime, so flushing
|
|
// the streams is not possible. but in ASSERTIONS mode we check
|
|
// if there was something to flush, and if so tell the user they
|
|
// should request that the runtime be exitable.
|
|
// Normally we would not even include flush() at all, but in ASSERTIONS
|
|
// builds we do so just for this check, and here we see if there is any
|
|
// content to flush, that is, we check if there would have been
|
|
// something a non-ASSERTIONS build would have not seen.
|
|
// How we flush the streams depends on whether we are in SYSCALLS_REQUIRE_FILESYSTEM=0
|
|
// mode (which has its own special function for this; otherwise, all
|
|
// the code is inside libc)
|
|
var oldOut = out;
|
|
var oldErr = err;
|
|
var has = false;
|
|
out = err = (x) => {
|
|
has = true;
|
|
}
|
|
try { // it doesn't matter if it fails
|
|
flush_NO_FILESYSTEM();
|
|
} catch(e) {}
|
|
out = oldOut;
|
|
err = oldErr;
|
|
if (has) {
|
|
warnOnce('stdio streams had content in them that was not flushed. you should set EXIT_RUNTIME to 1 (see the FAQ), or make sure to emit a newline when you printf etc.');
|
|
warnOnce('(this may also be due to not including full filesystem support - try building with -sFORCE_FILESYSTEM)');
|
|
}
|
|
}
|
|
|
|
if (Module['preInit']) {
|
|
if (typeof Module['preInit'] == 'function') Module['preInit'] = [Module['preInit']];
|
|
while (Module['preInit'].length > 0) {
|
|
Module['preInit'].pop()();
|
|
}
|
|
}
|
|
|
|
run();
|
|
|
|
|
|
// end include: postamble.js
|
|
|
|
|
|
return Bullet.ready
|
|
}
|
|
|
|
);
|
|
})();
|
|
if (typeof exports === 'object' && typeof module === 'object')
|
|
module.exports = Bullet;
|
|
else if (typeof define === 'function' && define['amd'])
|
|
define([], function() { return Bullet; });
|
|
else if (typeof exports === 'object')
|
|
exports["Bullet"] = Bullet;
|