v8/test
Caitlin Potter 8ae19e08b1 [esnext] re-implement template strings
- 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

BUG=v8:7415
R=rmcilroy@chromium.org, ishell@chromium.org, bmeurer@chromium.org

Change-Id: If5a8c68558431f058db894d65776324abf54218e
Reviewed-on: https://chromium-review.googlesource.com/945408
Reviewed-by: Benedikt Meurer <bmeurer@chromium.org>
Reviewed-by: Ross McIlroy <rmcilroy@chromium.org>
Commit-Queue: Caitlin Potter <caitp@igalia.com>
Cr-Commit-Position: refs/heads/master@{#51853}
2018-03-09 18:14:07 +00:00
..
benchmarks [test] Forgive tests timing out on num-fuzzers 2018-02-08 23:08:05 +00:00
cctest [esnext] re-implement template strings 2018-03-09 18:14:07 +00:00
common [wasm] Add remaining saturating conversions 2018-02-07 19:45:39 +00:00
debugger [debug] use flag to decide whether accessor has side effect. 2018-03-06 09:25:42 +00:00
fuzzer [cleanup] Deprecate EnsureEventLoopInitialized 2018-02-28 15:32:28 +00:00
inspector Use String16Builder.appendUnsignedAsHex for hashes 2018-03-08 10:14:55 +00:00
intl [test] Remove context usage from test processors 2018-02-01 10:35:02 +00:00
js-perf-test [js-perf-test] Add micro-benchmark for StringAt functions 2018-03-09 12:43:36 +00:00
memory
message Fix error message for octal escapes in templates 2018-03-08 18:57:45 +00:00
mjsunit [builtins] Properly handle DICTIONARY_ELEMENTS in Promise.all closures. 2018-03-09 14:25:34 +00:00
mkgrokdump [API] Remove ArrayBuffer::Allocator virtual memory methods. 2018-03-03 12:00:24 +00:00
mozilla [test] Remove context usage from test processors 2018-02-01 10:35:02 +00:00
preparser [test] Remove dead code from suites and tests 2018-02-01 14:12:49 +00:00
test262 [DataView] Throw TypeError when buffer is detached 2018-03-03 01:50:22 +00:00
unittests [esnext] re-implement template strings 2018-03-09 18:14:07 +00:00
wasm-spec-tests [wasm] Update spec tests 2018-02-28 13:22:37 +00:00
webkit [test][mips64]: Skip dfg-int-overflow-in-loop on simulator. 2018-03-07 14:37:23 +00:00
bot_default.isolate
BUILD.gn
d8_default.isolate
default.isolate
optimize_for_size.isolate
perf.isolate