OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef V8_IC_HANDLER_COMPILER_H_ | 5 #ifndef V8_IC_HANDLER_COMPILER_H_ |
6 #define V8_IC_HANDLER_COMPILER_H_ | 6 #define V8_IC_HANDLER_COMPILER_H_ |
7 | 7 |
8 #include "src/ic/access-compiler.h" | 8 #include "src/ic/access-compiler.h" |
9 #include "src/ic/ic-state.h" | 9 #include "src/ic/ic-state.h" |
10 | 10 |
(...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
227 Label* miss); | 227 Label* miss); |
228 | 228 |
229 virtual void FrontendFooter(Handle<Name> name, Label* miss); | 229 virtual void FrontendFooter(Handle<Name> name, Label* miss); |
230 void GenerateRestoreName(Label* label, Handle<Name> name); | 230 void GenerateRestoreName(Label* label, Handle<Name> name); |
231 | 231 |
232 private: | 232 private: |
233 void GenerateRestoreName(Handle<Name> name); | 233 void GenerateRestoreName(Handle<Name> name); |
234 void GenerateRestoreMap(Handle<Map> transition, Register scratch, | 234 void GenerateRestoreMap(Handle<Map> transition, Register scratch, |
235 Label* miss); | 235 Label* miss); |
236 | 236 |
237 void GenerateConstantCheck(Object* constant, Register value_reg, | 237 void GenerateConstantCheck(Register map_reg, int descriptor, |
| 238 Register value_reg, Register scratch, |
238 Label* miss_label); | 239 Label* miss_label); |
239 | 240 |
240 void GenerateFieldTypeChecks(HeapType* field_type, Register value_reg, | 241 void GenerateFieldTypeChecks(HeapType* field_type, Register value_reg, |
241 Label* miss_label); | 242 Label* miss_label); |
242 | 243 |
243 static Builtins::Name SlowBuiltin(Code::Kind kind) { | 244 static Builtins::Name SlowBuiltin(Code::Kind kind) { |
244 switch (kind) { | 245 switch (kind) { |
245 case Code::STORE_IC: | 246 case Code::STORE_IC: |
246 return Builtins::kStoreIC_Slow; | 247 return Builtins::kStoreIC_Slow; |
247 case Code::KEYED_STORE_IC: | 248 case Code::KEYED_STORE_IC: |
(...skipping 19 matching lines...) Expand all Loading... |
267 | 268 |
268 void CompileElementHandlers(MapHandleList* receiver_maps, | 269 void CompileElementHandlers(MapHandleList* receiver_maps, |
269 CodeHandleList* handlers); | 270 CodeHandleList* handlers); |
270 | 271 |
271 static void GenerateStoreSlow(MacroAssembler* masm); | 272 static void GenerateStoreSlow(MacroAssembler* masm); |
272 }; | 273 }; |
273 } | 274 } |
274 } // namespace v8::internal | 275 } // namespace v8::internal |
275 | 276 |
276 #endif // V8_IC_HANDLER_COMPILER_H_ | 277 #endif // V8_IC_HANDLER_COMPILER_H_ |
OLD | NEW |