Lines Matching refs:Code
2 // Use of this source code is governed by a BSD-style license that can be
22 // Alias the inline cache state type to make the IC code more readable.
25 // The IC code is either invoked with no extra frames on the stack
65 static bool ICUseVector(Code::Kind kind) {
66 return kind == Code::LOAD_IC || kind == Code::LOAD_GLOBAL_IC ||
67 kind == Code::KEYED_LOAD_IC || kind == Code::STORE_IC ||
68 kind == Code::KEYED_STORE_IC;
78 static bool ShouldPushPopSlotAndVector(Code::Kind kind);
80 static InlineCacheState StateFromCode(Code* code);
104 inline void set_target(Code* code);
137 // Access the target code for the given IC address.
138 static inline Code* GetTargetAtAddress(Address address,
140 static inline void SetTargetAtAddress(Address address, Code* target,
142 static void PostPatching(Address address, Code* target, Code* old_target);
148 Handle<Object> value = Handle<Code>::null());
151 return Handle<Code>::null();
161 bool UpdatePolymorphicIC(Handle<Name> name, Handle<Object> code);
162 void UpdateMegamorphicCache(Map* map, Name* name, Object* code);
168 void PatchCache(Handle<Name> name, Handle<Object> code);
177 Code::Kind handler_kind() const {
178 if (IsAnyLoad()) return Code::LOAD_IC;
180 return Code::STORE_IC;
219 inline Code* target() const;
236 // indirect to make the code GC safe. This feature is crucial since
241 // The constant pool of the code which originally called the IC (which might
242 // be for the breakpointed copy of the original code).
295 virtual Handle<Code> slow_stub() const {
334 Handle<Code> slow_stub() const override {
379 Handle<Code> slow_stub() const {
457 Code* UpdateCaches(Handle<Object> x, Handle<Object> y);
468 static Code* GetRawUninitialized(Isolate* isolate, Token::Value op);
470 static void Clear(Isolate* isolate, Address address, Code* target,