ternaryfloat.js 1.0 KB

1234567891011121314151617181920212223242526272829
  1. //-------------------------------------------------------------------------------------------------------
  2. // Copyright (C) Microsoft. All rights reserved.
  3. // Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
  4. //-------------------------------------------------------------------------------------------------------
  5. function AsmModule(stdlib,foreign,buffer) {
  6. "use asm";
  7. var fround = stdlib.Math.fround;
  8. var a = 2.0;
  9. const b = 1.0;
  10. var c = fround(1.0);
  11. const d = fround(2);
  12. function f1(){
  13. c=d<c?c:d;
  14. return fround(c);
  15. }
  16. return {
  17. f1 : f1
  18. };
  19. }
  20. var stdlib = {Math:Math,Int8Array:Int8Array,Int16Array:Int16Array,Int32Array:Int32Array,Uint8Array:Uint8Array,Uint16Array:Uint16Array,Uint32Array:Uint32Array,Float32Array:Float32Array,Float64Array:Float64Array,Infinity:Infinity, NaN:NaN}
  21. var env = {}
  22. var buffer = new ArrayBuffer(1<<20);
  23. var asmModule = AsmModule(stdlib,env,buffer);
  24. print(asmModule.f1());