<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Nov 20, 2020 at 2:07 PM Eric Christopher <<a href="mailto:echristo@gmail.com">echristo@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Nov 20, 2020 at 1:44 PM Mehdi AMINI via Phabricator <<a href="mailto:reviews@reviews.llvm.org" target="_blank">reviews@reviews.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">mehdi_amini added a comment.<br>
<br>
In D90554#2408163 <<a href="https://reviews.llvm.org/D90554#2408163" rel="noreferrer" target="_blank">https://reviews.llvm.org/D90554#2408163</a>>, @spatel wrote:<br>
<br>
> So to clarify policy, we reverted patches when (1) a test based on an experimental intrinsic was crashing and (2) that crash is easily reproducible independent of this patch as shown here:<br>
> 7ae346434 <<a href="https://reviews.llvm.org/rG7ae346434a5f51b81ebaeeb50bd5d97666ee288b" rel="noreferrer" target="_blank">https://reviews.llvm.org/rG7ae346434a5f51b81ebaeeb50bd5d97666ee288b</a>><br>
><br>
> I understand that we revert first and ask questions later, but should that be the rule for experimental code?<br>
<br>
In that case it seems like there was user-visible impact for some clang user according to @brooksmoses comment above? It isn't like an arbitrary Fuzzer was plugged to the system. IMO a revert is "low cost" and easy to re-land with a fix here, little downside to do this?<br></blockquote><div><br></div><div>Appreciated for sure. I'm not sure how "experimental" we want to consider the rounding math intrinsics at this point. It's an interesting question and probably should be raised on llvm-dev. If it were something not user visible or really experimental I probably wouldn't have reverted, but given it's a fairly common use case for developers to use the option it seemed on the "not really as experimental as it sounds" area. I think the intrinsics themselves might be experimental in the "we could change these radically" rather than "we don't really expect these to work".</div></div></div></blockquote><div><br></div><div>Yeah, I agree. The fixes in this case were easy because I could just about tell from the assert and backtrace where the problem was, but it might be more controversial for some theoretical future problem.<br></div><div>So maybe the real question is when to remove the "experimental" label. For example, we went years with the reduction intrinsics and recently promoted them because it was clear they had become part of the standard world. If the constrained intrinsics are already in mainstream use via clang, then we should treat them as 1st class IR?<br></div><div> </div></div></div>