| Index: test/cctest/interpreter/bytecode_expectations/CountOperators.golden
|
| diff --git a/test/cctest/interpreter/bytecode_expectations/CountOperators.golden b/test/cctest/interpreter/bytecode_expectations/CountOperators.golden
|
| index 512ad2668a89f31b838fd8bb843326d6bc637ab7..807044441a90458efb20698314f85eda2a8c862d 100644
|
| --- a/test/cctest/interpreter/bytecode_expectations/CountOperators.golden
|
| +++ b/test/cctest/interpreter/bytecode_expectations/CountOperators.golden
|
| @@ -9,18 +9,21 @@ wrap: yes
|
| snippet: "
|
| var a = 1; return ++a;
|
| "
|
| -frame size: 1
|
| +frame size: 2
|
| parameter count: 1
|
| -bytecode array length: 10
|
| +bytecode array length: 14
|
| bytecodes: [
|
| /* 30 E> */ B(StackCheck),
|
| - /* 42 S> */ B(LdaSmi), I8(1),
|
| + /* 42 S> */ B(LdaConstant), U8(0),
|
| + B(Star), R(1),
|
| + B(LdaSmi), I8(1),
|
| B(Star), R(0),
|
| - /* 45 S> */ B(Inc), U8(2),
|
| + /* 45 S> */ B(Inc), U8(4),
|
| B(Star), R(0),
|
| /* 57 S> */ B(Return),
|
| ]
|
| constant pool: [
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["a"],
|
| ]
|
| handlers: [
|
| ]
|
| @@ -31,19 +34,22 @@ snippet: "
|
| "
|
| frame size: 2
|
| parameter count: 1
|
| -bytecode array length: 16
|
| +bytecode array length: 20
|
| bytecodes: [
|
| /* 30 E> */ B(StackCheck),
|
| - /* 42 S> */ B(LdaSmi), I8(1),
|
| + /* 42 S> */ B(LdaConstant), U8(0),
|
| + B(Star), R(1),
|
| + B(LdaSmi), I8(1),
|
| B(Star), R(0),
|
| /* 45 S> */ B(ToNumber), R(1),
|
| B(Ldar), R(1),
|
| - B(Inc), U8(2),
|
| + B(Inc), U8(4),
|
| B(Star), R(0),
|
| B(Ldar), R(1),
|
| /* 57 S> */ B(Return),
|
| ]
|
| constant pool: [
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["a"],
|
| ]
|
| handlers: [
|
| ]
|
| @@ -52,18 +58,21 @@ handlers: [
|
| snippet: "
|
| var a = 1; return --a;
|
| "
|
| -frame size: 1
|
| +frame size: 2
|
| parameter count: 1
|
| -bytecode array length: 10
|
| +bytecode array length: 14
|
| bytecodes: [
|
| /* 30 E> */ B(StackCheck),
|
| - /* 42 S> */ B(LdaSmi), I8(1),
|
| + /* 42 S> */ B(LdaConstant), U8(0),
|
| + B(Star), R(1),
|
| + B(LdaSmi), I8(1),
|
| B(Star), R(0),
|
| - /* 45 S> */ B(Dec), U8(2),
|
| + /* 45 S> */ B(Dec), U8(4),
|
| B(Star), R(0),
|
| /* 57 S> */ B(Return),
|
| ]
|
| constant pool: [
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["a"],
|
| ]
|
| handlers: [
|
| ]
|
| @@ -74,19 +83,22 @@ snippet: "
|
| "
|
| frame size: 2
|
| parameter count: 1
|
| -bytecode array length: 16
|
| +bytecode array length: 20
|
| bytecodes: [
|
| /* 30 E> */ B(StackCheck),
|
| - /* 42 S> */ B(LdaSmi), I8(1),
|
| + /* 42 S> */ B(LdaConstant), U8(0),
|
| + B(Star), R(1),
|
| + B(LdaSmi), I8(1),
|
| B(Star), R(0),
|
| /* 45 S> */ B(ToNumber), R(1),
|
| B(Ldar), R(1),
|
| - B(Dec), U8(2),
|
| + B(Dec), U8(4),
|
| B(Star), R(0),
|
| B(Ldar), R(1),
|
| /* 57 S> */ B(Return),
|
| ]
|
| constant pool: [
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["a"],
|
| ]
|
| handlers: [
|
| ]
|
| @@ -97,20 +109,23 @@ snippet: "
|
| "
|
| frame size: 3
|
| parameter count: 1
|
| -bytecode array length: 26
|
| +bytecode array length: 30
|
| bytecodes: [
|
| /* 30 E> */ B(StackCheck),
|
| - /* 42 S> */ B(CreateObjectLiteral), U8(0), U8(2), U8(1), R(1),
|
| - B(Mov), R(1), R(0),
|
| - /* 54 S> */ B(LdaNamedProperty), R(0), U8(1), U8(3),
|
| + /* 42 S> */ B(LdaConstant), U8(0),
|
| + B(CreateObjectLiteral), U8(1), U8(2), U8(1), R(2),
|
| + B(Star), R(1),
|
| + B(Mov), R(2), R(0),
|
| + /* 54 S> */ B(LdaNamedProperty), R(0), U8(2), U8(5),
|
| B(ToNumber), R(2),
|
| B(Ldar), R(2),
|
| - B(Inc), U8(7),
|
| - /* 66 E> */ B(StaNamedPropertySloppy), R(0), U8(1), U8(5),
|
| + B(Inc), U8(9),
|
| + /* 66 E> */ B(StaNamedPropertySloppy), R(0), U8(2), U8(7),
|
| B(Ldar), R(2),
|
| /* 70 S> */ B(Return),
|
| ]
|
| constant pool: [
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["a"],
|
| FIXED_ARRAY_TYPE,
|
| ONE_BYTE_INTERNALIZED_STRING_TYPE ["val"],
|
| ]
|
| @@ -121,19 +136,22 @@ handlers: [
|
| snippet: "
|
| var a = { val: 1 }; return --a.val;
|
| "
|
| -frame size: 2
|
| +frame size: 3
|
| parameter count: 1
|
| -bytecode array length: 20
|
| +bytecode array length: 24
|
| bytecodes: [
|
| /* 30 E> */ B(StackCheck),
|
| - /* 42 S> */ B(CreateObjectLiteral), U8(0), U8(2), U8(1), R(1),
|
| - B(Mov), R(1), R(0),
|
| - /* 54 S> */ B(LdaNamedProperty), R(0), U8(1), U8(3),
|
| - B(Dec), U8(7),
|
| - /* 65 E> */ B(StaNamedPropertySloppy), R(0), U8(1), U8(5),
|
| + /* 42 S> */ B(LdaConstant), U8(0),
|
| + B(CreateObjectLiteral), U8(1), U8(2), U8(1), R(2),
|
| + B(Star), R(1),
|
| + B(Mov), R(2), R(0),
|
| + /* 54 S> */ B(LdaNamedProperty), R(0), U8(2), U8(5),
|
| + B(Dec), U8(9),
|
| + /* 65 E> */ B(StaNamedPropertySloppy), R(0), U8(2), U8(7),
|
| /* 70 S> */ B(Return),
|
| ]
|
| constant pool: [
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["a"],
|
| FIXED_ARRAY_TYPE,
|
| ONE_BYTE_INTERNALIZED_STRING_TYPE ["val"],
|
| ]
|
| @@ -146,24 +164,30 @@ snippet: "
|
| "
|
| frame size: 5
|
| parameter count: 1
|
| -bytecode array length: 31
|
| +bytecode array length: 39
|
| bytecodes: [
|
| /* 30 E> */ B(StackCheck),
|
| /* 45 S> */ B(LdaConstant), U8(0),
|
| + B(Star), R(2),
|
| + B(LdaConstant), U8(1),
|
| B(Star), R(0),
|
| - /* 60 S> */ B(CreateObjectLiteral), U8(1), U8(2), U8(1), R(2),
|
| - B(Mov), R(2), R(1),
|
| + /* 60 S> */ B(LdaConstant), U8(2),
|
| + B(CreateObjectLiteral), U8(3), U8(4), U8(1), R(3),
|
| + B(Star), R(2),
|
| + B(Mov), R(3), R(1),
|
| /* 72 S> */ B(Ldar), R(0),
|
| - /* 81 E> */ B(LdaKeyedProperty), R(1), U8(3),
|
| + /* 81 E> */ B(LdaKeyedProperty), R(1), U8(7),
|
| B(ToNumber), R(4),
|
| B(Ldar), R(4),
|
| - B(Dec), U8(7),
|
| - /* 86 E> */ B(StaKeyedPropertySloppy), R(1), R(0), U8(5),
|
| + B(Dec), U8(11),
|
| + /* 86 E> */ B(StaKeyedPropertySloppy), R(1), R(0), U8(9),
|
| B(Ldar), R(4),
|
| /* 90 S> */ B(Return),
|
| ]
|
| constant pool: [
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["name"],
|
| ONE_BYTE_INTERNALIZED_STRING_TYPE ["var"],
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["a"],
|
| FIXED_ARRAY_TYPE,
|
| ]
|
| handlers: [
|
| @@ -173,23 +197,29 @@ handlers: [
|
| snippet: "
|
| var name = 'var'; var a = { val: 1 }; return ++a[name];
|
| "
|
| -frame size: 3
|
| +frame size: 4
|
| parameter count: 1
|
| -bytecode array length: 25
|
| +bytecode array length: 33
|
| bytecodes: [
|
| /* 30 E> */ B(StackCheck),
|
| /* 45 S> */ B(LdaConstant), U8(0),
|
| + B(Star), R(2),
|
| + B(LdaConstant), U8(1),
|
| B(Star), R(0),
|
| - /* 60 S> */ B(CreateObjectLiteral), U8(1), U8(2), U8(1), R(2),
|
| - B(Mov), R(2), R(1),
|
| + /* 60 S> */ B(LdaConstant), U8(2),
|
| + B(CreateObjectLiteral), U8(3), U8(4), U8(1), R(3),
|
| + B(Star), R(2),
|
| + B(Mov), R(3), R(1),
|
| /* 72 S> */ B(Ldar), R(0),
|
| - /* 83 E> */ B(LdaKeyedProperty), R(1), U8(3),
|
| - B(Inc), U8(7),
|
| - /* 87 E> */ B(StaKeyedPropertySloppy), R(1), R(0), U8(5),
|
| + /* 83 E> */ B(LdaKeyedProperty), R(1), U8(7),
|
| + B(Inc), U8(11),
|
| + /* 87 E> */ B(StaKeyedPropertySloppy), R(1), R(0), U8(9),
|
| /* 90 S> */ B(Return),
|
| ]
|
| constant pool: [
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["name"],
|
| ONE_BYTE_INTERNALIZED_STRING_TYPE ["var"],
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["a"],
|
| FIXED_ARRAY_TYPE,
|
| ]
|
| handlers: [
|
| @@ -199,23 +229,29 @@ handlers: [
|
| snippet: "
|
| var a = 1; var b = function() { return a }; return ++a;
|
| "
|
| -frame size: 2
|
| +frame size: 3
|
| parameter count: 1
|
| -bytecode array length: 22
|
| +bytecode array length: 30
|
| bytecodes: [
|
| B(CreateFunctionContext), U8(1),
|
| B(PushContext), R(1),
|
| /* 30 E> */ B(StackCheck),
|
| - /* 42 S> */ B(LdaSmi), I8(1),
|
| + /* 42 S> */ B(LdaConstant), U8(0),
|
| + B(Star), R(2),
|
| + B(LdaSmi), I8(1),
|
| /* 42 E> */ B(StaCurrentContextSlot), U8(4),
|
| - /* 53 S> */ B(CreateClosure), U8(0), U8(2), U8(2),
|
| + /* 53 S> */ B(LdaConstant), U8(1),
|
| + B(Star), R(2),
|
| + B(CreateClosure), U8(2), U8(4), U8(2),
|
| B(Star), R(0),
|
| /* 78 S> */ B(LdaCurrentContextSlot), U8(4),
|
| - B(Inc), U8(3),
|
| + B(Inc), U8(7),
|
| /* 87 E> */ B(StaCurrentContextSlot), U8(4),
|
| /* 90 S> */ B(Return),
|
| ]
|
| constant pool: [
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["a"],
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["b"],
|
| SHARED_FUNCTION_INFO_TYPE,
|
| ]
|
| handlers: [
|
| @@ -227,24 +263,30 @@ snippet: "
|
| "
|
| frame size: 3
|
| parameter count: 1
|
| -bytecode array length: 28
|
| +bytecode array length: 36
|
| bytecodes: [
|
| B(CreateFunctionContext), U8(1),
|
| B(PushContext), R(1),
|
| /* 30 E> */ B(StackCheck),
|
| - /* 42 S> */ B(LdaSmi), I8(1),
|
| + /* 42 S> */ B(LdaConstant), U8(0),
|
| + B(Star), R(2),
|
| + B(LdaSmi), I8(1),
|
| /* 42 E> */ B(StaCurrentContextSlot), U8(4),
|
| - /* 53 S> */ B(CreateClosure), U8(0), U8(2), U8(2),
|
| + /* 53 S> */ B(LdaConstant), U8(1),
|
| + B(Star), R(2),
|
| + B(CreateClosure), U8(2), U8(4), U8(2),
|
| B(Star), R(0),
|
| /* 78 S> */ B(LdaCurrentContextSlot), U8(4),
|
| B(ToNumber), R(2),
|
| B(Ldar), R(2),
|
| - B(Dec), U8(3),
|
| + B(Dec), U8(7),
|
| /* 86 E> */ B(StaCurrentContextSlot), U8(4),
|
| B(Ldar), R(2),
|
| /* 90 S> */ B(Return),
|
| ]
|
| constant pool: [
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["a"],
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["b"],
|
| SHARED_FUNCTION_INFO_TYPE,
|
| ]
|
| handlers: [
|
| @@ -254,25 +296,36 @@ handlers: [
|
| snippet: "
|
| var idx = 1; var a = [1, 2]; return a[idx++] = 2;
|
| "
|
| -frame size: 4
|
| +frame size: 6
|
| parameter count: 1
|
| -bytecode array length: 28
|
| +bytecode array length: 46
|
| bytecodes: [
|
| /* 30 E> */ B(StackCheck),
|
| - /* 44 S> */ B(LdaSmi), I8(1),
|
| + /* 44 S> */ B(LdaConstant), U8(0),
|
| + B(Star), R(2),
|
| + B(LdaSmi), I8(1),
|
| B(Star), R(0),
|
| - /* 55 S> */ B(CreateArrayLiteral), U8(0), U8(2), U8(9),
|
| + /* 55 S> */ B(LdaConstant), U8(1),
|
| + B(Star), R(2),
|
| + B(CreateArrayLiteral), U8(2), U8(4), U8(9),
|
| B(Star), R(1),
|
| /* 63 S> */ B(Ldar), R(0),
|
| - B(ToNumber), R(3),
|
| - B(Ldar), R(3),
|
| - B(Inc), U8(3),
|
| + B(ToNumber), R(4),
|
| + B(Ldar), R(4),
|
| + B(Inc), U8(7),
|
| + B(Star), R(0),
|
| + B(Ldar), R(0),
|
| + /* 75 E> */ B(ToNumber), R(5),
|
| + B(Ldar), R(5),
|
| + B(Inc), U8(7),
|
| B(Star), R(0),
|
| B(LdaSmi), I8(2),
|
| - /* 79 E> */ B(StaKeyedPropertySloppy), R(1), R(3), U8(4),
|
| + /* 79 E> */ B(StaKeyedPropertySloppy), R(1), R(4), U8(8),
|
| /* 84 S> */ B(Return),
|
| ]
|
| constant pool: [
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["idx"],
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["a"],
|
| CONSTANT_ELEMENTS_PAIR_TYPE,
|
| ]
|
| handlers: [
|
|
|