v8/test/cctest/interpreter/bytecode_expectations/Switch.golden
Leszek Swirski a2fcdc7cc8 [runtime] Move profiler ticks from SFI to feedback vector
Instead of counting profiler ticks on the shared function info (which is
shared between native contexts), count them on the feedback vector
(which is not). This allows us to continue pushing optimization
decisions off the SFI, onto the feedback vector.

Note that a side-effect of this is that ICs don't have to walk the stack
to reset profiler ticks, as they can access the feedback vector directly
from their feedback nexus.

Change-Id: I232ae9e759fca75cd89d393148a4ff42caa2646f
Reviewed-on: https://chromium-review.googlesource.com/544888
Reviewed-by: Igor Sheludko <ishell@chromium.org>
Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/master@{#46411}
2017-07-05 12:04:50 +00:00

520 lines
12 KiB
Plaintext

#
# Autogenerated by generate-bytecode-expectations.
#
---
wrap: yes
---
snippet: "
var a = 1;
switch(a) {
case 1: return 2;
case 2: return 3;
}
"
frame size: 3
parameter count: 1
bytecode array length: 34
bytecodes: [
/* 30 E> */ B(StackCheck),
/* 42 S> */ B(LdaSmi), I8(1),
B(Star), R(0),
B(Star), R(1),
/* 45 S> */ B(LdaSmi), I8(1),
B(TestEqualStrict), R(1), U8(4),
B(Mov), R(0), R(2),
B(JumpIfTrue), U8(11),
B(LdaSmi), I8(2),
B(TestEqualStrict), R(2), U8(5),
B(JumpIfTrue), U8(7),
B(Jump), U8(8),
/* 66 S> */ B(LdaSmi), I8(2),
/* 97 S> */ B(Return),
/* 85 S> */ B(LdaSmi), I8(3),
/* 97 S> */ B(Return),
B(LdaUndefined),
/* 97 S> */ B(Return),
]
constant pool: [
]
handlers: [
]
---
snippet: "
var a = 1;
switch(a) {
case 1: a = 2; break;
case 2: a = 3; break;
}
"
frame size: 3
parameter count: 1
bytecode array length: 40
bytecodes: [
/* 30 E> */ B(StackCheck),
/* 42 S> */ B(LdaSmi), I8(1),
B(Star), R(0),
B(Star), R(1),
/* 45 S> */ B(LdaSmi), I8(1),
B(TestEqualStrict), R(1), U8(4),
B(Mov), R(0), R(2),
B(JumpIfTrue), U8(11),
B(LdaSmi), I8(2),
B(TestEqualStrict), R(2), U8(5),
B(JumpIfTrue), U8(10),
B(Jump), U8(14),
/* 66 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 73 S> */ B(Jump), U8(8),
/* 89 S> */ B(LdaSmi), I8(3),
B(Star), R(0),
/* 96 S> */ B(Jump), U8(2),
B(LdaUndefined),
/* 105 S> */ B(Return),
]
constant pool: [
]
handlers: [
]
---
snippet: "
var a = 1;
switch(a) {
case 1: a = 2; // fall-through
case 2: a = 3; break;
}
"
frame size: 3
parameter count: 1
bytecode array length: 38
bytecodes: [
/* 30 E> */ B(StackCheck),
/* 42 S> */ B(LdaSmi), I8(1),
B(Star), R(0),
B(Star), R(1),
/* 45 S> */ B(LdaSmi), I8(1),
B(TestEqualStrict), R(1), U8(4),
B(Mov), R(0), R(2),
B(JumpIfTrue), U8(11),
B(LdaSmi), I8(2),
B(TestEqualStrict), R(2), U8(5),
B(JumpIfTrue), U8(8),
B(Jump), U8(12),
/* 66 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 98 S> */ B(LdaSmi), I8(3),
B(Star), R(0),
/* 105 S> */ B(Jump), U8(2),
B(LdaUndefined),
/* 114 S> */ B(Return),
]
constant pool: [
]
handlers: [
]
---
snippet: "
var a = 1;
switch(a) {
case 2: break;
case 3: break;
default: a = 1; break;
}
"
frame size: 3
parameter count: 1
bytecode array length: 38
bytecodes: [
/* 30 E> */ B(StackCheck),
/* 42 S> */ B(LdaSmi), I8(1),
B(Star), R(0),
B(Star), R(1),
/* 45 S> */ B(LdaSmi), I8(2),
B(TestEqualStrict), R(1), U8(4),
B(Mov), R(0), R(2),
B(JumpIfTrue), U8(11),
B(LdaSmi), I8(3),
B(TestEqualStrict), R(2), U8(5),
B(JumpIfTrue), U8(6),
B(Jump), U8(6),
/* 66 S> */ B(Jump), U8(10),
/* 82 S> */ B(Jump), U8(8),
/* 99 S> */ B(LdaSmi), I8(1),
B(Star), R(0),
/* 106 S> */ B(Jump), U8(2),
B(LdaUndefined),
/* 115 S> */ B(Return),
]
constant pool: [
]
handlers: [
]
---
snippet: "
var a = 1;
switch(typeof(a)) {
case 2: a = 1; break;
case 3: a = 2; break;
default: a = 3; break;
}
"
frame size: 3
parameter count: 1
bytecode array length: 47
bytecodes: [
/* 30 E> */ B(StackCheck),
/* 42 S> */ B(LdaSmi), I8(1),
B(Star), R(0),
/* 42 E> */ B(TypeOf),
B(Star), R(1),
/* 45 S> */ B(LdaSmi), I8(2),
B(TestEqualStrict), R(1), U8(4),
B(Mov), R(1), R(2),
B(JumpIfTrue), U8(11),
B(LdaSmi), I8(3),
B(TestEqualStrict), R(2), U8(5),
B(JumpIfTrue), U8(10),
B(Jump), U8(14),
/* 74 S> */ B(LdaSmi), I8(1),
B(Star), R(0),
/* 81 S> */ B(Jump), U8(14),
/* 97 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 104 S> */ B(Jump), U8(8),
/* 121 S> */ B(LdaSmi), I8(3),
B(Star), R(0),
/* 128 S> */ B(Jump), U8(2),
B(LdaUndefined),
/* 137 S> */ B(Return),
]
constant pool: [
]
handlers: [
]
---
snippet: "
var a = 1;
switch(a) {
case typeof(a): a = 1; break;
default: a = 2; break;
}
"
frame size: 3
parameter count: 1
bytecode array length: 32
bytecodes: [
/* 30 E> */ B(StackCheck),
/* 42 S> */ B(LdaSmi), I8(1),
B(Star), R(0),
B(Star), R(1),
/* 45 S> */ B(TypeOf),
B(TestEqualStrict), R(1), U8(4),
B(Mov), R(0), R(2),
B(JumpIfTrue), U8(4),
B(Jump), U8(8),
/* 74 S> */ B(LdaSmi), I8(1),
B(Star), R(0),
/* 81 S> */ B(Jump), U8(8),
/* 98 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 105 S> */ B(Jump), U8(2),
B(LdaUndefined),
/* 114 S> */ B(Return),
]
constant pool: [
]
handlers: [
]
---
snippet: "
var a = 1;
switch(a) {
case 1:
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
a = 2;
break;
case 2:
a = 3;
break;
}
"
frame size: 3
parameter count: 1
bytecode array length: 292
bytecodes: [
/* 30 E> */ B(StackCheck),
/* 42 S> */ B(LdaSmi), I8(1),
B(Star), R(0),
B(Star), R(1),
/* 45 S> */ B(LdaSmi), I8(1),
B(TestEqualStrict), R(1), U8(4),
B(Mov), R(0), R(2),
B(JumpIfTrue), U8(11),
B(LdaSmi), I8(2),
B(TestEqualStrict), R(2), U8(5),
B(JumpIfTrueConstant), U8(0),
B(JumpConstant), U8(1),
/* 68 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 77 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 86 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 95 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 104 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 113 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 122 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 131 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 140 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 149 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 158 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 167 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 176 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 185 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 194 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 203 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 212 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 221 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 230 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 239 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 248 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 257 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 266 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 275 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 284 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 293 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 302 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 311 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 320 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 329 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 338 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 347 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 356 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 365 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 374 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 383 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 392 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 401 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 410 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 419 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 428 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 437 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 446 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 455 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 464 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 473 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 482 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 491 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 500 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 509 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 518 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 527 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 536 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 545 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 554 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 563 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 572 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 581 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 590 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 599 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 608 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 617 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 626 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 635 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 644 S> */ B(Jump), U8(8),
/* 662 S> */ B(LdaSmi), I8(3),
B(Star), R(0),
/* 671 S> */ B(Jump), U8(2),
B(LdaUndefined),
/* 680 S> */ B(Return),
]
constant pool: [
Smi [262],
Smi [266],
]
handlers: [
]
---
snippet: "
var a = 1;
switch(a) {
case 1:
switch(a + 1) {
case 2 : a = 1; break;
default : a = 2; break;
} // fall-through
case 2: a = 3;
}
"
frame size: 5
parameter count: 1
bytecode array length: 63
bytecodes: [
/* 30 E> */ B(StackCheck),
/* 42 S> */ B(LdaSmi), I8(1),
B(Star), R(0),
B(Star), R(2),
/* 45 S> */ B(LdaSmi), I8(1),
B(TestEqualStrict), R(2), U8(7),
B(Mov), R(0), R(3),
B(JumpIfTrue), U8(11),
B(LdaSmi), I8(2),
B(TestEqualStrict), R(3), U8(8),
B(JumpIfTrue), U8(35),
B(Jump), U8(37),
B(Ldar), R(0),
/* 79 E> */ B(AddSmi), I8(1), U8(4),
B(Star), R(1),
/* 70 S> */ B(LdaSmi), I8(2),
B(TestEqualStrict), R(1), U8(5),
B(Mov), R(1), R(4),
B(JumpIfTrue), U8(4),
B(Jump), U8(8),
/* 101 S> */ B(LdaSmi), I8(1),
B(Star), R(0),
/* 108 S> */ B(Jump), U8(8),
/* 131 S> */ B(LdaSmi), I8(2),
B(Star), R(0),
/* 138 S> */ B(Jump), U8(2),
/* 176 S> */ B(LdaSmi), I8(3),
B(Star), R(0),
B(LdaUndefined),
/* 185 S> */ B(Return),
]
constant pool: [
]
handlers: [
]