Index: test/cctest/interpreter/bytecode_expectations/LookupSlot.golden |
diff --git a/test/cctest/interpreter/bytecode_expectations/LookupSlot.golden b/test/cctest/interpreter/bytecode_expectations/LookupSlot.golden |
index 1652e194299a12706c8feb81edab57a185ce8133..5994ccf62cddd63ee20616a47a97e6f70a01397a 100644 |
--- a/test/cctest/interpreter/bytecode_expectations/LookupSlot.golden |
+++ b/test/cctest/interpreter/bytecode_expectations/LookupSlot.golden |
@@ -5,6 +5,7 @@ |
--- |
execute: yes |
wrap: yes |
+test function name: f |
--- |
snippet: " |
@@ -22,26 +23,26 @@ bytecodes: [ |
B(StaContextSlot), R(context), U8(6), U8(0), |
B(Ldar), R(new_target), |
B(StaContextSlot), R(context), U8(5), U8(0), |
- /* 30 E> */ B(StackCheck), |
- /* 34 S> */ B(LdaConstant), U8(0), |
+ /* 10 E> */ B(StackCheck), |
+ /* 14 S> */ B(LdaConstant), U8(0), |
B(Star), R(3), |
B(CallRuntimeForPair), U16(Runtime::kLoadLookupSlotForCall), R(3), U8(1), R(1), |
B(LdaConstant), U8(1), |
B(Star), R(3), |
B(LdaZero), |
B(Star), R(7), |
- B(LdaSmi), U8(30), |
+ B(LdaSmi), U8(10), |
B(Star), R(8), |
- B(LdaSmi), U8(34), |
+ B(LdaSmi), U8(14), |
B(Star), R(9), |
B(Mov), R(1), R(4), |
B(Mov), R(3), R(5), |
B(Mov), R(closure), R(6), |
B(CallRuntime), U16(Runtime::kResolvePossiblyDirectEval), R(4), U8(6), |
B(Star), R(1), |
- /* 34 E> */ B(Call), R(1), R(2), U8(2), U8(0), |
- /* 55 S> */ B(LdaLookupSlot), U8(2), |
- /* 65 S> */ B(Return), |
+ /* 14 E> */ B(Call), R(1), R(2), U8(2), U8(0), |
+ /* 35 S> */ B(LdaLookupSlot), U8(2), |
+ /* 45 S> */ B(Return), |
] |
constant pool: [ |
ONE_BYTE_INTERNALIZED_STRING_TYPE ["eval"], |
@@ -67,27 +68,27 @@ bytecodes: [ |
B(StaContextSlot), R(context), U8(6), U8(0), |
B(Ldar), R(new_target), |
B(StaContextSlot), R(context), U8(5), U8(0), |
- /* 30 E> */ B(StackCheck), |
- /* 34 S> */ B(LdaConstant), U8(0), |
+ /* 10 E> */ B(StackCheck), |
+ /* 14 S> */ B(LdaConstant), U8(0), |
B(Star), R(3), |
B(CallRuntimeForPair), U16(Runtime::kLoadLookupSlotForCall), R(3), U8(1), R(1), |
B(LdaConstant), U8(1), |
B(Star), R(3), |
B(LdaZero), |
B(Star), R(7), |
- B(LdaSmi), U8(30), |
+ B(LdaSmi), U8(10), |
B(Star), R(8), |
- B(LdaSmi), U8(34), |
+ B(LdaSmi), U8(14), |
B(Star), R(9), |
B(Mov), R(1), R(4), |
B(Mov), R(3), R(5), |
B(Mov), R(closure), R(6), |
B(CallRuntime), U16(Runtime::kResolvePossiblyDirectEval), R(4), U8(6), |
B(Star), R(1), |
- /* 34 E> */ B(Call), R(1), R(2), U8(2), U8(0), |
- /* 55 S> */ B(LdaLookupSlotInsideTypeof), U8(2), |
+ /* 14 E> */ B(Call), R(1), R(2), U8(2), U8(0), |
+ /* 35 S> */ B(LdaLookupSlotInsideTypeof), U8(2), |
B(TypeOf), |
- /* 72 S> */ B(Return), |
+ /* 52 S> */ B(Return), |
] |
constant pool: [ |
ONE_BYTE_INTERNALIZED_STRING_TYPE ["eval"], |
@@ -113,27 +114,27 @@ bytecodes: [ |
B(StaContextSlot), R(context), U8(6), U8(0), |
B(Ldar), R(new_target), |
B(StaContextSlot), R(context), U8(5), U8(0), |
- /* 30 E> */ B(StackCheck), |
- /* 34 S> */ B(LdaSmi), U8(20), |
- /* 36 E> */ B(StaLookupSlotSloppy), U8(0), |
- /* 42 S> */ B(LdaConstant), U8(1), |
+ /* 10 E> */ B(StackCheck), |
+ /* 14 S> */ B(LdaSmi), U8(20), |
+ /* 16 E> */ B(StaLookupSlotSloppy), U8(0), |
+ /* 22 S> */ B(LdaConstant), U8(1), |
B(Star), R(3), |
B(CallRuntimeForPair), U16(Runtime::kLoadLookupSlotForCall), R(3), U8(1), R(1), |
B(LdaConstant), U8(2), |
B(Star), R(3), |
B(LdaZero), |
B(Star), R(7), |
- B(LdaSmi), U8(30), |
+ B(LdaSmi), U8(10), |
B(Star), R(8), |
- B(LdaSmi), U8(49), |
+ B(LdaSmi), U8(29), |
B(Star), R(9), |
B(Mov), R(1), R(4), |
B(Mov), R(3), R(5), |
B(Mov), R(closure), R(6), |
B(CallRuntime), U16(Runtime::kResolvePossiblyDirectEval), R(4), U8(6), |
B(Star), R(1), |
- /* 49 E> */ B(Call), R(1), R(2), U8(2), U8(0), |
- /* 59 S> */ B(Return), |
+ /* 29 E> */ B(Call), R(1), R(2), U8(2), U8(0), |
+ /* 39 S> */ B(Return), |
] |
constant pool: [ |
ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], |
@@ -143,3 +144,53 @@ constant pool: [ |
handlers: [ |
] |
+--- |
+snippet: " |
+ var x = 20; |
+ f = function(){ |
+ eval('var x = 10'); |
+ return x; |
+ } |
+ f(); |
+" |
+frame size: 10 |
+parameter count: 1 |
+bytecode array length: 73 |
+bytecodes: [ |
+ B(CreateFunctionContext), U8(3), |
+ B(PushContext), R(0), |
+ B(Ldar), R(this), |
+ B(StaContextSlot), R(context), U8(4), U8(0), |
+ B(CreateMappedArguments), |
+ B(StaContextSlot), R(context), U8(6), U8(0), |
+ B(Ldar), R(new_target), |
+ B(StaContextSlot), R(context), U8(5), U8(0), |
+ /* 38 E> */ B(StackCheck), |
+ /* 44 S> */ B(LdaConstant), U8(0), |
+ B(Star), R(3), |
+ B(CallRuntimeForPair), U16(Runtime::kLoadLookupSlotForCall), R(3), U8(1), R(1), |
+ B(LdaConstant), U8(1), |
+ B(Star), R(3), |
+ B(LdaZero), |
+ B(Star), R(7), |
+ B(LdaSmi), U8(38), |
+ B(Star), R(8), |
+ B(LdaSmi), U8(44), |
+ B(Star), R(9), |
+ B(Mov), R(1), R(4), |
+ B(Mov), R(3), R(5), |
+ B(Mov), R(closure), R(6), |
+ B(CallRuntime), U16(Runtime::kResolvePossiblyDirectEval), R(4), U8(6), |
+ B(Star), R(1), |
+ /* 44 E> */ B(Call), R(1), R(2), U8(2), U8(0), |
+ /* 66 S> */ B(LdaLookupContextSlot), U8(2), U8(6), U8(1), |
+ /* 76 S> */ B(Return), |
+] |
+constant pool: [ |
+ ONE_BYTE_INTERNALIZED_STRING_TYPE ["eval"], |
+ ONE_BYTE_INTERNALIZED_STRING_TYPE ["var x = 10"], |
+ ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], |
+] |
+handlers: [ |
+] |
+ |