<div dir="ltr"><div dir="ltr"><div>I'm less worried about the unreachable blocks / return void than the fact that we have values like this:</div><div>  %cmp.i.i.i.1 = icmp eq i64 1, -1<br></div><div>...making their way through to the backend with -O1 -fexperimental-new-pass-manager.</div><div>That just shouldn't happen IMO.</div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Mar 4, 2019 at 4:08 PM Jordan Rupprecht <<a href="mailto:rupprecht@google.com">rupprecht@google.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">Thanks! That fix seems to resolve the crash on the non-reduced code.<br>
<br>
The original code does not have -Wreturn-type warnings, so it's a<br>
creduce artifact. But if I add "return 0" or make the methods return<br>
void to silence those warnings, the crashes don't reproduce. I'll see<br>
if I can tweak creduce to give something that crashes *without*<br>
warnings, and that might shed some more light on the crash.<br>
<br>
On Mon, Mar 4, 2019 at 2:55 PM Sanjay Patel <<a href="mailto:spatel@rotateright.com" target="_blank">spatel@rotateright.com</a>> wrote:<br>
><br>
> Should be fixed here:<br>
> <a href="https://reviews.llvm.org/rL355345" rel="noreferrer" target="_blank">https://reviews.llvm.org/rL355345</a><br>
> ...but it's disturbing that we're in this situation at all with optimizations on. I don't know much about the new pass manager, but this doesn't happen with the old pass manager because the IR isn't so full of bogus values.<br>
><br>
> On Mon, Mar 4, 2019 at 2:07 PM Sanjay Patel <<a href="mailto:spatel@rotateright.com" target="_blank">spatel@rotateright.com</a>> wrote:<br>
>><br>
>> Taking a look now...not sure if this is just an artifact of the reduction, but I see 4 of these:<br>
>> repro.cc:188:3: warning: control reaches end of non-void function [-Wreturn-type]<br>
>><br>
</blockquote></div>