diff options
author | Michaël Zasso <targos@protonmail.com> | 2022-04-12 11:10:15 +0200 |
---|---|---|
committer | Michaël Zasso <targos@protonmail.com> | 2022-04-12 22:08:39 +0200 |
commit | fd4f80ce54d7f7b7503e0999f6a9d293d493846d (patch) | |
tree | 00fba34b8aabeb481c7128fccee635719ee44a3b /deps/v8/src/codegen/reglist.h | |
parent | 73d53fe9f56d7ce5de4b9c9ad5257dc601bbce14 (diff) | |
download | node-new-fd4f80ce54d7f7b7503e0999f6a9d293d493846d.tar.gz |
deps: update V8 to 10.1.124.6
PR-URL: https://github.com/nodejs/node/pull/42657
Reviewed-By: Darshan Sen <raisinten@gmail.com>
Reviewed-By: Richard Lau <rlau@redhat.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Reviewed-By: Michael Dawson <midawson@redhat.com>
Diffstat (limited to 'deps/v8/src/codegen/reglist.h')
-rw-r--r-- | deps/v8/src/codegen/reglist.h | 56 |
1 files changed, 28 insertions, 28 deletions
diff --git a/deps/v8/src/codegen/reglist.h b/deps/v8/src/codegen/reglist.h index 4f1d35267d..eb9ff45163 100644 --- a/deps/v8/src/codegen/reglist.h +++ b/deps/v8/src/codegen/reglist.h @@ -5,39 +5,39 @@ #ifndef V8_CODEGEN_REGLIST_H_ #define V8_CODEGEN_REGLIST_H_ -#include <cstdint> - -#include "src/base/bits.h" -#include "src/base/template-utils.h" - -namespace v8 { -namespace internal { - -// Register configurations. -#if V8_TARGET_ARCH_ARM64 -using RegList = uint64_t; +#if V8_TARGET_ARCH_IA32 +#include "src/codegen/ia32/reglist-ia32.h" +#elif V8_TARGET_ARCH_X64 +#include "src/codegen/x64/reglist-x64.h" +#elif V8_TARGET_ARCH_ARM64 +#include "src/codegen/arm64/reglist-arm64.h" +#elif V8_TARGET_ARCH_ARM +#include "src/codegen/arm/reglist-arm.h" +#elif V8_TARGET_ARCH_PPC || V8_TARGET_ARCH_PPC64 +#include "src/codegen/ppc/reglist-ppc.h" +#elif V8_TARGET_ARCH_MIPS +#include "src/codegen/mips/reglist-mips.h" +#elif V8_TARGET_ARCH_MIPS64 +#include "src/codegen/mips64/reglist-mips64.h" +#elif V8_TARGET_ARCH_LOONG64 +#include "src/codegen/loong64/reglist-loong64.h" +#elif V8_TARGET_ARCH_S390 +#include "src/codegen/s390/reglist-s390.h" +#elif V8_TARGET_ARCH_RISCV64 +#include "src/codegen/riscv64/reglist-riscv64.h" #else -using RegList = uint32_t; +#error Unknown architecture. #endif -// Get the number of registers in a given register list. -constexpr int NumRegs(RegList list) { - return base::bits::CountPopulation(list); -} +namespace v8 { +namespace internal { -namespace detail { -// Combine two RegLists by building the union of the contained registers. -// TODO(clemensb): Replace by constexpr lambda once we have C++17. -constexpr RegList CombineRegListsHelper(RegList list1, RegList list2) { - return list1 | list2; -} -} // namespace detail +static constexpr RegList kEmptyRegList = {}; -// Combine several RegLists by building the union of the contained registers. -template <typename... RegLists> -constexpr RegList CombineRegLists(RegLists... lists) { - return base::fold(detail::CombineRegListsHelper, 0, lists...); -} +#define LIST_REG(V) V, +static constexpr RegList kAllocatableGeneralRegisters = { + ALLOCATABLE_GENERAL_REGISTERS(LIST_REG) Register::no_reg()}; +#undef LIST_REG } // namespace internal } // namespace v8 |