mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2026-04-20 16:17:38 +00:00
Move TargetData to DataLayout.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@165402 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@@ -29,7 +29,7 @@
|
||||
#include "llvm/Support/DynamicLibrary.h"
|
||||
#include "llvm/Support/Host.h"
|
||||
#include "llvm/Support/TargetRegistry.h"
|
||||
#include "llvm/Target/TargetData.h"
|
||||
#include "llvm/DataLayout.h"
|
||||
#include "llvm/Target/TargetMachine.h"
|
||||
#include <cmath>
|
||||
#include <cstring>
|
||||
@@ -91,11 +91,11 @@ class GVMemoryBlock : public CallbackVH {
|
||||
public:
|
||||
/// \brief Returns the address the GlobalVariable should be written into. The
|
||||
/// GVMemoryBlock object prefixes that.
|
||||
static char *Create(const GlobalVariable *GV, const TargetData& TD) {
|
||||
static char *Create(const GlobalVariable *GV, const DataLayout& TD) {
|
||||
Type *ElTy = GV->getType()->getElementType();
|
||||
size_t GVSize = (size_t)TD.getTypeAllocSize(ElTy);
|
||||
void *RawMemory = ::operator new(
|
||||
TargetData::RoundUpAlignment(sizeof(GVMemoryBlock),
|
||||
DataLayout::RoundUpAlignment(sizeof(GVMemoryBlock),
|
||||
TD.getPreferredAlignment(GV))
|
||||
+ GVSize);
|
||||
new(RawMemory) GVMemoryBlock(GV);
|
||||
@@ -113,7 +113,7 @@ public:
|
||||
} // anonymous namespace
|
||||
|
||||
char *ExecutionEngine::getMemoryForGV(const GlobalVariable *GV) {
|
||||
return GVMemoryBlock::Create(GV, *getTargetData());
|
||||
return GVMemoryBlock::Create(GV, *getDataLayout());
|
||||
}
|
||||
|
||||
bool ExecutionEngine::removeModule(Module *M) {
|
||||
@@ -267,7 +267,7 @@ public:
|
||||
void *ArgvArray::reset(LLVMContext &C, ExecutionEngine *EE,
|
||||
const std::vector<std::string> &InputArgv) {
|
||||
clear(); // Free the old contents.
|
||||
unsigned PtrSize = EE->getTargetData()->getPointerSize();
|
||||
unsigned PtrSize = EE->getDataLayout()->getPointerSize();
|
||||
Array = new char[(InputArgv.size()+1)*PtrSize];
|
||||
|
||||
DEBUG(dbgs() << "JIT: ARGV = " << (void*)Array << "\n");
|
||||
@@ -342,7 +342,7 @@ void ExecutionEngine::runStaticConstructorsDestructors(bool isDtors) {
|
||||
#ifndef NDEBUG
|
||||
/// isTargetNullPtr - Return whether the target pointer stored at Loc is null.
|
||||
static bool isTargetNullPtr(ExecutionEngine *EE, void *Loc) {
|
||||
unsigned PtrSize = EE->getTargetData()->getPointerSize();
|
||||
unsigned PtrSize = EE->getDataLayout()->getPointerSize();
|
||||
for (unsigned i = 0; i < PtrSize; ++i)
|
||||
if (*(i + (uint8_t*)Loc))
|
||||
return false;
|
||||
@@ -856,7 +856,7 @@ static void StoreIntToMemory(const APInt &IntVal, uint8_t *Dst,
|
||||
|
||||
void ExecutionEngine::StoreValueToMemory(const GenericValue &Val,
|
||||
GenericValue *Ptr, Type *Ty) {
|
||||
const unsigned StoreBytes = getTargetData()->getTypeStoreSize(Ty);
|
||||
const unsigned StoreBytes = getDataLayout()->getTypeStoreSize(Ty);
|
||||
|
||||
switch (Ty->getTypeID()) {
|
||||
case Type::IntegerTyID:
|
||||
@@ -882,7 +882,7 @@ void ExecutionEngine::StoreValueToMemory(const GenericValue &Val,
|
||||
dbgs() << "Cannot store value of type " << *Ty << "!\n";
|
||||
}
|
||||
|
||||
if (sys::isLittleEndianHost() != getTargetData()->isLittleEndian())
|
||||
if (sys::isLittleEndianHost() != getDataLayout()->isLittleEndian())
|
||||
// Host and target are different endian - reverse the stored bytes.
|
||||
std::reverse((uint8_t*)Ptr, StoreBytes + (uint8_t*)Ptr);
|
||||
}
|
||||
@@ -918,7 +918,7 @@ static void LoadIntFromMemory(APInt &IntVal, uint8_t *Src, unsigned LoadBytes) {
|
||||
void ExecutionEngine::LoadValueFromMemory(GenericValue &Result,
|
||||
GenericValue *Ptr,
|
||||
Type *Ty) {
|
||||
const unsigned LoadBytes = getTargetData()->getTypeStoreSize(Ty);
|
||||
const unsigned LoadBytes = getDataLayout()->getTypeStoreSize(Ty);
|
||||
|
||||
switch (Ty->getTypeID()) {
|
||||
case Type::IntegerTyID:
|
||||
@@ -959,20 +959,20 @@ void ExecutionEngine::InitializeMemory(const Constant *Init, void *Addr) {
|
||||
|
||||
if (const ConstantVector *CP = dyn_cast<ConstantVector>(Init)) {
|
||||
unsigned ElementSize =
|
||||
getTargetData()->getTypeAllocSize(CP->getType()->getElementType());
|
||||
getDataLayout()->getTypeAllocSize(CP->getType()->getElementType());
|
||||
for (unsigned i = 0, e = CP->getNumOperands(); i != e; ++i)
|
||||
InitializeMemory(CP->getOperand(i), (char*)Addr+i*ElementSize);
|
||||
return;
|
||||
}
|
||||
|
||||
if (isa<ConstantAggregateZero>(Init)) {
|
||||
memset(Addr, 0, (size_t)getTargetData()->getTypeAllocSize(Init->getType()));
|
||||
memset(Addr, 0, (size_t)getDataLayout()->getTypeAllocSize(Init->getType()));
|
||||
return;
|
||||
}
|
||||
|
||||
if (const ConstantArray *CPA = dyn_cast<ConstantArray>(Init)) {
|
||||
unsigned ElementSize =
|
||||
getTargetData()->getTypeAllocSize(CPA->getType()->getElementType());
|
||||
getDataLayout()->getTypeAllocSize(CPA->getType()->getElementType());
|
||||
for (unsigned i = 0, e = CPA->getNumOperands(); i != e; ++i)
|
||||
InitializeMemory(CPA->getOperand(i), (char*)Addr+i*ElementSize);
|
||||
return;
|
||||
@@ -980,7 +980,7 @@ void ExecutionEngine::InitializeMemory(const Constant *Init, void *Addr) {
|
||||
|
||||
if (const ConstantStruct *CPS = dyn_cast<ConstantStruct>(Init)) {
|
||||
const StructLayout *SL =
|
||||
getTargetData()->getStructLayout(cast<StructType>(CPS->getType()));
|
||||
getDataLayout()->getStructLayout(cast<StructType>(CPS->getType()));
|
||||
for (unsigned i = 0, e = CPS->getNumOperands(); i != e; ++i)
|
||||
InitializeMemory(CPS->getOperand(i), (char*)Addr+SL->getElementOffset(i));
|
||||
return;
|
||||
@@ -1127,7 +1127,7 @@ void ExecutionEngine::EmitGlobalVariable(const GlobalVariable *GV) {
|
||||
InitializeMemory(GV->getInitializer(), GA);
|
||||
|
||||
Type *ElTy = GV->getType()->getElementType();
|
||||
size_t GVSize = (size_t)getTargetData()->getTypeAllocSize(ElTy);
|
||||
size_t GVSize = (size_t)getDataLayout()->getTypeAllocSize(ElTy);
|
||||
NumInitBytes += (unsigned)GVSize;
|
||||
++NumGlobals;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user