Lines Matching refs:MR
418 virtual void addRelocation(const MachineRelocation &MR) {
419 Relocations.push_back(MR);
843 MachineRelocation &MR = Relocations[i];
845 if (!MR.letTargetResolve()) {
846 if (MR.isExternalSymbol()) {
847 ResultPtr = TheJIT->getPointerToNamedFunction(MR.getExternalSymbol(),
849 DEBUG(dbgs() << "JIT: Map \'" << MR.getExternalSymbol() << "\' to ["
853 if (MR.mayNeedFarStub()) {
856 } else if (MR.isGlobalValue()) {
857 ResultPtr = getPointerToGlobal(MR.getGlobalValue(),
858 BufferBegin+MR.getMachineCodeOffset(),
859 MR.mayNeedFarStub());
860 } else if (MR.isIndirectSymbol()) {
862 MR.getGlobalValue(), BufferBegin+MR.getMachineCodeOffset());
863 } else if (MR.isBasicBlock()) {
864 ResultPtr = (void*)getMachineBasicBlockAddress(MR.getBasicBlock());
865 } else if (MR.isConstantPoolIndex()) {
867 (void*)getConstantPoolEntryAddress(MR.getConstantPoolIndex());
869 assert(MR.isJumpTableIndex());
870 ResultPtr=(void*)getJumpTableEntryAddress(MR.getJumpTableIndex());
873 MR.setResultPointer(ResultPtr);
878 if (MR.isGOTRelative() && MemMgr->isManagingGOT()) {
880 MR.setGOTIndex(idx);