Displaying 3 results from an estimated 3 matches for "offsetoflocalarea".
2006 Aug 15
2
[LLVMdev] problems defining the stack layout
...g some problems defining the stack layout on ARM. It should look like
Incoming vars
-----------------
Saved Link Register
-----------------
Local vars
-----------------
The problem is that the the first local variable is being assigned to
the same location as the link register. I tried to use the
OffsetOfLocalArea option, but do to alignment restrictions this
increased the stack size.
The offset of the local vars is set in calculateFrameObjectOffsets, so
I added the following hack to eliminateFrameIndex:
if (Offset < 0) //local variable
Offset -= 4;
Is there a better way?
Thanks,
Rafael
2006 Aug 16
0
[LLVMdev] problems defining the stack layout
...look
> like
>
> Incoming vars
> -----------------
> Saved Link Register
> -----------------
> Local vars
> -----------------
>
> The problem is that the the first local variable is being assigned to
> the same location as the link register. I tried to use the
> OffsetOfLocalArea option, but do to alignment restrictions this
> increased the stack size.
>
> The offset of the local vars is set in calculateFrameObjectOffsets, so
> I added the following hack to eliminateFrameIndex:
>
> if (Offset < 0) //local variable
> Offset -= 4;
>
> Is ther...
2006 Aug 16
1
[LLVMdev] problems defining the stack layout
> I'm not familiar with the ARM ISA, so I don't know the right answer. The
> OffsetOfLocalArea is used for ISAs (like X86) where the call sequence
> modifies the stack pointer (in the case of X86, the call instruction
> pushes a 4/8-byte return value). If ARM is like PPC, where the return
> address is implicitly copied into a physreg, then you should probably use
> OffsetOfLocal...