diff options
author | Evan Cheng <evan.cheng@apple.com> | 2008-11-07 22:57:53 +0000 |
---|---|---|
committer | Evan Cheng <evan.cheng@apple.com> | 2008-11-07 22:57:53 +0000 |
commit | 413a89f3187581ee94d01cafe167f1deff16493d (patch) | |
tree | bef457e027b0ce75e0c865d69a37922df6ce43a9 | |
parent | 53e4e4478c69c2c2115db833b54385117c764d14 (diff) |
More code clean up.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@58872 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/Target/ARM/ARMCodeEmitter.cpp | 12 | ||||
-rw-r--r-- | lib/Target/ARM/ARMJITInfo.cpp | 6 | ||||
-rw-r--r-- | lib/Target/ARM/ARMJITInfo.h | 7 |
3 files changed, 8 insertions, 17 deletions
diff --git a/lib/Target/ARM/ARMCodeEmitter.cpp b/lib/Target/ARM/ARMCodeEmitter.cpp index 8c7e2aba89..32cf226c49 100644 --- a/lib/Target/ARM/ARMCodeEmitter.cpp +++ b/lib/Target/ARM/ARMCodeEmitter.cpp @@ -140,7 +140,7 @@ namespace { /// Routines that handle operands which add machine relocations which are /// fixed up by the relocation stage. void emitGlobalAddress(GlobalValue *GV, unsigned Reloc, - bool NeedStub, unsigned CPIdx = 0); + bool NeedStub, intptr_t ACPV = 0); void emitExternalSymbolAddress(const char *ES, unsigned Reloc); void emitConstPoolAddress(unsigned CPI, unsigned Reloc); void emitJumpTableAddress(unsigned JTIndex, unsigned Reloc); @@ -225,11 +225,10 @@ unsigned ARMCodeEmitter::getMachineOpValue(const MachineInstr &MI, /// emitGlobalAddress - Emit the specified address to the code stream. /// -void ARMCodeEmitter::emitGlobalAddress(GlobalValue *GV, - unsigned Reloc, bool NeedStub, - unsigned CPIdx) { +void ARMCodeEmitter::emitGlobalAddress(GlobalValue *GV, unsigned Reloc, + bool NeedStub, intptr_t ACPV) { MCE.addRelocation(MachineRelocation::getGV(MCE.getCurrentPCOffset(), - Reloc, GV, CPIdx, NeedStub)); + Reloc, GV, ACPV, NeedStub)); } /// emitExternalSymbolAddress - Arrange for the address of an external symbol to @@ -337,7 +336,8 @@ void ARMCodeEmitter::emitConstPoolInstruction(const MachineInstr &MI) { GlobalValue *GV = ACPV->getGV(); if (GV) { assert(!ACPV->isStub() && "Don't know how to deal this yet!"); - emitGlobalAddress(GV, ARM::reloc_arm_machine_cp_entry, false, CPIndex); + emitGlobalAddress(GV, ARM::reloc_arm_machine_cp_entry, false, + (intptr_t)ACPV); } else { assert(!ACPV->isNonLazyPointer() && "Don't know how to deal this yet!"); emitExternalSymbolAddress(ACPV->getSymbol(), ARM::reloc_arm_absolute); diff --git a/lib/Target/ARM/ARMJITInfo.cpp b/lib/Target/ARM/ARMJITInfo.cpp index 52036ba351..c0b878251b 100644 --- a/lib/Target/ARM/ARMJITInfo.cpp +++ b/lib/Target/ARM/ARMJITInfo.cpp @@ -180,11 +180,7 @@ intptr_t ARMJITInfo::resolveRelocDestAddr(MachineRelocation *MR) const { // Constant pool entry address. return getConstantPoolEntryAddr(MR->getConstantPoolIndex()); else if (RT == ARM::reloc_arm_machine_cp_entry) { - const MachineConstantPoolEntry &MCPE = (*MCPEs)[MR->getConstantVal()]; - assert(MCPE.isMachineConstantPoolEntry() && - "Expecting a machine constant pool entry!"); - ARMConstantPoolValue *ACPV = - static_cast<ARMConstantPoolValue*>(MCPE.Val.MachineCPVal); + ARMConstantPoolValue *ACPV = (ARMConstantPoolValue*)MR->getConstantVal(); assert((!ACPV->hasModifier() && !ACPV->mustAddCurrentAddress()) && "Can't handle this machine constant pool entry yet!"); intptr_t Addr = (intptr_t)(MR->getResultPointer()); diff --git a/lib/Target/ARM/ARMJITInfo.h b/lib/Target/ARM/ARMJITInfo.h index 4b94f3ef79..feb7eea6aa 100644 --- a/lib/Target/ARM/ARMJITInfo.h +++ b/lib/Target/ARM/ARMJITInfo.h @@ -27,10 +27,6 @@ namespace llvm { class ARMJITInfo : public TargetJITInfo { ARMTargetMachine &TM; - // MCPEs - List of the constant pool entries for the current machine - // function that's being processed. - const std::vector<MachineConstantPoolEntry> *MCPEs; - // ConstPoolId2AddrMap - A map from constant pool ids to the corresponding // CONSTPOOL_ENTRY addresses. SmallVector<intptr_t, 16> ConstPoolId2AddrMap; @@ -89,8 +85,7 @@ namespace llvm { /// Initialize - Initialize internal stage. Get the list of constant pool /// Resize constant pool ids to CONSTPOOL_ENTRY addresses map. void Initialize(const MachineFunction &MF) { - MCPEs = &MF.getConstantPool()->getConstants(); - ConstPoolId2AddrMap.resize(MCPEs->size()); + ConstPoolId2AddrMap.resize(MF.getConstantPool()->getConstants().size()); JumpTableId2AddrMap.resize(MF.getJumpTableInfo()->getJumpTables().size()); } |