Index: test/cctest/interpreter/CountOperators.golden |
diff --git a/test/cctest/interpreter/CountOperators.golden b/test/cctest/interpreter/CountOperators.golden |
new file mode 100644 |
index 0000000000000000000000000000000000000000..d037eff839561cd3b16fedb5a85dccaa99d85a6e |
--- /dev/null |
+++ b/test/cctest/interpreter/CountOperators.golden |
@@ -0,0 +1,287 @@ |
+# |
+# Autogenerated by generate-bytecode-expectations |
+# |
+ |
+--- |
+pool type: mixed |
+execute: yes |
+wrap: yes |
+ |
+--- |
+snippet: " |
+ var a = 1; return ++a; |
+" |
+frame size: 1 # in multiples of sizeof(void*) |
+parameter count: 1 |
+bytecodes: [ |
+ B(StackCheck), |
+ B(LdaSmi8), U8(1), |
+ B(Star), R(0), |
+ B(ToNumber), |
+ B(Inc), |
+ B(Star), R(0), |
+ B(Return), |
+] |
+constant pool: [ |
+] |
+handlers: [ |
+] |
+ |
+--- |
+snippet: " |
+ var a = 1; return a++; |
+" |
+frame size: 2 # in multiples of sizeof(void*) |
+parameter count: 1 |
+bytecodes: [ |
+ B(StackCheck), |
+ B(LdaSmi8), U8(1), |
+ B(Star), R(0), |
+ B(ToNumber), |
+ B(Star), R(1), |
+ B(Inc), |
+ B(Star), R(0), |
+ B(Ldar), R(1), |
+ B(Return), |
+] |
+constant pool: [ |
+] |
+handlers: [ |
+] |
+ |
+--- |
+snippet: " |
+ var a = 1; return --a; |
+" |
+frame size: 1 # in multiples of sizeof(void*) |
+parameter count: 1 |
+bytecodes: [ |
+ B(StackCheck), |
+ B(LdaSmi8), U8(1), |
+ B(Star), R(0), |
+ B(ToNumber), |
+ B(Dec), |
+ B(Star), R(0), |
+ B(Return), |
+] |
+constant pool: [ |
+] |
+handlers: [ |
+] |
+ |
+--- |
+snippet: " |
+ var a = 1; return a--; |
+" |
+frame size: 2 # in multiples of sizeof(void*) |
+parameter count: 1 |
+bytecodes: [ |
+ B(StackCheck), |
+ B(LdaSmi8), U8(1), |
+ B(Star), R(0), |
+ B(ToNumber), |
+ B(Star), R(1), |
+ B(Dec), |
+ B(Star), R(0), |
+ B(Ldar), R(1), |
+ B(Return), |
+] |
+constant pool: [ |
+] |
+handlers: [ |
+] |
+ |
+--- |
+snippet: " |
+ var a = { val: 1 }; return a.val++; |
+" |
+frame size: 3 # in multiples of sizeof(void*) |
+parameter count: 1 |
+bytecodes: [ |
+ B(StackCheck), |
+ B(CreateObjectLiteral), U8(0), U8(0), U8(9), |
+ B(Star), R(1), |
+ B(Star), R(0), |
+ B(Star), R(1), |
+ B(LoadIC), R(1), U8(1), U8(1), |
+ B(ToNumber), |
+ B(Star), R(2), |
+ B(Inc), |
+ B(StoreICSloppy), R(1), U8(1), U8(3), |
+ B(Ldar), R(2), |
+ B(Return), |
+] |
+constant pool: [ |
+ InstanceType::FIXED_ARRAY_TYPE, |
+ InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
+] |
+handlers: [ |
+] |
+ |
+--- |
+snippet: " |
+ var a = { val: 1 }; return --a.val; |
+" |
+frame size: 2 # in multiples of sizeof(void*) |
+parameter count: 1 |
+bytecodes: [ |
+ B(StackCheck), |
+ B(CreateObjectLiteral), U8(0), U8(0), U8(9), |
+ B(Star), R(1), |
+ B(Star), R(0), |
+ B(Star), R(1), |
+ B(LoadIC), R(1), U8(1), U8(1), |
+ B(ToNumber), |
+ B(Dec), |
+ B(StoreICSloppy), R(1), U8(1), U8(3), |
+ B(Return), |
+] |
+constant pool: [ |
+ InstanceType::FIXED_ARRAY_TYPE, |
+ InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
+] |
+handlers: [ |
+] |
+ |
+--- |
+snippet: " |
+ var name = 'var'; var a = { val: 1 }; return a[name]--; |
+" |
+frame size: 5 # in multiples of sizeof(void*) |
+parameter count: 1 |
+bytecodes: [ |
+ B(StackCheck), |
+ B(LdaConstant), U8(0), |
+ B(Star), R(0), |
+ B(CreateObjectLiteral), U8(1), U8(0), U8(9), |
+ B(Star), R(2), |
+ B(Star), R(1), |
+ B(Star), R(2), |
+ B(Ldar), R(0), |
+ B(Star), R(3), |
+ B(KeyedLoadIC), R(2), U8(1), |
+ B(ToNumber), |
+ B(Star), R(4), |
+ B(Dec), |
+ B(KeyedStoreICSloppy), R(2), R(3), U8(3), |
+ B(Ldar), R(4), |
+ B(Return), |
+] |
+constant pool: [ |
+ InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
+ InstanceType::FIXED_ARRAY_TYPE, |
+] |
+handlers: [ |
+] |
+ |
+--- |
+snippet: " |
+ var name = 'var'; var a = { val: 1 }; return ++a[name]; |
+" |
+frame size: 4 # in multiples of sizeof(void*) |
+parameter count: 1 |
+bytecodes: [ |
+ B(StackCheck), |
+ B(LdaConstant), U8(0), |
+ B(Star), R(0), |
+ B(CreateObjectLiteral), U8(1), U8(0), U8(9), |
+ B(Star), R(2), |
+ B(Star), R(1), |
+ B(Star), R(2), |
+ B(Ldar), R(0), |
+ B(Star), R(3), |
+ B(KeyedLoadIC), R(2), U8(1), |
+ B(ToNumber), |
+ B(Inc), |
+ B(KeyedStoreICSloppy), R(2), R(3), U8(3), |
+ B(Return), |
+] |
+constant pool: [ |
+ InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
+ InstanceType::FIXED_ARRAY_TYPE, |
+] |
+handlers: [ |
+] |
+ |
+--- |
+snippet: " |
+ var a = 1; var b = function() { return a }; return ++a; |
+" |
+frame size: 2 # in multiples of sizeof(void*) |
+parameter count: 1 |
+bytecodes: [ |
+ B(CallRuntime), U16(461), R(closure), U8(1), |
+ B(PushContext), R(1), |
+ B(StackCheck), |
+ B(LdaSmi8), U8(1), |
+ B(StaContextSlot), R(context), U8(4), |
+ B(CreateClosure), U8(0), U8(0), |
+ B(Star), R(0), |
+ B(LdaContextSlot), R(context), U8(4), |
+ B(ToNumber), |
+ B(Inc), |
+ B(StaContextSlot), R(context), U8(4), |
+ B(Return), |
+] |
+constant pool: [ |
+ InstanceType::SHARED_FUNCTION_INFO_TYPE, |
+] |
+handlers: [ |
+] |
+ |
+--- |
+snippet: " |
+ var a = 1; var b = function() { return a }; return a--; |
+" |
+frame size: 3 # in multiples of sizeof(void*) |
+parameter count: 1 |
+bytecodes: [ |
+ B(CallRuntime), U16(461), R(closure), U8(1), |
+ B(PushContext), R(1), |
+ B(StackCheck), |
+ B(LdaSmi8), U8(1), |
+ B(StaContextSlot), R(context), U8(4), |
+ B(CreateClosure), U8(0), U8(0), |
+ B(Star), R(0), |
+ B(LdaContextSlot), R(context), U8(4), |
+ B(ToNumber), |
+ B(Star), R(2), |
+ B(Dec), |
+ B(StaContextSlot), R(context), U8(4), |
+ B(Ldar), R(2), |
+ B(Return), |
+] |
+constant pool: [ |
+ InstanceType::SHARED_FUNCTION_INFO_TYPE, |
+] |
+handlers: [ |
+] |
+ |
+--- |
+snippet: " |
+ var idx = 1; var a = [1, 2]; return a[idx++] = 2; |
+" |
+frame size: 4 # in multiples of sizeof(void*) |
+parameter count: 1 |
+bytecodes: [ |
+ B(StackCheck), |
+ B(LdaSmi8), U8(1), |
+ B(Star), R(0), |
+ B(CreateArrayLiteral), U8(0), U8(0), U8(3), |
+ B(Star), R(1), |
+ B(Star), R(2), |
+ B(Ldar), R(0), |
+ B(ToNumber), |
+ B(Star), R(3), |
+ B(Inc), |
+ B(Star), R(0), |
+ B(LdaSmi8), U8(2), |
+ B(KeyedStoreICSloppy), R(2), R(3), U8(1), |
+ B(Return), |
+] |
+constant pool: [ |
+ InstanceType::FIXED_ARRAY_TYPE, |
+] |
+handlers: [ |
+] |
+ |