search for: reloc_pcrel_word

Displaying 6 results from an estimated 6 matches for "reloc_pcrel_word".

2008 Jan 03
2
[LLVMdev] Tailcall optimization in jit stopped working
...bool NeedStub = !IsStatic || + bool NeedStub = Opcode == X86::TAILJMPd || Opcode == X86::TAILJMPr || + Opcode == X86::TAILJMPm || !IsStatic || (Is64BitMode && TM.getCodeModel() == CodeModel::Large); emitGlobalAddress(MO.getGlobal(), X86::reloc_pcrel_word, 0, 0, NeedStub);
2009 Jun 10
3
[LLVMdev] Why does the x86-64 JIT emit stubs for external calls?
...outside the Small codespace. bool NeedStub = (Is64BitMode && (TM.getCodeModel() == CodeModel::Large || TM.getSubtarget<X86Subtarget>().isTargetDarwin())) || Opcode == X86::TAILJMPd; emitGlobalAddress(MO.getGlobal(), X86::reloc_pcrel_word, MO.getOffset(), 0, NeedStub); This causes every external call to be emitted as a call to a stub which then jumps to the real function. I understand, thanks to the helpful folks on #llvm, that calls across more than 31 bits of address space need to be emitted as a "m...
2009 Jun 11
0
[LLVMdev] Why does the x86-64 JIT emit stubs for external calls?
...ace. > bool NeedStub = > (Is64BitMode && > (TM.getCodeModel() == CodeModel::Large || > TM.getSubtarget<X86Subtarget>().isTargetDarwin())) || > Opcode == X86::TAILJMPd; > emitGlobalAddress(MO.getGlobal(), X86::reloc_pcrel_word, > MO.getOffset(), 0, NeedStub); > > This causes every external call to be emitted as a call to a stub > which then jumps to the real function. > I understand, thanks to the helpful folks on #llvm, that calls across > more than 31 bits of address space nee...
2009 Jun 11
1
[LLVMdev] [unladen-swallow] Re: Why does the x86-64 JIT emit stubs for external calls?
...  bool NeedStub = >>         (Is64BitMode && >>             (TM.getCodeModel() == CodeModel::Large || >>              TM.getSubtarget<X86Subtarget>().isTargetDarwin())) || >>         Opcode == X86::TAILJMPd; >>       emitGlobalAddress(MO.getGlobal(), X86::reloc_pcrel_word, >>                         MO.getOffset(), 0, NeedStub); >> >> This causes every external call to be emitted as a call to a stub >> which then jumps to the real function. >> I understand, thanks to the helpful folks on #llvm, that calls across >> more than 31 bi...
2008 Apr 16
0
[LLVMdev] Being able to know the jitted code-size before emitting
...// Remember PIC base. > PICBaseOffset = MCE.getCurrentPCOffset(); > X86JITInfo *JTI = dynamic_cast<X86JITInfo*>(TM.getJITInfo()); > @@ -657,7 +522,7 @@ > } else if (MO.isExternalSymbol()) { > emitExternalSymbolAddress(MO.getSymbolName(), > X86::reloc_pcrel_word); > } else if (MO.isImmediate()) { > - emitConstant(MO.getImm(), sizeOfImm(Desc)); > + emitConstant(MO.getImm(), X86InstrInfo::sizeOfImm(Desc)); > } else { > assert(0 && "Unknown RawFrm operand!"); > } > @@ -669,7 +534,7...
2008 Apr 15
4
[LLVMdev] Being able to know the jitted code-size before emitting
OK, here's a new patch that adds the infrastructure and the implementation for X86, ARM and PPC of GetInstSize and GetFunctionSize. Both functions are virtual functions defined in TargetInstrInfo.h. For X86, I moved some commodity functions from X86CodeEmitter to X86InstrInfo. What do you think? Nicolas Evan Cheng wrote: > > I think both of these belong to TargetInstrInfo. And