<html>
    <head>
      <base href="https://llvm.org/bugs/" />
    </head>
    <body><span class="vcard"><a class="email" href="mailto:sanjoy@playingwithpointers.com" title="Sanjoy Das &lt;sanjoy&#64;playingwithpointers.com&gt;"> <span class="fn">Sanjoy Das</span></a>
</span> changed
              <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed" title="RESOLVED INVALID - LICM incorrectly hoists load because Instruction::mayThrow does not correctly handle invokes" href="https://urldefense.proofpoint.com/v2/url?u=https-3A__llvm.org_bugs_show-5Fbug.cgi-3Fid-3D24185&d=AwMBaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=pF93YEPyB-J_PERP4DUZOJDzFVX5ZQ57vQk33wu0vio&m=Z4fCFl9V3mKELsiV_HAdDyo61MraZAczOrPDT-zl9mY&s=NpRE7ioDlMc7IKGbh8SSeRx_sMvmRqDb9AjVJgmxThU&e=">bug 24185</a>
        <br>
             <table border="1" cellspacing="0" cellpadding="8">
          <tr>
            <th>What</th>
            <th>Removed</th>
            <th>Added</th>
          </tr>

         <tr>
           <td style="text-align:right;">Status</td>
           <td>NEW
           </td>
           <td>RESOLVED
           </td>
         </tr>

         <tr>
           <td style="text-align:right;">Resolution</td>
           <td>---
           </td>
           <td>INVALID
           </td>
         </tr></table>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed" title="RESOLVED INVALID - LICM incorrectly hoists load because Instruction::mayThrow does not correctly handle invokes" href="https://urldefense.proofpoint.com/v2/url?u=https-3A__llvm.org_bugs_show-5Fbug.cgi-3Fid-3D24185-23c2&d=AwMBaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=pF93YEPyB-J_PERP4DUZOJDzFVX5ZQ57vQk33wu0vio&m=Z4fCFl9V3mKELsiV_HAdDyo61MraZAczOrPDT-zl9mY&s=wrcDc-llpXh79LufSqQBK4zbOogfMMWiFcTrsSqkABA&e=">Comment # 2</a>
              on <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed" title="RESOLVED INVALID - LICM incorrectly hoists load because Instruction::mayThrow does not correctly handle invokes" href="https://urldefense.proofpoint.com/v2/url?u=https-3A__llvm.org_bugs_show-5Fbug.cgi-3Fid-3D24185&d=AwMBaQ&c=8hUWFZcy2Z-Za5rBPlktOQ&r=pF93YEPyB-J_PERP4DUZOJDzFVX5ZQ57vQk33wu0vio&m=Z4fCFl9V3mKELsiV_HAdDyo61MraZAczOrPDT-zl9mY&s=NpRE7ioDlMc7IKGbh8SSeRx_sMvmRqDb9AjVJgmxThU&e=">bug 24185</a>
              from <span class="vcard"><a class="email" href="mailto:sanjoy@playingwithpointers.com" title="Sanjoy Das &lt;sanjoy&#64;playingwithpointers.com&gt;"> <span class="fn">Sanjoy Das</span></a>
</span></b>
        <pre>(In reply to <a href="show_bug.cgi?id=24185#c1">comment #1</a>)
<span class="quote">> I think that all `mayThrow` ensures is that the specific instruction doesn't
> immediately unwind.  That `invoke` transfers control to instructions which
> may throw isn't conceptually different from a `br` which does the same, no?</span >

I was under the impression that an invoke does not always unwind to its
landingpad, but may "skip" frames if the catch clause does not match the type
of the thrown exception.  Given that that isn't the case, and invokes always
unwind to their landingpad if an exception is thrown, this isn't a bug.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are on the CC list for the bug.</li>
      </ul>
    </body>
</html>