test108.js 3.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  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. var runningJITtedCode = false;
  6. function test0() {
  7. function makeArrayLength(x) { if(x < 1 || x > 4294967295 || x != x || isNaN(x) || !isFinite(x)) return 100; else return Math.floor(x) & 0xffff; };;
  8. var obj0 = {};
  9. var obj1 = {};
  10. var arrObj0 = {};
  11. var func2 = function(argFunc180) {
  12. // Runs JIT only code
  13. if(runningJITtedCode) {
  14. obj0.length = (-obj1.length);
  15. }
  16. (++obj0.length);
  17. }
  18. 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];
  19. var intfloatary = [1, 4, -1, -6, -0, +0, 55, -100, 2.56, -3.14, 6.6, 42, 2.3, 67, 1.97, -24, 77.99];
  20. var intary = [4, 66, 767, -100, 0, 1213, 34, 42, 55, -123, 567, 77, -234, 88, 11, -66];
  21. var a = 1;
  22. var b = 1;
  23. var c = 1;
  24. var d = 1;
  25. var e = 1;
  26. obj1.length = 2147483647;
  27. arrObj0.prop0 = 1;
  28. arrObj0.length = makeArrayLength(1);
  29. // Iterate through an array of arrays.
  30. function _array2iterate(_array2tmp) {
  31. for(var _array2i in _array2tmp) {
  32. if(_array2i.indexOf("method") == 0)
  33. continue;
  34. if(_array2tmp[_array2i] instanceof Array) {
  35. _array2iterate(_array2tmp[_array2i]);
  36. obj1 = arrObj0;
  37. // Snippets: arrayops.ecs
  38. intary = intary.concat(obj1.length, arrObj0.prop0, e, b, obj0.length, arrObj0.prop0, obj1.prop0);
  39. intary[20];
  40. var v502047 = intary.every(function(v502048) { return v502048 + arrObj0.length < obj1.prop0; }, this);
  41. ary = intfloatary.filter(function(v502050) { return 1; });
  42. v502047 = intary.forEach(function(v502051, v502052) { intary[v502052]++; });
  43. v502047 = ary.indexOf(b);
  44. v502047 = intfloatary.lastIndexOf(obj0.length, 5);
  45. v502047 = ary.join();
  46. v502047 = intary.map(function(v502049) { return d * v502049; });
  47. v502047 = intfloatary.reduce(function(v502053) { obj1.length = v502053 + obj0.length; return obj1.length; }, obj0.prop0);
  48. v502047 = intfloatary.reverse();
  49. v502047 = ary.unshift(obj0.length, e, e, a, c, d, e);
  50. v502047 = ary.shift();
  51. v502047 = floatary.slice(4, -3);
  52. v502047 = ary.some(function(v502054) { return v502054 < a; });
  53. v502047 = intfloatary.sort();
  54. v502047 = Array.isArray(floatary);
  55. v502047 = floatary.splice(obj0.length, d, e, d, e, e, a);
  56. }
  57. else {
  58. b += _array2tmp[_array2i];
  59. }
  60. }
  61. }
  62. _array2iterate([[1], [1], [1, 1, [func2.call(obj1, 1), func2.call(obj1, 1), 1, [arrObj0.length, 1, [arrObj0.length]]]]]);
  63. };
  64. test0();
  65. runningJITtedCode = true;
  66. test0();
  67. WScript.Echo("pass");