1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 // This file contains helpers for the process_util_unittest to allow it to fully 6 // test the Mac code. 7 8 #ifndef BASE_PROCESS_MEMORY_UNITTEST_MAC_H_ 9 #define BASE_PROCESS_MEMORY_UNITTEST_MAC_H_ 10 11 #include "base/basictypes.h" 12 13 namespace base { 14 15 // Allocates memory via system allocators. Alas, they take a _signed_ size for 16 // allocation. 17 void* AllocateViaCFAllocatorSystemDefault(ssize_t size); 18 void* AllocateViaCFAllocatorMalloc(ssize_t size); 19 void* AllocateViaCFAllocatorMallocZone(ssize_t size); 20 21 #if !defined(ARCH_CPU_64_BITS) 22 // See process_util_unittest_mac.mm for an explanation of why this function 23 // isn't implemented for the 64-bit environment. 24 25 // Allocates a huge Objective C object. 26 void* AllocatePsychoticallyBigObjCObject(); 27 28 #endif // !ARCH_CPU_64_BITS 29 30 } // namespace base 31 32 #endif // BASE_PROCESS_MEMORY_UNITTEST_MAC_H_ 33