Home | History | Annotate | Download | only in process
      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