Index: test/cctest/interpreter/test-bytecode-generator.cc |
diff --git a/test/cctest/interpreter/test-bytecode-generator.cc b/test/cctest/interpreter/test-bytecode-generator.cc |
index 673766d698f1dffd07e5205c80555b2f088e27c4..596ccaca89290972b00ecce34a3c0f12f6ec34c5 100644 |
--- a/test/cctest/interpreter/test-bytecode-generator.cc |
+++ b/test/cctest/interpreter/test-bytecode-generator.cc |
@@ -1604,12 +1604,11 @@ TEST(CallRuntime) { |
"function f() { return %spread_iterable([1]) }\nf()", |
2 * kPointerSize, |
1, |
- 16, |
+ 15, |
{ |
B(LdaUndefined), // |
B(Star), R(0), // |
- B(LdaConstant), U8(0), // |
- B(CreateArrayLiteral), U8(0), U8(3), // |
+ B(CreateArrayLiteral), U8(0), U8(0), U8(3), // |
B(Star), R(1), // |
B(CallJSRuntime), U16(Context::SPREAD_ITERABLE_INDEX), R(0), // |
U8(1), // |
@@ -2607,13 +2606,12 @@ TEST(Delete) { |
{"var a = {x:13, y:14}; return delete a.x;", |
1 * kPointerSize, |
1, |
- 12, |
+ 11, |
{ |
- B(LdaConstant), U8(0), // |
- B(CreateObjectLiteral), U8(0), U8(deep_elements_flags), // |
- B(Star), R(0), // |
- B(LdaConstant), U8(1), // |
- B(DeletePropertySloppy), R(0), // |
+ B(CreateObjectLiteral), U8(0), U8(0), U8(deep_elements_flags), // |
+ B(Star), R(0), // |
+ B(LdaConstant), U8(1), // |
+ B(DeletePropertySloppy), R(0), // |
B(Return) |
}, |
2, |
@@ -2622,13 +2620,12 @@ TEST(Delete) { |
{"'use strict'; var a = {x:13, y:14}; return delete a.x;", |
1 * kPointerSize, |
1, |
- 12, |
+ 11, |
{ |
- B(LdaConstant), U8(0), // |
- B(CreateObjectLiteral), U8(0), U8(deep_elements_flags), // |
- B(Star), R(0), // |
- B(LdaConstant), U8(1), // |
- B(DeletePropertyStrict), R(0), // |
+ B(CreateObjectLiteral), U8(0), U8(0), U8(deep_elements_flags), // |
+ B(Star), R(0), // |
+ B(LdaConstant), U8(1), // |
+ B(DeletePropertyStrict), R(0), // |
B(Return) |
}, |
2, |
@@ -2637,13 +2634,12 @@ TEST(Delete) { |
{"var a = {1:13, 2:14}; return delete a[2];", |
1 * kPointerSize, |
1, |
- 12, |
+ 11, |
{ |
- B(LdaConstant), U8(0), // |
- B(CreateObjectLiteral), U8(0), U8(deep_elements_flags), // |
- B(Star), R(0), // |
- B(LdaSmi8), U8(2), // |
- B(DeletePropertySloppy), R(0), // |
+ B(CreateObjectLiteral), U8(0), U8(0), U8(deep_elements_flags), // |
+ B(Star), R(0), // |
+ B(LdaSmi8), U8(2), // |
+ B(DeletePropertySloppy), R(0), // |
B(Return) |
}, |
1, |
@@ -2665,19 +2661,18 @@ TEST(Delete) { |
"return delete a[1];", |
2 * kPointerSize, |
1, |
- 28, |
+ 27, |
{ |
- B(CallRuntime), U16(Runtime::kNewFunctionContext), // |
- R(closure), U8(1), // |
- B(PushContext), R(0), // |
- B(LdaConstant), U8(0), // |
- B(CreateObjectLiteral), U8(0), U8(deep_elements_flags), // |
- B(StaContextSlot), R(0), U8(first_context_slot), // |
- B(CreateClosure), U8(1), U8(0), // |
- B(LdaContextSlot), R(0), U8(first_context_slot), // |
- B(Star), R(1), // |
- B(LdaSmi8), U8(1), // |
- B(DeletePropertyStrict), R(1), // |
+ B(CallRuntime), U16(Runtime::kNewFunctionContext), // |
+ R(closure), U8(1), // |
+ B(PushContext), R(0), // |
+ B(CreateObjectLiteral), U8(0), U8(0), U8(deep_elements_flags), // |
+ B(StaContextSlot), R(0), U8(first_context_slot), // |
+ B(CreateClosure), U8(1), U8(0), // |
+ B(LdaContextSlot), R(0), U8(first_context_slot), // |
+ B(Star), R(1), // |
+ B(LdaSmi8), U8(1), // |
+ B(DeletePropertyStrict), R(1), // |
B(Return) |
}, |
2, |
@@ -2855,32 +2850,29 @@ TEST(RegExpLiterals) { |
{"return /ab+d/;", |
0 * kPointerSize, |
1, |
- 6, |
+ 5, |
{ |
- B(LdaConstant), U8(0), // |
- B(CreateRegExpLiteral), U8(0), U8(0), // |
- B(Return), // |
+ B(CreateRegExpLiteral), U8(0), U8(0), U8(0), // |
+ B(Return), // |
}, |
1, |
{"ab+d"}}, |
{"return /(\\w+)\\s(\\w+)/i;", |
0 * kPointerSize, |
1, |
- 6, |
+ 5, |
{ |
- B(LdaConstant), U8(0), // |
- B(CreateRegExpLiteral), U8(0), U8(i_flags), // |
- B(Return), // |
+ B(CreateRegExpLiteral), U8(0), U8(0), U8(i_flags), // |
+ B(Return), // |
}, |
1, |
{"(\\w+)\\s(\\w+)"}}, |
{"return /ab+d/.exec('abdd');", |
3 * kPointerSize, |
1, |
- 23, |
+ 22, |
{ |
- B(LdaConstant), U8(0), // |
- B(CreateRegExpLiteral), U8(0), U8(0), // |
+ B(CreateRegExpLiteral), U8(0), U8(0), U8(0), // |
B(Star), R(1), // |
B(LoadICSloppy), R(1), U8(1), U8(vector->GetIndex(slot2)), // |
B(Star), R(0), // |
@@ -2921,23 +2913,21 @@ TEST(ArrayLiterals) { |
{"return [ 1, 2 ];", |
0, |
1, |
- 6, |
+ 5, |
{ |
- B(LdaConstant), U8(0), // |
- B(CreateArrayLiteral), U8(0), U8(simple_flags), // |
- B(Return) // |
+ B(CreateArrayLiteral), U8(0), U8(0), U8(simple_flags), // |
+ B(Return) // |
}, |
1, |
{InstanceType::FIXED_ARRAY_TYPE}}, |
{"var a = 1; return [ a, a + 1 ];", |
3 * kPointerSize, |
1, |
- 35, |
+ 34, |
{ |
B(LdaSmi8), U8(1), // |
B(Star), R(0), // |
- B(LdaConstant), U8(0), // |
- B(CreateArrayLiteral), U8(0), U8(3), // |
+ B(CreateArrayLiteral), U8(0), U8(0), U8(3), // |
B(Star), R(2), // |
B(LdaZero), // |
B(Star), R(1), // |
@@ -2956,28 +2946,25 @@ TEST(ArrayLiterals) { |
{"return [ [ 1, 2 ], [ 3 ] ];", |
0, |
1, |
- 6, |
+ 5, |
{ |
- B(LdaConstant), U8(0), // |
- B(CreateArrayLiteral), U8(2), U8(deep_elements_flags), // |
- B(Return) // |
+ B(CreateArrayLiteral), U8(0), U8(2), U8(deep_elements_flags), // |
+ B(Return) // |
}, |
1, |
{InstanceType::FIXED_ARRAY_TYPE}}, |
{"var a = 1; return [ [ a, 2 ], [ a + 2 ] ];", |
5 * kPointerSize, |
1, |
- 67, |
+ 64, |
{ |
B(LdaSmi8), U8(1), // |
B(Star), R(0), // |
- B(LdaConstant), U8(0), // |
- B(CreateArrayLiteral), U8(2), U8(deep_elements_flags), // |
+ B(CreateArrayLiteral), U8(0), U8(2), U8(deep_elements_flags), // |
B(Star), R(2), // |
B(LdaZero), // |
B(Star), R(1), // |
- B(LdaConstant), U8(1), // |
- B(CreateArrayLiteral), U8(0), U8(simple_flags), // |
+ B(CreateArrayLiteral), U8(1), U8(0), U8(simple_flags), // |
B(Star), R(4), // |
B(LdaZero), // |
B(Star), R(3), // |
@@ -2987,8 +2974,7 @@ TEST(ArrayLiterals) { |
B(KeyedStoreICSloppy), R(2), R(1), U8(vector->GetIndex(slot3)), // |
B(LdaSmi8), U8(1), // |
B(Star), R(1), // |
- B(LdaConstant), U8(2), // |
- B(CreateArrayLiteral), U8(1), U8(simple_flags), // |
+ B(CreateArrayLiteral), U8(2), U8(1), U8(simple_flags), // |
B(Star), R(4), // |
B(LdaZero), // |
B(Star), R(3), // |
@@ -3033,39 +3019,36 @@ TEST(ObjectLiterals) { |
{"return { };", |
0, |
1, |
- 6, |
+ 5, |
{ |
- B(LdaConstant), U8(0), // |
- B(CreateObjectLiteral), U8(0), U8(simple_flags), // |
- B(Return) // |
+ B(CreateObjectLiteral), U8(0), U8(0), U8(simple_flags), // |
+ B(Return) // |
}, |
1, |
{InstanceType::FIXED_ARRAY_TYPE}}, |
{"return { name: 'string', val: 9.2 };", |
0, |
1, |
- 6, |
+ 5, |
{ |
- B(LdaConstant), U8(0), // |
- B(CreateObjectLiteral), U8(0), U8(deep_elements_flags), // |
- B(Return) // |
+ B(CreateObjectLiteral), U8(0), U8(0), U8(deep_elements_flags), // |
+ B(Return) // |
}, |
1, |
{InstanceType::FIXED_ARRAY_TYPE}}, |
{"var a = 1; return { name: 'string', val: a };", |
2 * kPointerSize, |
1, |
- 20, |
+ 19, |
{ |
- B(LdaSmi8), U8(1), // |
- B(Star), R(0), // |
- B(LdaConstant), U8(0), // |
- B(CreateObjectLiteral), U8(0), U8(deep_elements_flags), // |
- B(Star), R(1), // |
- B(Ldar), R(0), // |
- B(StoreICSloppy), R(1), U8(1), U8(vector->GetIndex(slot1)), // |
- B(Ldar), R(1), // |
- B(Return), // |
+ B(LdaSmi8), U8(1), // |
+ B(Star), R(0), // |
+ B(CreateObjectLiteral), U8(0), U8(0), U8(deep_elements_flags), // |
+ B(Star), R(1), // |
+ B(Ldar), R(0), // |
+ B(StoreICSloppy), R(1), U8(1), U8(vector->GetIndex(slot1)), // |
+ B(Ldar), R(1), // |
+ B(Return), // |
}, |
2, |
{InstanceType::FIXED_ARRAY_TYPE, |
@@ -3073,18 +3056,17 @@ TEST(ObjectLiterals) { |
{"var a = 1; return { val: a, val: a + 1 };", |
2 * kPointerSize, |
1, |
- 22, |
+ 21, |
{ |
- B(LdaSmi8), U8(1), // |
- B(Star), R(0), // |
- B(LdaConstant), U8(0), // |
- B(CreateObjectLiteral), U8(0), U8(deep_elements_flags), // |
- B(Star), R(1), // |
- B(LdaSmi8), U8(1), // |
- B(Add), R(0), // |
- B(StoreICSloppy), R(1), U8(1), U8(vector->GetIndex(slot1)), // |
- B(Ldar), R(1), // |
- B(Return), // |
+ B(LdaSmi8), U8(1), // |
+ B(Star), R(0), // |
+ B(CreateObjectLiteral), U8(0), U8(0), U8(deep_elements_flags), // |
+ B(Star), R(1), // |
+ B(LdaSmi8), U8(1), // |
+ B(Add), R(0), // |
+ B(StoreICSloppy), R(1), U8(1), U8(vector->GetIndex(slot1)), // |
+ B(Ldar), R(1), // |
+ B(Return), // |
}, |
2, |
{InstanceType::FIXED_ARRAY_TYPE, |
@@ -3092,15 +3074,14 @@ TEST(ObjectLiterals) { |
{"return { func: function() { } };", |
1 * kPointerSize, |
1, |
- 17, |
+ 16, |
{ |
- B(LdaConstant), U8(0), // |
- B(CreateObjectLiteral), U8(0), U8(deep_elements_flags), // |
- B(Star), R(0), // |
- B(CreateClosure), U8(2), U8(0), // |
- B(StoreICSloppy), R(0), U8(1), U8(vector->GetIndex(slot1)), // |
- B(Ldar), R(0), // |
- B(Return), // |
+ B(CreateObjectLiteral), U8(0), U8(0), U8(deep_elements_flags), // |
+ B(Star), R(0), // |
+ B(CreateClosure), U8(2), U8(0), // |
+ B(StoreICSloppy), R(0), U8(1), U8(vector->GetIndex(slot1)), // |
+ B(Ldar), R(0), // |
+ B(Return), // |
}, |
3, |
{InstanceType::FIXED_ARRAY_TYPE, |
@@ -3109,15 +3090,14 @@ TEST(ObjectLiterals) { |
{"return { func(a) { return a; } };", |
1 * kPointerSize, |
1, |
- 17, |
+ 16, |
{ |
- B(LdaConstant), U8(0), // |
- B(CreateObjectLiteral), U8(0), U8(deep_elements_flags), // |
- B(Star), R(0), // |
- B(CreateClosure), U8(2), U8(0), // |
- B(StoreICSloppy), R(0), U8(1), U8(vector->GetIndex(slot1)), // |
- B(Ldar), R(0), // |
- B(Return), // |
+ B(CreateObjectLiteral), U8(0), U8(0), U8(deep_elements_flags), // |
+ B(Star), R(0), // |
+ B(CreateClosure), U8(2), U8(0), // |
+ B(StoreICSloppy), R(0), U8(1), U8(vector->GetIndex(slot1)), // |
+ B(Ldar), R(0), // |
+ B(Return), // |
}, |
3, |
{InstanceType::FIXED_ARRAY_TYPE, |
@@ -3126,10 +3106,9 @@ TEST(ObjectLiterals) { |
{"return { get a() { return 2; } };", |
5 * kPointerSize, |
1, |
- 30, |
+ 29, |
{ |
- B(LdaConstant), U8(0), // |
- B(CreateObjectLiteral), U8(0), U8(deep_elements_flags), // |
+ B(CreateObjectLiteral), U8(0), U8(0), U8(deep_elements_flags), // |
B(Star), R(0), // |
B(LdaConstant), U8(1), // |
B(Star), R(1), // |
@@ -3151,10 +3130,9 @@ TEST(ObjectLiterals) { |
{"return { get a() { return this.x; }, set a(val) { this.x = val } };", |
5 * kPointerSize, |
1, |
- 32, |
+ 31, |
{ |
- B(LdaConstant), U8(0), // |
- B(CreateObjectLiteral), U8(0), U8(deep_elements_flags), // |
+ B(CreateObjectLiteral), U8(0), U8(0), U8(deep_elements_flags), // |
B(Star), R(0), // |
B(LdaConstant), U8(1), // |
B(Star), R(1), // |
@@ -3177,10 +3155,9 @@ TEST(ObjectLiterals) { |
{"return { set b(val) { this.y = val } };", |
5 * kPointerSize, |
1, |
- 30, |
+ 29, |
{ |
- B(LdaConstant), U8(0), // |
- B(CreateObjectLiteral), U8(0), U8(deep_elements_flags), // |
+ B(CreateObjectLiteral), U8(0), U8(0), U8(deep_elements_flags), // |
B(Star), R(0), // |
B(LdaConstant), U8(1), // |
B(Star), R(1), // |
@@ -3202,32 +3179,30 @@ TEST(ObjectLiterals) { |
{"var a = 1; return { 1: a };", |
5 * kPointerSize, |
1, |
- 30, |
+ 29, |
{ |
- B(LdaSmi8), U8(1), // |
- B(Star), R(0), // |
- B(LdaConstant), U8(0), // |
- B(CreateObjectLiteral), U8(0), U8(deep_elements_flags), // |
- B(Star), R(1), // |
- B(LdaSmi8), U8(1), // |
- B(Star), R(2), // |
- B(Ldar), R(0), // |
- B(Star), R(3), // |
- B(LdaZero), // |
- B(Star), R(4), // |
- B(CallRuntime), U16(Runtime::kSetProperty), R(1), U8(4), // |
- B(Ldar), R(1), // |
- B(Return), // |
+ B(LdaSmi8), U8(1), // |
+ B(Star), R(0), // |
+ B(CreateObjectLiteral), U8(0), U8(0), U8(deep_elements_flags), // |
+ B(Star), R(1), // |
+ B(LdaSmi8), U8(1), // |
+ B(Star), R(2), // |
+ B(Ldar), R(0), // |
+ B(Star), R(3), // |
+ B(LdaZero), // |
+ B(Star), R(4), // |
+ B(CallRuntime), U16(Runtime::kSetProperty), R(1), U8(4), // |
+ B(Ldar), R(1), // |
+ B(Return), // |
}, |
1, |
{InstanceType::FIXED_ARRAY_TYPE}}, |
{"return { __proto__: null }", |
2 * kPointerSize, |
1, |
- 18, |
+ 17, |
{ |
- B(LdaConstant), U8(0), // |
- B(CreateObjectLiteral), U8(0), U8(simple_flags), // |
+ B(CreateObjectLiteral), U8(0), U8(0), U8(simple_flags), // |
B(Star), R(0), // |
B(LdaNull), B(Star), R(1), // |
B(CallRuntime), U16(Runtime::kInternalSetPrototype), R(0), U8(2), // |
@@ -3239,12 +3214,11 @@ TEST(ObjectLiterals) { |
{"var a = 'test'; return { [a]: 1 }", |
5 * kPointerSize, |
1, |
- 31, |
+ 30, |
{ |
B(LdaConstant), U8(0), // |
B(Star), R(0), // |
- B(LdaConstant), U8(1), // |
- B(CreateObjectLiteral), U8(0), U8(simple_flags), // |
+ B(CreateObjectLiteral), U8(1), U8(0), U8(simple_flags), // |
B(Star), R(1), // |
B(Ldar), R(0), // |
B(ToName), // |
@@ -3264,12 +3238,11 @@ TEST(ObjectLiterals) { |
{"var a = 'test'; return { val: a, [a]: 1 }", |
5 * kPointerSize, |
1, |
- 37, |
+ 36, |
{ |
B(LdaConstant), U8(0), // |
B(Star), R(0), // |
- B(LdaConstant), U8(1), // |
- B(CreateObjectLiteral), U8(0), U8(deep_elements_flags), // |
+ B(CreateObjectLiteral), U8(1), U8(0), U8(deep_elements_flags), // |
B(Star), R(1), // |
B(Ldar), R(0), // |
B(StoreICSloppy), R(1), U8(2), U8(vector->GetIndex(slot1)), // |
@@ -3292,12 +3265,11 @@ TEST(ObjectLiterals) { |
{"var a = 'test'; return { [a]: 1, __proto__: {} }", |
5 * kPointerSize, |
1, |
- 43, |
+ 41, |
{ |
B(LdaConstant), U8(0), // |
B(Star), R(0), // |
- B(LdaConstant), U8(1), // |
- B(CreateObjectLiteral), U8(1), U8(simple_flags), // |
+ B(CreateObjectLiteral), U8(1), U8(1), U8(simple_flags), // |
B(Star), R(1), // |
B(Ldar), R(0), // |
B(ToName), // |
@@ -3308,8 +3280,7 @@ TEST(ObjectLiterals) { |
B(Star), R(4), // |
B(CallRuntime), U16(Runtime::kDefineDataPropertyUnchecked), R(1), // |
U8(4), // |
- B(LdaConstant), U8(1), // |
- B(CreateObjectLiteral), U8(0), U8(13), // |
+ B(CreateObjectLiteral), U8(1), U8(0), U8(13), // |
B(Star), R(2), // |
B(CallRuntime), U16(Runtime::kInternalSetPrototype), R(1), U8(2), // |
B(Ldar), R(1), // |
@@ -3321,12 +3292,11 @@ TEST(ObjectLiterals) { |
{"var n = 'name'; return { [n]: 'val', get a() { }, set a(b) {} };", |
5 * kPointerSize, |
1, |
- 65, |
+ 64, |
{ |
B(LdaConstant), U8(0), // |
B(Star), R(0), // |
- B(LdaConstant), U8(1), // |
- B(CreateObjectLiteral), U8(0), U8(simple_flags), // |
+ B(CreateObjectLiteral), U8(1), U8(0), U8(simple_flags), // |
B(Star), R(1), // |
B(Ldar), R(0), // |
B(ToName), // |
@@ -3384,7 +3354,7 @@ TEST(TopLevelObjectLiterals) { |
{"var a = { func: function() { } };", |
5 * kPointerSize, |
1, |
- 49, |
+ 48, |
{ |
B(LdaConstant), U8(0), // |
B(Star), R(1), // |
@@ -3395,8 +3365,7 @@ TEST(TopLevelObjectLiterals) { |
B(Star), R(1), // |
B(LdaZero), // |
B(Star), R(2), // |
- B(LdaConstant), U8(2), // |
- B(CreateObjectLiteral), U8(0), U8(has_function_flags), // |
+ B(CreateObjectLiteral), U8(2), U8(0), U8(has_function_flags), // |
B(Star), R(4), // |
B(CreateClosure), U8(4), U8(1), // |
B(StoreICSloppy), R(4), U8(3), U8(5), // |
@@ -3963,18 +3932,17 @@ TEST(CountOperators) { |
{"var a = { val: 1 }; return a.val++;", |
2 * kPointerSize, |
1, |
- 22, |
+ 21, |
{ |
- B(LdaConstant), U8(0), // |
- B(CreateObjectLiteral), U8(0), U8(object_literal_flags), // |
- B(Star), R(0), // |
- B(LoadICSloppy), R(0), U8(1), U8(vector->GetIndex(slot1)), // |
- B(ToNumber), // |
- B(Star), R(1), // |
- B(Inc), // |
- B(StoreICSloppy), R(0), U8(1), U8(vector->GetIndex(slot2)), // |
- B(Ldar), R(1), // |
- B(Return), // |
+ B(CreateObjectLiteral), U8(0), U8(0), U8(object_literal_flags), // |
+ B(Star), R(0), // |
+ B(LoadICSloppy), R(0), U8(1), U8(vector->GetIndex(slot1)), // |
+ B(ToNumber), // |
+ B(Star), R(1), // |
+ B(Inc), // |
+ B(StoreICSloppy), R(0), U8(1), U8(vector->GetIndex(slot2)), // |
+ B(Ldar), R(1), // |
+ B(Return), // |
}, |
2, |
{InstanceType::FIXED_ARRAY_TYPE, |
@@ -3982,16 +3950,15 @@ TEST(CountOperators) { |
{"var a = { val: 1 }; return --a.val;", |
1 * kPointerSize, |
1, |
- 18, |
+ 17, |
{ |
- B(LdaConstant), U8(0), // |
- B(CreateObjectLiteral), U8(0), U8(object_literal_flags), // |
- B(Star), R(0), // |
- B(LoadICSloppy), R(0), U8(1), U8(vector->GetIndex(slot1)), // |
- B(ToNumber), // |
- B(Dec), // |
- B(StoreICSloppy), R(0), U8(1), U8(vector->GetIndex(slot2)), // |
- B(Return), // |
+ B(CreateObjectLiteral), U8(0), U8(0), U8(object_literal_flags), // |
+ B(Star), R(0), // |
+ B(LoadICSloppy), R(0), U8(1), U8(vector->GetIndex(slot1)), // |
+ B(ToNumber), // |
+ B(Dec), // |
+ B(StoreICSloppy), R(0), U8(1), U8(vector->GetIndex(slot2)), // |
+ B(Return), // |
}, |
2, |
{InstanceType::FIXED_ARRAY_TYPE, |
@@ -3999,12 +3966,11 @@ TEST(CountOperators) { |
{"var name = 'var'; var a = { val: 1 }; return a[name]--;", |
4 * kPointerSize, |
1, |
- 29, |
+ 28, |
{ |
B(LdaConstant), U8(0), // |
B(Star), R(0), // |
- B(LdaConstant), U8(1), // |
- B(CreateObjectLiteral), U8(0), U8(object_literal_flags), // |
+ B(CreateObjectLiteral), U8(1), U8(0), U8(object_literal_flags), // |
B(Star), R(1), // |
B(Ldar), R(0), // |
B(Star), R(2), // |
@@ -4022,12 +3988,11 @@ TEST(CountOperators) { |
{"var name = 'var'; var a = { val: 1 }; return ++a[name];", |
3 * kPointerSize, |
1, |
- 25, |
+ 24, |
{ |
B(LdaConstant), U8(0), // |
B(Star), R(0), // |
- B(LdaConstant), U8(1), // |
- B(CreateObjectLiteral), U8(0), U8(object_literal_flags), // |
+ B(CreateObjectLiteral), U8(1), U8(0), U8(object_literal_flags), // |
B(Star), R(1), // |
B(Ldar), R(0), // |
B(Star), R(2), // |
@@ -4085,12 +4050,11 @@ TEST(CountOperators) { |
{"var idx = 1; var a = [1, 2]; return a[idx++] = 2;", |
3 * kPointerSize, |
1, |
- 26, |
+ 25, |
{ |
B(LdaSmi8), U8(1), // |
B(Star), R(0), // |
- B(LdaConstant), U8(0), // |
- B(CreateArrayLiteral), U8(0), U8(array_literal_flags), // |
+ B(CreateArrayLiteral), U8(0), U8(0), U8(array_literal_flags), // |
B(Star), R(1), // |
B(Ldar), R(0), // |
B(ToNumber), // |
@@ -4241,18 +4205,17 @@ TEST(CompoundExpressions) { |
{"var a = { val: 2 }; a.name *= 2;", |
2 * kPointerSize, |
1, |
- 23, |
+ 22, |
{ |
- B(LdaConstant), U8(0), // |
- B(CreateObjectLiteral), U8(0), U8(object_literal_flags), // |
- B(Star), R(0), // |
- B(LoadICSloppy), R(0), U8(1), U8(vector->GetIndex(slot1)), // |
- B(Star), R(1), // |
- B(LdaSmi8), U8(2), // |
- B(Mul), R(1), // |
- B(StoreICSloppy), R(0), U8(1), U8(vector->GetIndex(slot2)), // |
- B(LdaUndefined), // |
- B(Return), // |
+ B(CreateObjectLiteral), U8(0), U8(0), U8(object_literal_flags), // |
+ B(Star), R(0), // |
+ B(LoadICSloppy), R(0), U8(1), U8(vector->GetIndex(slot1)), // |
+ B(Star), R(1), // |
+ B(LdaSmi8), U8(2), // |
+ B(Mul), R(1), // |
+ B(StoreICSloppy), R(0), U8(1), U8(vector->GetIndex(slot2)), // |
+ B(LdaUndefined), // |
+ B(Return), // |
}, |
2, |
{InstanceType::FIXED_ARRAY_TYPE, |
@@ -4260,10 +4223,9 @@ TEST(CompoundExpressions) { |
{"var a = { 1: 2 }; a[1] ^= 2;", |
3 * kPointerSize, |
1, |
- 26, |
+ 25, |
{ |
- B(LdaConstant), U8(0), // |
- B(CreateObjectLiteral), U8(0), U8(object_literal_flags), // |
+ B(CreateObjectLiteral), U8(0), U8(0), U8(object_literal_flags), // |
B(Star), R(0), // |
B(LdaSmi8), U8(1), // |
B(Star), R(1), // |
@@ -4557,12 +4519,11 @@ TEST(ForIn) { |
"for (var p in [1,2,3]) { x += p; }", |
5 * kPointerSize, |
1, |
- 53, |
+ 52, |
{ |
B(LdaZero), // |
B(Star), R(1), // |
- B(LdaConstant), U8(0), // |
- B(CreateArrayLiteral), U8(0), U8(simple_flags), // |
+ B(CreateArrayLiteral), U8(0), U8(0), U8(simple_flags), // |
B(JumpIfUndefined), U8(43), // |
B(JumpIfNull), U8(41), // |
B(ToObject), // |
@@ -4596,13 +4557,11 @@ TEST(ForIn) { |
"}", |
4 * kPointerSize, |
1, |
- 83, |
+ 81, |
{ |
- B(LdaConstant), U8(0), // |
- B(CreateObjectLiteral), U8(0), U8(deep_elements_flags), // |
+ B(CreateObjectLiteral), U8(0), U8(0), U8(deep_elements_flags), // |
B(Star), R(0), // |
- B(LdaConstant), U8(1), // |
- B(CreateArrayLiteral), U8(1), U8(simple_flags), // |
+ B(CreateArrayLiteral), U8(1), U8(1), U8(simple_flags), // |
B(JumpIfUndefined), U8(69), // |
B(JumpIfNull), U8(67), // |
B(ToObject), // |
@@ -4644,13 +4603,11 @@ TEST(ForIn) { |
"for (x[0] in [1,2,3]) { return x[3]; }", |
5 * kPointerSize, |
1, |
- 66, |
+ 64, |
{ |
- B(LdaConstant), U8(0), // |
- B(CreateArrayLiteral), U8(0), U8(simple_flags), // |
+ B(CreateArrayLiteral), U8(0), U8(0), U8(simple_flags), // |
B(Star), R(0), // |
- B(LdaConstant), U8(1), // |
- B(CreateArrayLiteral), U8(1), U8(simple_flags), // |
+ B(CreateArrayLiteral), U8(1), U8(1), U8(simple_flags), // |
B(JumpIfUndefined), U8(52), // |
B(JumpIfNull), U8(50), // |
B(ToObject), // |