| Index: test/cctest/interpreter/bytecode_expectations/AssignmentsInBinaryExpression.golden
|
| diff --git a/test/cctest/interpreter/bytecode_expectations/AssignmentsInBinaryExpression.golden b/test/cctest/interpreter/bytecode_expectations/AssignmentsInBinaryExpression.golden
|
| index afc009f7d80f577cdfb0a9a1fdd4008a865cb8fb..7635cd44fa08a09a3fc861a7e96e34e3c651dcce 100644
|
| --- a/test/cctest/interpreter/bytecode_expectations/AssignmentsInBinaryExpression.golden
|
| +++ b/test/cctest/interpreter/bytecode_expectations/AssignmentsInBinaryExpression.golden
|
| @@ -10,26 +10,40 @@ snippet: "
|
| var x = 0, y = 1;
|
| return (x = 2, y = 3, x = 4, y = 5);
|
| "
|
| -frame size: 2
|
| +frame size: 3
|
| parameter count: 1
|
| -bytecode array length: 25
|
| +bytecode array length: 49
|
| bytecodes: [
|
| /* 30 E> */ B(StackCheck),
|
| - /* 42 S> */ B(LdaZero),
|
| + /* 42 S> */ B(LdaConstant), U8(0),
|
| + B(Star), R(2),
|
| + B(LdaZero),
|
| B(Star), R(0),
|
| - /* 49 S> */ B(LdaSmi), I8(1),
|
| + /* 49 S> */ B(LdaConstant), U8(1),
|
| + B(Star), R(2),
|
| + B(LdaSmi), I8(1),
|
| B(Star), R(1),
|
| - /* 52 S> */ B(LdaSmi), I8(2),
|
| + /* 52 S> */ B(LdaConstant), U8(0),
|
| + B(Star), R(2),
|
| + B(LdaSmi), I8(2),
|
| B(Star), R(0),
|
| + B(LdaConstant), U8(1),
|
| + B(Star), R(2),
|
| B(LdaSmi), I8(3),
|
| B(Star), R(1),
|
| + B(LdaConstant), U8(0),
|
| + B(Star), R(2),
|
| B(LdaSmi), I8(4),
|
| B(Star), R(0),
|
| + B(LdaConstant), U8(1),
|
| + B(Star), R(2),
|
| B(LdaSmi), I8(5),
|
| B(Star), R(1),
|
| /* 89 S> */ B(Return),
|
| ]
|
| constant pool: [
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"],
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"],
|
| ]
|
| handlers: [
|
| ]
|
| @@ -40,20 +54,28 @@ snippet: "
|
| var y = (x = 100);
|
| return y;
|
| "
|
| -frame size: 2
|
| +frame size: 4
|
| parameter count: 1
|
| -bytecode array length: 13
|
| +bytecode array length: 25
|
| bytecodes: [
|
| /* 30 E> */ B(StackCheck),
|
| - /* 42 S> */ B(LdaSmi), I8(55),
|
| + /* 42 S> */ B(LdaConstant), U8(0),
|
| + B(Star), R(2),
|
| + B(LdaSmi), I8(55),
|
| B(Star), R(0),
|
| - /* 57 S> */ B(LdaSmi), I8(100),
|
| + /* 57 S> */ B(LdaConstant), U8(1),
|
| + B(Star), R(2),
|
| + B(LdaConstant), U8(0),
|
| + B(Star), R(3),
|
| + B(LdaSmi), I8(100),
|
| B(Star), R(0),
|
| B(Star), R(1),
|
| /* 65 S> */ B(Nop),
|
| /* 75 S> */ B(Return),
|
| ]
|
| constant pool: [
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"],
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"],
|
| ]
|
| handlers: [
|
| ]
|
| @@ -64,26 +86,35 @@ snippet: "
|
| x = x + (x = 100) + (x = 101);
|
| return x;
|
| "
|
| -frame size: 2
|
| +frame size: 4
|
| parameter count: 1
|
| -bytecode array length: 28
|
| +bytecode array length: 44
|
| bytecodes: [
|
| /* 30 E> */ B(StackCheck),
|
| - /* 42 S> */ B(LdaSmi), I8(55),
|
| - B(Star), R(0),
|
| - /* 46 S> */ B(LdaSmi), I8(100),
|
| - B(Mov), R(0), R(1),
|
| + /* 42 S> */ B(LdaConstant), U8(0),
|
| + B(Star), R(1),
|
| + B(LdaSmi), I8(55),
|
| B(Star), R(0),
|
| - /* 52 E> */ B(Add), R(1), U8(2),
|
| + /* 46 S> */ B(LdaConstant), U8(0),
|
| B(Star), R(1),
|
| + B(LdaConstant), U8(0),
|
| + B(Star), R(3),
|
| + B(LdaSmi), I8(100),
|
| + B(Mov), R(0), R(2),
|
| + B(Star), R(0),
|
| + /* 52 E> */ B(Add), R(2), U8(6),
|
| + B(Star), R(2),
|
| + B(LdaConstant), U8(0),
|
| + B(Star), R(3),
|
| B(LdaSmi), I8(101),
|
| B(Star), R(0),
|
| - /* 64 E> */ B(Add), R(1), U8(3),
|
| + /* 64 E> */ B(Add), R(2), U8(9),
|
| B(Star), R(0),
|
| /* 77 S> */ B(Nop),
|
| /* 87 S> */ B(Return),
|
| ]
|
| constant pool: [
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"],
|
| ]
|
| handlers: [
|
| ]
|
| @@ -95,27 +126,36 @@ snippet: "
|
| x++;
|
| return x;
|
| "
|
| -frame size: 2
|
| +frame size: 4
|
| parameter count: 1
|
| -bytecode array length: 29
|
| +bytecode array length: 45
|
| bytecodes: [
|
| /* 30 E> */ B(StackCheck),
|
| - /* 42 S> */ B(LdaSmi), I8(55),
|
| - B(Star), R(0),
|
| - /* 46 S> */ B(LdaSmi), I8(56),
|
| + /* 42 S> */ B(LdaConstant), U8(0),
|
| + B(Star), R(1),
|
| + B(LdaSmi), I8(55),
|
| B(Star), R(0),
|
| - /* 59 E> */ B(Sub), R(0), U8(2),
|
| + /* 46 S> */ B(LdaConstant), U8(0),
|
| B(Star), R(1),
|
| + B(LdaConstant), U8(0),
|
| + B(Star), R(2),
|
| + B(LdaSmi), I8(56),
|
| + B(Star), R(0),
|
| + /* 59 E> */ B(Sub), R(0), U8(6),
|
| + B(Star), R(2),
|
| + B(LdaConstant), U8(0),
|
| + B(Star), R(3),
|
| B(LdaSmi), I8(57),
|
| B(Star), R(0),
|
| - /* 63 E> */ B(Add), R(1), U8(3),
|
| + /* 63 E> */ B(Add), R(2), U8(9),
|
| B(Star), R(0),
|
| - /* 75 S> */ B(Inc), U8(4),
|
| + /* 75 S> */ B(Inc), U8(12),
|
| B(Star), R(0),
|
| /* 80 S> */ B(Nop),
|
| /* 90 S> */ B(Return),
|
| ]
|
| constant pool: [
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"],
|
| ]
|
| handlers: [
|
| ]
|
| @@ -126,30 +166,42 @@ snippet: "
|
| var y = x + (x = 1) + (x = 2) + (x = 3);
|
| return y;
|
| "
|
| -frame size: 3
|
| +frame size: 5
|
| parameter count: 1
|
| -bytecode array length: 37
|
| +bytecode array length: 57
|
| bytecodes: [
|
| /* 30 E> */ B(StackCheck),
|
| - /* 42 S> */ B(LdaSmi), I8(55),
|
| - B(Star), R(0),
|
| - /* 76 S> */ B(LdaSmi), I8(1),
|
| - B(Mov), R(0), R(2),
|
| + /* 42 S> */ B(LdaConstant), U8(0),
|
| + B(Star), R(2),
|
| + B(LdaSmi), I8(55),
|
| B(Star), R(0),
|
| - /* 56 E> */ B(Add), R(2), U8(2),
|
| + /* 76 S> */ B(LdaConstant), U8(1),
|
| B(Star), R(2),
|
| + B(LdaConstant), U8(0),
|
| + B(Star), R(4),
|
| + B(LdaSmi), I8(1),
|
| + B(Mov), R(0), R(3),
|
| + B(Star), R(0),
|
| + /* 56 E> */ B(Add), R(3), U8(6),
|
| + B(Star), R(3),
|
| + B(LdaConstant), U8(0),
|
| + B(Star), R(4),
|
| B(LdaSmi), I8(2),
|
| B(Star), R(0),
|
| - /* 66 E> */ B(Add), R(2), U8(3),
|
| - B(Star), R(2),
|
| + /* 66 E> */ B(Add), R(3), U8(9),
|
| + B(Star), R(3),
|
| + B(LdaConstant), U8(0),
|
| + B(Star), R(4),
|
| B(LdaSmi), I8(3),
|
| B(Star), R(0),
|
| - /* 76 E> */ B(Add), R(2), U8(4),
|
| + /* 76 E> */ B(Add), R(3), U8(12),
|
| B(Star), R(1),
|
| /* 87 S> */ B(Nop),
|
| /* 97 S> */ B(Return),
|
| ]
|
| constant pool: [
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"],
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"],
|
| ]
|
| handlers: [
|
| ]
|
| @@ -160,30 +212,41 @@ snippet: "
|
| var x = x + (x = 1) + (x = 2) + (x = 3);
|
| return x;
|
| "
|
| -frame size: 2
|
| +frame size: 4
|
| parameter count: 1
|
| -bytecode array length: 37
|
| +bytecode array length: 57
|
| bytecodes: [
|
| /* 30 E> */ B(StackCheck),
|
| - /* 42 S> */ B(LdaSmi), I8(55),
|
| - B(Star), R(0),
|
| - /* 76 S> */ B(LdaSmi), I8(1),
|
| - B(Mov), R(0), R(1),
|
| + /* 42 S> */ B(LdaConstant), U8(0),
|
| + B(Star), R(1),
|
| + B(LdaSmi), I8(55),
|
| B(Star), R(0),
|
| - /* 56 E> */ B(Add), R(1), U8(2),
|
| + /* 76 S> */ B(LdaConstant), U8(0),
|
| B(Star), R(1),
|
| + B(LdaConstant), U8(0),
|
| + B(Star), R(3),
|
| + B(LdaSmi), I8(1),
|
| + B(Mov), R(0), R(2),
|
| + B(Star), R(0),
|
| + /* 56 E> */ B(Add), R(2), U8(6),
|
| + B(Star), R(2),
|
| + B(LdaConstant), U8(0),
|
| + B(Star), R(3),
|
| B(LdaSmi), I8(2),
|
| B(Star), R(0),
|
| - /* 66 E> */ B(Add), R(1), U8(3),
|
| - B(Star), R(1),
|
| + /* 66 E> */ B(Add), R(2), U8(9),
|
| + B(Star), R(2),
|
| + B(LdaConstant), U8(0),
|
| + B(Star), R(3),
|
| B(LdaSmi), I8(3),
|
| B(Star), R(0),
|
| - /* 76 E> */ B(Add), R(1), U8(4),
|
| + /* 76 E> */ B(Add), R(2), U8(12),
|
| B(Star), R(0),
|
| /* 87 S> */ B(Nop),
|
| /* 97 S> */ B(Return),
|
| ]
|
| constant pool: [
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"],
|
| ]
|
| handlers: [
|
| ]
|
| @@ -193,44 +256,60 @@ snippet: "
|
| var x = 10, y = 20;
|
| return x + (x = 1) + (x + 1) * (y = 2) + (y = 3) + (x = 4) + (y = 5) + y;
|
| "
|
| -frame size: 4
|
| +frame size: 5
|
| parameter count: 1
|
| -bytecode array length: 72
|
| +bytecode array length: 100
|
| bytecodes: [
|
| /* 30 E> */ B(StackCheck),
|
| - /* 42 S> */ B(LdaSmi), I8(10),
|
| + /* 42 S> */ B(LdaConstant), U8(0),
|
| + B(Star), R(2),
|
| + B(LdaSmi), I8(10),
|
| B(Star), R(0),
|
| - /* 50 S> */ B(LdaSmi), I8(20),
|
| + /* 50 S> */ B(LdaConstant), U8(1),
|
| + B(Star), R(2),
|
| + B(LdaSmi), I8(20),
|
| B(Star), R(1),
|
| - /* 54 S> */ B(LdaSmi), I8(1),
|
| + /* 54 S> */ B(LdaConstant), U8(0),
|
| + B(Star), R(3),
|
| + B(LdaSmi), I8(1),
|
| B(Mov), R(0), R(2),
|
| B(Star), R(0),
|
| - /* 63 E> */ B(Add), R(2), U8(2),
|
| + /* 63 E> */ B(Add), R(2), U8(8),
|
| B(Star), R(2),
|
| - /* 78 E> */ B(AddSmi), I8(1), R(0), U8(3),
|
| + /* 78 E> */ B(AddSmi), I8(1), R(0), U8(9),
|
| B(Star), R(3),
|
| + B(LdaConstant), U8(1),
|
| + B(Star), R(4),
|
| B(LdaSmi), I8(2),
|
| B(Star), R(1),
|
| - /* 83 E> */ B(Mul), R(3), U8(4),
|
| - /* 73 E> */ B(Add), R(2), U8(5),
|
| + /* 83 E> */ B(Mul), R(3), U8(12),
|
| + /* 73 E> */ B(Add), R(2), U8(13),
|
| B(Star), R(2),
|
| + B(LdaConstant), U8(1),
|
| + B(Star), R(3),
|
| B(LdaSmi), I8(3),
|
| B(Star), R(1),
|
| - /* 93 E> */ B(Add), R(2), U8(6),
|
| + /* 93 E> */ B(Add), R(2), U8(16),
|
| B(Star), R(2),
|
| + B(LdaConstant), U8(0),
|
| + B(Star), R(3),
|
| B(LdaSmi), I8(4),
|
| B(Star), R(0),
|
| - /* 103 E> */ B(Add), R(2), U8(7),
|
| + /* 103 E> */ B(Add), R(2), U8(19),
|
| B(Star), R(2),
|
| + B(LdaConstant), U8(1),
|
| + B(Star), R(3),
|
| B(LdaSmi), I8(5),
|
| B(Star), R(1),
|
| - /* 113 E> */ B(Add), R(2), U8(8),
|
| + /* 113 E> */ B(Add), R(2), U8(22),
|
| B(Star), R(2),
|
| B(Ldar), R(1),
|
| - /* 123 E> */ B(Add), R(2), U8(9),
|
| + /* 123 E> */ B(Add), R(2), U8(23),
|
| /* 128 S> */ B(Return),
|
| ]
|
| constant pool: [
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"],
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"],
|
| ]
|
| handlers: [
|
| ]
|
| @@ -242,31 +321,34 @@ snippet: "
|
| "
|
| frame size: 3
|
| parameter count: 1
|
| -bytecode array length: 43
|
| +bytecode array length: 47
|
| bytecodes: [
|
| /* 30 E> */ B(StackCheck),
|
| - /* 42 S> */ B(LdaSmi), I8(17),
|
| + /* 42 S> */ B(LdaConstant), U8(0),
|
| + B(Star), R(1),
|
| + B(LdaSmi), I8(17),
|
| B(Star), R(0),
|
| /* 46 S> */ B(LdaSmi), I8(1),
|
| B(Star), R(1),
|
| B(Ldar), R(0),
|
| - /* 55 E> */ B(Add), R(1), U8(2),
|
| + /* 55 E> */ B(Add), R(1), U8(4),
|
| B(Star), R(1),
|
| B(Ldar), R(0),
|
| B(ToNumber), R(2),
|
| B(Ldar), R(2),
|
| - B(Inc), U8(3),
|
| + B(Inc), U8(5),
|
| B(Star), R(0),
|
| B(Ldar), R(2),
|
| - /* 59 E> */ B(Add), R(1), U8(4),
|
| + /* 59 E> */ B(Add), R(1), U8(6),
|
| B(Star), R(1),
|
| B(Ldar), R(0),
|
| - B(Inc), U8(5),
|
| + B(Inc), U8(7),
|
| B(Star), R(0),
|
| - /* 67 E> */ B(Add), R(1), U8(6),
|
| + /* 67 E> */ B(Add), R(1), U8(8),
|
| /* 76 S> */ B(Return),
|
| ]
|
| constant pool: [
|
| + ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"],
|
| ]
|
| handlers: [
|
| ]
|
|
|