-
hajimehoshi authored
This CL introduces ExternalStringResourceBase::IsCompressible. This CL is a preparation for CompressibleString, which can be compressed for memory reduction in Blink. We've found that JavaScript strings account for a relatively large part of Blink memory usage, and we are now trying to replace JavaScript String/ AtomicString with CompressibleString. When a string is compressed, the original char data is deleted and V8 pointer cache becomes invalid. This CL introduces isCompressible property and if an external string's isCompressble return true, this is stored short_external_*_map instead of external_*_map so that V8 always requires the char pointer whenever V8 needs the string data. BUG=chromium:574317 LOG=n Review URL: https://codereview.chromium.org/1490193002 Cr-Commit-Position: refs/heads/master@{#33224}
150887a1