b8229612bf
- Add a new bytecode for the ToString operation, replacing the old intrinsic call (currently does not collect type feedback). - Add a new AST node to represent TemplateLiterals, and avoid generating unnecessary ToString operations in some simple cases. - Use a single feedback slot for each string addition, because the type feedback should always be the same for each addition This seems to produce a very slight improvement on JSTests benchmarks and bench-ruben.js from v8:7415, and it's possible that type feedback for the ToString bytecode could provide more opportunities to eliminate the runtime call in TurboFan. Doesn't touch tagged templates [esnext] fix OOB read in ASTPrinter::VisistTemplateLiteral Fixes an error where TemplateLiteral printing in --print-ast would try to read an element beyond the length of a vector. BUG=v8:7415, chromium:820596 R=adamk@chromium.org, gsathya@chromum.org, rmcilroy@chromium.org, ishell@chromium.org, bmeurer@chromium.org Change-Id: Ie56894f73a6445550a5f95f42160c4e29ab1da42 Reviewed-on: https://chromium-review.googlesource.com/958408 Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Caitlin Potter <caitp@igalia.com> Cr-Commit-Position: refs/heads/master@{#51933} |
||
---|---|---|
.. | ||
regress-2034.js | ||
regress-2156.js | ||
regress-2186.js | ||
regress-2219.js | ||
regress-2225.js | ||
regress-2243.js | ||
regress-2322.js | ||
regress-2506.js | ||
regress-2681.js | ||
regress-2691.js | ||
regress-2829.js | ||
regress-2858.js | ||
regress-3426.js | ||
regress-3501.js | ||
regress-3683.js | ||
regress-3741.js | ||
regress-3902.js | ||
regress-3938.js | ||
regress-4056.js | ||
regress-4097.js | ||
regress-4160.js | ||
regress-4211.js | ||
regress-4298.js | ||
regress-4395-global-eval.js | ||
regress-4395.js | ||
regress-4400.js | ||
regress-4417.js | ||
regress-4466.js | ||
regress-4482.js | ||
regress-4522.js | ||
regress-4585.js | ||
regress-4759.js | ||
regress-5337.js | ||
regress-5598.js | ||
regress-5929-1.js | ||
regress-6098.js | ||
regress-6322.js | ||
regress-347906.js | ||
regress-411237.js | ||
regress-455141.js | ||
regress-474783.js | ||
regress-508074.js | ||
regress-513474.js | ||
regress-517455.js | ||
regress-576662.js | ||
regress-594084.js | ||
regress-650172.js | ||
regress-660925.js | ||
regress-666622.js | ||
regress-777182.js | ||
regress-arrow-duplicate-params.js | ||
regress-cr372788.js | ||
regress-cr493566.js | ||
regress-cr512574.js | ||
regress-crbug-248025.js | ||
regress-crbug-346141.js | ||
regress-crbug-448730.js | ||
regress-crbug-461520.js | ||
regress-crbug-465671-null.js | ||
regress-crbug-465671.js | ||
regress-crbug-820596.js | ||
regress-inlined-new-target.js | ||
regress-lookup-transition.js | ||
regress-new-target-context.js |