search for: addfixup

Displaying 9 results from an estimated 9 matches for "addfixup".

2011 Nov 15
0
[LLVMdev] MCELFStreamer subclassing
Hi Jack, I'm not 100% up on how MIPS represents jump tables, so take with a grain of salt and all that. Normally how this stuff works is that the streamer will create Fixups (MCDataFragment::addFixup()) for anything that might require a relocation. That may come from the generic streamer stuff (see MCObjectStreamer::EmitValueImpl() for example), or from the target's MCCodeEmitter (for any target-specific fixups in code, for example). Then the object streamer resolves those fixups, directly...
2011 Nov 15
2
[LLVMdev] MCELFStreamer subclassing
...Jack Cc: llvmdev at cs.uiuc.edu List; Daniel Dunbar Subject: Re: [LLVMdev] MCELFStreamer subclassing Hi Jack, I'm not 100% up on how MIPS represents jump tables, so take with a grain of salt and all that. Normally how this stuff works is that the streamer will create Fixups (MCDataFragment::addFixup()) for anything that might require a relocation. That may come from the generic streamer stuff (see MCObjectStreamer::EmitValueImpl() for example), or from the target's MCCodeEmitter (for any target-specific fixups in code, for example). Then the object streamer resolves those fixups, directly...
2011 Jan 19
1
[LLVMdev] Possible issue with ARM/MC/MachO fixup
Hi everyone. In ARMAsmBackend.cpp, in routine DarwinARMAsmBackend::ApplyFixup() there is a curious call to getFixupKindNumBytes() - which can return 1,2, 3, or 4 depending upon the FixupKind The code in ApplyFixup() seems to be lifted from the X86. AFAIK, the initial Fixup.Offset() is always divisible by 4, at least for ARM mode - i.e. it is always at the instruction boundary. it looks like
2011 Nov 16
0
[LLVMdev] Emitting switch table data to section (previously - subclassing MCELFStreamer)
...text addresses to the data section. I'm sure it is just a few lines of code. Any suggestions? Jack void MCObjectStreamer::EmitGPRel32Value(const MCExpr *Value) { MCDataFragment *DF = getOrCreateDataFragment(); int Size = 4; // Assumption is that this is alway for 4 byte value DF->addFixup(MCFixup::Create(DF->getContents().size(), Value, FK_GPRel_4)); DF->getContents().resize(DF->getContents().size() + Size, 0); } -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.l...
2011 Nov 15
2
[LLVMdev] MCELFStreamer subclassing
Well Jim, that may just be my problem. As background I am working on the outer reaches of llvm for the direct object output for Mips. Part of what I am to do is instruct the folks working closer to the backend what I am getting that is incorrect. My first reaction is to assume that I am being fed things the correct way and that I am not handling it correctly. I feed the compiler a source file
2011 Nov 15
0
[LLVMdev] MCELFStreamer subclassing
...st; Daniel Dunbar > Subject: Re: [LLVMdev] MCELFStreamer subclassing > > Hi Jack, > > I'm not 100% up on how MIPS represents jump tables, so take with a grain of salt and all that. > > Normally how this stuff works is that the streamer will create Fixups (MCDataFragment::addFixup()) for anything that might require a relocation. That may come from the generic streamer stuff (see MCObjectStreamer::EmitValueImpl() for example), or from the target's MCCodeEmitter (for any target-specific fixups in code, for example). Then the object streamer resolves those fixups, directly...
2011 Nov 15
2
[LLVMdev] MCELFStreamer subclassing
...; Subject: Re: [LLVMdev] MCELFStreamer subclassing >> >> Hi Jack, >> >> I'm not 100% up on how MIPS represents jump tables, so take with a grain of salt and all that. >> >> Normally how this stuff works is that the streamer will create Fixups (MCDataFragment::addFixup()) for anything that might require a relocation. That may come from the generic streamer stuff (see MCObjectStreamer::EmitValueImpl() for example), or from the target's MCCodeEmitter (for any target-specific fixups in code, for example).  Then the object streamer resolves those fixups, directly...
2010 Jul 16
0
[LLVMdev] Win32 COFF Support - Patch 3
...d, it is not endian safe. You can copy the MCMachOStreamer::EmitValue implementation (which is endian safe, but assumes the target is little endian). > + } > + else > + { Please put braces on same line as else. > + Fragment->getContents().resize(Size); > + Fragment->addFixup(MCFixup::Create(0, Value, > + MCFixup::getKindForSize(Size))); > + } > + > + AddFragment(Fragment); > } > > void WinCOFFStreamer::EmitGPRel32Value(const MCExpr *Value) { > @@ -156,17 +380,33 @@ void WinCOFFStreamer::EmitGPRel32Value(...
2010 Jul 14
2
[LLVMdev] Win32 COFF Support - Patch 3
On Sun, Jul 11, 2010 at 6:10 PM, Chris Lattner <clattner at apple.com> wrote: > This probably needs to be slightly tweaked to work with mainline.  I don't see anything objectionable, but I think Daniel needs to review this one. Updated patch to work with mainline. http://github.com/Bigcheese/llvm-mirror/commit/d19a4c82c18afc4830c09b70f02d162292231c94 - Michael Spencer