OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2013 Google Inc. All rights reserved. | 2 * Copyright (C) 2013 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 921 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
932 static Address checkAndMarkPointer(Visitor*, Address); | 932 static Address checkAndMarkPointer(Visitor*, Address); |
933 | 933 |
934 #if ENABLE(GC_TRACING) | 934 #if ENABLE(GC_TRACING) |
935 // Dump the path to specified object on the next GC. This method is to be in
voked from GDB. | 935 // Dump the path to specified object on the next GC. This method is to be in
voked from GDB. |
936 static void dumpPathToObjectOnNextGC(void* p); | 936 static void dumpPathToObjectOnNextGC(void* p); |
937 | 937 |
938 // Forcibly find GCInfo of the object at Address. | 938 // Forcibly find GCInfo of the object at Address. |
939 // This is slow and should only be used for debug purposes. | 939 // This is slow and should only be used for debug purposes. |
940 // It involves finding the heap page and scanning the heap page for an objec
t header. | 940 // It involves finding the heap page and scanning the heap page for an objec
t header. |
941 static const GCInfo* findGCInfo(Address); | 941 static const GCInfo* findGCInfo(Address); |
| 942 |
| 943 static String createBacktraceString(); |
942 #endif | 944 #endif |
943 | 945 |
944 // Collect heap stats for all threads attached to the Blink | 946 // Collect heap stats for all threads attached to the Blink |
945 // garbage collector. Should only be called during garbage | 947 // garbage collector. Should only be called during garbage |
946 // collection where threads are known to be at safe points. | 948 // collection where threads are known to be at safe points. |
947 static void getStats(HeapStats*); | 949 static void getStats(HeapStats*); |
948 | 950 |
949 static void getHeapSpaceSize(uint64_t*, uint64_t*); | 951 static void getHeapSpaceSize(uint64_t*, uint64_t*); |
950 | 952 |
951 static bool isConsistentForGC(); | 953 static bool isConsistentForGC(); |
(...skipping 1344 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2296 // to export. This forces it to export all the methods from ThreadHeap. | 2298 // to export. This forces it to export all the methods from ThreadHeap. |
2297 template<> void ThreadHeap<FinalizedHeapObjectHeader>::addPageToHeap(const GCInf
o*); | 2299 template<> void ThreadHeap<FinalizedHeapObjectHeader>::addPageToHeap(const GCInf
o*); |
2298 template<> void ThreadHeap<HeapObjectHeader>::addPageToHeap(const GCInfo*); | 2300 template<> void ThreadHeap<HeapObjectHeader>::addPageToHeap(const GCInfo*); |
2299 extern template class PLATFORM_EXPORT ThreadHeap<FinalizedHeapObjectHeader>; | 2301 extern template class PLATFORM_EXPORT ThreadHeap<FinalizedHeapObjectHeader>; |
2300 extern template class PLATFORM_EXPORT ThreadHeap<HeapObjectHeader>; | 2302 extern template class PLATFORM_EXPORT ThreadHeap<HeapObjectHeader>; |
2301 #endif | 2303 #endif |
2302 | 2304 |
2303 } | 2305 } |
2304 | 2306 |
2305 #endif // Heap_h | 2307 #endif // Heap_h |
OLD | NEW |