OLD | NEW |
1 // Copyright 2006-2008 the V8 project authors. All rights reserved. | 1 // Copyright 2006-2008 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
111 V(Object, null_value) \ | 111 V(Object, null_value) \ |
112 V(Object, true_value) \ | 112 V(Object, true_value) \ |
113 V(Object, false_value) \ | 113 V(Object, false_value) \ |
114 V(String, empty_string) \ | 114 V(String, empty_string) \ |
115 V(FixedArray, empty_fixed_array) \ | 115 V(FixedArray, empty_fixed_array) \ |
116 V(DescriptorArray, empty_descriptor_array) \ | 116 V(DescriptorArray, empty_descriptor_array) \ |
117 V(Object, the_hole_value) \ | 117 V(Object, the_hole_value) \ |
118 V(Map, neander_map) \ | 118 V(Map, neander_map) \ |
119 V(JSObject, message_listeners) \ | 119 V(JSObject, message_listeners) \ |
120 V(Proxy, prototype_accessors) \ | 120 V(Proxy, prototype_accessors) \ |
121 V(Dictionary, code_stubs) \ | 121 V(NumberDictionary, code_stubs) \ |
122 V(Dictionary, non_monomorphic_cache) \ | 122 V(NumberDictionary, non_monomorphic_cache) \ |
123 V(Code, js_entry_code) \ | 123 V(Code, js_entry_code) \ |
124 V(Code, js_construct_entry_code) \ | 124 V(Code, js_construct_entry_code) \ |
125 V(Code, c_entry_code) \ | 125 V(Code, c_entry_code) \ |
126 V(Code, c_entry_debug_break_code) \ | 126 V(Code, c_entry_debug_break_code) \ |
127 V(FixedArray, number_string_cache) \ | 127 V(FixedArray, number_string_cache) \ |
128 V(FixedArray, single_character_string_cache) \ | 128 V(FixedArray, single_character_string_cache) \ |
129 V(FixedArray, natives_source_cache) \ | 129 V(FixedArray, natives_source_cache) \ |
130 V(Object, last_script_id) | 130 V(Object, last_script_id) |
131 | 131 |
132 | 132 |
(...skipping 552 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
685 // Checks whether an address/object in a space. | 685 // Checks whether an address/object in a space. |
686 // Currently used by tests and heap verification only. | 686 // Currently used by tests and heap verification only. |
687 static bool InSpace(Address addr, AllocationSpace space); | 687 static bool InSpace(Address addr, AllocationSpace space); |
688 static bool InSpace(HeapObject* value, AllocationSpace space); | 688 static bool InSpace(HeapObject* value, AllocationSpace space); |
689 | 689 |
690 // Finds out which space an object should get promoted to based on its type. | 690 // Finds out which space an object should get promoted to based on its type. |
691 static inline OldSpace* TargetSpace(HeapObject* object); | 691 static inline OldSpace* TargetSpace(HeapObject* object); |
692 static inline AllocationSpace TargetSpaceId(InstanceType type); | 692 static inline AllocationSpace TargetSpaceId(InstanceType type); |
693 | 693 |
694 // Sets the stub_cache_ (only used when expanding the dictionary). | 694 // Sets the stub_cache_ (only used when expanding the dictionary). |
695 static void set_code_stubs(Dictionary* value) { code_stubs_ = value; } | 695 static void set_code_stubs(NumberDictionary* value) { code_stubs_ = value; } |
696 | 696 |
697 // Sets the non_monomorphic_cache_ (only used when expanding the dictionary). | 697 // Sets the non_monomorphic_cache_ (only used when expanding the dictionary). |
698 static void set_non_monomorphic_cache(Dictionary* value) { | 698 static void set_non_monomorphic_cache(NumberDictionary* value) { |
699 non_monomorphic_cache_ = value; | 699 non_monomorphic_cache_ = value; |
700 } | 700 } |
701 | 701 |
702 // Update the next script id. | 702 // Update the next script id. |
703 static inline void SetLastScriptId(Object* last_script_id); | 703 static inline void SetLastScriptId(Object* last_script_id); |
704 | 704 |
705 #ifdef DEBUG | 705 #ifdef DEBUG |
706 static void Print(); | 706 static void Print(); |
707 static void PrintHandles(); | 707 static void PrintHandles(); |
708 | 708 |
(...skipping 692 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1401 int marked_count_; | 1401 int marked_count_; |
1402 | 1402 |
1403 // The count from the end of the previous full GC. Will be zero if there | 1403 // The count from the end of the previous full GC. Will be zero if there |
1404 // was no previous full GC. | 1404 // was no previous full GC. |
1405 int previous_marked_count_; | 1405 int previous_marked_count_; |
1406 }; | 1406 }; |
1407 | 1407 |
1408 } } // namespace v8::internal | 1408 } } // namespace v8::internal |
1409 | 1409 |
1410 #endif // V8_HEAP_H_ | 1410 #endif // V8_HEAP_H_ |
OLD | NEW |