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

Side by Side Diff: src/hydrogen.h

Issue 398053002: Introduce FLAG_vector_ics. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: REBASE. Created 6 years, 5 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/full-codegen.h ('k') | src/hydrogen.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_HYDROGEN_H_ 5 #ifndef V8_HYDROGEN_H_
6 #define V8_HYDROGEN_H_ 6 #define V8_HYDROGEN_H_
7 7
8 #include "src/v8.h" 8 #include "src/v8.h"
9 9
10 #include "src/accessors.h" 10 #include "src/accessors.h"
(...skipping 2397 matching lines...) Expand 10 before | Expand all | Expand 10 after
2408 Handle<JSFunction> caller, 2408 Handle<JSFunction> caller,
2409 const char* failure_reason); 2409 const char* failure_reason);
2410 2410
2411 void HandleGlobalVariableAssignment(Variable* var, 2411 void HandleGlobalVariableAssignment(Variable* var,
2412 HValue* value, 2412 HValue* value,
2413 BailoutId ast_id); 2413 BailoutId ast_id);
2414 2414
2415 void HandlePropertyAssignment(Assignment* expr); 2415 void HandlePropertyAssignment(Assignment* expr);
2416 void HandleCompoundAssignment(Assignment* expr); 2416 void HandleCompoundAssignment(Assignment* expr);
2417 void HandlePolymorphicNamedFieldAccess(PropertyAccessType access_type, 2417 void HandlePolymorphicNamedFieldAccess(PropertyAccessType access_type,
2418 Expression* expr,
2418 BailoutId ast_id, 2419 BailoutId ast_id,
2419 BailoutId return_id, 2420 BailoutId return_id,
2420 HValue* object, 2421 HValue* object,
2421 HValue* value, 2422 HValue* value,
2422 SmallMapList* types, 2423 SmallMapList* types,
2423 Handle<String> name); 2424 Handle<String> name);
2424 2425
2425 HValue* BuildAllocateExternalElements( 2426 HValue* BuildAllocateExternalElements(
2426 ExternalArrayType array_type, 2427 ExternalArrayType array_type,
2427 bool is_zero_byte_offset, 2428 bool is_zero_byte_offset,
(...skipping 157 matching lines...) Expand 10 before | Expand all | Expand 10 after
2585 HValue* index); 2586 HValue* index);
2586 2587
2587 HValue* BuildBinaryOperation( 2588 HValue* BuildBinaryOperation(
2588 BinaryOperation* expr, 2589 BinaryOperation* expr,
2589 HValue* left, 2590 HValue* left,
2590 HValue* right, 2591 HValue* right,
2591 PushBeforeSimulateBehavior push_sim_result); 2592 PushBeforeSimulateBehavior push_sim_result);
2592 HInstruction* BuildIncrement(bool returns_original_input, 2593 HInstruction* BuildIncrement(bool returns_original_input,
2593 CountOperation* expr); 2594 CountOperation* expr);
2594 HInstruction* BuildKeyedGeneric(PropertyAccessType access_type, 2595 HInstruction* BuildKeyedGeneric(PropertyAccessType access_type,
2596 Expression* expr,
2595 HValue* object, 2597 HValue* object,
2596 HValue* key, 2598 HValue* key,
2597 HValue* value); 2599 HValue* value);
2598 2600
2599 HInstruction* TryBuildConsolidatedElementLoad(HValue* object, 2601 HInstruction* TryBuildConsolidatedElementLoad(HValue* object,
2600 HValue* key, 2602 HValue* key,
2601 HValue* val, 2603 HValue* val,
2602 SmallMapList* maps); 2604 SmallMapList* maps);
2603 2605
2604 LoadKeyedHoleMode BuildKeyedHoleMode(Handle<Map> map); 2606 LoadKeyedHoleMode BuildKeyedHoleMode(Handle<Map> map);
2605 2607
2606 HInstruction* BuildMonomorphicElementAccess(HValue* object, 2608 HInstruction* BuildMonomorphicElementAccess(HValue* object,
2607 HValue* key, 2609 HValue* key,
2608 HValue* val, 2610 HValue* val,
2609 HValue* dependency, 2611 HValue* dependency,
2610 Handle<Map> map, 2612 Handle<Map> map,
2611 PropertyAccessType access_type, 2613 PropertyAccessType access_type,
2612 KeyedAccessStoreMode store_mode); 2614 KeyedAccessStoreMode store_mode);
2613 2615
2614 HValue* HandlePolymorphicElementAccess(HValue* object, 2616 HValue* HandlePolymorphicElementAccess(Expression* expr,
2617 HValue* object,
2615 HValue* key, 2618 HValue* key,
2616 HValue* val, 2619 HValue* val,
2617 SmallMapList* maps, 2620 SmallMapList* maps,
2618 PropertyAccessType access_type, 2621 PropertyAccessType access_type,
2619 KeyedAccessStoreMode store_mode, 2622 KeyedAccessStoreMode store_mode,
2620 bool* has_side_effects); 2623 bool* has_side_effects);
2621 2624
2622 HValue* HandleKeyedElementAccess(HValue* obj, 2625 HValue* HandleKeyedElementAccess(HValue* obj,
2623 HValue* key, 2626 HValue* key,
2624 HValue* val, 2627 HValue* val,
2625 Expression* expr, 2628 Expression* expr,
2626 PropertyAccessType access_type, 2629 PropertyAccessType access_type,
2627 bool* has_side_effects); 2630 bool* has_side_effects);
2628 2631
2629 HInstruction* BuildNamedGeneric(PropertyAccessType access, 2632 HInstruction* BuildNamedGeneric(PropertyAccessType access,
2633 Expression* expr,
2630 HValue* object, 2634 HValue* object,
2631 Handle<String> name, 2635 Handle<String> name,
2632 HValue* value, 2636 HValue* value,
2633 bool is_uninitialized = false); 2637 bool is_uninitialized = false);
2634 2638
2635 HCheckMaps* AddCheckMap(HValue* object, Handle<Map> map); 2639 HCheckMaps* AddCheckMap(HValue* object, Handle<Map> map);
2636 2640
2637 void BuildLoad(Property* property, 2641 void BuildLoad(Property* property,
2638 BailoutId ast_id); 2642 BailoutId ast_id);
2639 void PushLoad(Property* property, 2643 void PushLoad(Property* property,
(...skipping 251 matching lines...) Expand 10 before | Expand all | Expand 10 after
2891 } 2895 }
2892 2896
2893 private: 2897 private:
2894 HGraphBuilder* builder_; 2898 HGraphBuilder* builder_;
2895 }; 2899 };
2896 2900
2897 2901
2898 } } // namespace v8::internal 2902 } } // namespace v8::internal
2899 2903
2900 #endif // V8_HYDROGEN_H_ 2904 #endif // V8_HYDROGEN_H_
OLDNEW
« no previous file with comments | « src/full-codegen.h ('k') | src/hydrogen.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698