summaryrefslogtreecommitdiffstats
path: root/LayoutTests/fast/js/resources/codegen-temporaries-multiple-global-blocks-2.js
blob: bc928609b23fd34abf0f71f7dddacd6e20658433 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
description(
'Tests whether bytecode codegen properly handles temporaries across multiple global blocks.'
);

var v1 = 1;
v1 += assign1();
shouldBe("v1", "2");

var o2 = { a: 1 };
var v2 = o2;
v2.a = assign2();
shouldBe("o2.a", "2");

var o3 = { a: 1 };
var v3 = o3;
v3.a += assign3();
shouldBe("o3.a", "2");

var v4 = { a: 1 };
var r4 = v4[assign4()];
shouldBe("r4", "1");

var o5 = { a: 1 };
var v5 = o5;
v5[assign5()] = 2;
shouldBe("o5.a", "2");

var o6 = { a: 1 };
var v6 = o6;
v6["a"] = assign6();
shouldBe("o6.a", "2");

var o7 = { a: 1 };
var v7 = o7;
v7[assign7()] += 1;
shouldBe("o7.a", "2");

var o8 = { a: 1 };
var v8 = o8;
v8["a"] += assign8();
shouldBe("o8.a", "2");

var successfullyParsed = true;