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_UTIL_UNITTEST_MAC_H_ 9#define BASE_PROCESS_UTIL_UNITTEST_MAC_H_ 10#pragma once 11 12#include "base/basictypes.h" 13 14namespace base { 15 16// Allocates memory via system allocators. Alas, they take a _signed_ size for 17// allocation. 18void* AllocateViaCFAllocatorSystemDefault(ssize_t size); 19void* AllocateViaCFAllocatorMalloc(ssize_t size); 20void* AllocateViaCFAllocatorMallocZone(ssize_t size); 21 22#if !defined(ARCH_CPU_64_BITS) 23// See process_util_unittest_mac.mm for an explanation of why this function 24// isn't implemented for the 64-bit environment. 25 26// Allocates a huge Objective C object. 27void* AllocatePsychoticallyBigObjCObject(); 28 29#endif // !ARCH_CPU_64_BITS 30 31} // namespace base 32 33#endif // BASE_PROCESS_UTIL_UNITTEST_MAC_H_ 34