<html>
    <head>
      <base href="https://llvm.org/bugs/" />
    </head>
    <body><span class="vcard"><a class="email" href="mailto:tejohnson@google.com" title="Teresa Johnson <tejohnson@google.com>"> <span class="fn">Teresa Johnson</span></a>
</span> changed
              <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - Compiler seg-faults in lto for indirect goto"
   href="https://llvm.org/bugs/show_bug.cgi?id=25907">bug 25907</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>FIXED
           </td>
         </tr></table>
      <p>
        <div>
            <b><a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - Compiler seg-faults in lto for indirect goto"
   href="https://llvm.org/bugs/show_bug.cgi?id=25907#c1">Comment # 1</a>
              on <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED FIXED - Compiler seg-faults in lto for indirect goto"
   href="https://llvm.org/bugs/show_bug.cgi?id=25907">bug 25907</a>
              from <span class="vcard"><a class="email" href="mailto:tejohnson@google.com" title="Teresa Johnson <tejohnson@google.com>"> <span class="fn">Teresa Johnson</span></a>
</span></b>
        <pre>The assert happened because some functions were materialized when creating the
lazy module reader due to blockaddress forward references (via
materializeForwardReferencedFunctions). The forward referenced function
contained a reference to module level TBAA metadata, resulting in creation of a
forward MD reference. However, since this was during gold's claim_file_hook
handler, the bitcode reader is destroyed without doing any more materialization
(including metadata materialization), since it is just looking to see if the
file is valid bitcode or not. Therefore, the forward MD reference remained and
the assert fired.

I have decided to remove the assert altogether. It was useful during
development of the ThinLTO metadata linking, but doesn't seem very robust or
necessary. There isn't any requirement that the full bitcode be materialized
before tossing out the bitcode reader as in situations like this one.

Fixed in r256161.</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>