<div dir="ltr"><div>For the record, Craig found a better way to solve the immediate problem than what I had thought of:<br><a href="https://reviews.llvm.org/D35451" rel="noreferrer" target="_blank">https://reviews.llvm.org/<wbr>D35451</a><br><br></div>So for this brief moment, instcombine should get both more powerful and slightly more efficient. I agree with the position that this just delays the inevitable day when we need to break instcombine up by giving it more defined goals. Some people would say we already hit that point, and I believe it...but I've asked multiple times for a bug report, test case, or profile with no reply. Hacking at it would again just be delaying a structural change, but I think it's still worth looking at. <br><br></div><div class="gmail_extra"><br><div class="gmail_quote">On Sat, Jul 15, 2017 at 2:20 PM, Philip Reames via llvm-dev <span dir="ltr"><<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  
    
  
  <div text="#000000" bgcolor="#FFFFFF"><span class="">
    <div class="m_6437638048382620908moz-cite-prefix">On 07/15/2017 01:09 PM, Daniel Berlin
      wrote:<br>
    </div>
    <blockquote type="cite">
      <div dir="ltr">Which is, of course, precisely why I didn't suggest
        that, it was Hal's straw man.<br>
      </div>
    </blockquote></span>
    Ah, sorry for the misread then.  Skimming the thread, that's exactly
    what I thought you *were* arguing for.  Glad to know we're in
    agreement.  <br><span class="">
    <blockquote type="cite">
      <div dir="ltr">
      </div>
      <span>
      </span><br>
      <div class="gmail_quote">
        <div dir="ltr">On Sat, Jul 15, 2017, 12:26 PM Philip Reames <<a href="mailto:listmail@philipreames.com" target="_blank">listmail@philipreames.com</a>>
          wrote:<br>
        </div>
        <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
          <div text="#000000" bgcolor="#FFFFFF">
            <div class="m_6437638048382620908m_5533082446293145890m_4446434701631465268moz-cite-prefix">On
              07/14/2017 11:46 AM, Hal Finkel via llvm-dev wrote:<br>
            </div>
            <blockquote type="cite">
              <p><br>
              </p>
              <div class="m_6437638048382620908m_5533082446293145890m_4446434701631465268moz-cite-prefix">On
                07/14/2017 01:38 PM, Daniel Berlin wrote:<br>
              </div>
              <blockquote type="cite">
                <div dir="ltr">
                  <div class="gmail_extra">
                    <div class="gmail_quote">
                      <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
                        <div bgcolor="#FFFFFF" text="#000000">
                          <div>
                            <div class="m_6437638048382620908m_5533082446293145890m_4446434701631465268h5"><br>
                            </div>
                          </div>
                          Not sure about this last part. It is really
                          going to require work by us to rewrite things.
                          :-) In the mean time, I think we should go
                          ahead with this.</div>
                      </blockquote>
                      <div><br>
                      </div>
                      <div>FWIW: My problem is, when put in this
                        framework, we will repeatedly make this same
                        decision, this same way, again and again, and
                        never actually get even started on fixing it :)</div>
                      <div><br>
                      </div>
                      <div>IE "it's just another small patch!"</div>
                    </div>
                  </div>
                </div>
              </blockquote>
              <br>
              You're correct. However, as I'm sure you're aware,
              developer time is not directly transferable in a way that
              makes any other decision optimal. It's not like blocking
              all improvements to InstCombine will cause a movement to
              appear to rewrite InstCombine. It will only cause a shrink
              in the pool of developers with recent experience working
              on InstCombine (and a lot of out-of-tree patches).
              Frankly, we don't even have a concrete plan for how we'd
              do this, or even a target design, and that's the first
              item on the critical path to a rewrite. We should start an
              RFC and iterate on this until we have a concrete plan and
              migration plan.<br>
            </blockquote>
          </div>
          <div text="#000000" bgcolor="#FFFFFF"> Just want to chime in
            here in support of what Hal said.  I strongly believe we
            should not block incremental progress unless we have a plan
            in place for a better design.  In particular, part of being
            able to come up with a better design is having multiple
            people with recent knowledge of the system which needs
            replaced and stopping evolution of the old system by
            definition inhibits having such a group of people.  <br>
          </div>
          <div text="#000000" bgcolor="#FFFFFF"> <br>
            Philip<br>
          </div>
        </blockquote>
      </div>
    </blockquote>
    <p><br>
    </p>
  </span></div>

<br>______________________________<wbr>_________________<br>
LLVM Developers mailing list<br>
<a href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a><br>
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/<wbr>mailman/listinfo/llvm-dev</a><br>
<br></blockquote></div><br></div>