# # Autogenerated by generate-bytecode-expectations. # --- wrap: no test function name: f elide redundant tdz checks: yes --- snippet: " { f = function f(a) { x; x; } let w, x, y, z; f(); } " frame size: 0 parameter count: 2 bytecode array length: 6 bytecodes: [ /* 24 S> */ B(LdaImmutableCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(0), /* 27 S> */ B(LdaUndefined), /* 32 S> */ B(Return), ] constant pool: [ ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], ] handlers: [ ] --- snippet: " { f = function f(a) { if (x) { y; } x + y; } let w, x, y, z; f(); } " frame size: 1 parameter count: 2 bytecode array length: 22 bytecodes: [ /* 24 S> */ B(LdaImmutableCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(0), B(JumpIfToBooleanFalse), U8(6), /* 33 S> */ B(LdaImmutableCurrentContextSlot), U8(3), B(ThrowReferenceErrorIfHole), U8(1), /* 38 S> */ B(LdaImmutableCurrentContextSlot), U8(2), B(Star0), B(LdaImmutableCurrentContextSlot), U8(3), /* 42 E> */ B(ThrowReferenceErrorIfHole), U8(1), /* 40 E> */ B(Add), R(0), U8(0), B(LdaUndefined), /* 47 S> */ B(Return), ] constant pool: [ ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"], ] handlers: [ ] --- snippet: " { f = function f(a) { if (a) { x; y; } else { x; z; } x; y; z; } let w, x, y, z; f(); } " frame size: 0 parameter count: 2 bytecode array length: 34 bytecodes: [ /* 24 S> */ B(Ldar), R(arg0), B(JumpIfToBooleanFalse), U8(12), /* 33 S> */ B(LdaImmutableCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(0), /* 36 S> */ B(LdaImmutableCurrentContextSlot), U8(3), B(ThrowReferenceErrorIfHole), U8(1), B(Jump), U8(10), /* 48 S> */ B(LdaImmutableCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(0), /* 51 S> */ B(LdaImmutableCurrentContextSlot), U8(4), B(ThrowReferenceErrorIfHole), U8(2), /* 56 S> */ B(LdaImmutableCurrentContextSlot), U8(2), /* 59 S> */ B(LdaImmutableCurrentContextSlot), U8(3), B(ThrowReferenceErrorIfHole), U8(1), /* 62 S> */ B(LdaImmutableCurrentContextSlot), U8(4), B(ThrowReferenceErrorIfHole), U8(2), B(LdaUndefined), /* 67 S> */ B(Return), ] constant pool: [ ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["z"], ] handlers: [ ] --- snippet: " { f = function f(a) { while (x) { y; } x; y; } let w, x, y, z; f(); } " frame size: 0 parameter count: 2 bytecode array length: 22 bytecodes: [ /* 31 S> */ B(LdaImmutableCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(0), B(JumpIfToBooleanFalse), U8(10), /* 36 S> */ B(LdaImmutableCurrentContextSlot), U8(3), B(ThrowReferenceErrorIfHole), U8(1), /* 24 E> */ B(JumpLoop), U8(10), I8(0), U8(0), /* 41 S> */ B(LdaImmutableCurrentContextSlot), U8(2), /* 44 S> */ B(LdaImmutableCurrentContextSlot), U8(3), B(ThrowReferenceErrorIfHole), U8(1), B(LdaUndefined), /* 49 S> */ B(Return), ] constant pool: [ ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"], ] handlers: [ ] --- snippet: " { f = function f(a) { do { x; } while (y); x; y; } let w, x, y, z; f(); } " frame size: 0 parameter count: 2 bytecode array length: 20 bytecodes: [ /* 29 S> */ B(LdaImmutableCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(0), /* 41 S> */ B(LdaImmutableCurrentContextSlot), U8(3), B(ThrowReferenceErrorIfHole), U8(1), B(JumpIfToBooleanFalse), U8(6), /* 24 E> */ B(JumpLoop), U8(10), I8(0), U8(0), /* 45 S> */ B(LdaImmutableCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(0), /* 48 S> */ B(LdaUndefined), /* 53 S> */ B(Return), ] constant pool: [ ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"], ] handlers: [ ] --- snippet: " { f = function f(a) { for (x; y; z) { w; } x; y; z; w; } let w, x, y, z; f(); } " frame size: 0 parameter count: 2 bytecode array length: 36 bytecodes: [ /* 29 S> */ B(LdaImmutableCurrentContextSlot), U8(3), B(ThrowReferenceErrorIfHole), U8(0), /* 32 S> */ B(LdaImmutableCurrentContextSlot), U8(4), B(ThrowReferenceErrorIfHole), U8(1), B(JumpIfToBooleanFalse), U8(14), /* 40 S> */ B(LdaImmutableCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(2), /* 35 S> */ B(LdaImmutableCurrentContextSlot), U8(5), B(ThrowReferenceErrorIfHole), U8(3), /* 24 E> */ B(JumpLoop), U8(14), I8(0), U8(0), /* 45 S> */ B(LdaImmutableCurrentContextSlot), U8(3), /* 48 S> */ B(LdaImmutableCurrentContextSlot), U8(4), /* 51 S> */ B(LdaImmutableCurrentContextSlot), U8(5), B(ThrowReferenceErrorIfHole), U8(3), /* 54 S> */ B(LdaImmutableCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(2), B(LdaUndefined), /* 59 S> */ B(Return), ] constant pool: [ ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["w"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["z"], ] handlers: [ ] --- snippet: " { f = function f(a) { for (x in [y]) { z; } x; y; z; } let w, x, y, z; f(); } " frame size: 6 parameter count: 2 bytecode array length: 72 bytecodes: [ /* 34 S> */ B(CreateArrayLiteral), U8(0), U8(1), U8(37), B(Star0), B(LdaZero), B(Star1), B(LdaImmutableCurrentContextSlot), U8(3), /* 35 E> */ B(ThrowReferenceErrorIfHole), U8(1), B(StaInArrayLiteral), R(0), R(1), U8(2), B(Ldar), R(0), B(JumpIfUndefinedOrNull), U8(43), B(ToObject), R(0), B(ForInEnumerate), R(0), B(ForInPrepare), R(1), U8(0), B(LdaZero), B(Star4), /* 29 S> */ B(ForInContinue), R(4), R(3), B(JumpIfFalse), U8(29), B(ForInNext), R(0), R(4), R(1), U8(0), B(JumpIfUndefined), U8(15), B(Star5), B(LdaCurrentContextSlot), U8(2), /* 29 E> */ B(ThrowReferenceErrorIfHole), U8(2), B(Ldar), R(5), B(StaCurrentContextSlot), U8(2), /* 41 S> */ B(LdaImmutableCurrentContextSlot), U8(4), B(ThrowReferenceErrorIfHole), U8(3), B(ForInStep), R(4), B(Star4), /* 24 E> */ B(JumpLoop), U8(28), I8(0), U8(4), /* 46 S> */ B(LdaCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(2), /* 49 S> */ B(LdaImmutableCurrentContextSlot), U8(3), /* 52 S> */ B(LdaImmutableCurrentContextSlot), U8(4), B(ThrowReferenceErrorIfHole), U8(3), B(LdaUndefined), /* 57 S> */ B(Return), ] constant pool: [ ARRAY_BOILERPLATE_DESCRIPTION_TYPE, ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["z"], ] handlers: [ ] --- snippet: " { f = function f(a) { for (x of [y]) { z; } x; y; z; } let w, x, y, z; f(); } " frame size: 9 parameter count: 2 bytecode array length: 145 bytecodes: [ /* 34 S> */ B(CreateArrayLiteral), U8(0), U8(0), U8(37), B(Star0), B(LdaZero), B(Star1), B(LdaImmutableCurrentContextSlot), U8(3), /* 35 E> */ B(ThrowReferenceErrorIfHole), U8(1), B(StaInArrayLiteral), R(0), R(1), U8(1), B(GetIterator), R(0), U8(3), U8(5), B(Star1), B(GetNamedProperty), R(1), U8(2), U8(7), B(Star0), B(LdaFalse), B(Star2), B(Mov), R(context), R(5), B(LdaTrue), B(Star2), /* 29 S> */ B(CallProperty0), R(0), R(1), U8(9), B(Star6), B(JumpIfJSReceiver), U8(7), B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R(6), U8(1), B(GetNamedProperty), R(6), U8(3), U8(11), B(JumpIfToBooleanTrue), U8(25), B(GetNamedProperty), R(6), U8(4), U8(13), B(Star6), B(LdaFalse), B(Star2), B(LdaCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(5), B(Ldar), R(6), B(StaCurrentContextSlot), U8(2), /* 41 S> */ B(LdaImmutableCurrentContextSlot), U8(4), B(ThrowReferenceErrorIfHole), U8(6), /* 24 E> */ B(JumpLoop), U8(39), I8(0), U8(15), B(LdaSmi), I8(-1), B(Star4), B(Star3), B(Jump), U8(5), B(Star4), B(LdaZero), B(Star3), B(LdaTheHole), B(SetPendingMessage), B(Star5), B(Ldar), R(2), B(JumpIfToBooleanTrue), U8(35), B(Mov), R(context), R(6), B(GetNamedProperty), R(1), U8(7), U8(16), B(JumpIfUndefinedOrNull), U8(26), B(Star7), B(CallProperty0), R(7), R(1), U8(18), B(JumpIfJSReceiver), U8(19), B(Star8), B(CallRuntime), U16(Runtime::kThrowIteratorResultNotAnObject), R(8), U8(1), B(Jump), U8(11), B(Star6), B(LdaZero), B(TestReferenceEqual), R(3), B(JumpIfTrue), U8(5), B(Ldar), R(6), B(ReThrow), B(Ldar), R(5), B(SetPendingMessage), B(LdaZero), B(TestReferenceEqual), R(3), B(JumpIfFalse), U8(5), B(Ldar), R(4), B(ReThrow), /* 46 S> */ B(LdaCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(5), /* 49 S> */ B(LdaImmutableCurrentContextSlot), U8(3), /* 52 S> */ B(LdaImmutableCurrentContextSlot), U8(4), B(ThrowReferenceErrorIfHole), U8(6), B(LdaUndefined), /* 57 S> */ B(Return), ] constant pool: [ ARRAY_BOILERPLATE_DESCRIPTION_TYPE, ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["next"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["done"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["value"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["z"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["return"], ] handlers: [ [30, 73, 79], [92, 111, 113], ] --- snippet: " { f = function f(a) { try { x; } catch (y) { y; z; } finally { w; } x; y; z; w; } let w, x, y, z; f(); } " frame size: 5 parameter count: 2 bytecode array length: 74 bytecodes: [ B(Mov), R(context), R(2), B(Mov), R(context), R(3), /* 30 S> */ B(LdaImmutableCurrentContextSlot), U8(3), B(ThrowReferenceErrorIfHole), U8(0), B(Jump), U8(23), B(Star4), B(CreateCatchContext), R(4), U8(1), B(Star3), B(LdaTheHole), B(SetPendingMessage), B(Ldar), R(3), B(PushContext), R(4), /* 47 S> */ B(LdaImmutableCurrentContextSlot), U8(2), /* 50 S> */ B(LdaImmutableContextSlot), R(4), U8(5), U8(0), B(ThrowReferenceErrorIfHole), U8(2), B(PopContext), R(4), B(LdaSmi), I8(-1), B(Star1), B(Star0), B(Jump), U8(5), B(Star1), B(LdaZero), B(Star0), B(LdaTheHole), B(SetPendingMessage), B(Star2), /* 65 S> */ B(LdaImmutableCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(3), B(Ldar), R(2), B(SetPendingMessage), B(LdaZero), B(TestReferenceEqual), R(0), B(JumpIfFalse), U8(5), B(Ldar), R(1), B(ReThrow), /* 70 S> */ B(LdaImmutableCurrentContextSlot), U8(3), B(ThrowReferenceErrorIfHole), U8(0), /* 73 S> */ B(LdaImmutableCurrentContextSlot), U8(4), B(ThrowReferenceErrorIfHole), U8(4), /* 76 S> */ B(LdaImmutableCurrentContextSlot), U8(5), B(ThrowReferenceErrorIfHole), U8(2), /* 79 S> */ B(LdaUndefined), /* 84 S> */ B(Return), ] constant pool: [ ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], SCOPE_INFO_TYPE, ONE_BYTE_INTERNALIZED_STRING_TYPE ["z"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["w"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"], ] handlers: [ [3, 33, 39], [6, 10, 12], ] --- snippet: " { f = function f(a) { let { p = x } = { p: 42 } x; } let w, x, y, z; f(); } " frame size: 2 parameter count: 2 bytecode array length: 22 bytecodes: [ /* 40 S> */ B(CreateObjectLiteral), U8(0), U8(0), U8(41), B(Star1), /* 30 E> */ B(GetNamedProperty), R(1), U8(1), U8(1), B(JumpIfNotUndefined), U8(6), B(LdaImmutableCurrentContextSlot), U8(2), /* 34 E> */ B(ThrowReferenceErrorIfHole), U8(2), B(Star0), /* 50 S> */ B(LdaImmutableCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(2), B(LdaUndefined), /* 55 S> */ B(Return), ] constant pool: [ OBJECT_BOILERPLATE_DESCRIPTION_TYPE, ONE_BYTE_INTERNALIZED_STRING_TYPE ["p"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], ] handlers: [ ] --- snippet: " { f = function f(a) { let res = x && y && z x; y; z; } let w, x, y, z; f(); } " frame size: 1 parameter count: 2 bytecode array length: 29 bytecodes: [ /* 34 S> */ B(LdaImmutableCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(0), B(JumpIfToBooleanFalse), U8(12), B(LdaImmutableCurrentContextSlot), U8(3), /* 39 E> */ B(ThrowReferenceErrorIfHole), U8(1), B(JumpIfToBooleanFalse), U8(6), B(LdaImmutableCurrentContextSlot), U8(4), /* 44 E> */ B(ThrowReferenceErrorIfHole), U8(2), B(Star0), /* 46 S> */ B(LdaImmutableCurrentContextSlot), U8(2), /* 49 S> */ B(LdaImmutableCurrentContextSlot), U8(3), B(ThrowReferenceErrorIfHole), U8(1), /* 52 S> */ B(LdaImmutableCurrentContextSlot), U8(4), B(ThrowReferenceErrorIfHole), U8(2), B(LdaUndefined), /* 57 S> */ B(Return), ] constant pool: [ ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["z"], ] handlers: [ ] --- snippet: " { f = function f(a) { let res = x || y || z x; y; z; } let w, x, y, z; f(); } " frame size: 1 parameter count: 2 bytecode array length: 29 bytecodes: [ /* 34 S> */ B(LdaImmutableCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(0), B(JumpIfToBooleanTrue), U8(12), B(LdaImmutableCurrentContextSlot), U8(3), /* 39 E> */ B(ThrowReferenceErrorIfHole), U8(1), B(JumpIfToBooleanTrue), U8(6), B(LdaImmutableCurrentContextSlot), U8(4), /* 44 E> */ B(ThrowReferenceErrorIfHole), U8(2), B(Star0), /* 46 S> */ B(LdaImmutableCurrentContextSlot), U8(2), /* 49 S> */ B(LdaImmutableCurrentContextSlot), U8(3), B(ThrowReferenceErrorIfHole), U8(1), /* 52 S> */ B(LdaImmutableCurrentContextSlot), U8(4), B(ThrowReferenceErrorIfHole), U8(2), B(LdaUndefined), /* 57 S> */ B(Return), ] constant pool: [ ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["z"], ] handlers: [ ] --- snippet: " { f = function f(a) { let res = x ?? y ?? z x; y; z; } let w, x, y, z; f(); } " frame size: 1 parameter count: 2 bytecode array length: 33 bytecodes: [ /* 34 S> */ B(LdaImmutableCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(0), B(JumpIfUndefinedOrNull), U8(4), B(Jump), U8(14), B(LdaImmutableCurrentContextSlot), U8(3), /* 39 E> */ B(ThrowReferenceErrorIfHole), U8(1), B(JumpIfUndefinedOrNull), U8(4), B(Jump), U8(6), B(LdaImmutableCurrentContextSlot), U8(4), /* 44 E> */ B(ThrowReferenceErrorIfHole), U8(2), B(Star0), /* 46 S> */ B(LdaImmutableCurrentContextSlot), U8(2), /* 49 S> */ B(LdaImmutableCurrentContextSlot), U8(3), B(ThrowReferenceErrorIfHole), U8(1), /* 52 S> */ B(LdaImmutableCurrentContextSlot), U8(4), B(ThrowReferenceErrorIfHole), U8(2), B(LdaUndefined), /* 57 S> */ B(Return), ] constant pool: [ ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["z"], ] handlers: [ ] --- snippet: " { f = function f(a) { ({p:42})?.[x]?.[x]?.[y]; x; y; } let w, x, y, z; f(); } " frame size: 1 parameter count: 2 bytecode array length: 45 bytecodes: [ /* 24 S> */ B(CreateObjectLiteral), U8(0), U8(0), U8(41), B(Star0), B(JumpIfUndefinedOrNull), U8(29), B(LdaImmutableCurrentContextSlot), U8(2), /* 35 E> */ B(ThrowReferenceErrorIfHole), U8(1), /* 34 E> */ B(GetKeyedProperty), R(0), U8(1), B(Star0), B(JumpIfUndefinedOrNull), U8(19), B(LdaImmutableCurrentContextSlot), U8(2), /* 39 E> */ B(GetKeyedProperty), R(0), U8(3), B(Star0), B(JumpIfUndefinedOrNull), U8(11), B(LdaImmutableCurrentContextSlot), U8(3), /* 45 E> */ B(ThrowReferenceErrorIfHole), U8(2), /* 44 E> */ B(GetKeyedProperty), R(0), U8(5), B(Jump), U8(3), B(LdaUndefined), /* 49 S> */ B(LdaImmutableCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(1), /* 52 S> */ B(LdaImmutableCurrentContextSlot), U8(3), B(ThrowReferenceErrorIfHole), U8(2), B(LdaUndefined), /* 57 S> */ B(Return), ] constant pool: [ OBJECT_BOILERPLATE_DESCRIPTION_TYPE, ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"], ] handlers: [ ] --- snippet: " { f = function f(a) { x &&= y; x; y; } let w, x, y, z; f(); } " frame size: 0 parameter count: 2 bytecode array length: 20 bytecodes: [ /* 24 S> */ B(LdaCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(0), B(JumpIfToBooleanFalse), U8(8), B(LdaImmutableCurrentContextSlot), U8(3), /* 30 E> */ B(ThrowReferenceErrorIfHole), U8(1), /* 26 E> */ B(StaCurrentContextSlot), U8(2), /* 33 S> */ B(LdaCurrentContextSlot), U8(2), /* 36 S> */ B(LdaImmutableCurrentContextSlot), U8(3), B(ThrowReferenceErrorIfHole), U8(1), B(LdaUndefined), /* 41 S> */ B(Return), ] constant pool: [ ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"], ] handlers: [ ] --- snippet: " { f = function f(a) { x ||= y; x; y; } let w, x, y, z; f(); } " frame size: 0 parameter count: 2 bytecode array length: 20 bytecodes: [ /* 24 S> */ B(LdaCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(0), B(JumpIfToBooleanTrue), U8(8), B(LdaImmutableCurrentContextSlot), U8(3), /* 30 E> */ B(ThrowReferenceErrorIfHole), U8(1), /* 26 E> */ B(StaCurrentContextSlot), U8(2), /* 33 S> */ B(LdaCurrentContextSlot), U8(2), /* 36 S> */ B(LdaImmutableCurrentContextSlot), U8(3), B(ThrowReferenceErrorIfHole), U8(1), B(LdaUndefined), /* 41 S> */ B(Return), ] constant pool: [ ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"], ] handlers: [ ] --- snippet: " { f = function f(a) { x ??= y; x; y; } let w, x, y, z; f(); } " frame size: 0 parameter count: 2 bytecode array length: 22 bytecodes: [ /* 24 S> */ B(LdaCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(0), B(JumpIfUndefinedOrNull), U8(4), B(Jump), U8(8), B(LdaImmutableCurrentContextSlot), U8(3), /* 30 E> */ B(ThrowReferenceErrorIfHole), U8(1), /* 26 E> */ B(StaCurrentContextSlot), U8(2), /* 33 S> */ B(LdaCurrentContextSlot), U8(2), /* 36 S> */ B(LdaImmutableCurrentContextSlot), U8(3), B(ThrowReferenceErrorIfHole), U8(1), B(LdaUndefined), /* 41 S> */ B(Return), ] constant pool: [ ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"], ] handlers: [ ] --- snippet: " { f = function f(a) { switch (a) { case x: y; break; case 42: y; z; default: y; w; } x; y; z; w; } let w, x, y, z; f(); } " frame size: 1 parameter count: 2 bytecode array length: 57 bytecodes: [ /* 24 S> */ B(LdaImmutableCurrentContextSlot), U8(3), /* 44 E> */ B(ThrowReferenceErrorIfHole), U8(0), B(TestEqualStrict), R(arg0), U8(0), B(Mov), R(arg0), R(0), B(JumpIfTrue), U8(11), B(LdaSmi), I8(42), B(TestEqualStrict), R(0), U8(0), B(JumpIfTrue), U8(10), B(Jump), U8(16), /* 47 S> */ B(LdaImmutableCurrentContextSlot), U8(4), B(ThrowReferenceErrorIfHole), U8(1), /* 50 S> */ B(Jump), U8(18), /* 68 S> */ B(LdaImmutableCurrentContextSlot), U8(4), B(ThrowReferenceErrorIfHole), U8(1), /* 71 S> */ B(LdaImmutableCurrentContextSlot), U8(5), B(ThrowReferenceErrorIfHole), U8(2), /* 85 S> */ B(LdaImmutableCurrentContextSlot), U8(4), B(ThrowReferenceErrorIfHole), U8(1), /* 88 S> */ B(LdaImmutableCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(3), /* 93 S> */ B(LdaImmutableCurrentContextSlot), U8(3), /* 96 S> */ B(LdaImmutableCurrentContextSlot), U8(4), /* 99 S> */ B(LdaImmutableCurrentContextSlot), U8(5), B(ThrowReferenceErrorIfHole), U8(2), /* 102 S> */ B(LdaImmutableCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(3), B(LdaUndefined), /* 107 S> */ B(Return), ] constant pool: [ ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["z"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["w"], ] handlers: [ ] --- snippet: " { f = function f(a) { lbl: { x; if (a) break lbl; y; } x; y; } let w, x, y, z; f(); } " frame size: 0 parameter count: 2 bytecode array length: 24 bytecodes: [ /* 33 S> */ B(LdaImmutableCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(0), /* 38 S> */ B(Ldar), R(arg0), B(JumpIfToBooleanFalse), U8(4), /* 45 S> */ B(Jump), U8(6), /* 58 S> */ B(LdaImmutableCurrentContextSlot), U8(3), B(ThrowReferenceErrorIfHole), U8(1), /* 63 S> */ B(LdaImmutableCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(0), /* 66 S> */ B(LdaImmutableCurrentContextSlot), U8(3), B(ThrowReferenceErrorIfHole), U8(1), B(LdaUndefined), /* 71 S> */ B(Return), ] constant pool: [ ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"], ] handlers: [ ] --- snippet: " { f = function f(a) { { x; y; } x; y; } let w, x, y, z; f(); } " frame size: 0 parameter count: 2 bytecode array length: 12 bytecodes: [ /* 28 S> */ B(LdaImmutableCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(0), /* 33 S> */ B(LdaImmutableCurrentContextSlot), U8(3), B(ThrowReferenceErrorIfHole), U8(1), /* 38 S> */ B(LdaImmutableCurrentContextSlot), U8(2), /* 41 S> */ B(LdaUndefined), /* 46 S> */ B(Return), ] constant pool: [ ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"], ] handlers: [ ] --- snippet: " { f = function f(a) { try { x; } catch (e) {} x; } let w, x, y, z; f(); } " frame size: 2 parameter count: 2 bytecode array length: 28 bytecodes: [ B(Mov), R(context), R(0), /* 32 S> */ B(LdaImmutableCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(0), B(Jump), U8(15), B(Star1), B(CreateCatchContext), R(1), U8(1), B(Star0), B(LdaTheHole), B(SetPendingMessage), B(Ldar), R(0), B(PushContext), R(1), B(PopContext), R(1), /* 50 S> */ B(LdaImmutableCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(0), B(LdaUndefined), /* 55 S> */ B(Return), ] constant pool: [ ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], SCOPE_INFO_TYPE, ] handlers: [ [3, 7, 9], ] --- snippet: " { f = function f(a) { try { x; } catch (e) { x; } x; } let w, x, y, z; f(); } " frame size: 2 parameter count: 2 bytecode array length: 30 bytecodes: [ B(Mov), R(context), R(0), /* 32 S> */ B(LdaImmutableCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(0), B(Jump), U8(21), B(Star1), B(CreateCatchContext), R(1), U8(1), B(Star0), B(LdaTheHole), B(SetPendingMessage), B(Ldar), R(0), B(PushContext), R(1), /* 49 S> */ B(LdaImmutableContextSlot), R(1), U8(2), U8(0), B(ThrowReferenceErrorIfHole), U8(0), B(PopContext), R(1), /* 54 S> */ B(LdaUndefined), /* 59 S> */ B(Return), ] constant pool: [ ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], SCOPE_INFO_TYPE, ] handlers: [ [3, 7, 9], ] --- snippet: " { f = function f(a) { try { x; } finally { y; } x; y; } let w, x, y, z; f(); } " frame size: 3 parameter count: 2 bytecode array length: 40 bytecodes: [ B(Mov), R(context), R(2), /* 32 S> */ B(LdaImmutableCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(0), B(LdaSmi), I8(-1), B(Star1), B(Star0), B(Jump), U8(5), B(Star1), B(LdaZero), B(Star0), B(LdaTheHole), B(SetPendingMessage), B(Star2), /* 47 S> */ B(LdaImmutableCurrentContextSlot), U8(3), B(ThrowReferenceErrorIfHole), U8(1), B(Ldar), R(2), B(SetPendingMessage), B(LdaZero), B(TestReferenceEqual), R(0), B(JumpIfFalse), U8(5), B(Ldar), R(1), B(ReThrow), /* 52 S> */ B(LdaImmutableCurrentContextSlot), U8(2), B(ThrowReferenceErrorIfHole), U8(0), /* 55 S> */ B(LdaUndefined), /* 60 S> */ B(Return), ] constant pool: [ ONE_BYTE_INTERNALIZED_STRING_TYPE ["x"], ONE_BYTE_INTERNALIZED_STRING_TYPE ["y"], ] handlers: [ [3, 7, 13], ]