| //------------------------------------------------------------------------------------------------------- |
| // Copyright (C) Microsoft. All rights reserved. |
| // Licensed under the MIT license. See LICENSE.txt file in the project root for full license information. |
| //------------------------------------------------------------------------------------------------------- |
| |
| function AsmModule(glob) { |
| "use asm"; |
| var fround = glob.Math.fround; |
| function floatNeg(a) { |
| a = fround(a); |
| var e = fround(0); |
| e = fround(-a); |
| return fround(e); |
| } |
| function uintRem(a) { |
| a = a|0; |
| var b = 0; |
| var c = 0; |
| var d = 0; |
| c = (a + d)|0; |
| d = (a >>> 0) % 10 | 0; |
| b = c; |
| return b|0; |
| } |
| return { |
| floatNeg:floatNeg, |
| uintRem:uintRem |
| } |
| } |
| var global = {Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array,Infinity:Infinity, NaN:NaN} |
| var module = AsmModule(global); |
| print(module.floatNeg(3)); |
| print(module.uintRem(400)); |