diff options
author | Michaël Zasso <targos@protonmail.com> | 2018-03-07 08:54:53 +0100 |
---|---|---|
committer | Michaël Zasso <targos@protonmail.com> | 2018-03-07 16:48:52 +0100 |
commit | 88786fecff336342a56e6f2e7ff3b286be716e47 (patch) | |
tree | 92e6ba5b8ac8dae1a058988d20c9d27bfa654390 /deps/v8/src/safepoint-table.h | |
parent | 4e86f9b5ab83cbabf43839385bf383e6a7ef7d19 (diff) | |
download | android-node-v8-88786fecff336342a56e6f2e7ff3b286be716e47.tar.gz android-node-v8-88786fecff336342a56e6f2e7ff3b286be716e47.tar.bz2 android-node-v8-88786fecff336342a56e6f2e7ff3b286be716e47.zip |
deps: update V8 to 6.5.254.31
PR-URL: https://github.com/nodejs/node/pull/18453
Reviewed-By: James M Snell <jasnell@gmail.com>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Yang Guo <yangguo@chromium.org>
Reviewed-By: Ali Ijaz Sheikh <ofrobots@google.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
Diffstat (limited to 'deps/v8/src/safepoint-table.h')
-rw-r--r-- | deps/v8/src/safepoint-table.h | 31 |
1 files changed, 20 insertions, 11 deletions
diff --git a/deps/v8/src/safepoint-table.h b/deps/v8/src/safepoint-table.h index 9f063bac20..5c6b413fa1 100644 --- a/deps/v8/src/safepoint-table.h +++ b/deps/v8/src/safepoint-table.h @@ -194,8 +194,8 @@ class Safepoint BASE_EMBEDDED { private: Safepoint(ZoneList<int>* indexes, ZoneList<int>* registers) : indexes_(indexes), registers_(registers) {} - ZoneList<int>* indexes_; - ZoneList<int>* registers_; + ZoneList<int>* const indexes_; + ZoneList<int>* const registers_; friend class SafepointTableBuilder; }; @@ -205,9 +205,6 @@ class SafepointTableBuilder BASE_EMBEDDED { public: explicit SafepointTableBuilder(Zone* zone) : deoptimization_info_(32, zone), - deopt_index_list_(32, zone), - indexes_(32, zone), - registers_(32, zone), emitted_(false), last_lazy_safepoint_(0), zone_(zone) { } @@ -225,7 +222,7 @@ class SafepointTableBuilder BASE_EMBEDDED { // outstanding safepoints. void RecordLazyDeoptimizationIndex(int index); void BumpLastLazySafepointIndex() { - last_lazy_safepoint_ = deopt_index_list_.length(); + last_lazy_safepoint_ = deoptimization_info_.length(); } // Emit the safepoint table after the body. The number of bits per @@ -244,18 +241,30 @@ class SafepointTableBuilder BASE_EMBEDDED { unsigned arguments; bool has_doubles; int trampoline; + ZoneList<int>* indexes; + ZoneList<int>* registers; + unsigned deopt_index; + DeoptimizationInfo(Zone* zone, unsigned pc, unsigned arguments, + Safepoint::Kind kind) + : pc(pc), + arguments(arguments), + has_doubles(kind & Safepoint::kWithDoubles), + trampoline(-1), + indexes(new (zone) ZoneList<int>(8, zone)), + registers(kind & Safepoint::kWithRegisters + ? new (zone) ZoneList<int>(4, zone) + : nullptr), + deopt_index(Safepoint::kNoDeoptimizationIndex) {} }; - uint32_t EncodeExceptPC(const DeoptimizationInfo& info, unsigned index); + uint32_t EncodeExceptPC(const DeoptimizationInfo&); - bool IsIdenticalExceptForPc(int index1, int index2) const; + bool IsIdenticalExceptForPc(const DeoptimizationInfo&, + const DeoptimizationInfo&) const; // If all entries are identical, replace them by 1 entry with pc = kMaxUInt32. void RemoveDuplicates(); ZoneList<DeoptimizationInfo> deoptimization_info_; - ZoneList<unsigned> deopt_index_list_; - ZoneList<ZoneList<int>*> indexes_; - ZoneList<ZoneList<int>*> registers_; unsigned offset_; bool emitted_; |