e42e7fc800
This fixes String::MakeExternal() to bail out if the subject string doesn't fit a regular ExternalString, instead of creating a short external string. The observation here is that for short external strings the overhead of having to have the StringResource plus going to the runtime/C++ for each and every character access from JavaScript land is probably bigger than the anticipated benefits. If this turns out to be wrong and there's a real benefit, we should make use of ThinStrings instead of having a separate way to represent external strings. Bug: v8:6621, v8:7109, v8:7145 Change-Id: I4b75da08b82a72027c782a69de9c8eaf3cca1d4d Reviewed-on: https://chromium-review.googlesource.com/799750 Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#49735} |
||
---|---|---|
.. | ||
dead-code-source-position.js | ||
dynamic-global-inside-block.js | ||
ignition-statistics-extension.js | ||
optimized-stack-trace.js | ||
osr-from-bytecode.js | ||
osr-from-generator.js | ||
print-ast.js | ||
regress-597565-double-to-object-transition.js | ||
regress-599001-verifyheap.js | ||
regress-612386-smi-to-double-transition.js | ||
regress-616064.js | ||
regress-629792-source-position-on-jump.js | ||
regress-662418.js | ||
regress-664146.js | ||
regress-672027.js | ||
stack-trace-source-position.js | ||
string-concat-external-thin-string.js | ||
throw-if-hole.js | ||
throw-if-not-hole.js | ||
throw-super-not-called.js | ||
tracing.js |