nativearray_gen4.js 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  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 test0() {
  6. var obj0 = {};
  7. var obj1 = {};
  8. var arrObj0 = {};
  9. var floatary = [-1.5, -0.5, -0, 1.5, 12.987, 12.123, 100.33, 8.8, 5.5, 44.66, 42.24, 124.07, -0.99, 56.65, 42.24];
  10. var a = 1;
  11. var d = 1;
  12. obj1.prop1 = -1740804447.9;
  13. arrObj0.prop1 = 20;
  14. function bar4(argMath8) {
  15. arrObj0.prop0 >>= obj1.prop1;
  16. }
  17. obj0._x = { a: 1, b: { n: 1 } }
  18. for (var v406513 = 0; v406513 < 3; v406513++) {
  19. // CSE when expressions present on LHS.
  20. function _csetest(_x, _y) {
  21. _x.prop1 = _y;
  22. return _x;
  23. }
  24. _csetest({ "prop1": 1 }, (-383063099.9 ? arrObj0.prop1 : 1)).prop2 = (-383063099.9 ? arrObj0.prop1 : 1);
  25. floatary[(-383063099.9 ? arrObj0.prop1 : 1)] = 1 + d;
  26. var v406514 = floatary[(-383063099.9 ? arrObj0.prop1 : 1)] + floatary[(-383063099.9 ? arrObj0.prop1 : 1)];
  27. a += obj0._x.b.n + obj0._x.a;
  28. }
  29. WScript.Echo("a = " + a);
  30. WScript.Echo("obj1.prop1 = " + (obj1.prop1 | 0));
  31. };
  32. // generate profile
  33. test0();
  34. test0();
  35. test0();
  36. test0();
  37. test0();
  38. // run JITted code
  39. runningJITtedCode = true;
  40. test0();
  41. test0();
  42. test0();
  43. test0();
  44. test0();