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

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

Issue 7033062: Replaced ptrdiff_t with std::ptrdiff_t in all files to enable build with gcc-4.6.0. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 9 years, 6 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) 2005, Google Inc. 1 // Copyright (c) 2005, 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 84 matching lines...) Expand 10 before | Expand all | Expand 10 after
95 ATTRIBUTE_WEAK 95 ATTRIBUTE_WEAK
96 extern void InitialMallocHook_MMap(const void* result, 96 extern void InitialMallocHook_MMap(const void* result,
97 const void* start, 97 const void* start,
98 size_t size, 98 size_t size,
99 int protection, 99 int protection,
100 int flags, 100 int flags,
101 int fd, 101 int fd,
102 off_t offset); 102 off_t offset);
103 103
104 ATTRIBUTE_WEAK 104 ATTRIBUTE_WEAK
105 extern void InitialMallocHook_PreSbrk(ptrdiff_t increment); 105 extern void InitialMallocHook_PreSbrk(std::ptrdiff_t increment);
106 106
107 ATTRIBUTE_WEAK 107 ATTRIBUTE_WEAK
108 extern void InitialMallocHook_Sbrk(const void* result, ptrdiff_t increment); 108 extern void InitialMallocHook_Sbrk(const void* result, std::ptrdiff_t increment) ;
109 109
110 namespace base { namespace internal { 110 namespace base { namespace internal {
111 template<typename PtrT> 111 template<typename PtrT>
112 PtrT AtomicPtr<PtrT>::Exchange(PtrT new_val) { 112 PtrT AtomicPtr<PtrT>::Exchange(PtrT new_val) {
113 base::subtle::MemoryBarrier(); // Release semantics. 113 base::subtle::MemoryBarrier(); // Release semantics.
114 // Depending on the system, NoBarrier_AtomicExchange(AtomicWord*) 114 // Depending on the system, NoBarrier_AtomicExchange(AtomicWord*)
115 // may have been defined to return an AtomicWord, Atomic32, or 115 // may have been defined to return an AtomicWord, Atomic32, or
116 // Atomic64. We hide that implementation detail here with an 116 // Atomic64. We hide that implementation detail here with an
117 // explicit cast. This prevents MSVC 2005, at least, from complaining. 117 // explicit cast. This prevents MSVC 2005, at least, from complaining.
118 PtrT old_val = reinterpret_cast<PtrT>(static_cast<AtomicWord>( 118 PtrT old_val = reinterpret_cast<PtrT>(static_cast<AtomicWord>(
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after
233 const void* start, 233 const void* start,
234 size_t size, 234 size_t size,
235 int protection, 235 int protection,
236 int flags, 236 int flags,
237 int fd, 237 int fd,
238 off_t offset) { 238 off_t offset) {
239 if (MallocHook::GetMmapHook() == &InitialMallocHook_MMap) 239 if (MallocHook::GetMmapHook() == &InitialMallocHook_MMap)
240 MallocHook::SetMmapHook(NULL); 240 MallocHook::SetMmapHook(NULL);
241 } 241 }
242 242
243 void InitialMallocHook_PreSbrk(ptrdiff_t increment) { 243 void InitialMallocHook_PreSbrk(std::ptrdiff_t increment) {
244 if (MallocHook::GetPreSbrkHook() == &InitialMallocHook_PreSbrk) 244 if (MallocHook::GetPreSbrkHook() == &InitialMallocHook_PreSbrk)
245 MallocHook::SetPreSbrkHook(NULL); 245 MallocHook::SetPreSbrkHook(NULL);
246 } 246 }
247 247
248 void InitialMallocHook_Sbrk(const void* result, ptrdiff_t increment) { 248 void InitialMallocHook_Sbrk(const void* result, std::ptrdiff_t increment) {
249 if (MallocHook::GetSbrkHook() == &InitialMallocHook_Sbrk) 249 if (MallocHook::GetSbrkHook() == &InitialMallocHook_Sbrk)
250 MallocHook::SetSbrkHook(NULL); 250 MallocHook::SetSbrkHook(NULL);
251 } 251 }
252 252
253 DEFINE_ATTRIBUTE_SECTION_VARS(google_malloc); 253 DEFINE_ATTRIBUTE_SECTION_VARS(google_malloc);
254 DECLARE_ATTRIBUTE_SECTION_VARS(google_malloc); 254 DECLARE_ATTRIBUTE_SECTION_VARS(google_malloc);
255 // actual functions are in debugallocation.cc or tcmalloc.cc 255 // actual functions are in debugallocation.cc or tcmalloc.cc
256 DEFINE_ATTRIBUTE_SECTION_VARS(malloc_hook); 256 DEFINE_ATTRIBUTE_SECTION_VARS(malloc_hook);
257 DECLARE_ATTRIBUTE_SECTION_VARS(malloc_hook); 257 DECLARE_ATTRIBUTE_SECTION_VARS(malloc_hook);
258 // actual functions are in this file, malloc_hook.cc, and low_level_alloc.cc 258 // actual functions are in this file, malloc_hook.cc, and low_level_alloc.cc
(...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after
442 int fd, __off64_t offset ) __THROW 442 int fd, __off64_t offset ) __THROW
443 ATTRIBUTE_SECTION(malloc_hook); 443 ATTRIBUTE_SECTION(malloc_hook);
444 void* mmap(void *start, size_t length,int prot, int flags, 444 void* mmap(void *start, size_t length,int prot, int flags,
445 int fd, off_t offset) __THROW 445 int fd, off_t offset) __THROW
446 ATTRIBUTE_SECTION(malloc_hook); 446 ATTRIBUTE_SECTION(malloc_hook);
447 int munmap(void* start, size_t length) __THROW 447 int munmap(void* start, size_t length) __THROW
448 ATTRIBUTE_SECTION(malloc_hook); 448 ATTRIBUTE_SECTION(malloc_hook);
449 void* mremap(void* old_addr, size_t old_size, size_t new_size, 449 void* mremap(void* old_addr, size_t old_size, size_t new_size,
450 int flags, ...) __THROW 450 int flags, ...) __THROW
451 ATTRIBUTE_SECTION(malloc_hook); 451 ATTRIBUTE_SECTION(malloc_hook);
452 void* sbrk(ptrdiff_t increment) __THROW 452 void* sbrk(std::ptrdiff_t increment) __THROW
453 ATTRIBUTE_SECTION(malloc_hook); 453 ATTRIBUTE_SECTION(malloc_hook);
454 } 454 }
455 455
456 extern "C" void* mmap64(void *start, size_t length, int prot, int flags, 456 extern "C" void* mmap64(void *start, size_t length, int prot, int flags,
457 int fd, __off64_t offset) __THROW { 457 int fd, __off64_t offset) __THROW {
458 MallocHook::InvokePreMmapHook(start, length, prot, flags, fd, offset); 458 MallocHook::InvokePreMmapHook(start, length, prot, flags, fd, offset);
459 void *result = do_mmap64(start, length, prot, flags, fd, offset); 459 void *result = do_mmap64(start, length, prot, flags, fd, offset);
460 MallocHook::InvokeMmapHook(result, start, length, prot, flags, fd, offset); 460 MallocHook::InvokeMmapHook(result, start, length, prot, flags, fd, offset);
461 return result; 461 return result;
462 } 462 }
(...skipping 22 matching lines...) Expand all
485 va_start(ap, flags); 485 va_start(ap, flags);
486 void *new_address = va_arg(ap, void *); 486 void *new_address = va_arg(ap, void *);
487 va_end(ap); 487 va_end(ap);
488 void* result = sys_mremap(old_addr, old_size, new_size, flags, new_address); 488 void* result = sys_mremap(old_addr, old_size, new_size, flags, new_address);
489 MallocHook::InvokeMremapHook(result, old_addr, old_size, new_size, flags, 489 MallocHook::InvokeMremapHook(result, old_addr, old_size, new_size, flags,
490 new_address); 490 new_address);
491 return result; 491 return result;
492 } 492 }
493 493
494 // libc's version: 494 // libc's version:
495 extern "C" void* __sbrk(ptrdiff_t increment); 495 extern "C" void* __sbrk(std::ptrdiff_t increment);
496 496
497 extern "C" void* sbrk(ptrdiff_t increment) __THROW { 497 extern "C" void* sbrk(std::ptrdiff_t increment) __THROW {
498 MallocHook::InvokePreSbrkHook(increment); 498 MallocHook::InvokePreSbrkHook(increment);
499 void *result = __sbrk(increment); 499 void *result = __sbrk(increment);
500 MallocHook::InvokeSbrkHook(result, increment); 500 MallocHook::InvokeSbrkHook(result, increment);
501 return result; 501 return result;
502 } 502 }
503 503
504 /*static*/void* MallocHook::UnhookedMMap(void *start, size_t length, int prot, 504 /*static*/void* MallocHook::UnhookedMMap(void *start, size_t length, int prot,
505 int flags, int fd, off_t offset) { 505 int flags, int fd, off_t offset) {
506 return do_mmap64(start, length, prot, flags, fd, offset); 506 return do_mmap64(start, length, prot, flags, fd, offset);
507 } 507 }
508 508
509 /*static*/int MallocHook::UnhookedMUnmap(void *start, size_t length) { 509 /*static*/int MallocHook::UnhookedMUnmap(void *start, size_t length) {
510 return sys_munmap(start, length); 510 return sys_munmap(start, length);
511 } 511 }
512 512
513 #else // defined(__linux) && 513 #else // defined(__linux) &&
514 // (defined(__i386__) || defined(__x86_64__) || defined(__PPC__)) 514 // (defined(__i386__) || defined(__x86_64__) || defined(__PPC__))
515 515
516 /*static*/void* MallocHook::UnhookedMMap(void *start, size_t length, int prot, 516 /*static*/void* MallocHook::UnhookedMMap(void *start, size_t length, int prot,
517 int flags, int fd, off_t offset) { 517 int flags, int fd, off_t offset) {
518 return mmap(start, length, prot, flags, fd, offset); 518 return mmap(start, length, prot, flags, fd, offset);
519 } 519 }
520 520
521 /*static*/int MallocHook::UnhookedMUnmap(void *start, size_t length) { 521 /*static*/int MallocHook::UnhookedMUnmap(void *start, size_t length) {
522 return munmap(start, length); 522 return munmap(start, length);
523 } 523 }
524 524
525 #endif // defined(__linux) && 525 #endif // defined(__linux) &&
526 // (defined(__i386__) || defined(__x86_64__) || defined(__PPC__)) 526 // (defined(__i386__) || defined(__x86_64__) || defined(__PPC__))
OLDNEW
« no previous file with comments | « third_party/tcmalloc/chromium/src/heap-profiler.cc ('k') | third_party/tcmalloc/chromium/src/malloc_hook-inl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698