f32address.js 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111
  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. this.WScript.LoadScriptFile("..\\UnitTestFramework\\SimdJsHelpers.js");
  6. var memory = null;
  7. var ffi = {spectest: {print: print}};
  8. var mod = new WebAssembly.Module(readbuffer('f32address.wasm'));
  9. var module = new WebAssembly.Instance(mod, ffi);
  10. equal(2145386496, module.exports['i32.load']());
  11. equal(NaN , module.exports['f32.load']());
  12. module.exports['reset']();
  13. equal(0 , module.exports['i32.load']());
  14. equal(0 , module.exports['f32.load']());
  15. module.exports['f32.store']();
  16. equal(1325350912, module.exports['i32.load']());
  17. equal(2141192192, module.exports['f32.load']());
  18. module.exports['reset']();
  19. equal(0 , module.exports['i32.load']());
  20. equal(0 , module.exports['f32.load']());
  21. module.exports['i32.store']();
  22. equal(2141192192, module.exports['i32.load']());
  23. equal(NaN , module.exports['f32.load']());
  24. equal(8364032 , module.exports['i32.load1']());
  25. equal(1.1720505197163628e-38, module.exports['f32.load1']());
  26. module.exports['reset1']();
  27. equal(0 , module.exports['i32.load1']());
  28. equal(0 , module.exports['f32.load1']());
  29. module.exports['f32.store1']();
  30. equal(1325350912, module.exports['i32.load1']());
  31. equal(2141192192, module.exports['f32.load1']());
  32. module.exports['reset1']();
  33. equal(0 , module.exports['i32.load1']());
  34. equal(0 , module.exports['f32.load1']());
  35. module.exports['i32.store1']();
  36. equal(2141192192, module.exports['i32.load1']());
  37. equal(NaN, module.exports['f32.load1']());
  38. module.exports['i32.store']();
  39. equal(8355744 , module.exports['i32.load2']());
  40. equal(1.1708891235491304e-38, module.exports['f32.load2']());
  41. module.exports['reset2']();
  42. equal(0 , module.exports['i32.load2']());
  43. equal(0 , module.exports['f32.load2']());
  44. module.exports['f32.store2']();
  45. equal(1325350912, module.exports['i32.load2']());
  46. equal(2141192192, module.exports['f32.load2']());
  47. module.exports['reset2']();
  48. equal(0 , module.exports['i32.load2']());
  49. equal(0 , module.exports['f32.load2']());
  50. module.exports['i32.store2']();
  51. equal(2141192192, module.exports['i32.load2']());
  52. equal(NaN , module.exports['f32.load2']());
  53. print("PASSED");
  54. //To Generate Baselines
  55. // print(module.exports['i32.load']());
  56. // print(module.exports['f32.load']());
  57. // module.exports['reset']();
  58. // print(module.exports['i32.load']());
  59. // print(module.exports['f32.load']());
  60. // module.exports['f32.store']();
  61. // print(module.exports['i32.load']());
  62. // print(module.exports['f32.load']());
  63. // module.exports['reset']();
  64. // print(module.exports['i32.load']());
  65. // print(module.exports['f32.load']());
  66. // module.exports['i32.store']();
  67. // print(module.exports['i32.load']());
  68. // print(module.exports['f32.load']());
  69. //
  70. //
  71. // print();
  72. // print(module.exports['i32.load1']());
  73. // print(module.exports['f32.load1']());
  74. // module.exports['reset1']();
  75. // print(module.exports['i32.load1']());
  76. // print(module.exports['f32.load1']());
  77. // module.exports['f32.store1']();
  78. // print(module.exports['i32.load1']());
  79. // print(module.exports['f32.load1']());
  80. // module.exports['reset1']();
  81. // print(module.exports['i32.load1']());
  82. // print(module.exports['f32.load1']());
  83. // module.exports['i32.store1']();
  84. // print(module.exports['i32.load1']());
  85. // print(module.exports['f32.load1']());
  86. //
  87. // module.exports['i32.store']();
  88. //
  89. // print();
  90. // print(module.exports['i32.load2']());
  91. // print(module.exports['f32.load2']());
  92. // module.exports['reset2']();
  93. // print(module.exports['i32.load2']());
  94. // print(module.exports['f32.load2']());
  95. // module.exports['f32.store2']();
  96. // print(module.exports['i32.load2']());
  97. // print(module.exports['f32.load2']());
  98. // module.exports['reset2']();
  99. // print(module.exports['i32.load2']());
  100. // print(module.exports['f32.load2']());
  101. // module.exports['i32.store2']();
  102. // print(module.exports['i32.load2']());
  103. // print(module.exports['f32.load2']());