From a1e73fd6af6285b5ca43eae68b40d3a5955b3e7e Mon Sep 17 00:00:00 2001 From: Igor Sheludko Date: Wed, 2 Oct 2019 16:32:56 +0200 Subject: [PATCH] [ptr-compr][arm64] Set kRootRegisterBias to zero ... in order to improve performance of decompression code on C++ side (because computation of isolate root from isolate pointer becomes a trivial reinterpret cast) and measure the impact separately from other ptr-compr changes. Bug: v8:9353 Change-Id: I36906cef2968355411ee944d97625ecd2652646b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1835550 Reviewed-by: Leszek Swirski Commit-Queue: Igor Sheludko Cr-Commit-Position: refs/heads/master@{#64115} --- src/codegen/arm64/constants-arm64.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/codegen/arm64/constants-arm64.h b/src/codegen/arm64/constants-arm64.h index 20c8c7456c..ccafae5e14 100644 --- a/src/codegen/arm64/constants-arm64.h +++ b/src/codegen/arm64/constants-arm64.h @@ -147,7 +147,8 @@ const unsigned kFloat16ExponentBias = 15; // Actual value of root register is offset from the root array's start // to take advantage of negative displacement values. // TODO(sigurds): Choose best value. -constexpr int kRootRegisterBias = 256; +// TODO(ishell): Choose best value for ptr-compr. +constexpr int kRootRegisterBias = kSystemPointerSize == kTaggedSize ? 256 : 0; using float16 = uint16_t;