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

Side by Side Diff: src/heap.h

Issue 5985012: Rename write buffers to store buffers. (Closed) Base URL: http://v8.googlecode.com/svn/branches/experimental/gc/
Patch Set: Created 9 years, 11 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/code-stubs.h ('k') | src/heap-inl.h » ('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 2010 the V8 project authors. All rights reserved. 1 // Copyright 2010 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 30 matching lines...) Expand all
41 // Defines all the roots in Heap. 41 // Defines all the roots in Heap.
42 #define UNCONDITIONAL_STRONG_ROOT_LIST(V) \ 42 #define UNCONDITIONAL_STRONG_ROOT_LIST(V) \
43 /* Put the byte array map early. We need it to be in place by the time */ \ 43 /* Put the byte array map early. We need it to be in place by the time */ \
44 /* the deserializer hits the next page, since it wants to put a byte */ \ 44 /* the deserializer hits the next page, since it wants to put a byte */ \
45 /* array in the unused space at the end of the page. */ \ 45 /* array in the unused space at the end of the page. */ \
46 V(Map, byte_array_map, ByteArrayMap) \ 46 V(Map, byte_array_map, ByteArrayMap) \
47 V(Map, one_pointer_filler_map, OnePointerFillerMap) \ 47 V(Map, one_pointer_filler_map, OnePointerFillerMap) \
48 V(Map, two_pointer_filler_map, TwoPointerFillerMap) \ 48 V(Map, two_pointer_filler_map, TwoPointerFillerMap) \
49 /* Cluster the most popular ones in a few cache lines here at the top. */ \ 49 /* Cluster the most popular ones in a few cache lines here at the top. */ \
50 V(Smi, stack_limit, StackLimit) \ 50 V(Smi, stack_limit, StackLimit) \
51 V(Smi, write_buffer_top, WriteBufferTop) \ 51 V(Smi, store_buffer_top, StoreBufferTop) \
52 V(Object, undefined_value, UndefinedValue) \ 52 V(Object, undefined_value, UndefinedValue) \
53 V(Object, the_hole_value, TheHoleValue) \ 53 V(Object, the_hole_value, TheHoleValue) \
54 V(Object, null_value, NullValue) \ 54 V(Object, null_value, NullValue) \
55 V(Object, true_value, TrueValue) \ 55 V(Object, true_value, TrueValue) \
56 V(Object, false_value, FalseValue) \ 56 V(Object, false_value, FalseValue) \
57 V(Map, heap_number_map, HeapNumberMap) \ 57 V(Map, heap_number_map, HeapNumberMap) \
58 V(Map, global_context_map, GlobalContextMap) \ 58 V(Map, global_context_map, GlobalContextMap) \
59 V(Map, fixed_array_map, FixedArrayMap) \ 59 V(Map, fixed_array_map, FixedArrayMap) \
60 V(Map, fixed_cow_array_map, FixedCOWArrayMap) \ 60 V(Map, fixed_cow_array_map, FixedCOWArrayMap) \
61 V(Object, no_interceptor_result_sentinel, NoInterceptorResultSentinel) \ 61 V(Object, no_interceptor_result_sentinel, NoInterceptorResultSentinel) \
(...skipping 837 matching lines...) Expand 10 before | Expand all | Expand 10 after
899 899
900 // Sets the non_monomorphic_cache_ (only used when expanding the dictionary). 900 // Sets the non_monomorphic_cache_ (only used when expanding the dictionary).
901 static void public_set_non_monomorphic_cache(NumberDictionary* value) { 901 static void public_set_non_monomorphic_cache(NumberDictionary* value) {
902 roots_[kNonMonomorphicCacheRootIndex] = value; 902 roots_[kNonMonomorphicCacheRootIndex] = value;
903 } 903 }
904 904
905 static void public_set_empty_script(Script* script) { 905 static void public_set_empty_script(Script* script) {
906 roots_[kEmptyScriptRootIndex] = script; 906 roots_[kEmptyScriptRootIndex] = script;
907 } 907 }
908 908
909 static void public_set_write_buffer_top(Address* top) { 909 static void public_set_store_buffer_top(Address* top) {
910 roots_[kWriteBufferTopRootIndex] = reinterpret_cast<Smi*>(top); 910 roots_[kStoreBufferTopRootIndex] = reinterpret_cast<Smi*>(top);
911 } 911 }
912 912
913 // Update the next script id. 913 // Update the next script id.
914 static inline void SetLastScriptId(Object* last_script_id); 914 static inline void SetLastScriptId(Object* last_script_id);
915 915
916 // Generated code can embed this address to get access to the roots. 916 // Generated code can embed this address to get access to the roots.
917 static Object** roots_address() { return roots_; } 917 static Object** roots_address() { return roots_; }
918 918
919 static Address* write_buffer_top_address() { 919 static Address* store_buffer_top_address() {
920 return reinterpret_cast<Address*>(&roots_[kWriteBufferTopRootIndex]); 920 return reinterpret_cast<Address*>(&roots_[kStoreBufferTopRootIndex]);
921 } 921 }
922 922
923 // Get address of global contexts list for serialization support. 923 // Get address of global contexts list for serialization support.
924 static Object** global_contexts_list_address() { 924 static Object** global_contexts_list_address() {
925 return &global_contexts_list_; 925 return &global_contexts_list_;
926 } 926 }
927 927
928 #ifdef DEBUG 928 #ifdef DEBUG
929 static void Print(); 929 static void Print();
930 static void PrintHandles(); 930 static void PrintHandles();
(...skipping 1200 matching lines...) Expand 10 before | Expand all | Expand 10 after
2131 // Return whether this object should be retained. If NULL is returned the 2131 // Return whether this object should be retained. If NULL is returned the
2132 // object has no references. Otherwise the address of the retained object 2132 // object has no references. Otherwise the address of the retained object
2133 // should be returned as in some GC situations the object has been moved. 2133 // should be returned as in some GC situations the object has been moved.
2134 virtual Object* RetainAs(Object* object) = 0; 2134 virtual Object* RetainAs(Object* object) = 0;
2135 }; 2135 };
2136 2136
2137 2137
2138 } } // namespace v8::internal 2138 } } // namespace v8::internal
2139 2139
2140 #endif // V8_HEAP_H_ 2140 #endif // V8_HEAP_H_
OLDNEW
« no previous file with comments | « src/code-stubs.h ('k') | src/heap-inl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698