b28b7e1328
For historical reasons, the interpreter's bytecode expectations tests required a type for the constant pool. This had two disadvantages: 1. Strings and numbers were not visible in mixed pools, and 2. Mismatches of pool types (e.g. when rebaselining) would cause parser errors This removes the pool types, making everything 'mixed', but appending the values to string and number valued constants. Specifying a pool type in the *.golden header now prints a warning (for backwards compatibility). BUG=v8:5350 Review-Url: https://codereview.chromium.org/2310103002 Cr-Commit-Position: refs/heads/master@{#39216}
106 lines
2.3 KiB
Plaintext
106 lines
2.3 KiB
Plaintext
#
|
|
# Autogenerated by generate-bytecode-expectations.
|
|
#
|
|
|
|
---
|
|
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: 14
|
|
bytecodes: [
|
|
B(CreateFunctionContext), U8(1),
|
|
B(PushContext), R(0),
|
|
B(Ldar), R(arg0),
|
|
B(StaContextSlot), R(context), U8(4),
|
|
/* 10 E> */ B(StackCheck),
|
|
/* 19 S> */ B(CreateClosure), U8(0), U8(2),
|
|
/* 52 S> */ B(Return),
|
|
]
|
|
constant pool: [
|
|
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: 19
|
|
bytecodes: [
|
|
B(CreateFunctionContext), U8(1),
|
|
B(PushContext), R(1),
|
|
B(Ldar), R(arg0),
|
|
B(StaContextSlot), R(context), U8(4),
|
|
/* 10 E> */ B(StackCheck),
|
|
/* 27 S> */ B(CreateClosure), U8(0), U8(2),
|
|
B(Star), R(0),
|
|
/* 53 S> */ B(LdaContextSlot), R(context), U8(4),
|
|
/* 66 S> */ B(Return),
|
|
]
|
|
constant pool: [
|
|
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: 19
|
|
bytecodes: [
|
|
B(CreateFunctionContext), U8(2),
|
|
B(PushContext), R(0),
|
|
B(Ldar), R(arg0),
|
|
B(StaContextSlot), R(context), U8(5),
|
|
B(Ldar), R(arg2),
|
|
B(StaContextSlot), R(context), U8(4),
|
|
/* 10 E> */ B(StackCheck),
|
|
/* 29 S> */ B(CreateClosure), U8(0), U8(2),
|
|
/* 61 S> */ B(Return),
|
|
]
|
|
constant pool: [
|
|
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: 14
|
|
bytecodes: [
|
|
B(CreateFunctionContext), U8(1),
|
|
B(PushContext), R(0),
|
|
/* 10 E> */ B(StackCheck),
|
|
/* 26 S> */ B(Ldar), R(this),
|
|
/* 26 E> */ B(StaContextSlot), R(context), U8(4),
|
|
/* 32 S> */ B(CreateClosure), U8(0), U8(2),
|
|
/* 65 S> */ B(Return),
|
|
]
|
|
constant pool: [
|
|
SHARED_FUNCTION_INFO_TYPE,
|
|
]
|
|
handlers: [
|
|
]
|
|
|