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 202 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
213 // --------------------------------------------------------------------- | 213 // --------------------------------------------------------------------- |
214 // Card marking support | 214 // Card marking support |
215 | 215 |
216 static const uint32_t kAllRegionsCleanMarks = 0x0; | 216 static const uint32_t kAllRegionsCleanMarks = 0x0; |
217 static const uint32_t kAllRegionsDirtyMarks = 0xFFFFFFFF; | 217 static const uint32_t kAllRegionsDirtyMarks = 0xFFFFFFFF; |
218 | 218 |
219 inline uint32_t GetRegionMarks(); | 219 inline uint32_t GetRegionMarks(); |
220 inline void SetRegionMarks(uint32_t dirty); | 220 inline void SetRegionMarks(uint32_t dirty); |
221 | 221 |
222 inline uint32_t GetRegionMaskForAddress(Address addr); | 222 inline uint32_t GetRegionMaskForAddress(Address addr); |
| 223 inline uint32_t GetRegionMaskForSpan(Address start, int length_in_bytes); |
223 inline int GetRegionNumberForAddress(Address addr); | 224 inline int GetRegionNumberForAddress(Address addr); |
224 | 225 |
225 inline void MarkRegionDirty(Address addr); | 226 inline void MarkRegionDirty(Address addr); |
226 inline bool IsRegionDirty(Address addr); | 227 inline bool IsRegionDirty(Address addr); |
227 | 228 |
228 inline void ClearRegionMarks(Address start, | 229 inline void ClearRegionMarks(Address start, |
229 Address end, | 230 Address end, |
230 bool reaches_limit); | 231 bool reaches_limit); |
231 | 232 |
232 // Page size in bytes. This must be a multiple of the OS page size. | 233 // Page size in bytes. This must be a multiple of the OS page size. |
(...skipping 1954 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2187 | 2188 |
2188 private: | 2189 private: |
2189 LargeObjectChunk* current_; | 2190 LargeObjectChunk* current_; |
2190 HeapObjectCallback size_func_; | 2191 HeapObjectCallback size_func_; |
2191 }; | 2192 }; |
2192 | 2193 |
2193 | 2194 |
2194 } } // namespace v8::internal | 2195 } } // namespace v8::internal |
2195 | 2196 |
2196 #endif // V8_SPACES_H_ | 2197 #endif // V8_SPACES_H_ |
OLD | NEW |