mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-12-14 07:09:08 +00:00
d0a14503a8
Rename member 'Size' to 'AllocatedSize' in order to provide a hint that the allocated size may be different than the requested size. Comments are added to clarify this point. Updated the InMemoryBuffer in FileOutputBuffer.cpp to track the requested buffer size. Patch by Machiel van Hooren. Thanks Machiel! https://reviews.llvm.org/D61599 llvm-svn: 361195
54 lines
1.6 KiB
C++
54 lines
1.6 KiB
C++
//===- Memory.cpp - Memory Handling Support ---------------------*- C++ -*-===//
|
|
//
|
|
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
// See https://llvm.org/LICENSE.txt for license information.
|
|
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
//
|
|
// This file defines some helpful functions for allocating memory and dealing
|
|
// with memory mapped files
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
#include "llvm/Support/Memory.h"
|
|
#include "llvm/Config/llvm-config.h"
|
|
#include "llvm/Support/Valgrind.h"
|
|
|
|
#ifndef NDEBUG
|
|
#include "llvm/Support/raw_ostream.h"
|
|
#endif // ifndef NDEBUG
|
|
|
|
// Include the platform-specific parts of this class.
|
|
#ifdef LLVM_ON_UNIX
|
|
#include "Unix/Memory.inc"
|
|
#endif
|
|
#ifdef _WIN32
|
|
#include "Windows/Memory.inc"
|
|
#endif
|
|
|
|
#ifndef NDEBUG
|
|
|
|
namespace llvm {
|
|
namespace sys {
|
|
|
|
raw_ostream &operator<<(raw_ostream &OS, const Memory::ProtectionFlags &PF) {
|
|
assert((PF & ~(Memory::MF_READ | Memory::MF_WRITE | Memory::MF_EXEC)) == 0 &&
|
|
"Unrecognized flags");
|
|
|
|
return OS << (PF & Memory::MF_READ ? 'R' : '-')
|
|
<< (PF & Memory::MF_WRITE ? 'W' : '-')
|
|
<< (PF & Memory::MF_EXEC ? 'X' : '-');
|
|
}
|
|
|
|
raw_ostream &operator<<(raw_ostream &OS, const MemoryBlock &MB) {
|
|
return OS << "[ " << MB.base() << " .. "
|
|
<< (void *)((char *)MB.base() + MB.allocatedSize()) << " ] ("
|
|
<< MB.allocatedSize() << " bytes)";
|
|
}
|
|
|
|
} // end namespace sys
|
|
} // end namespace llvm
|
|
|
|
#endif // ifndef NDEBUG
|