<html><head><meta http-equiv="Content-Type" content="text/html charset=iso-8859-1"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><br><div><div>On Nov 2, 2013, at 9:49 PM, Alp Toker <<a href="mailto:alp@nuanti.com">alp@nuanti.com</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div style="font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;"><br>On 03/11/2013 04:40, Filip Pizlo wrote:<br><blockquote type="cite">I certainly could.  I'm just playing out the trade-offs and I don't<br>see the upside of reverting.  I think we agree that we will replace<br>this API with something more thought-out.  So, we agree that this new<br>function of mine will have a short shelf-life and should not make it<br>into a release.  We can either leave my horrible function in svn for<br>the next few days, or we can revert it.  Leaving it in has the<br>downside that maybe others will take a liking to it.  Reverting it<br>means more hassle for C API clients, like me.  Seems like leaving it<br>in is the lesser evil?<br></blockquote><br>Filip, as long as you're committed to following this up -- amending the<br>comment now and removing the function in the next few days, this is OK<br>with me as long as others don't object.<br></div></blockquote><div dir="auto"><br></div><div dir="auto">Thank you! :-)</div><div dir="auto"><br></div><div dir="auto"><div>Here's my proposal for how to do it:</div><div><br></div><div>- Enabling pretty stack tracing is done via an explicit function call, which has pthread_once-like behavior (you can call it many times and it's idempotent).</div><div>- PrettyStackTraceProgram will call this function.</div><div>- The function will be exposed via the C API and DisablePrettyStackTrace will be removed.</div><div><br></div><div>This *should* mean that none of LLVM's command-line tools should need any changes, since AFAICT, they all do PrettyStackTraceProgram.</div><div><br></div><div>Does this sound like the right thing for clang and others?  If so, I can hack up the patch.</div><div><br></div><div>-Filip</div><div><br></div></div><br><blockquote type="cite"><div style="font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;"><br>FWIW I'll be around to help test as soon as you have an Enable() patch.<br><br>Most of all, please make sure the function doesn't inadvertently end up<br>in 3.4 (!) or it'll be the wrong outcome to a long-standing bug.<br><br>Alp.<br><br>--<span class="Apple-converted-space"> </span><br><a href="http://www.nuanti.com/">http://www.nuanti.com</a><br>the browser experts</div></blockquote></div><br></body></html>