misc.js 1.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. //-------------------------------------------------------------------------------------------------------
  2. // Copyright (C) Microsoft Corporation and contributors. All rights reserved.
  3. // Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
  4. //-------------------------------------------------------------------------------------------------------
  5. var mod = new WebAssembly.Module(readbuffer('misc.wasm'));
  6. var a = new WebAssembly.Instance(mod).exports;
  7. print(a.f32copysign(-40.0,2.0)); // == 40.0
  8. print(a.f32copysign(-40.0,-2.0)); // == -40.0
  9. print(a.f32copysign(-1.0,2.0)); // == 1.0
  10. print(a.f32copysign(-1.0,-2.0)); // == -1.0
  11. print(a.f32copysign(255.0,-1.0)); // == -255.0
  12. print(a.f32copysign(255.0,1.0)); // == 255.0
  13. print(a.eqz(0)); // == 1
  14. print(a.eqz(-1)); // == 0
  15. print(a.eqz(1)); // == 0
  16. print(a.trunc(0.5)); // == 0
  17. print(a.trunc(-1.5)); // == -1
  18. print(a.trunc(NaN)); // == NaN
  19. print(a.trunc(-NaN)); // == NaN
  20. print(a.trunc(Infinity)); // == Infinity
  21. print(a.trunc(-Infinity)); // == -Infinity
  22. print(a.f64trunc(0.5)); // == 0
  23. print(a.f64trunc(-1.5)); // == -1
  24. print(a.f64trunc(NaN)); // == NaN
  25. print(a.f64trunc(-NaN)); // == NaN
  26. print(a.f64trunc(Infinity)); // == Infinity
  27. print(a.f64trunc(-Infinity)); // == -Infinity
  28. print(a.ifeqz(0)); // == 1
  29. print(a.ifeqz(-1)); // == 0
  30. print(a.nearest(-0.1)); // == 0
  31. print(a.nearest(-0.7)); // == -1
  32. print(a.nearest(-1.5)); // == -2
  33. print(a.nearest(NaN)); // == NaN
  34. print(a.nearest(-NaN)); // == NaN
  35. print(a.nearest(Infinity)); // == Infinity
  36. print(a.nearest(-Infinity)); // == -Infinity
  37. print(a.f64nearest(-0.1)); // == 0
  38. print(a.f64nearest(-0.7)); // == -1
  39. print(a.f64nearest(-1.5)); // == -2
  40. print(a.f64nearest(NaN)); // == NaN
  41. print(a.f64nearest(-NaN)); // == NaN
  42. print(a.f64nearest(Infinity)); // == Infinity
  43. print(a.f64nearest(-Infinity)); // == -Infinity
  44. print(a.f64copysign(255.0,-1.0)); // == -255.0