Index: test/cctest/interpreter/bytecode_expectations/ConstVariableContextSlot.golden |
diff --git a/test/cctest/interpreter/bytecode_expectations/ConstVariableContextSlot.golden b/test/cctest/interpreter/bytecode_expectations/ConstVariableContextSlot.golden |
new file mode 100644 |
index 0000000000000000000000000000000000000000..d4f8a23974805c5074fc16d1e998a81c57a06d44 |
--- /dev/null |
+++ b/test/cctest/interpreter/bytecode_expectations/ConstVariableContextSlot.golden |
@@ -0,0 +1,139 @@ |
+# |
+# Autogenerated by generate-bytecode-expectations. |
+# |
+ |
+--- |
+pool type: mixed |
+execute: yes |
+wrap: yes |
+ |
+--- |
+snippet: " |
+ const x = 10; function f1() {return x;} |
+" |
+frame size: 2 |
+parameter count: 1 |
+bytecode array length: 24 |
+bytecodes: [ |
+ B(CallRuntime), U16(Runtime::kNewFunctionContext), R(closure), U8(1), |
+ B(PushContext), R(1), |
+ B(LdaTheHole), |
+ B(StaContextSlot), R(context), U8(4), |
+ B(CreateClosure), U8(0), U8(0), |
+ B(Star), R(0), |
+ B(StackCheck), |
+ B(LdaSmi8), U8(10), |
+ B(StaContextSlot), R(context), U8(4), |
+ B(LdaUndefined), |
+ B(Return), |
+] |
+constant pool: [ |
+ InstanceType::SHARED_FUNCTION_INFO_TYPE, |
+] |
+handlers: [ |
+] |
+ |
+--- |
+snippet: " |
+ const x = 10; function f1() {return x;} return x; |
+" |
+frame size: 3 |
+parameter count: 1 |
+bytecode array length: 37 |
+bytecodes: [ |
+ B(CallRuntime), U16(Runtime::kNewFunctionContext), R(closure), U8(1), |
+ B(PushContext), R(1), |
+ B(LdaTheHole), |
+ B(StaContextSlot), R(context), U8(4), |
+ B(CreateClosure), U8(0), U8(0), |
+ B(Star), R(0), |
+ B(StackCheck), |
+ B(LdaSmi8), U8(10), |
+ B(StaContextSlot), R(context), U8(4), |
+ B(LdaContextSlot), R(context), U8(4), |
+ B(JumpIfNotHole), U8(11), |
+ B(LdaConstant), U8(1), |
+ B(Star), R(2), |
+ B(CallRuntime), U16(Runtime::kThrowReferenceError), R(2), U8(1), |
+ B(Return), |
+] |
+constant pool: [ |
+ InstanceType::SHARED_FUNCTION_INFO_TYPE, |
+ InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
+] |
+handlers: [ |
+] |
+ |
+--- |
+snippet: " |
+ const x = (x = 20); function f1() {return x;} |
+" |
+frame size: 4 |
+parameter count: 1 |
+bytecode array length: 50 |
+bytecodes: [ |
+ B(CallRuntime), U16(Runtime::kNewFunctionContext), R(closure), U8(1), |
+ B(PushContext), R(1), |
+ B(LdaTheHole), |
+ B(StaContextSlot), R(context), U8(4), |
+ B(CreateClosure), U8(0), U8(0), |
+ B(Star), R(0), |
+ B(StackCheck), |
+ B(LdaSmi8), U8(20), |
+ B(Star), R(2), |
+ B(LdaContextSlot), R(context), U8(4), |
+ B(JumpIfNotHole), U8(11), |
+ B(LdaConstant), U8(1), |
+ B(Star), R(3), |
+ B(CallRuntime), U16(Runtime::kThrowReferenceError), R(3), U8(1), |
+ B(CallRuntime), U16(Runtime::kThrowConstAssignError), R(0), U8(0), |
+ B(Ldar), R(2), |
+ B(StaContextSlot), R(context), U8(4), |
+ B(StaContextSlot), R(context), U8(4), |
+ B(LdaUndefined), |
+ B(Return), |
+] |
+constant pool: [ |
+ InstanceType::SHARED_FUNCTION_INFO_TYPE, |
+ InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
+] |
+handlers: [ |
+] |
+ |
+--- |
+snippet: " |
+ const x = 10; x = 20; function f1() {return x;} |
+" |
+frame size: 4 |
+parameter count: 1 |
+bytecode array length: 52 |
+bytecodes: [ |
+ B(CallRuntime), U16(Runtime::kNewFunctionContext), R(closure), U8(1), |
+ B(PushContext), R(1), |
+ B(LdaTheHole), |
+ B(StaContextSlot), R(context), U8(4), |
+ B(CreateClosure), U8(0), U8(0), |
+ B(Star), R(0), |
+ B(StackCheck), |
+ B(LdaSmi8), U8(10), |
+ B(StaContextSlot), R(context), U8(4), |
+ B(LdaSmi8), U8(20), |
+ B(Star), R(2), |
+ B(LdaContextSlot), R(context), U8(4), |
+ B(JumpIfNotHole), U8(11), |
+ B(LdaConstant), U8(1), |
+ B(Star), R(3), |
+ B(CallRuntime), U16(Runtime::kThrowReferenceError), R(3), U8(1), |
+ B(CallRuntime), U16(Runtime::kThrowConstAssignError), R(0), U8(0), |
+ B(Ldar), R(2), |
+ B(StaContextSlot), R(context), U8(4), |
+ B(LdaUndefined), |
+ B(Return), |
+] |
+constant pool: [ |
+ InstanceType::SHARED_FUNCTION_INFO_TYPE, |
+ InstanceType::ONE_BYTE_INTERNALIZED_STRING_TYPE, |
+] |
+handlers: [ |
+] |
+ |