function asmFunc(global, env) { var Math_imul = global.Math.imul; var Math_fround = global.Math.fround; var Math_abs = global.Math.abs; var Math_clz32 = global.Math.clz32; var Math_min = global.Math.min; var Math_max = global.Math.max; var Math_floor = global.Math.floor; var Math_ceil = global.Math.ceil; var Math_sqrt = global.Math.sqrt; var abort = env.abort; var nan = global.NaN; var infinity = global.Infinity; function $1($0, $1_1, $2_1, $3, $4) { $0 = $0 | 0; $1_1 = $1_1 | 0; $2_1 = $2_1 | 0; $3 = $3 | 0; $4 = $4 | 0; var $5 = 0; $5 = $2_1 & 31; if (32 <= ($2_1 & 63) >>> 0) { $1_1 = $0 << $5; $0 = 0; } else { $1_1 = (1 << $5) - 1 & $0 >>> 32 - $5 | $1_1 << $5; $0 = $0 << $5; } return ($0 | 0) == ($3 | 0) & ($1_1 | 0) == ($4 | 0); } function $2($0, $1_1, $2_1, $3, $4) { $0 = $0 | 0; $1_1 = $1_1 | 0; $2_1 = $2_1 | 0; $3 = $3 | 0; $4 = $4 | 0; var $5 = 0; $5 = $2_1 & 31; if (32 <= ($2_1 & 63) >>> 0) { $2_1 = $1_1 >> 31; $0 = $1_1 >> $5; } else { $2_1 = $1_1 >> $5; $0 = ((1 << $5) - 1 & $1_1) << 32 - $5 | $0 >>> $5; } return ($0 | 0) == ($3 | 0) & ($2_1 | 0) == ($4 | 0); } function legalstub$1($0, $1_1, $2_1, $3, $4, $5) { return $1($0, $1_1, $2_1, $4, $5); } function legalstub$2($0, $1_1, $2_1, $3, $4, $5) { return $2($0, $1_1, $2_1, $4, $5); } return { "shl_i64": legalstub$1, "shr_i64": legalstub$2 }; } var retasmFunc = asmFunc({ Math, Int8Array, Uint8Array, Int16Array, Uint16Array, Int32Array, Uint32Array, Float32Array, Float64Array, NaN, Infinity }, { abort: function() { throw new Error('abort'); } }); export var shl_i64 = retasmFunc.shl_i64; export var shr_i64 = retasmFunc.shr_i64;