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 13namespace base { 14 15// Allocates memory via system allocators. Alas, they take a _signed_ size for 16// allocation. 17void* AllocateViaCFAllocatorSystemDefault(ssize_t size); 18void* AllocateViaCFAllocatorMalloc(ssize_t size); 19void* 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. 26void* AllocatePsychoticallyBigObjCObject(); 27 28#endif // !ARCH_CPU_64_BITS 29 30} // namespace base 31 32#endif // BASE_PROCESS_MEMORY_UNITTEST_MAC_H_ 33