diff --git a/test/cctest/interpreter/bytecode_expectations/ContextParameters.golden b/test/cctest/interpreter/bytecode_expectations/ContextParameters.golden
new file mode 100644
index 0000000..fb74600
--- /dev/null
+++ b/test/cctest/interpreter/bytecode_expectations/ContextParameters.golden
@@ -0,0 +1,106 @@
+#
+# Autogenerated by generate-bytecode-expectations.
+#
+
+---
+pool type: mixed
+execute: yes
+wrap: no
+test function name: f
+
+---
+snippet: "
+  function f(arg1) { return function() { arg1 = 2; }; }
+  f();
+"
+frame size: 1
+parameter count: 2
+bytecode array length: 17
+bytecodes: [
+  B(CallRuntime), U16(Runtime::kNewFunctionContext), R(closure), U8(1),
+  B(PushContext), R(0),
+  B(Ldar), R(arg0),
+  B(StaContextSlot), R(context), U8(4),
+  B(StackCheck),
+  B(CreateClosure), U8(0), U8(0),
+  B(Return),
+]
+constant pool: [
+  InstanceType::SHARED_FUNCTION_INFO_TYPE,
+]
+handlers: [
+]
+
+---
+snippet: "
+  function f(arg1) { var a = function() { arg1 = 2; }; return arg1; }
+  f();
+"
+frame size: 2
+parameter count: 2
+bytecode array length: 22
+bytecodes: [
+  B(CallRuntime), U16(Runtime::kNewFunctionContext), R(closure), U8(1),
+  B(PushContext), R(1),
+  B(Ldar), R(arg0),
+  B(StaContextSlot), R(context), U8(4),
+  B(StackCheck),
+  B(CreateClosure), U8(0), U8(0),
+  B(Star), R(0),
+  B(LdaContextSlot), R(context), U8(4),
+  B(Return),
+]
+constant pool: [
+  InstanceType::SHARED_FUNCTION_INFO_TYPE,
+]
+handlers: [
+]
+
+---
+snippet: "
+  function f(a1, a2, a3, a4) { return function() { a1 = a3; }; }
+  f();
+"
+frame size: 1
+parameter count: 5
+bytecode array length: 22
+bytecodes: [
+  B(CallRuntime), U16(Runtime::kNewFunctionContext), R(closure), U8(1),
+  B(PushContext), R(0),
+  B(Ldar), R(arg0),
+  B(StaContextSlot), R(context), U8(5),
+  B(Ldar), R(arg2),
+  B(StaContextSlot), R(context), U8(4),
+  B(StackCheck),
+  B(CreateClosure), U8(0), U8(0),
+  B(Return),
+]
+constant pool: [
+  InstanceType::SHARED_FUNCTION_INFO_TYPE,
+]
+handlers: [
+]
+
+---
+snippet: "
+  function f() { var self = this; return function() { self = 2; }; }
+  f();
+"
+frame size: 1
+parameter count: 1
+bytecode array length: 17
+bytecodes: [
+  B(CallRuntime), U16(Runtime::kNewFunctionContext), R(closure), U8(1),
+  B(PushContext), R(0),
+  B(StackCheck),
+  B(Ldar), R(this),
+  B(StaContextSlot), R(context), U8(4),
+  B(CreateClosure), U8(0), U8(0),
+  B(Return),
+]
+constant pool: [
+  InstanceType::SHARED_FUNCTION_INFO_TYPE,
+]
+handlers: [
+]
+
