[LLVMdev] Dynamically allocate and free variables in stack

Reid Kleckner reid.kleckner at gmail.com
Fri Aug 26 07:38:58 PDT 2011


Use alloca to get enough memory for your stack and manage it yourself
with an offset to the next free slot.  This works if the amount of
space can be determined statically, and is not expected to be large.

Reid

On Fri, Aug 26, 2011 at 10:23 AM, Semion Prihodko
<semion.ababo at gmail.com> wrote:
> Hi, guys.
> I have a beginner's question. The virtual machine I develop have
> instructions to dynamically allocate variable in stack and to free it
> (consistency of such instructions is checked before the actual jitting). To
> allocate memory in stack we have alloca IR instruction, but I didn't find
> any instruction to free it (such variables will be freed only when an
> enclosing function will return). This means that I have to create
> function for every stack allocation which is not convenient. Can you suggest
> me easier way to dynamically allocate and free variables in stack? Thanks.
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
>




More information about the llvm-dev mailing list