<html>
    <head>
      <base href="http://llvm.org/bugs/" />
    </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 --- - Fix rules on what ".set micromips" applies to"
   href="http://llvm.org/bugs/show_bug.cgi?id=18487">18487</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>Fix rules on what ".set micromips" applies to
          </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>normal
          </td>
        </tr>

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

        <tr>
          <th>Component</th>
          <td>MC
          </td>
        </tr>

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

        <tr>
          <th>Reporter</th>
          <td>rafael.espindola@gmail.com
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>llvmbugs@cs.uiuc.edu
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Richard Sandiford says:

Careful!  It's important that all "instruction" labels get marked as
micromips, even if they have no explicit type.  E.g. if you have:

        .set    micromips
        .type   foo, @function
        .ent    foo
foo:
        nop
my_label:
        nop
        .end    foo

then my_label must be treated as micromips:

Symbol table '.symtab' contains 8 entries:
   Num:    Value  Size Type    Bind   Vis      Ndx Name
     0: 00000000     0 NOTYPE  LOCAL  DEFAULT  UND
     1: 00000000     0 SECTION LOCAL  DEFAULT    1 .text
     2: 00000000     0 SECTION LOCAL  DEFAULT    2 .data
     3: 00000000     0 SECTION LOCAL  DEFAULT    3 .bss
     4: 00000000     0 SECTION LOCAL  DEFAULT    4 .reginfo
     5: 00000000     0 SECTION LOCAL  DEFAULT    5 .pdr
     6: 00000000     4 FUNC    LOCAL  DEFAULT [MICROMIPS]     1 foo
     7: 00000002     0 NOTYPE  LOCAL  DEFAULT [MICROMIPS]     1 my_label

It looked from the patch like this wouldn't happen.

This is important for things like EH tables, debug info, or other such data,
as well as for alternative entry points.

The syntax for forcing a label to be treated as an instruction label
is ".insn".  So:

f2:
        .insn
        .word   ...

can be used to emit instructions as .words.

I strongly suggest not doing something different for LLVM.  This stuff
is hairy enough as it is without having two different interpretations
of the same assembly.</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>