<html>
    <head>
      <base href="https://bugs.llvm.org/">
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - Review options between using CodeBeads v.s. TSFlags for encoding M68k instructions"
   href="https://bugs.llvm.org/show_bug.cgi?id=48792">48792</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Review options between using CodeBeads v.s. TSFlags for encoding M68k instructions
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>libraries
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>trunk
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>PC
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>enhancement
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>P
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>Backend: M68k
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>unassignedbugs@nondot.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>minyihh@uci.edu
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>glaubitz@physik.fu-berlin.de, llvm-bugs@lists.llvm.org, minyihh@uci.edu
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Normally a backend uses `MCInstrDesc::TSFlags`, a 64-bits bit vector, to carry
all the instructions' encoding info. However, M68k's current encoding scheme --
which might not be the optimal one -- requires at least 24 bytes to carry all
the necessary info. As a workaround, M68k created a specialized TableGen
backend, CodeBeads, to generate an auxiliary encoding table that can carry
arbitrary length instruction encodings.

Nevertheless, we always prefer to reuse the existing infrastructures. Therefore
this bug is used for tracking the status of refactoring M68k's current encoding
scheme into a more concise form. For example, try to fit every encoding info
into the 64-bits `TSFlags`, or use `TSFlags` as a index/pointer to another
auxiliary encoding table.

For more discussion on this topic, please refer to
<a href="https://reviews.llvm.org/D88385">https://reviews.llvm.org/D88385</a>.</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>