diff options
author | Michaël Zasso <targos@protonmail.com> | 2019-08-01 08:38:30 +0200 |
---|---|---|
committer | Michaël Zasso <targos@protonmail.com> | 2019-08-01 12:53:56 +0200 |
commit | 2dcc3665abf57c3607cebffdeeca062f5894885d (patch) | |
tree | 4f560748132edcfb4c22d6f967a7e80d23d7ea2c /deps/v8/src/ic/ic.h | |
parent | 1ee47d550c6de132f06110aa13eceb7551d643b3 (diff) | |
download | node-new-2dcc3665abf57c3607cebffdeeca062f5894885d.tar.gz |
deps: update V8 to 7.6.303.28
PR-URL: https://github.com/nodejs/node/pull/28016
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Refael Ackermann (רפאל פלחי) <refack@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
Reviewed-By: Michael Dawson <michael_dawson@ca.ibm.com>
Reviewed-By: Jiawen Geng <technicalcute@gmail.com>
Diffstat (limited to 'deps/v8/src/ic/ic.h')
-rw-r--r-- | deps/v8/src/ic/ic.h | 21 |
1 files changed, 12 insertions, 9 deletions
diff --git a/deps/v8/src/ic/ic.h b/deps/v8/src/ic/ic.h index 590acdaa46..39462d55e5 100644 --- a/deps/v8/src/ic/ic.h +++ b/deps/v8/src/ic/ic.h @@ -7,11 +7,11 @@ #include <vector> -#include "src/feedback-vector.h" +#include "src/execution/isolate.h" +#include "src/execution/message-template.h" #include "src/heap/factory.h" #include "src/ic/stub-cache.h" -#include "src/isolate.h" -#include "src/message-template.h" +#include "src/objects/feedback-vector.h" #include "src/objects/map.h" #include "src/objects/maybe-object.h" #include "src/objects/smi.h" @@ -38,7 +38,6 @@ class IC { virtual ~IC() = default; State state() const { return state_; } - inline Address address() const; // Compute the current IC state based on the target stub, receiver and name. void UpdateState(Handle<Object> receiver, Handle<Object> name); @@ -80,9 +79,7 @@ class IC { // Get the caller function object. JSFunction GetHostFunction() const; - inline bool AddressIsDeoptimizedCode() const; - inline static bool AddressIsDeoptimizedCode(Isolate* isolate, - Address address); + inline bool HostIsDeoptimizedCode() const; bool is_vector_set() { return vector_set_; } inline bool vector_needs_update(); @@ -337,6 +334,12 @@ enum KeyedStoreCheckMap { kDontCheckMap, kCheckMap }; enum KeyedStoreIncrementLength { kDontIncrementLength, kIncrementLength }; +enum class TransitionMode { + kNoTransition, + kTransitionToDouble, + kTransitionToObject +}; + class KeyedStoreIC : public StoreIC { public: KeyedAccessStoreMode GetKeyedAccessStoreMode() { @@ -354,7 +357,7 @@ class KeyedStoreIC : public StoreIC { protected: void UpdateStoreElement(Handle<Map> receiver_map, KeyedAccessStoreMode store_mode, - bool receiver_was_cow); + Handle<Map> new_receiver_map); Handle<Code> slow_stub() const override { return BUILTIN_CODE(isolate(), KeyedStoreIC_Slow); @@ -362,7 +365,7 @@ class KeyedStoreIC : public StoreIC { private: Handle<Map> ComputeTransitionedMap(Handle<Map> map, - KeyedAccessStoreMode store_mode); + TransitionMode transition_mode); Handle<Object> StoreElementHandler(Handle<Map> receiver_map, KeyedAccessStoreMode store_mode); |