<html>
    <head>
      <base href="http://llvm.org/bugs/" />
    </head>
    <body><span class="vcard"><a class="email" href="mailto:baldrick@free.fr" title="Duncan Sands <baldrick@free.fr>"> <span class="fn">Duncan Sands</span></a>
</span> changed
              <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED INVALID - Naked attribute still has return statement"
   href="http://llvm.org/bugs/show_bug.cgi?id=15806">bug 15806</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 - Naked attribute still has return statement"
   href="http://llvm.org/bugs/show_bug.cgi?id=15806#c4">Comment # 4</a>
              on <a class="bz_bug_link 
          bz_status_RESOLVED  bz_closed"
   title="RESOLVED INVALID - Naked attribute still has return statement"
   href="http://llvm.org/bugs/show_bug.cgi?id=15806">bug 15806</a>
              from <span class="vcard"><a class="email" href="mailto:baldrick@free.fr" title="Duncan Sands <baldrick@free.fr>"> <span class="fn">Duncan Sands</span></a>
</span></b>
        <pre>Every LLVM IR function definition is required to contain at least one basic
block.  Every basic block is required to end with a terminator instruction. 
Thus every function contains at least one instruction.  There is no way to have
a "null function" at the IR level.  All kinds of places in LLVM (eg just about
every optimizer) depend on this invariant, so it isn't going to change.

Maybe you can have your inline asm take care of control flow itself, i.e. just
explicitly put the instructions that should be run at the end of the function
in the inline asm?  If there is an extraneous "ret" instruction following that
code, it should then be harmless.</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>