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

Side by Side Diff: src/mark-compact.h

Issue 295933012: Revert "Inobject slack tracking is done on a per-closure basis instead of per-shared info basis." (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 7 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/ia32/builtins-ia32.cc ('k') | src/mark-compact.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_MARK_COMPACT_H_ 5 #ifndef V8_MARK_COMPACT_H_
6 #define V8_MARK_COMPACT_H_ 6 #define V8_MARK_COMPACT_H_
7 7
8 #include "compiler-intrinsics.h" 8 #include "compiler-intrinsics.h"
9 #include "spaces.h" 9 #include "spaces.h"
10 10
(...skipping 833 matching lines...) Expand 10 before | Expand all | Expand 10 after
844 void ClearNonLiveReferences(); 844 void ClearNonLiveReferences();
845 void ClearNonLivePrototypeTransitions(Map* map); 845 void ClearNonLivePrototypeTransitions(Map* map);
846 void ClearNonLiveMapTransitions(Map* map, MarkBit map_mark); 846 void ClearNonLiveMapTransitions(Map* map, MarkBit map_mark);
847 847
848 void ClearDependentCode(DependentCode* dependent_code); 848 void ClearDependentCode(DependentCode* dependent_code);
849 void ClearDependentICList(Object* head); 849 void ClearDependentICList(Object* head);
850 void ClearNonLiveDependentCode(DependentCode* dependent_code); 850 void ClearNonLiveDependentCode(DependentCode* dependent_code);
851 int ClearNonLiveDependentCodeInGroup(DependentCode* dependent_code, int group, 851 int ClearNonLiveDependentCodeInGroup(DependentCode* dependent_code, int group,
852 int start, int end, int new_start); 852 int start, int end, int new_start);
853 853
854 // Marking detaches initial maps from SharedFunctionInfo objects
855 // to make this reference weak. We need to reattach initial maps
856 // back after collection. This is either done during
857 // ClearNonLiveTransitions pass or by calling this function.
858 void ReattachInitialMaps();
859
854 // Mark all values associated with reachable keys in weak collections 860 // Mark all values associated with reachable keys in weak collections
855 // encountered so far. This might push new object or even new weak maps onto 861 // encountered so far. This might push new object or even new weak maps onto
856 // the marking stack. 862 // the marking stack.
857 void ProcessWeakCollections(); 863 void ProcessWeakCollections();
858 864
859 // After all reachable objects have been marked those weak map entries 865 // After all reachable objects have been marked those weak map entries
860 // with an unreachable key are removed from all encountered weak maps. 866 // with an unreachable key are removed from all encountered weak maps.
861 // The linked list of all encountered weak maps is destroyed. 867 // The linked list of all encountered weak maps is destroyed.
862 void ClearWeakCollections(); 868 void ClearWeakCollections();
863 869
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after
984 private: 990 private:
985 MarkCompactCollector* collector_; 991 MarkCompactCollector* collector_;
986 }; 992 };
987 993
988 994
989 const char* AllocationSpaceName(AllocationSpace space); 995 const char* AllocationSpaceName(AllocationSpace space);
990 996
991 } } // namespace v8::internal 997 } } // namespace v8::internal
992 998
993 #endif // V8_MARK_COMPACT_H_ 999 #endif // V8_MARK_COMPACT_H_
OLDNEW
« no previous file with comments | « src/ia32/builtins-ia32.cc ('k') | src/mark-compact.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698