Commit e3b75cb
committed
deps: V8: cherry-pick fd75c97d3f56
Original commit message:
[interpreter] Apply Reflect.apply transform in BytecodeGenerator
Calls with a spread expression in a non-final position get transformed
to calls to Reflect.apply. This transformation is currently done in
the parser, which does not compose well with other features (e.g.
direct eval checking, optional chaining).
Do this transform in the BytecodeGenerator instead.
Bug: v8:11573, v8:11558, v8:5690
Change-Id: I56c90a2036fe5b43e0897c57766f666bf72bc3a8
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2765783
Auto-Submit: Shu-yu Guo <syg@chromium.org>
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Cr-Commit-Position: refs/heads/master@{#73534}
Refs: v8/v8@fd75c97
PR-URL: #38455
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>1 parent 67bd0ec commit e3b75cbCopy full SHA for e3b75cb
File tree
Expand file treeCollapse file tree
11 files changed
+166
-132
lines changedOpen diff view settings
Filter options
- deps/v8
- src
- ast
- interpreter
- parsing
- test
- cctest/interpreter/bytecode_expectations
- mjsunit/regress
- test262
Expand file treeCollapse file tree
11 files changed
+166
-132
lines changedOpen diff view settings
Collapse file
+1-1Lines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| ||
36 | 36 | |
37 | 37 | |
38 | 38 | |
39 | | - |
| 39 | + |
40 | 40 | |
41 | 41 | |
42 | 42 | |
|
Collapse file
+16Lines changed: 16 additions & 0 deletions
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| ||
935 | 935 | |
936 | 936 | |
937 | 937 | |
| 938 | + |
| 939 | + |
| 940 | + |
| 941 | + |
| 942 | + |
| 943 | + |
| 944 | + |
| 945 | + |
| 946 | + |
| 947 | + |
| 948 | + |
| 949 | + |
| 950 | + |
| 951 | + |
| 952 | + |
| 953 | + |
938 | 954 | |
939 | 955 | |
940 | 956 | |
|
Collapse file
+19-5Lines changed: 19 additions & 5 deletions
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| ||
1635 | 1635 | |
1636 | 1636 | |
1637 | 1637 | |
| 1638 | + |
| 1639 | + |
| 1640 | + |
| 1641 | + |
| 1642 | + |
| 1643 | + |
1638 | 1644 | |
1639 | 1645 | |
1640 | 1646 | |
| ||
1669 | 1675 | |
1670 | 1676 | |
1671 | 1677 | |
1672 | | - |
| 1678 | + |
1673 | 1679 | |
1674 | 1680 | |
1675 | 1681 | |
1676 | 1682 | |
1677 | 1683 | |
1678 | 1684 | |
1679 | 1685 | |
1680 | | - |
| 1686 | + |
| 1687 | + |
| 1688 | + |
1681 | 1689 | |
1682 | 1690 | |
1683 | 1691 | |
| ||
1688 | 1696 | |
1689 | 1697 | |
1690 | 1698 | |
1691 | | - |
| 1699 | + |
| 1700 | + |
1692 | 1701 | |
1693 | 1702 | |
| 1703 | + |
| 1704 | + |
| 1705 | + |
1694 | 1706 | |
1695 | 1707 | |
1696 | 1708 | |
| 1709 | + |
1697 | 1710 | |
1698 | 1711 | |
1699 | 1712 | |
| ||
3064 | 3077 | |
3065 | 3078 | |
3066 | 3079 | |
| 3080 | + |
3067 | 3081 | |
3068 | 3082 | |
3069 | 3083 | |
3070 | | - |
3071 | | - |
| 3084 | + |
| 3085 | + |
3072 | 3086 | |
3073 | 3087 | |
3074 | 3088 | |
|
Collapse file
deps/v8/src/interpreter/bytecode-generator.cc
Copy file name to clipboardExpand all lines: deps/v8/src/interpreter/bytecode-generator.cc+76-30Lines changed: 76 additions & 30 deletions
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| ||
3106 | 3106 | |
3107 | 3107 | |
3108 | 3108 | |
| 3109 | + |
| 3110 | + |
3109 | 3111 | |
3110 | 3112 | |
3111 | 3113 | |
| ||
5022 | 5024 | |
5023 | 5025 | |
5024 | 5026 | |
| 5027 | + |
| 5028 | + |
| 5029 | + |
| 5030 | + |
| 5031 | + |
| 5032 | + |
| 5033 | + |
| 5034 | + |
| 5035 | + |
| 5036 | + |
| 5037 | + |
| 5038 | + |
5025 | 5039 | |
5026 | 5040 | |
5027 | 5041 | |
5028 | 5042 | |
5029 | | - |
5030 | 5043 | |
5031 | 5044 | |
| 5045 | + |
| 5046 | + |
| 5047 | + |
| 5048 | + |
| 5049 | + |
5032 | 5050 | |
5033 | | - |
5034 | | - |
5035 | | - |
5036 | 5051 | |
5037 | 5052 | |
5038 | 5053 | |
| ||
5052 | 5067 | |
5053 | 5068 | |
5054 | 5069 | |
5055 | | - |
| 5070 | + |
5056 | 5071 | |
5057 | 5072 | |
5058 | 5073 | |
| ||
5088 | 5103 | |
5089 | 5104 | |
5090 | 5105 | |
5091 | | - |
| 5106 | + |
5092 | 5107 | |
5093 | 5108 | |
5094 | 5109 | |
| ||
5137 | 5152 | |
5138 | 5153 | |
5139 | 5154 | |
5140 | | - |
5141 | | - |
5142 | | - |
5143 | | - |
5144 | | - |
5145 | | - |
| 5155 | + |
| 5156 | + |
| 5157 | + |
| 5158 | + |
| 5159 | + |
| 5160 | + |
| 5161 | + |
| 5162 | + |
| 5163 | + |
| 5164 | + |
| 5165 | + |
| 5166 | + |
| 5167 | + |
| 5168 | + |
| 5169 | + |
| 5170 | + |
| 5171 | + |
| 5172 | + |
| 5173 | + |
5146 | 5174 | |
5147 | 5175 | |
5148 | 5176 | |
5149 | 5177 | |
5150 | 5178 | |
| 5179 | + |
5151 | 5180 | |
5152 | 5181 | |
5153 | 5182 | |
5154 | | - |
5155 | | - |
| 5183 | + |
| 5184 | + |
| 5185 | + |
| 5186 | + |
| 5187 | + |
| 5188 | + |
| 5189 | + |
| 5190 | + |
| 5191 | + |
| 5192 | + |
| 5193 | + |
| 5194 | + |
| 5195 | + |
| 5196 | + |
| 5197 | + |
5156 | 5198 | |
5157 | 5199 | |
5158 | | - |
5159 | 5200 | |
5160 | 5201 | |
5161 | 5202 | |
| ||
5172 | 5213 | |
5173 | 5214 | |
5174 | 5215 | |
5175 | | - |
| 5216 | + |
5176 | 5217 | |
5177 | 5218 | |
5178 | 5219 | |
| 5220 | + |
| 5221 | + |
5179 | 5222 | |
5180 | 5223 | |
5181 | 5224 | |
| ||
5198 | 5241 | |
5199 | 5242 | |
5200 | 5243 | |
5201 | | - |
5202 | | - |
5203 | | - |
5204 | | - |
| 5244 | + |
| 5245 | + |
| 5246 | + |
| 5247 | + |
| 5248 | + |
| 5249 | + |
| 5250 | + |
| 5251 | + |
| 5252 | + |
| 5253 | + |
| 5254 | + |
| 5255 | + |
| 5256 | + |
| 5257 | + |
5205 | 5258 | |
5206 | 5259 | |
5207 | 5260 | |
| ||
5210 | 5263 | |
5211 | 5264 | |
5212 | 5265 | |
5213 | | - |
5214 | | - |
5215 | | - |
5216 | | - |
5217 | | - |
5218 | | - |
5219 | | - |
5220 | | - |
| 5266 | + |
5221 | 5267 | |
5222 | 5268 | |
5223 | 5269 | |
| ||
5244 | 5290 | |
5245 | 5291 | |
5246 | 5292 | |
5247 | | - |
| 5293 | + |
5248 | 5294 | |
5249 | 5295 | |
5250 | 5296 | |
5251 | | - |
| 5297 | + |
5252 | 5298 | |
5253 | 5299 | |
5254 | 5300 | |
|
Collapse file
deps/v8/src/parsing/parser-base.h
Copy file name to clipboardExpand all lines: deps/v8/src/parsing/parser-base.h+4-12Lines changed: 4 additions & 12 deletions
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| ||
1186 | 1186 | |
1187 | 1187 | |
1188 | 1188 | |
| 1189 | + |
1189 | 1190 | |
1190 | 1191 | |
1191 | 1192 | |
| ||
3392 | 3393 | |
3393 | 3394 | |
3394 | 3395 | |
3395 | | - |
3396 | | - |
3397 | | - |
3398 | | - |
3399 | | - |
| 3396 | + |
3400 | 3397 | |
3401 | 3398 | |
3402 | 3399 | |
| ||
3490 | 3487 | |
3491 | 3488 | |
3492 | 3489 | |
3493 | | - |
3494 | | - |
3495 | | - |
3496 | | - |
3497 | | - |
3498 | | - |
3499 | | - |
| 3490 | + |
| 3491 | + |
3500 | 3492 | |
3501 | 3493 | |
3502 | 3494 | |
|
Collapse file
deps/v8/src/parsing/parser.cc
Copy file name to clipboardExpand all lines: deps/v8/src/parsing/parser.cc+3-39Lines changed: 3 additions & 39 deletions
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| ||
69 | 69 | |
70 | 70 | |
71 | 71 | |
72 | | - |
| 72 | + |
| 73 | + |
73 | 74 | |
74 | 75 | |
75 | 76 | |
| ||
3371 | 3372 | |
3372 | 3373 | |
3373 | 3374 | |
3374 | | - |
3375 | | - |
3376 | | - |
3377 | | - |
3378 | | - |
3379 | | - |
3380 | | - |
3381 | | - |
3382 | | - |
3383 | | - |
3384 | | - |
3385 | | - |
3386 | | - |
3387 | | - |
3388 | | - |
3389 | | - |
3390 | | - |
3391 | | - |
3392 | | - |
3393 | | - |
3394 | | - |
3395 | | - |
3396 | | - |
3397 | | - |
3398 | | - |
3399 | | - |
3400 | | - |
3401 | | - |
3402 | | - |
3403 | | - |
3404 | | - |
3405 | | - |
3406 | | - |
3407 | | - |
3408 | | - |
3409 | | - |
3410 | | - |
3411 | | - |
3412 | 3375 | |
3413 | 3376 | |
3414 | 3377 | |
| 3378 | + |
3415 | 3379 | |
3416 | 3380 | |
3417 | 3381 | |
|
Collapse file
deps/v8/src/parsing/parser.h
Copy file name to clipboardExpand all lines: deps/v8/src/parsing/parser.h-4Lines changed: 0 additions & 4 deletions
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| ||
493 | 493 | |
494 | 494 | |
495 | 495 | |
496 | | - |
497 | | - |
498 | | - |
499 | | - |
500 | 496 | |
501 | 497 | |
502 | 498 | |
|
0 commit comments