v8/test/cctest/interpreter/bytecode_expectations/SuperCallAndSpread.golden
mvstanton 044b2d1bd8 Reland Store OSR'd optimized code on the native context.
The patch was reverted due to a bug - we failed to evict OSR-optimized
code in the case where the SharedFunctionInfo OptimizedCodeMap was
empty/cleared.

Since we OSR code rarely, it makes sense to store it and look for it on the native context rather than the SharedFunctionInfo. This makes the OptimizedCodeMap data structure more space efficient, as it doesn't have to store an ast ID for the OSR entry point.

Review-Url: https://codereview.chromium.org/2561083002
Cr-Commit-Position: refs/heads/master@{#41584}
2016-12-08 11:13:59 +00:00

160 lines
4.4 KiB
Plaintext

#
# Autogenerated by generate-bytecode-expectations.
#
---
wrap: no
test function name: test
---
snippet: "
var test;
(function() {
class A {
constructor(...args) { this.baseArgs = args; }
}
class B extends A {}
test = new B(1, 2, 3).constructor;
})();
"
frame size: 7
parameter count: 1
bytecode array length: 32
bytecodes: [
B(CreateRestParameter),
B(Star), R(2),
B(Mov), R(closure), R(1),
B(Mov), R(new_target), R(0),
B(Ldar), R(new_target),
/* 93 E> */ B(StackCheck),
/* 93 S> */ B(CallRuntime), U16(Runtime::k_GetSuperConstructor), R(1), U8(1),
B(Star), R(3),
B(Mov), R(3), R(4),
B(Mov), R(0), R(5),
B(Mov), R(2), R(6),
/* 93 E> */ B(NewWithSpread), R(4), U8(3),
/* 93 S> */ B(Return),
]
constant pool: [
]
handlers: [
]
---
snippet: "
var test;
(function() {
class A {
constructor(...args) { this.baseArgs = args; }
}
class B extends A {
constructor(...args) { super(1, ...args); }
}
test = new B(1, 2, 3).constructor;
})();
"
frame size: 8
parameter count: 1
bytecode array length: 69
bytecodes: [
B(CreateRestParameter),
B(Star), R(2),
B(Mov), R(closure), R(1),
B(Mov), R(new_target), R(0),
B(Ldar), R(new_target),
/* 128 E> */ B(StackCheck),
/* 140 S> */ B(CallRuntime), U16(Runtime::k_GetSuperConstructor), R(1), U8(1),
B(Star), R(3),
B(LdaSmi), U8(1),
B(Star), R(6),
B(Mov), R(3), R(4),
B(Mov), R(0), R(5),
B(Mov), R(2), R(7),
/* 152 E> */ B(NewWithSpread), R(4), U8(4),
B(Star), R(3),
B(Ldar), R(this),
B(JumpIfNotHole), U8(4),
B(Jump), U8(11),
B(LdaConstant), U8(0),
B(Star), R(4),
/* 140 E> */ B(CallRuntime), U16(Runtime::kThrowReferenceError), R(4), U8(1),
B(Mov), R(3), R(this),
B(Ldar), R(this),
B(JumpIfNotHole), U8(11),
B(LdaConstant), U8(0),
B(Star), R(3),
B(CallRuntime), U16(Runtime::kThrowReferenceError), R(3), U8(1),
/* 159 S> */ B(Return),
]
constant pool: [
ONE_BYTE_INTERNALIZED_STRING_TYPE ["this"],
]
handlers: [
]
---
snippet: "
var test;
(function() {
class A {
constructor(...args) { this.baseArgs = args; }
}
class B extends A {
constructor(...args) { super(1, ...args, 1); }
}
test = new B(1, 2, 3).constructor;
})();
"
frame size: 13
parameter count: 1
bytecode array length: 96
bytecodes: [
B(CreateRestParameter),
B(Star), R(2),
B(Mov), R(closure), R(1),
B(Mov), R(new_target), R(0),
B(Ldar), R(new_target),
/* 128 E> */ B(StackCheck),
/* 140 S> */ B(LdaUndefined),
B(Star), R(3),
/* 140 E> */ B(CallRuntime), U16(Runtime::k_GetSuperConstructor), R(1), U8(1),
B(Star), R(4),
B(LdaUndefined),
B(Star), R(7),
B(CreateArrayLiteral), U8(0), U8(0), U8(9),
B(Star), R(8),
B(LdaUndefined),
B(Star), R(11),
B(Mov), R(2), R(12),
/* 152 E> */ B(CallJSRuntime), U8(157), R(11), U8(2),
B(Star), R(9),
B(CreateArrayLiteral), U8(1), U8(1), U8(9),
B(Star), R(10),
B(CallJSRuntime), U8(156), R(7), U8(4),
B(Star), R(5),
B(Mov), R(0), R(6),
/* 140 E> */ B(CallJSRuntime), U8(153), R(3), U8(4),
B(Star), R(3),
B(Ldar), R(this),
B(JumpIfNotHole), U8(4),
B(Jump), U8(11),
B(LdaConstant), U8(2),
B(Star), R(4),
/* 140 E> */ B(CallRuntime), U16(Runtime::kThrowReferenceError), R(4), U8(1),
B(Mov), R(3), R(this),
B(Ldar), R(this),
B(JumpIfNotHole), U8(11),
B(LdaConstant), U8(2),
B(Star), R(3),
B(CallRuntime), U16(Runtime::kThrowReferenceError), R(3), U8(1),
/* 162 S> */ B(Return),
]
constant pool: [
FIXED_ARRAY_TYPE,
FIXED_ARRAY_TYPE,
ONE_BYTE_INTERNALIZED_STRING_TYPE ["this"],
]
handlers: [
]