v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
Loading...
Searching...
No Matches
constants-x64.h
Go to the documentation of this file.
1// Copyright 2018 the V8 project authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef V8_CODEGEN_X64_CONSTANTS_X64_H_
6#define V8_CODEGEN_X64_CONSTANTS_X64_H_
7
9
10namespace v8 {
11namespace internal {
12
13// The actual value of the kRootRegister is offset from the IsolateData's start
14// to take advantage of negative displacement values.
15// On x64, the smallest operand encoding allows int8 offsets, thus we select the
16// bias s.t. the first 32 8-byte slots of IsolateData are can be encoded this
17// way.
18constexpr int kRootRegisterBias = 128;
19
20// The maximum size of the code range s.t. pc-relative calls are possible
21// between all Code objects in the range.
22constexpr size_t kMaxPCRelativeCodeRangeInMB = 2048;
23
24} // namespace internal
25} // namespace v8
26
27#endif // V8_CODEGEN_X64_CONSTANTS_X64_H_
constexpr size_t kMaxPCRelativeCodeRangeInMB
constexpr int kRootRegisterBias