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 |
new file mode 100644 |
index 0000000000000000000000000000000000000000..e0707edcf75b4177c7f66eed07c756681a65852d |
--- /dev/null |
+++ b/test/cctest/interpreter/bytecode_expectations/AssignmentsInBinaryExpression.golden |
@@ -0,0 +1,279 @@ |
+# |
+# Autogenerated by generate-bytecode-expectations |
+# |
+ |
+--- |
+pool type: string |
+execute: yes |
+wrap: yes |
+ |
+--- |
+snippet: " |
+ var x = 0, y = 1; |
+ return (x = 2, y = 3, x = 4, y = 5) |
+" |
+frame size: 2 |
+parameter count: 1 |
+bytecode array length: 25 |
+bytecodes: [ |
+ B(StackCheck), |
+ B(LdaZero), |
+ B(Star), R(0), |
+ B(LdaSmi8), U8(1), |
+ B(Star), R(1), |
+ B(LdaSmi8), U8(2), |
+ B(Star), R(0), |
+ B(LdaSmi8), U8(3), |
+ B(Star), R(1), |
+ B(LdaSmi8), U8(4), |
+ B(Star), R(0), |
+ B(LdaSmi8), U8(5), |
+ B(Star), R(1), |
+ B(Return), |
+] |
+constant pool: [ |
+] |
+handlers: [ |
+] |
+ |
+--- |
+snippet: " |
+ var x = 55; |
+ var y = (x = 100); |
+ return y |
+" |
+frame size: 2 |
+parameter count: 1 |
+bytecode array length: 12 |
+bytecodes: [ |
+ B(StackCheck), |
+ B(LdaSmi8), U8(55), |
+ B(Star), R(0), |
+ B(LdaSmi8), U8(100), |
+ B(Star), R(0), |
+ B(Star), R(1), |
+ B(Return), |
+] |
+constant pool: [ |
+] |
+handlers: [ |
+] |
+ |
+--- |
+snippet: " |
+ var x = 55; |
+ x = x + (x = 100) + (x = 101); |
+ return x; |
+" |
+frame size: 3 |
+parameter count: 1 |
+bytecode array length: 24 |
+bytecodes: [ |
+ B(StackCheck), |
+ B(LdaSmi8), U8(55), |
+ B(Star), R(0), |
+ B(Star), R(1), |
+ B(LdaSmi8), U8(100), |
+ B(Star), R(0), |
+ B(Add), R(1), |
+ B(Star), R(2), |
+ B(LdaSmi8), U8(101), |
+ B(Star), R(0), |
+ B(Add), R(2), |
+ B(Star), R(0), |
+ B(Return), |
+] |
+constant pool: [ |
+] |
+handlers: [ |
+] |
+ |
+--- |
+snippet: " |
+ var x = 55; |
+ x = (x = 56) - x + (x = 57); |
+ x++; |
+ return x; |
+" |
+frame size: 3 |
+parameter count: 1 |
+bytecode array length: 32 |
+bytecodes: [ |
+ B(StackCheck), |
+ B(LdaSmi8), U8(55), |
+ B(Star), R(0), |
+ B(LdaSmi8), U8(56), |
+ B(Star), R(0), |
+ B(Star), R(1), |
+ B(Ldar), R(0), |
+ B(Sub), R(1), |
+ B(Star), R(2), |
+ B(LdaSmi8), U8(57), |
+ B(Star), R(0), |
+ B(Add), R(2), |
+ B(Star), R(0), |
+ B(ToNumber), |
+ B(Star), R(1), |
+ B(Inc), |
+ B(Star), R(0), |
+ B(Return), |
+] |
+constant pool: [ |
+] |
+handlers: [ |
+] |
+ |
+--- |
+snippet: " |
+ var x = 55; |
+ var y = x + (x = 1) + (x = 2) + (x = 3); |
+ return y; |
+" |
+frame size: 4 |
+parameter count: 1 |
+bytecode array length: 32 |
+bytecodes: [ |
+ B(StackCheck), |
+ B(LdaSmi8), U8(55), |
+ B(Star), R(0), |
+ B(Star), R(2), |
+ B(LdaSmi8), U8(1), |
+ B(Star), R(0), |
+ B(Add), R(2), |
+ B(Star), R(3), |
+ B(LdaSmi8), U8(2), |
+ B(Star), R(0), |
+ B(Add), R(3), |
+ B(Star), R(2), |
+ B(LdaSmi8), U8(3), |
+ B(Star), R(0), |
+ B(Add), R(2), |
+ B(Star), R(1), |
+ B(Return), |
+] |
+constant pool: [ |
+] |
+handlers: [ |
+] |
+ |
+--- |
+snippet: " |
+ var x = 55; |
+ var x = x + (x = 1) + (x = 2) + (x = 3); |
+ return x; |
+" |
+frame size: 3 |
+parameter count: 1 |
+bytecode array length: 32 |
+bytecodes: [ |
+ B(StackCheck), |
+ B(LdaSmi8), U8(55), |
+ B(Star), R(0), |
+ B(Star), R(1), |
+ B(LdaSmi8), U8(1), |
+ B(Star), R(0), |
+ B(Add), R(1), |
+ B(Star), R(2), |
+ B(LdaSmi8), U8(2), |
+ B(Star), R(0), |
+ B(Add), R(2), |
+ B(Star), R(1), |
+ B(LdaSmi8), U8(3), |
+ B(Star), R(0), |
+ B(Add), R(1), |
+ B(Star), R(0), |
+ B(Return), |
+] |
+constant pool: [ |
+] |
+handlers: [ |
+] |
+ |
+--- |
+snippet: " |
+ var x = 10, y = 20; |
+ return x + (x = 1) + (x + 1) * (y = 2) + (y = 3) + (x = 4) + (y = 5) + y; |
+" |
+frame size: 5 |
+parameter count: 1 |
+bytecode array length: 70 |
+bytecodes: [ |
+ B(StackCheck), |
+ B(LdaSmi8), U8(10), |
+ B(Star), R(0), |
+ B(LdaSmi8), U8(20), |
+ B(Star), R(1), |
+ B(Ldar), R(0), |
+ B(Star), R(2), |
+ B(LdaSmi8), U8(1), |
+ B(Star), R(0), |
+ B(Add), R(2), |
+ B(Star), R(3), |
+ B(Ldar), R(0), |
+ B(Star), R(2), |
+ B(LdaSmi8), U8(1), |
+ B(Add), R(2), |
+ B(Star), R(4), |
+ B(LdaSmi8), U8(2), |
+ B(Star), R(1), |
+ B(Mul), R(4), |
+ B(Add), R(3), |
+ B(Star), R(2), |
+ B(LdaSmi8), U8(3), |
+ B(Star), R(1), |
+ B(Add), R(2), |
+ B(Star), R(3), |
+ B(LdaSmi8), U8(4), |
+ B(Star), R(0), |
+ B(Add), R(3), |
+ B(Star), R(2), |
+ B(LdaSmi8), U8(5), |
+ B(Star), R(1), |
+ B(Add), R(2), |
+ B(Star), R(3), |
+ B(Ldar), R(1), |
+ B(Add), R(3), |
+ B(Return), |
+] |
+constant pool: [ |
+] |
+handlers: [ |
+] |
+ |
+--- |
+snippet: " |
+ var x = 17; |
+ return 1 + x + (x++) + (++x); |
+" |
+frame size: 4 |
+parameter count: 1 |
+bytecode array length: 38 |
+bytecodes: [ |
+ B(StackCheck), |
+ B(LdaSmi8), U8(17), |
+ B(Star), R(0), |
+ B(LdaSmi8), U8(1), |
+ B(Star), R(1), |
+ B(Ldar), R(0), |
+ B(Add), R(1), |
+ B(Star), R(2), |
+ B(Ldar), R(0), |
+ B(ToNumber), |
+ B(Star), R(1), |
+ B(Inc), |
+ B(Star), R(0), |
+ B(Ldar), R(1), |
+ B(Add), R(2), |
+ B(Star), R(3), |
+ B(Ldar), R(0), |
+ B(ToNumber), |
+ B(Inc), |
+ B(Star), R(0), |
+ B(Add), R(3), |
+ B(Return), |
+] |
+constant pool: [ |
+] |
+handlers: [ |
+] |
+ |