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

Side by Side Diff: src/heap/spaces.cc

Issue 2759963003: S390: Change printf format specifier for size_t in heap.cc and spaces.cc (Closed)
Patch Set: Created 3 years, 9 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
« no previous file with comments | « src/heap/heap.cc ('k') | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2011 the V8 project authors. All rights reserved. 1 // Copyright 2011 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 #include "src/heap/spaces.h" 5 #include "src/heap/spaces.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "src/base/bits.h" 9 #include "src/base/bits.h"
10 #include "src/base/platform/platform.h" 10 #include "src/base/platform/platform.h"
(...skipping 1019 matching lines...) Expand 10 before | Expand all | Expand 10 after
1030 void MemoryAllocator::ZapBlock(Address start, size_t size) { 1030 void MemoryAllocator::ZapBlock(Address start, size_t size) {
1031 for (size_t s = 0; s + kPointerSize <= size; s += kPointerSize) { 1031 for (size_t s = 0; s + kPointerSize <= size; s += kPointerSize) {
1032 Memory::Address_at(start + s) = kZapValue; 1032 Memory::Address_at(start + s) = kZapValue;
1033 } 1033 }
1034 } 1034 }
1035 1035
1036 #ifdef DEBUG 1036 #ifdef DEBUG
1037 void MemoryAllocator::ReportStatistics() { 1037 void MemoryAllocator::ReportStatistics() {
1038 size_t size = Size(); 1038 size_t size = Size();
1039 float pct = static_cast<float>(capacity_ - size) / capacity_; 1039 float pct = static_cast<float>(capacity_ - size) / capacity_;
1040 PrintF(" capacity: %zu , used: %" V8PRIdPTR ", available: %%%d\n\n", 1040 PrintF(" capacity: %zu , used: %" PRIuS ", available: %%%d\n\n",
1041 capacity_, size, static_cast<int>(pct * 100)); 1041 capacity_, size, static_cast<int>(pct * 100));
1042 } 1042 }
1043 #endif 1043 #endif
1044 1044
1045 size_t MemoryAllocator::CodePageGuardStartOffset() { 1045 size_t MemoryAllocator::CodePageGuardStartOffset() {
1046 // We are guarding code pages: the first OS page after the header 1046 // We are guarding code pages: the first OS page after the header
1047 // will be protected as non-writable. 1047 // will be protected as non-writable.
1048 return RoundUp(Page::kObjectStartOffset, GetCommitPageSize()); 1048 return RoundUp(Page::kObjectStartOffset, GetCommitPageSize());
1049 } 1049 }
1050 1050
(...skipping 1276 matching lines...) Expand 10 before | Expand all | Expand 10 after
2327 } 2327 }
2328 } 2328 }
2329 LOG(isolate, HeapSampleEndEvent("NewSpace", description)); 2329 LOG(isolate, HeapSampleEndEvent("NewSpace", description));
2330 } 2330 }
2331 2331
2332 2332
2333 void NewSpace::ReportStatistics() { 2333 void NewSpace::ReportStatistics() {
2334 #ifdef DEBUG 2334 #ifdef DEBUG
2335 if (FLAG_heap_stats) { 2335 if (FLAG_heap_stats) {
2336 float pct = static_cast<float>(Available()) / TotalCapacity(); 2336 float pct = static_cast<float>(Available()) / TotalCapacity();
2337 PrintF(" capacity: %" V8PRIdPTR ", available: %" V8PRIdPTR ", %%%d\n", 2337 PrintF(" capacity: %" PRIuS ", available: %" PRIuS ", %%%d\n",
2338 TotalCapacity(), Available(), static_cast<int>(pct * 100)); 2338 TotalCapacity(), Available(), static_cast<int>(pct * 100));
2339 PrintF("\n Object Histogram:\n"); 2339 PrintF("\n Object Histogram:\n");
2340 for (int i = 0; i <= LAST_TYPE; i++) { 2340 for (int i = 0; i <= LAST_TYPE; i++) {
2341 if (allocated_histogram_[i].number() > 0) { 2341 if (allocated_histogram_[i].number() > 0) {
2342 PrintF(" %-34s%10d (%10d bytes)\n", allocated_histogram_[i].name(), 2342 PrintF(" %-34s%10d (%10d bytes)\n", allocated_histogram_[i].name(),
2343 allocated_histogram_[i].number(), 2343 allocated_histogram_[i].number(),
2344 allocated_histogram_[i].bytes()); 2344 allocated_histogram_[i].bytes());
2345 } 2345 }
2346 } 2346 }
2347 PrintF("\n"); 2347 PrintF("\n");
(...skipping 563 matching lines...) Expand 10 before | Expand all | Expand 10 after
2911 2911
2912 // If sweeper threads are active, wait for them at that point and steal 2912 // If sweeper threads are active, wait for them at that point and steal
2913 // elements form their free-lists. Allocation may still fail their which 2913 // elements form their free-lists. Allocation may still fail their which
2914 // would indicate that there is not enough memory for the given allocation. 2914 // would indicate that there is not enough memory for the given allocation.
2915 return SweepAndRetryAllocation(size_in_bytes); 2915 return SweepAndRetryAllocation(size_in_bytes);
2916 } 2916 }
2917 2917
2918 #ifdef DEBUG 2918 #ifdef DEBUG
2919 void PagedSpace::ReportStatistics() { 2919 void PagedSpace::ReportStatistics() {
2920 int pct = static_cast<int>(Available() * 100 / Capacity()); 2920 int pct = static_cast<int>(Available() * 100 / Capacity());
2921 PrintF(" capacity: %" V8PRIdPTR ", waste: %" V8PRIdPTR 2921 PrintF(" capacity: %" PRIuS ", waste: %" PRIuS
2922 ", available: %" V8PRIdPTR ", %%%d\n", 2922 ", available: %" PRIuS ", %%%d\n",
2923 Capacity(), Waste(), Available(), pct); 2923 Capacity(), Waste(), Available(), pct);
2924 2924
2925 heap()->mark_compact_collector()->EnsureSweepingCompleted(); 2925 heap()->mark_compact_collector()->EnsureSweepingCompleted();
2926 ClearHistograms(heap()->isolate()); 2926 ClearHistograms(heap()->isolate());
2927 HeapObjectIterator obj_it(this); 2927 HeapObjectIterator obj_it(this);
2928 for (HeapObject* obj = obj_it.Next(); obj != NULL; obj = obj_it.Next()) 2928 for (HeapObject* obj = obj_it.Next(); obj != NULL; obj = obj_it.Next())
2929 CollectHistogramInfo(obj); 2929 CollectHistogramInfo(obj);
2930 ReportHistogram(heap()->isolate(), true); 2930 ReportHistogram(heap()->isolate(), true);
2931 } 2931 }
2932 #endif 2932 #endif
(...skipping 320 matching lines...) Expand 10 before | Expand all | Expand 10 after
3253 void LargeObjectSpace::Print() { 3253 void LargeObjectSpace::Print() {
3254 OFStream os(stdout); 3254 OFStream os(stdout);
3255 LargeObjectIterator it(this); 3255 LargeObjectIterator it(this);
3256 for (HeapObject* obj = it.Next(); obj != NULL; obj = it.Next()) { 3256 for (HeapObject* obj = it.Next(); obj != NULL; obj = it.Next()) {
3257 obj->Print(os); 3257 obj->Print(os);
3258 } 3258 }
3259 } 3259 }
3260 3260
3261 3261
3262 void LargeObjectSpace::ReportStatistics() { 3262 void LargeObjectSpace::ReportStatistics() {
3263 PrintF(" size: %" V8PRIdPTR "\n", size_); 3263 PrintF(" size: %" PRIuS "\n", size_);
3264 int num_objects = 0; 3264 int num_objects = 0;
3265 ClearHistograms(heap()->isolate()); 3265 ClearHistograms(heap()->isolate());
3266 LargeObjectIterator it(this); 3266 LargeObjectIterator it(this);
3267 for (HeapObject* obj = it.Next(); obj != NULL; obj = it.Next()) { 3267 for (HeapObject* obj = it.Next(); obj != NULL; obj = it.Next()) {
3268 num_objects++; 3268 num_objects++;
3269 CollectHistogramInfo(obj); 3269 CollectHistogramInfo(obj);
3270 } 3270 }
3271 3271
3272 PrintF( 3272 PrintF(
3273 " number of objects %d, " 3273 " number of objects %d, "
3274 "size of objects %" V8PRIdPTR "\n", 3274 "size of objects %" PRIuS "\n",
3275 num_objects, objects_size_); 3275 num_objects, objects_size_);
3276 if (num_objects > 0) ReportHistogram(heap()->isolate(), false); 3276 if (num_objects > 0) ReportHistogram(heap()->isolate(), false);
3277 } 3277 }
3278 3278
3279 3279
3280 void Page::Print() { 3280 void Page::Print() {
3281 // Make a best-effort to print the objects in the page. 3281 // Make a best-effort to print the objects in the page.
3282 PrintF("Page@%p in %s\n", static_cast<void*>(this->address()), 3282 PrintF("Page@%p in %s\n", static_cast<void*>(this->address()),
3283 AllocationSpaceName(this->owner()->identity())); 3283 AllocationSpaceName(this->owner()->identity()));
3284 printf(" --------------------------------------\n"); 3284 printf(" --------------------------------------\n");
3285 HeapObjectIterator objects(this); 3285 HeapObjectIterator objects(this);
3286 unsigned mark_size = 0; 3286 unsigned mark_size = 0;
3287 for (HeapObject* object = objects.Next(); object != NULL; 3287 for (HeapObject* object = objects.Next(); object != NULL;
3288 object = objects.Next()) { 3288 object = objects.Next()) {
3289 bool is_marked = ObjectMarking::IsBlackOrGrey(object); 3289 bool is_marked = ObjectMarking::IsBlackOrGrey(object);
3290 PrintF(" %c ", (is_marked ? '!' : ' ')); // Indent a little. 3290 PrintF(" %c ", (is_marked ? '!' : ' ')); // Indent a little.
3291 if (is_marked) { 3291 if (is_marked) {
3292 mark_size += object->Size(); 3292 mark_size += object->Size();
3293 } 3293 }
3294 object->ShortPrint(); 3294 object->ShortPrint();
3295 PrintF("\n"); 3295 PrintF("\n");
3296 } 3296 }
3297 printf(" --------------------------------------\n"); 3297 printf(" --------------------------------------\n");
3298 printf(" Marked: %x, LiveCount: %x\n", mark_size, LiveBytes()); 3298 printf(" Marked: %x, LiveCount: %x\n", mark_size, LiveBytes());
3299 } 3299 }
3300 3300
3301 #endif // DEBUG 3301 #endif // DEBUG
3302 } // namespace internal 3302 } // namespace internal
3303 } // namespace v8 3303 } // namespace v8
OLDNEW
« no previous file with comments | « src/heap/heap.cc ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698