v8/test
Benedikt Meurer 683cf6f43b [cleanup] Remove obsolete "one byte data hint" for strings.
In the early days of Chrome when we used WebKit there was no support for
ASCII strings on the C++ side, so we put a hint onto these two-byte
strings that said "string only contains one byte data", such that
internally in V8 when these were involved in string operations, we could
instead create the *cheaper* one byte strings.

Nowadays Blink properly supports one-byte string representations and
this additional hint only comes with overhead, since we check it in
quite a few places (i.e. on the hot path for string concatenation), plus
we end up consuming more memory due to the additional string maps.
Removing the hint also frees one bit in the InstanceType zoo for
strings.

This alone improves performance on the `bench-dom-serialize.js` test case
by around **3%**.

Tbr: mstarzinger@chromium.org
Bug: v8:6622, v8:8834, v8:8939
Cq-Include-Trybots: luci.chromium.try:linux-blink-rel
Change-Id: I0753f2859cee7b5a37b6f0da64d8ec39fcb044ff
Doc: https://bit.ly/fast-string-concatenation-in-javascript
Reviewed-on: https://chromium-review.googlesource.com/c/1498478
Commit-Queue: Benedikt Meurer <bmeurer@chromium.org>
Reviewed-by: Yang Guo <yangguo@chromium.org>
Cr-Commit-Position: refs/heads/master@{#60006}
2019-03-04 14:04:02 +00:00
..
benchmarks [test] Don't test jitless without embedded-builtins 2019-02-26 14:33:01 +00:00
cctest [fni] Mark computed props as computed, not anonymous function 2019-03-01 20:52:03 +00:00
common Reland "[wasm] add wasm atomic wait callback test" 2019-02-20 05:17:07 +00:00
debugger [test] Don't test jitless without embedded-builtins 2019-02-26 14:33:01 +00:00
fuzzer [test] Don't test jitless without embedded-builtins 2019-02-26 14:33:01 +00:00
inspector [Inspector] Add tests for Runtime domain 2019-03-01 20:34:53 +00:00
intl [test] Don't test jitless without embedded-builtins 2019-02-26 14:33:01 +00:00
js-perf-test [test] Add perf test for in operator on arrays 2019-02-20 22:36:13 +00:00
memory [snapshot] Remove the builtins snapshot 2018-10-31 10:18:28 +00:00
message [fni] Mark computed props as computed, not anonymous function 2019-03-01 20:52:03 +00:00
mjsunit [cleanup] Remove obsolete "one byte data hint" for strings. 2019-03-04 14:04:02 +00:00
mkgrokdump [test] Don't test jitless without embedded-builtins 2019-02-26 14:33:01 +00:00
mozilla [test] Don't test jitless without embedded-builtins 2019-02-26 14:33:01 +00:00
preparser [test] Don't test jitless without embedded-builtins 2019-02-26 14:33:01 +00:00
test262 [test] Don't test jitless without embedded-builtins 2019-02-26 14:33:01 +00:00
torque [torque] Simplify class and struct construction 2019-02-27 17:36:37 +00:00
unittests Revert "[gn] use relative paths for gtest and gmock" 2019-03-04 11:48:56 +00:00
wasm-js [testrunner] handle timeout param in file 2019-02-27 17:49:17 +00:00
wasm-spec-tests [wasm] Update spec tests 2019-02-27 10:42:02 +00:00
webkit [test] Don't test jitless without embedded-builtins 2019-02-26 14:33:01 +00:00
BUILD.gn Add target for common test headers 2019-02-12 09:30:01 +00:00
OWNERS Make tmrts an infra OWNER 2019-02-15 09:02:24 +00:00