Displaying 5 results from an estimated 5 matches for "adjust_stack".
2011 Apr 10
0
[LLVMdev] RFC: GSoC Project
...a function will check whether the current block has
> enough stack space. This is easily done for function which don't have
> variable sized allocas, and for ones which do, we can assume some
> worst-case upper bound. The prologue can then call an intrinsic (let's
> call it llvm.adjust_stack) which allocates a new block (possibly by
> delegating this to a user-provided callback), copies the arguments,
> saves the previous stack pointer (in the new block), and adjusts the
> next and previous pointers. It will also have to adjust the stack
> pointer, and the frame pointer, if...
2011 Mar 23
5
[LLVMdev] RFC: GSoC Project
...n the prologue, a function will check whether the current block has
enough stack space. This is easily done for function which don't have
variable sized allocas, and for ones which do, we can assume some
worst-case upper bound. The prologue can then call an intrinsic (let's
call it llvm.adjust_stack) which allocates a new block (possibly by
delegating this to a user-provided callback), copies the arguments,
saves the previous stack pointer (in the new block), and adjusts the
next and previous pointers. It will also have to adjust the stack
pointer, and the frame pointer, if it is being mai...
2011 Apr 10
2
[LLVMdev] RFC: GSoC Project
...a function will check whether the current block has
> enough stack space. This is easily done for function which don't have
> variable sized allocas, and for ones which do, we can assume some
> worst-case upper bound. The prologue can then call an intrinsic (let's
> call it llvm.adjust_stack) which allocates a new block (possibly by
> delegating this to a user-provided callback), copies the arguments,
> saves the previous stack pointer (in the new block), and adjusts the
> next and previous pointers. It will also have to adjust the stack
> pointer, and the frame pointer, if...
2011 Apr 11
0
[LLVMdev] RFC: GSoC Project
...check whether the current block has
>> enough stack space. This is easily done for function which don't have
>> variable sized allocas, and for ones which do, we can assume some
>> worst-case upper bound. The prologue can then call an intrinsic (let's
>> call it llvm.adjust_stack) which allocates a new block (possibly by
>> delegating this to a user-provided callback), copies the arguments,
>> saves the previous stack pointer (in the new block), and adjusts the
>> next and previous pointers. It will also have to adjust the stack
>> pointer, and the f...
2011 Mar 23
0
[LLVMdev] RFC: GSoC Project
...are allocas involved, it is quite likely they are inside loops
etc., in which case there are no simple stack boundaries. This shouldn't
be a problem if the space for all static variables was allocated at the
beginning.
> The prologue can then call an intrinsic (let's
> call it llvm.adjust_stack) which allocates a new block (possibly by
> delegating this to a user-provided callback), copies the arguments,
> saves the previous stack pointer (in the new block), and adjusts the
> next and previous pointers.
Why do you need to copy the arguments? In fact, why do you think you can...