blob: 316d0edfa994c6292bd008e69ee0e67b3b5a2a02 [file]
//-------------------------------------------------------------------------------------------------------
// Copyright (C) Microsoft. All rights reserved.
// Licensed under the MIT license. See LICENSE.txt file in the project root for full license information.
//-------------------------------------------------------------------------------------------------------
// Validating locals at lower frames, it is exercising the fetching locals from the native (JITed) frames.
function F2() {
var a = new Array;
for (var i = 0; i < 100; i++) {
a.push(i * 10.2);
}
var sub = -10; /**bp:stack();locals();setFrame(1);locals();setFrame(2);locals();setFrame(3);locals();setFrame(4);locals();setFrame(5);locals();**/
for (var i = 0; i < 100; i++) {
a[i] -= sub;
}
return a.length;
}
function F3(r) {
return 2 * 3.14 * r;
}
function F5() {
var x = 20;
var y = {y1:1};
var t1 = Math.abs(22.2);
function F5_1(a) {
eval('var z = x * y.y1;');
var f6 = function () {
var b1 = 10;
var obj1 = {a1:2};
obj4 = F3(obj1.a1);
return b1 + F2();
}
f6();
}
F5_1(t1);
return y;
}
function F6(a,b) {
(function () {
var j = "Anonymous function2";
F5();
return j; /**bp:stack();locals();setFrame(1);locals();setFrame(2);locals();setFrame(3);locals();**/
})();
}
function F7(a1)
{
var j = 10;
var k = 20 * 1.34;
var m = 20 + a1;
function f2(b21, b22)
{
var j2 = arguments.length;
var k2 = 10;
function f3(c31,c32)
{
var a = 10;
a++; /**bp:stack();locals();setFrame(1);locals();setFrame(2);locals();setFrame(3);locals();**/
a++;
return c31+c32+a;
}
function f32()
{
j;
}
f3();
}
f2(k);
}
function Run(arg1, arg2, arg3)
{
F6(arg1, arg2);
F7(arg3);
}
Run(12, "assdf", 112);
Run([3,5,8], {a:"aa"}, 21);
Run(12, "assdf", 112);
Run([3,5,8], {a:"aa"}, 21);
WScript.Echo("Pass");