search for: frameregister

Displaying 20 results from an estimated 21 matches for "frameregister".

2012 Sep 24
0
[LLVMdev] [llvm-commits] Fwd: Re: [PATCH] Fix for bug in JIT exception table allocation
...lib/ExecutionEngine/JIT/JITEmitter.cpp (working copy) > > > > @@ -974,14 +974,24 @@ > > > > SavedBufferBegin = BufferBegin; > > > > SavedBufferEnd = BufferEnd; > > > > SavedCurBufferPtr = CurBufferPtr; > > > > + uint8_t *FrameRegister; > > > > > > > > - BufferBegin = CurBufferPtr = > > > > MemMgr->startExceptionTable(F.getFunction(), > > > > - ActualSize); > > > > - BufferEnd = BufferBegin+ActualSize;...
2012 Aug 21
2
[LLVMdev] [PATCH] Fix for bug in JIT exception table allocation (no test yet)
...=================================== --- lib/ExecutionEngine/JIT/JITEmitter.cpp (revision 162311) +++ lib/ExecutionEngine/JIT/JITEmitter.cpp (working copy) @@ -974,14 +974,24 @@ SavedBufferBegin = BufferBegin; SavedBufferEnd = BufferEnd; SavedCurBufferPtr = CurBufferPtr; + uint8_t *FrameRegister; - BufferBegin = CurBufferPtr = MemMgr->startExceptionTable(F.getFunction(), - ActualSize); - BufferEnd = BufferBegin+ActualSize; - EmittedFunctions[F.getFunction()].ExceptionTable = BufferBegin; - uint8_t *EhStart; - u...
2012 Aug 22
1
[LLVMdev] [PATCH] Fix for bug in JIT exception table allocation (no test yet)
On Aug 21, 2012, at 2:12 PM, Michael Muller <mmuller at enduden.com> wrote: > > Hi, I found a bug in the code that generates exception tables, I've attached > what I think is the correct fix. > > When you run out of space writing to a buffer, the buffer management code > simply stops writing at the end of the buffer. It is the responsibility of > the caller to
2012 Aug 23
0
[LLVMdev] [PATCH] Fix for bug in JIT exception table allocation (no test yet)
Eric Christopher wrote: > > On Aug 21, 2012, at 2:12 PM, Michael Muller <mmuller at enduden.com> wrote: > > > > > Hi, I found a bug in the code that generates exception tables, I've attached > > what I think is the correct fix. > > > > When you run out of space writing to a buffer, the buffer management code > > simply stops writing at the
2013 Oct 01
2
[LLVMdev] JITMemoryManager
...Size) { return mgr()->startExceptionTable(F, ActualSize); } virtual void endExceptionTable(const llvm::Function *F, uint8_t *TableStart, uint8_t *TableEnd, uint8_t *FrameRegister) { return mgr()->endExceptionTable(F, TableStart, TableEnd, FrameRegister); } virtual void deallocateExceptionTable(void *ET) { mgr()->deallocateExceptionTable(ET); } #endif virtual bool CheckInvariants(std::st...
2013 Oct 02
0
[LLVMdev] JITMemoryManager
...urn mgr()->startExceptionTable(F, ActualSize); > } > virtual void endExceptionTable(const llvm::Function *F, > uint8_t *TableStart, > uint8_t *TableEnd, > uint8_t *FrameRegister) { > return mgr()->endExceptionTable(F, TableStart, TableEnd, > FrameRegister); > } > virtual void deallocateExceptionTable(void *ET) { > mgr()->deallocateExceptionTable(ET); > } > #endif > vir...
2013 Oct 02
3
[LLVMdev] JITMemoryManager
...xceptionTable(F, ActualSize); >> } >> virtual void endExceptionTable(const llvm::Function *F, >> uint8_t *TableStart, >> uint8_t *TableEnd, >> uint8_t *FrameRegister) { >> return mgr()->endExceptionTable(F, TableStart, TableEnd, >> FrameRegister); >> } >> virtual void deallocateExceptionTable(void *ET) { >> mgr()->deallocateExceptionTable(ET); >> } &...
2015 Jul 09
9
[LLVMdev] [RFC] New StackMap format proposal (StackMap v2)
...HasVariableSizeAlloca bool : HasStackRealignment bool : HasLiveOutInfo bool : Reserved [12] } uint16 : Frame Base Register Dwarf RegNum uint16 : Num Frame Registers uint16 : Frame Register Index uint16 : Num StackMap Records uint16 : StackMap Record Index } align to 4 bytes FrameRegister[] { uint16 : Dwarf RegNum int16 : Offset uint8 : Size in Bytes uint8 : Flags { bool : IsSpilled bool : Reserved [7] } } align to 8 bytes StackMapRecord[] { uint64 : PatchPoint ID uint32 : Instruction Offset uint8 : Call size (bytes) uint8 : Flags { bool : HasLive...
2008 Feb 04
0
[LLVMdev] Exception handling in JIT
...is method is called when the JIT is > done emitting > + /// the exception table. > + virtual void endExceptionTable(const Function *F, unsigned char > *TableStart, > + unsigned char *TableEnd, > + unsigned char* FrameRegister) = 0; > }; > > } // end namespace llvm. > Index: include/llvm/CodeGen/MachineCodeEmitter.h > =================================================================== > --- include/llvm/CodeGen/MachineCodeEmitter.h (revision 46612) > +++ include/llvm/CodeGen/MachineCodeEmitter.h (wor...
2008 Feb 01
2
[LLVMdev] Exception handling in JIT
Dear all, Here's a new patch with Evan's comments (thx Evan!) and some cleanups. Now the (duplicated) exception handling code is in a new file: lib/ExecutionEngine/JIT/JITDwarfEmitter. This patch should work on linux/x86 and linux/ppc (tested). Nicolas -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: jit-exceptions.patch URL:
2015 Jul 09
5
[LLVMdev] [RFC] New StackMap format proposal (StackMap v2)
...bool : HasLiveOutInfo > bool : Reserved [12] > } > uint16 : Frame Base Register Dwarf RegNum > uint16 : Num Frame Registers > uint16 : Frame Register Index > uint16 : Num StackMap Records > uint16 : StackMap Record Index > } > > align to 4 bytes > FrameRegister[] { > uint16 : Dwarf RegNum > int16 : Offset > uint8 : Size in Bytes > uint8 : Flags { > bool : IsSpilled > bool : Reserved [7] > } > } > > align to 8 bytes > StackMapRecord[] { > uint64 : PatchPoint ID > uint32 : Instruction Offset &...
2008 Mar 30
3
[LLVMdev] Being able to know the jitted code-size before emitting
Hi everyone, vmkit requires to know the size of a jitted method before emitting the method. This allows to allocate the correct size for the method. The attached patch creates this functionality when the flag SizedMemoryCode is on. In order to implement this functionality, i had to virtualize some MachineCodeEmitter functions. Is it OK to commit the patch? Thanks, Nicolas --------------
2008 Apr 01
2
[LLVMdev] Being able to know the jitted code-size before emitting
...r- >> >>> startExceptionTable(F.getFunction(), >>> >> >> ActualSize); >> BufferEnd = BufferBegin+ActualSize; >> @@ -598,11 +639,10 @@ >> TheJIT->RegisterTable(FrameRegister); >> } >> MMI->EndFunction(); >> - >> return false; >> } >> >> -void JITEmitter::emitConstantPool(MachineConstantPool *MCP) { >> +void JITEmitter::initConstantPool(MachineConstantPool *MCP) { >> const std::vector<MachineConstantPoo...
2008 Mar 31
0
[LLVMdev] Being able to know the jitted code-size before emitting
...> - > + > BufferBegin = CurBufferPtr = MemMgr- > >startExceptionTable(F.getFunction(), > > ActualSize); > BufferEnd = BufferBegin+ActualSize; > @@ -598,11 +639,10 @@ > TheJIT->RegisterTable(FrameRegister); > } > MMI->EndFunction(); > - > return false; > } > > -void JITEmitter::emitConstantPool(MachineConstantPool *MCP) { > +void JITEmitter::initConstantPool(MachineConstantPool *MCP) { > const std::vector<MachineConstantPoolEntry> &Constants = MCP- &g...
2008 Apr 01
0
[LLVMdev] Being able to know the jitted code-size before emitting
...>> BufferBegin = CurBufferPtr = MemMgr- >>> >>>> startExceptionTable(F.getFunction(), >>>> >>> >>> ActualSize); >>> BufferEnd = BufferBegin+ActualSize; >>> @@ -598,11 +639,10 @@ >>> TheJIT->RegisterTable(FrameRegister); >>> } >>> MMI->EndFunction(); >>> - >>> return false; >>> } >>> >>> -void JITEmitter::emitConstantPool(MachineConstantPool *MCP) { >>> +void JITEmitter::initConstantPool(MachineConstantPool *MCP) { >>> const s...
2008 Apr 04
3
[LLVMdev] Being able to know the jitted code-size before emitting
...;>> >>>>> startExceptionTable(F.getFunction(), >>>>> >>>>> >>>> ActualSize); >>>> BufferEnd = BufferBegin+ActualSize; >>>> @@ -598,11 +639,10 @@ >>>> TheJIT->RegisterTable(FrameRegister); >>>> } >>>> MMI->EndFunction(); >>>> - >>>> return false; >>>> } >>>> >>>> -void JITEmitter::emitConstantPool(MachineConstantPool *MCP) { >>>> +void JITEmitter::initConstantPool(MachineConstantPo...
2008 Apr 05
2
[LLVMdev] Being able to know the jitted code-size before emitting
...t;>>>>>> >>>>>>> >>>>>>> >>>>>> ActualSize); >>>>>> BufferEnd = BufferBegin+ActualSize; >>>>>> @@ -598,11 +639,10 @@ >>>>>> TheJIT->RegisterTable(FrameRegister); >>>>>> } >>>>>> MMI->EndFunction(); >>>>>> - >>>>>> return false; >>>>>> } >>>>>> >>>>>> -void JITEmitter::emitConstantPool(MachineConstantPool *MCP) { >>>>...
2008 Apr 05
0
[LLVMdev] Being able to know the jitted code-size before emitting
...gt;>>>> >>>>>>>> >>>>>>>> >>>>>>> ActualSize); >>>>>>> BufferEnd = BufferBegin+ActualSize; >>>>>>> @@ -598,11 +639,10 @@ >>>>>>> TheJIT->RegisterTable(FrameRegister); >>>>>>> } >>>>>>> MMI->EndFunction(); >>>>>>> - >>>>>>> return false; >>>>>>> } >>>>>>> >>>>>>> -void JITEmitter::emitConstantPool(MachineConstantP...
2008 Apr 04
0
[LLVMdev] Being able to know the jitted code-size before emitting
...gt; >>>>>> startExceptionTable(F.getFunction(), >>>>>> >>>>>> >>>>> ActualSize); >>>>> BufferEnd = BufferBegin+ActualSize; >>>>> @@ -598,11 +639,10 @@ >>>>> TheJIT->RegisterTable(FrameRegister); >>>>> } >>>>> MMI->EndFunction(); >>>>> - >>>>> return false; >>>>> } >>>>> >>>>> -void JITEmitter::emitConstantPool(MachineConstantPool *MCP) { >>>>> +void JITEmitter::initC...
2008 Apr 07
2
[LLVMdev] Being able to know the jitted code-size before emitting
...;>>> >>>>>>>>> >>>>>>>> ActualSize); >>>>>>>> BufferEnd = BufferBegin+ActualSize; >>>>>>>> @@ -598,11 +639,10 @@ >>>>>>>> TheJIT->RegisterTable(FrameRegister); >>>>>>>> } >>>>>>>> MMI->EndFunction(); >>>>>>>> - >>>>>>>> return false; >>>>>>>> } >>>>>>>> >>>>>>>> -void JITEmitter::emitC...