v8/test/cctest/interpreter/bytecode_expectations/PropertyCall.golden
Alexey Kozyatinskiy 5b44ba0e34 (Reland) [parser] moved load property position after dot
Currently LdaNamedProperty bytecode for expressions like a.b has position before dot. This CL moves this location after dot.
It's important for later removing of Nop bytecodes in expressions like a.b() where a is local variable, property call and property load should have the same position.

R=jgruber@chromium.org
TBR=marja@chromium.org

Bug: v8:6425
Change-Id: I05c21ca5e018da9c432c6bc963c7a96799336d1c
Reviewed-on: https://chromium-review.googlesource.com/562879
Commit-Queue: Aleksey Kozyatinskiy <kozyatinskiy@chromium.org>
Reviewed-by: Jakob Gruber <jgruber@chromium.org>
Cr-Commit-Position: refs/heads/master@{#46484}
2017-07-07 14:57:10 +00:00

521 lines
15 KiB
Plaintext

#
# Autogenerated by generate-bytecode-expectations.
#
---
wrap: no
test function name: f
---
snippet: "
function f(a) { return a.func(); }
f(new (function Obj() { this.func = function() { return; }})())
"
frame size: 1
parameter count: 2
bytecode array length: 13
bytecodes: [
/* 10 E> */ B(StackCheck),
/* 16 S> */ B(Nop),
/* 25 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(6),
B(Star), R(0),
/* 25 E> */ B(CallProperty0), R(0), R(arg0), U8(4),
/* 33 S> */ B(Return),
]
constant pool: [
ONE_BYTE_INTERNALIZED_STRING_TYPE ["func"],
]
handlers: [
]
---
snippet: "
function f(a, b, c) { return a.func(b, c); }
f(new (function Obj() { this.func = function() { return; }})(), 1, 2)
"
frame size: 1
parameter count: 4
bytecode array length: 15
bytecodes: [
/* 10 E> */ B(StackCheck),
/* 22 S> */ B(Nop),
/* 31 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(6),
B(Star), R(0),
/* 31 E> */ B(CallProperty2), R(0), R(arg0), R(arg1), R(arg2), U8(4),
/* 43 S> */ B(Return),
]
constant pool: [
ONE_BYTE_INTERNALIZED_STRING_TYPE ["func"],
]
handlers: [
]
---
snippet: "
function f(a, b) { return a.func(b + b, b); }
f(new (function Obj() { this.func = function() { return; }})(), 1)
"
frame size: 3
parameter count: 3
bytecode array length: 22
bytecodes: [
/* 10 E> */ B(StackCheck),
/* 19 S> */ B(Nop),
/* 28 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(6),
B(Star), R(0),
B(Ldar), R(arg1),
/* 35 E> */ B(Add), R(arg1), U8(8),
B(Star), R(2),
/* 28 E> */ B(CallProperty2), R(0), R(arg0), R(2), R(arg1), U8(4),
/* 44 S> */ B(Return),
]
constant pool: [
ONE_BYTE_INTERNALIZED_STRING_TYPE ["func"],
]
handlers: [
]
---
snippet: "
function f(a) {
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
a.func;
return a.func(); }
f(new (function Obj() { this.func = function() { return; }})())
"
frame size: 1
parameter count: 2
bytecode array length: 669
bytecodes: [
/* 10 E> */ B(StackCheck),
/* 17 S> */ B(Nop),
/* 19 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(4),
/* 26 S> */ B(Nop),
/* 28 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(6),
/* 35 S> */ B(Nop),
/* 37 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(8),
/* 44 S> */ B(Nop),
/* 46 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(10),
/* 53 S> */ B(Nop),
/* 55 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(12),
/* 62 S> */ B(Nop),
/* 64 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(14),
/* 71 S> */ B(Nop),
/* 73 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(16),
/* 80 S> */ B(Nop),
/* 82 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(18),
/* 89 S> */ B(Nop),
/* 91 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(20),
/* 98 S> */ B(Nop),
/* 100 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(22),
/* 107 S> */ B(Nop),
/* 109 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(24),
/* 116 S> */ B(Nop),
/* 118 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(26),
/* 125 S> */ B(Nop),
/* 127 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(28),
/* 134 S> */ B(Nop),
/* 136 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(30),
/* 143 S> */ B(Nop),
/* 145 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(32),
/* 152 S> */ B(Nop),
/* 154 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(34),
/* 161 S> */ B(Nop),
/* 163 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(36),
/* 170 S> */ B(Nop),
/* 172 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(38),
/* 179 S> */ B(Nop),
/* 181 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(40),
/* 188 S> */ B(Nop),
/* 190 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(42),
/* 197 S> */ B(Nop),
/* 199 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(44),
/* 206 S> */ B(Nop),
/* 208 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(46),
/* 215 S> */ B(Nop),
/* 217 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(48),
/* 224 S> */ B(Nop),
/* 226 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(50),
/* 233 S> */ B(Nop),
/* 235 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(52),
/* 242 S> */ B(Nop),
/* 244 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(54),
/* 251 S> */ B(Nop),
/* 253 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(56),
/* 260 S> */ B(Nop),
/* 262 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(58),
/* 269 S> */ B(Nop),
/* 271 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(60),
/* 278 S> */ B(Nop),
/* 280 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(62),
/* 287 S> */ B(Nop),
/* 289 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(64),
/* 296 S> */ B(Nop),
/* 298 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(66),
/* 305 S> */ B(Nop),
/* 307 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(68),
/* 314 S> */ B(Nop),
/* 316 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(70),
/* 323 S> */ B(Nop),
/* 325 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(72),
/* 332 S> */ B(Nop),
/* 334 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(74),
/* 341 S> */ B(Nop),
/* 343 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(76),
/* 350 S> */ B(Nop),
/* 352 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(78),
/* 359 S> */ B(Nop),
/* 361 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(80),
/* 368 S> */ B(Nop),
/* 370 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(82),
/* 377 S> */ B(Nop),
/* 379 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(84),
/* 386 S> */ B(Nop),
/* 388 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(86),
/* 395 S> */ B(Nop),
/* 397 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(88),
/* 404 S> */ B(Nop),
/* 406 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(90),
/* 413 S> */ B(Nop),
/* 415 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(92),
/* 422 S> */ B(Nop),
/* 424 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(94),
/* 431 S> */ B(Nop),
/* 433 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(96),
/* 440 S> */ B(Nop),
/* 442 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(98),
/* 449 S> */ B(Nop),
/* 451 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(100),
/* 458 S> */ B(Nop),
/* 460 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(102),
/* 467 S> */ B(Nop),
/* 469 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(104),
/* 476 S> */ B(Nop),
/* 478 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(106),
/* 485 S> */ B(Nop),
/* 487 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(108),
/* 494 S> */ B(Nop),
/* 496 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(110),
/* 503 S> */ B(Nop),
/* 505 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(112),
/* 512 S> */ B(Nop),
/* 514 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(114),
/* 521 S> */ B(Nop),
/* 523 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(116),
/* 530 S> */ B(Nop),
/* 532 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(118),
/* 539 S> */ B(Nop),
/* 541 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(120),
/* 548 S> */ B(Nop),
/* 550 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(122),
/* 557 S> */ B(Nop),
/* 559 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(124),
/* 566 S> */ B(Nop),
/* 568 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(126),
/* 575 S> */ B(Nop),
/* 577 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(128),
/* 584 S> */ B(Nop),
/* 586 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(130),
/* 593 S> */ B(Nop),
/* 595 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(132),
/* 602 S> */ B(Nop),
/* 604 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(134),
/* 611 S> */ B(Nop),
/* 613 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(136),
/* 620 S> */ B(Nop),
/* 622 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(138),
/* 629 S> */ B(Nop),
/* 631 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(140),
/* 638 S> */ B(Nop),
/* 640 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(142),
/* 647 S> */ B(Nop),
/* 649 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(144),
/* 656 S> */ B(Nop),
/* 658 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(146),
/* 665 S> */ B(Nop),
/* 667 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(148),
/* 674 S> */ B(Nop),
/* 676 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(150),
/* 683 S> */ B(Nop),
/* 685 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(152),
/* 692 S> */ B(Nop),
/* 694 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(154),
/* 701 S> */ B(Nop),
/* 703 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(156),
/* 710 S> */ B(Nop),
/* 712 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(158),
/* 719 S> */ B(Nop),
/* 721 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(160),
/* 728 S> */ B(Nop),
/* 730 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(162),
/* 737 S> */ B(Nop),
/* 739 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(164),
/* 746 S> */ B(Nop),
/* 748 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(166),
/* 755 S> */ B(Nop),
/* 757 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(168),
/* 764 S> */ B(Nop),
/* 766 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(170),
/* 773 S> */ B(Nop),
/* 775 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(172),
/* 782 S> */ B(Nop),
/* 784 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(174),
/* 791 S> */ B(Nop),
/* 793 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(176),
/* 800 S> */ B(Nop),
/* 802 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(178),
/* 809 S> */ B(Nop),
/* 811 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(180),
/* 818 S> */ B(Nop),
/* 820 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(182),
/* 827 S> */ B(Nop),
/* 829 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(184),
/* 836 S> */ B(Nop),
/* 838 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(186),
/* 845 S> */ B(Nop),
/* 847 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(188),
/* 854 S> */ B(Nop),
/* 856 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(190),
/* 863 S> */ B(Nop),
/* 865 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(192),
/* 872 S> */ B(Nop),
/* 874 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(194),
/* 881 S> */ B(Nop),
/* 883 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(196),
/* 890 S> */ B(Nop),
/* 892 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(198),
/* 899 S> */ B(Nop),
/* 901 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(200),
/* 908 S> */ B(Nop),
/* 910 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(202),
/* 917 S> */ B(Nop),
/* 919 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(204),
/* 926 S> */ B(Nop),
/* 928 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(206),
/* 935 S> */ B(Nop),
/* 937 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(208),
/* 944 S> */ B(Nop),
/* 946 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(210),
/* 953 S> */ B(Nop),
/* 955 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(212),
/* 962 S> */ B(Nop),
/* 964 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(214),
/* 971 S> */ B(Nop),
/* 973 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(216),
/* 980 S> */ B(Nop),
/* 982 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(218),
/* 989 S> */ B(Nop),
/* 991 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(220),
/* 998 S> */ B(Nop),
/* 1000 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(222),
/* 1007 S> */ B(Nop),
/* 1009 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(224),
/* 1016 S> */ B(Nop),
/* 1018 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(226),
/* 1025 S> */ B(Nop),
/* 1027 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(228),
/* 1034 S> */ B(Nop),
/* 1036 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(230),
/* 1043 S> */ B(Nop),
/* 1045 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(232),
/* 1052 S> */ B(Nop),
/* 1054 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(234),
/* 1061 S> */ B(Nop),
/* 1063 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(236),
/* 1070 S> */ B(Nop),
/* 1072 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(238),
/* 1079 S> */ B(Nop),
/* 1081 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(240),
/* 1088 S> */ B(Nop),
/* 1090 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(242),
/* 1097 S> */ B(Nop),
/* 1099 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(244),
/* 1106 S> */ B(Nop),
/* 1108 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(246),
/* 1115 S> */ B(Nop),
/* 1117 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(248),
/* 1124 S> */ B(Nop),
/* 1126 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(250),
/* 1133 S> */ B(Nop),
/* 1135 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(252),
/* 1142 S> */ B(Nop),
/* 1144 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(254),
/* 1151 S> */ B(Nop),
/* 1153 E> */ B(Wide), B(LdaNamedProperty), R16(arg0), U16(0), U16(256),
/* 1160 S> */ B(Nop),
/* 1162 E> */ B(Wide), B(LdaNamedProperty), R16(arg0), U16(0), U16(258),
/* 1169 S> */ B(Nop),
/* 1178 E> */ B(Wide), B(LdaNamedProperty), R16(arg0), U16(0), U16(262),
B(Star), R(0),
/* 1178 E> */ B(Wide), B(CallProperty0), R16(0), R16(arg0), U16(260),
/* 1186 S> */ B(Return),
]
constant pool: [
ONE_BYTE_INTERNALIZED_STRING_TYPE ["func"],
]
handlers: [
]
---
snippet: "
function f(a) { return a.func(1).func(2).func(3); }
f(new (function Obj() { this.func = function(a) { return this; }})())
"
frame size: 5
parameter count: 2
bytecode array length: 52
bytecodes: [
/* 10 E> */ B(StackCheck),
/* 16 S> */ B(Nop),
/* 25 E> */ B(LdaNamedProperty), R(arg0), U8(0), U8(10),
B(Star), R(2),
B(LdaSmi), I8(1),
B(Star), R(4),
/* 25 E> */ B(CallProperty1), R(2), R(arg0), R(4), U8(8),
B(Star), R(2),
/* 32 E> */ B(LdaNamedProperty), R(2), U8(0), U8(12),
B(Star), R(1),
B(LdaSmi), I8(2),
B(Star), R(3),
/* 33 E> */ B(CallProperty1), R(1), R(2), R(3), U8(6),
B(Star), R(1),
/* 40 E> */ B(LdaNamedProperty), R(1), U8(0), U8(14),
B(Star), R(0),
B(LdaSmi), I8(3),
B(Star), R(2),
/* 41 E> */ B(CallProperty1), R(0), R(1), R(2), U8(4),
/* 50 S> */ B(Return),
]
constant pool: [
ONE_BYTE_INTERNALIZED_STRING_TYPE ["func"],
]
handlers: [
]