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

Side by Side Diff: third_party/tcmalloc/chromium/src/memory_region_map.cc

Issue 9310021: [NOT TO COMMIT!] Merge Chromium-specific changes in tcmalloc thru. the original gperftools r136. (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: Fixed some build inhibitor. Created 8 years, 10 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
OLDNEW
1 /* Copyright (c) 2006, Google Inc. 1 /* Copyright (c) 2006, Google Inc.
2 * All rights reserved. 2 * 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 600 matching lines...) Expand 10 before | Expand all | Expand 10 after
611 "to %"PRIuS" flags %d new_addr=0x%"PRIxPTR, 611 "to %"PRIuS" flags %d new_addr=0x%"PRIxPTR,
612 (uintptr_t)result, (uintptr_t)old_addr, 612 (uintptr_t)result, (uintptr_t)old_addr,
613 old_size, new_size, flags, 613 old_size, new_size, flags,
614 flags & MREMAP_FIXED ? (uintptr_t)new_addr : 0); 614 flags & MREMAP_FIXED ? (uintptr_t)new_addr : 0);
615 if (result != reinterpret_cast<void*>(-1)) { 615 if (result != reinterpret_cast<void*>(-1)) {
616 RecordRegionRemoval(old_addr, old_size); 616 RecordRegionRemoval(old_addr, old_size);
617 RecordRegionAddition(result, new_size); 617 RecordRegionAddition(result, new_size);
618 } 618 }
619 } 619 }
620 620
621 extern "C" void* __sbrk(ptrdiff_t increment); // defined in libc 621 extern "C" void* __sbrk(std::ptrdiff_t increment); // defined in libc
622 622
623 void MemoryRegionMap::SbrkHook(const void* result, ptrdiff_t increment) { 623 void MemoryRegionMap::SbrkHook(const void* result, std::ptrdiff_t increment) {
624 RAW_VLOG(10, "Sbrk = 0x%"PRIxPTR" of %"PRIdS"", (uintptr_t)result, increment); 624 RAW_VLOG(10, "Sbrk = 0x%"PRIxPTR" of %"PRIdS"", (uintptr_t)result, increment);
625 if (result != reinterpret_cast<void*>(-1)) { 625 if (result != reinterpret_cast<void*>(-1)) {
626 if (increment > 0) { 626 if (increment > 0) {
627 void* new_end = sbrk(0); 627 void* new_end = sbrk(0);
628 RecordRegionAddition(result, reinterpret_cast<uintptr_t>(new_end) - 628 RecordRegionAddition(result, reinterpret_cast<uintptr_t>(new_end) -
629 reinterpret_cast<uintptr_t>(result)); 629 reinterpret_cast<uintptr_t>(result));
630 } else if (increment < 0) { 630 } else if (increment < 0) {
631 void* new_end = sbrk(0); 631 void* new_end = sbrk(0);
632 RecordRegionRemoval(new_end, reinterpret_cast<uintptr_t>(result) - 632 RecordRegionRemoval(new_end, reinterpret_cast<uintptr_t>(result) -
633 reinterpret_cast<uintptr_t>(new_end)); 633 reinterpret_cast<uintptr_t>(new_end));
634 } 634 }
635 } 635 }
636 } 636 }
637 637
638 void MemoryRegionMap::LogAllLocked() { 638 void MemoryRegionMap::LogAllLocked() {
639 RAW_CHECK(LockIsHeld(), "should be held (by this thread)"); 639 RAW_CHECK(LockIsHeld(), "should be held (by this thread)");
640 RAW_LOG(INFO, "List of regions:"); 640 RAW_LOG(INFO, "List of regions:");
641 uintptr_t previous = 0; 641 uintptr_t previous = 0;
642 for (RegionSet::const_iterator r = regions_->begin(); 642 for (RegionSet::const_iterator r = regions_->begin();
643 r != regions_->end(); ++r) { 643 r != regions_->end(); ++r) {
644 RAW_LOG(INFO, "Memory region 0x%"PRIxPTR"..0x%"PRIxPTR" " 644 RAW_LOG(INFO, "Memory region 0x%"PRIxPTR"..0x%"PRIxPTR" "
645 "from 0x%"PRIxPTR" stack=%d", 645 "from 0x%"PRIxPTR" stack=%d",
646 r->start_addr, r->end_addr, r->caller(), r->is_stack); 646 r->start_addr, r->end_addr, r->caller(), r->is_stack);
647 RAW_CHECK(previous < r->end_addr, "wow, we messed up the set order"); 647 RAW_CHECK(previous < r->end_addr, "wow, we messed up the set order");
648 // this must be caused by uncontrolled recursive operations on regions_ 648 // this must be caused by uncontrolled recursive operations on regions_
649 previous = r->end_addr; 649 previous = r->end_addr;
650 } 650 }
651 RAW_LOG(INFO, "End of regions list"); 651 RAW_LOG(INFO, "End of regions list");
652 } 652 }
OLDNEW
« no previous file with comments | « third_party/tcmalloc/chromium/src/memory_region_map.h ('k') | third_party/tcmalloc/chromium/src/packed-cache-inl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698