<html><head><meta http-equiv="content-type" content="text/html; charset=UTF-8"><style>body { line-height: 1.5; }blockquote { margin-top: 0px; margin-bottom: 0px; margin-left: 0.5em; }body { font-size: 10.5pt; font-family: 宋体; color: rgb(0, 0, 0); line-height: 1.5; }</style></head><body>
<div><span></span>Thanks very much for your help!</div><div><br></div><div>Qin</div>
<div><br></div><hr style="width: 210px; height: 1px;" color="#b5c4df" size="1" align="left">
<div><span><div style="MARGIN: 10px; FONT-FAMILY: verdana; FONT-SIZE: 10pt"><div>haifeng.qin@wellintech.com</div></div></span></div>
<blockquote style="margin-top: 0px; margin-bottom: 0px; margin-left: 0.5em;"><div> </div><div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0cm 0cm 0cm"><div style="PADDING-RIGHT: 8px; PADDING-LEFT: 8px; FONT-SIZE: 12px;FONT-FAMILY:tahoma;COLOR:#000000; BACKGROUND: #efefef; PADDING-BOTTOM: 8px; PADDING-TOP: 8px"><div><b>From:</b> <a href="mailto:David.Chisnall@cl.cam.ac.uk">David Chisnall</a></div><div><b>Date:</b> 2016-12-15 18:01</div><div><b>To:</b> <a href="mailto:haifeng.qin@wellintech.com">haifeng.qin@wellintech.com</a></div><div><b>CC:</b> <a href="mailto:llvm-dev@lists.llvm.org">llvm-dev</a></div><div><b>Subject:</b> Re: [llvm-dev] How to actively reclaim stack memory</div></div></div><div><div>On 15 Dec 2016, at 07:26, haifeng.qin@wellintech.com via llvm-dev <llvm-dev@lists.llvm.org> wrote:</div>
<div>> </div>
<div>> For help:</div>
<div>> </div>
<div>> for loop lead to stack overflow, want to actively reclaim stack memory of alloc instruction.</div>
<div>> </div>
<div>> How to actively reclaim stack memory ?</div>
<div> </div>
<div>This sounds as if you’re putting the alloca inside the loop, not in the entry basic block and reusing it.  If you need the same amount of storage for each loop iteration, then you should put the alloca in the entry basic block and use the lifetime start / stop intrinsics in the loop to mark reuse of the memory.  If you need different sized allocations, then you will need to use the stack save and stack restore intrinsics inside the loop to reset the stack allocations in the loop.</div>
<div> </div>
<div>David</div>
<div> </div>
</div></blockquote>
</body></html>