77de44e1c4
Optimizations introduced in https://chromium-review.googlesource.com/c/v8/v8/+/1776079 are currently defeated since Address is not a pointer type. Clang does not seem to carry over alignment information as range information when casting to ints. Using __builtin_assume we can restore the same effect. Additionally we can help the compiler remember that when compressing the removed bits are actually the cage base. This helps e.g. with `decompress(compress(..))`. See https://godbolt.org/z/5r68G5qa6 for details. Bug: v8:9353 Change-Id: Ief016fce0788f2bef6b684a18b104ada6e6d3856 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4156060 Commit-Queue: Olivier Flückiger <olivf@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/main@{#85246} |
||
---|---|---|
.. | ||
benchmarks | ||
bigint | ||
cctest | ||
common | ||
debugger | ||
debugging | ||
fuzzer | ||
fuzzilli | ||
inspector | ||
intl | ||
js-perf-test | ||
memory | ||
message | ||
mjsunit | ||
mkgrokdump | ||
mozilla | ||
test262 | ||
torque | ||
unittests | ||
wasm-api-tests | ||
wasm-js | ||
wasm-spec-tests | ||
webkit | ||
BUILD.gn | ||
OWNERS |