Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(63)

Side by Side Diff: src/stub-cache.h

Issue 458813002: Prototype implementation of GET_OWN_PROPERTY intrinsic. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « src/runtime.cc ('k') | src/stub-cache.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 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_STUB_CACHE_H_ 5 #ifndef V8_STUB_CACHE_H_
6 #define V8_STUB_CACHE_H_ 6 #define V8_STUB_CACHE_H_
7 7
8 #include "src/allocation.h" 8 #include "src/allocation.h"
9 #include "src/arguments.h" 9 #include "src/arguments.h"
10 #include "src/code-stubs.h" 10 #include "src/code-stubs.h"
(...skipping 272 matching lines...) Expand 10 before | Expand all | Expand 10 after
283 Handle<HeapType> type, 283 Handle<HeapType> type,
284 Handle<Code> handler, 284 Handle<Code> handler,
285 ExtraICState extra_ic_state); 285 ExtraICState extra_ic_state);
286 static Handle<Code> ComputePolymorphic(Code::Kind kind, TypeHandleList* types, 286 static Handle<Code> ComputePolymorphic(Code::Kind kind, TypeHandleList* types,
287 CodeHandleList* handlers, 287 CodeHandleList* handlers,
288 int number_of_valid_maps, 288 int number_of_valid_maps,
289 Handle<Name> name, 289 Handle<Name> name,
290 ExtraICState extra_ic_state); 290 ExtraICState extra_ic_state);
291 291
292 // Keyed 292 // Keyed
293 static Handle<Code> ComputeKeyedLoad(Isolate* isolate, InlineCacheState ic_sta te,
294 ExtraICState extra_state);
293 static Handle<Code> ComputeKeyedLoadMonomorphic(Handle<Map> receiver_map); 295 static Handle<Code> ComputeKeyedLoadMonomorphic(Handle<Map> receiver_map);
294 296
295 static Handle<Code> ComputeKeyedStoreMonomorphic( 297 static Handle<Code> ComputeKeyedStoreMonomorphic(
296 Handle<Map> receiver_map, StrictMode strict_mode, 298 Handle<Map> receiver_map, StrictMode strict_mode,
297 KeyedAccessStoreMode store_mode); 299 KeyedAccessStoreMode store_mode);
298 static Handle<Code> ComputeKeyedLoadPolymorphic(MapHandleList* receiver_maps); 300 static Handle<Code> ComputeKeyedLoadPolymorphic(MapHandleList* receiver_maps);
299 static Handle<Code> ComputeKeyedStorePolymorphic( 301 static Handle<Code> ComputeKeyedStorePolymorphic(
300 MapHandleList* receiver_maps, KeyedAccessStoreMode store_mode, 302 MapHandleList* receiver_maps, KeyedAccessStoreMode store_mode,
301 StrictMode strict_mode); 303 StrictMode strict_mode);
302 304
(...skipping 10 matching lines...) Expand all
313 extra_ic_state_(extra_ic_state) {} 315 extra_ic_state_(extra_ic_state) {}
314 316
315 static Handle<Code> Find(Handle<Name> name, Handle<Map> stub_holder_map, 317 static Handle<Code> Find(Handle<Name> name, Handle<Map> stub_holder_map,
316 Code::Kind kind, 318 Code::Kind kind,
317 ExtraICState extra_ic_state = kNoExtraICState, 319 ExtraICState extra_ic_state = kNoExtraICState,
318 CacheHolderFlag cache_holder = kCacheOnReceiver); 320 CacheHolderFlag cache_holder = kCacheOnReceiver);
319 321
320 Handle<Code> CompileLoadInitialize(Code::Flags flags); 322 Handle<Code> CompileLoadInitialize(Code::Flags flags);
321 Handle<Code> CompileLoadPreMonomorphic(Code::Flags flags); 323 Handle<Code> CompileLoadPreMonomorphic(Code::Flags flags);
322 Handle<Code> CompileLoadMegamorphic(Code::Flags flags); 324 Handle<Code> CompileLoadMegamorphic(Code::Flags flags);
325
326 Handle<Code> CompileKeyedLoadInitialize(Code::Flags flags);
327 Handle<Code> CompileKeyedLoadPreMonomorphic(Code::Flags flags);
328 Handle<Code> CompileKeyedLoadMegamorphic(Code::Flags flags);
329 Handle<Code> CompileKeyedLoadGeneric(Code::Flags flags);
330
323 Handle<Code> CompileStoreInitialize(Code::Flags flags); 331 Handle<Code> CompileStoreInitialize(Code::Flags flags);
324 Handle<Code> CompileStorePreMonomorphic(Code::Flags flags); 332 Handle<Code> CompileStorePreMonomorphic(Code::Flags flags);
325 Handle<Code> CompileStoreGeneric(Code::Flags flags); 333 Handle<Code> CompileStoreGeneric(Code::Flags flags);
326 Handle<Code> CompileStoreMegamorphic(Code::Flags flags); 334 Handle<Code> CompileStoreMegamorphic(Code::Flags flags);
327 335
328 Handle<Code> CompileMonomorphic(Handle<HeapType> type, Handle<Code> handler, 336 Handle<Code> CompileMonomorphic(Handle<HeapType> type, Handle<Code> handler,
329 Handle<Name> name, IcCheckType check); 337 Handle<Name> name, IcCheckType check);
330 Handle<Code> CompilePolymorphic(TypeHandleList* types, 338 Handle<Code> CompilePolymorphic(TypeHandleList* types,
331 CodeHandleList* handlers, Handle<Name> name, 339 CodeHandleList* handlers, Handle<Name> name,
332 Code::StubType type, IcCheckType check); 340 Code::StubType type, IcCheckType check);
(...skipping 342 matching lines...) Expand 10 before | Expand all | Expand 10 after
675 Handle<JSFunction> constant_function_; 683 Handle<JSFunction> constant_function_;
676 bool is_simple_api_call_; 684 bool is_simple_api_call_;
677 Handle<FunctionTemplateInfo> expected_receiver_type_; 685 Handle<FunctionTemplateInfo> expected_receiver_type_;
678 Handle<CallHandlerInfo> api_call_info_; 686 Handle<CallHandlerInfo> api_call_info_;
679 }; 687 };
680 688
681 689
682 } } // namespace v8::internal 690 } } // namespace v8::internal
683 691
684 #endif // V8_STUB_CACHE_H_ 692 #endif // V8_STUB_CACHE_H_
OLDNEW
« no previous file with comments | « src/runtime.cc ('k') | src/stub-cache.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698