v8/test/cctest/interpreter/bytecode_expectations/ConstVariable.golden
adamk 680ae2c001 [interpreter] Logically separate hole-checking and const assignment errors
In addition, make use of Variable::binding_needs_init() in addition to
VariableMode when deciding whether to do hole checking in variable assignment.

R=rmcilroy@chromium.org

Review-Url: https://codereview.chromium.org/2227203002
Cr-Commit-Position: refs/heads/master@{#38555}
2016-08-10 17:32:41 +00:00

115 lines
2.4 KiB
Plaintext

#
# Autogenerated by generate-bytecode-expectations.
#
---
pool type: string
execute: yes
wrap: yes
---
snippet: "
const x = 10;
"
frame size: 1
parameter count: 1
bytecode array length: 10
bytecodes: [
B(LdaTheHole),
B(Star), R(0),
/* 30 E> */ B(StackCheck),
/* 44 S> */ B(LdaSmi), U8(10),
B(Star), R(0),
B(LdaUndefined),
/* 48 S> */ B(Return),
]
constant pool: [
]
handlers: [
]
---
snippet: "
const x = 10; return x;
"
frame size: 2
parameter count: 1
bytecode array length: 20
bytecodes: [
B(LdaTheHole),
B(Star), R(0),
/* 30 E> */ B(StackCheck),
/* 44 S> */ B(LdaSmi), U8(10),
B(Star), R(0),
/* 48 S> */ B(JumpIfNotHole), U8(11),
B(LdaConstant), U8(0),
B(Star), R(1),
B(CallRuntime), U16(Runtime::kThrowReferenceError), R(1), U8(1),
/* 58 S> */ B(Return),
]
constant pool: [
"x",
]
handlers: [
]
---
snippet: "
const x = ( x = 20);
"
frame size: 3
parameter count: 1
bytecode array length: 30
bytecodes: [
B(LdaTheHole),
B(Star), R(0),
/* 30 E> */ B(StackCheck),
/* 48 S> */ B(LdaSmi), U8(20),
B(Star), R(1),
B(Ldar), R(0),
B(JumpIfNotHole), U8(11),
B(LdaConstant), U8(0),
B(Star), R(2),
/* 48 E> */ B(CallRuntime), U16(Runtime::kThrowReferenceError), R(2), U8(1),
B(CallRuntime), U16(Runtime::kThrowConstAssignError), R(0), U8(0),
B(Star), R(0),
B(LdaUndefined),
/* 55 S> */ B(Return),
]
constant pool: [
"x",
]
handlers: [
]
---
snippet: "
const x = 10; x = 20;
"
frame size: 3
parameter count: 1
bytecode array length: 32
bytecodes: [
B(LdaTheHole),
B(Star), R(0),
/* 30 E> */ B(StackCheck),
/* 44 S> */ B(LdaSmi), U8(10),
B(Star), R(0),
/* 48 S> */ B(LdaSmi), U8(20),
B(Star), R(1),
B(Ldar), R(0),
B(JumpIfNotHole), U8(11),
B(LdaConstant), U8(0),
B(Star), R(2),
/* 50 E> */ B(CallRuntime), U16(Runtime::kThrowReferenceError), R(2), U8(1),
B(CallRuntime), U16(Runtime::kThrowConstAssignError), R(0), U8(0),
B(LdaUndefined),
/* 56 S> */ B(Return),
]
constant pool: [
"x",
]
handlers: [
]