<div dir="ltr">+nlewycky<div><br><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Nov 17, 2014 at 9:36 AM, Volodymyr Kuznetsov <span dir="ltr"><<a href="mailto:vova.kuznetsov@epfl.ch" target="_blank">vova.kuznetsov@epfl.ch</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">Hi Kostya,<span class=""><br><br>
On Sat, Nov 15, 2014 at 1:53 PM, Volodymyr Kuznetsov <<a href="mailto:vova.kuznetsov@epfl.ch" target="_blank">vova.kuznetsov@epfl.ch</a>> wrote:<br>
> Do you think moving the pass to lib/Transform/Instrumentation but<br>
> scheduling it during code generation would make sense ? If so, we'll<br>
> do that and change the safestack tests to use opt instead of llc.<br>
<br></span>I tried to move the SafeStack to lib/Transform/Instrumentation, but I realized that the SafeStack pass depends on TargetMachine: it gets the stack alignment from TargetFrameLowering and the location of the unsafe stack pointer from TargetLowering. It seems that making TargetMachine available in opt would require opt to depend on more things from CodeGen than it normally should.<br></blockquote><div><br></div><div>Nick, please comment on TargetMachine in LLVM. </div><div>Can we get stack alignment and current stack pointer at the LLVM level, before CodeGen (i.e. so that it works in opt, not in llc)</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<br>
- Vova<br>
</blockquote></div><br></div></div></div>