<br><br><div class="gmail_quote">On Mon, Dec 19, 2011 at 4:27 PM, Chris Lattner <span dir="ltr"><<a href="mailto:clattner@apple.com">clattner@apple.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div class="im"><br>
On Dec 17, 2011, at 7:40 AM, Rafael Ávila de Espíndola wrote:<br>
<br>
> On 16/12/11 08:46 PM, Chris Lattner wrote:<br>
>> I'm not opposed to disabling this transformation when asan is on, we just need a clean way to express this in the IR.<br>
><br>
> Could clang be aware of asan being on and introduce a "please don't<br>
> widen" metadata on local variable accesses?<br>
<br>
</div>Yes, "we just need a clean way to express this in the IR."<br>
<br>
LLVM can't have a global "bool ASANIsOn;" that the optimizers listen to.<br></blockquote><div><br></div><div><br></div><div>A global is bad.</div><div>What about a metadata attached to a Function saying that transformations which will read out of bounds (even "safely") are illegal? </div>
<div>asan and SAFEcode will add this metadata, optimizers will listen to it. </div><div><br></div><div>Any other suggestion? </div><div><br></div><div><br></div><div>--kcc </div><div> </div></div>