<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/122195>122195</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [SPARC] llvm-objdump doesn't recognize V9 instructions in 32-bit SPARC object files
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            backend:Sparc,
            tools:llvm-objdump
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
            koachan
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          koachan
      </td>
    </tr>
</table>

<pre>
    Found this while working on another thing.
```
reproducer:
  retl
   popc %g0, %g0 ! a V9 instruction
```

Assembles successfully with e.g. `clang -target sparc -mcpu=v9 -c reproducer.s`, but `llvm-objdump` doesn't recognize the `popc`:
```
$ llvm-objdump -d reproducer.o 

reproducer.o:   file format elf32-sparc

Disassembly of section .text:

00000000 <reproducer>:
       0: 81 c3 e0 08   retl
       4: 81 70 00 00   <unknown>
```

As a comparison, GNU objdump does recognize the instruction.
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJxsU8GuqzYQ_ZphMwKZcSBhwYLmNt1VVZ_avTEG3GtsZJub3n59ZcLTTZ6eZQnLeM6cOWdGhKAnq1QL1S9A9O6EnIUFIqjeMrHF2fn2uMx6N3y2N7fZAeOsA95nbRTenX_XdkJnUVgXZ-XTXzsVwDqo2bFZ59Xq3bBJ5YF3wDpEr6LZD7i6VSJQNTGg6-OAQCUK_LtBbUP0m4za2R8ggXVdCGrpjQoYNilVCONmzCfedZxRFVOBUDNphJ0wj8JPKmJYhZeYL3LdgL99NJhL_OJWhARNV-y3mGKN-Vhy1_8zbMsKNcPBqWCBzhG9km6y-j-FcVbpaSoiBe_VvdCkEz7jYD48Z3T4KOX5agdpxqTv6PwiIiozcsp38o_nbzqIR_Gf6EYMalcIi6j-jQcH1rFjIfDrswG_fvdgX4kzXkqUHBVDdkEE1ny5k9bpeHJmyPYNrAF-3ey7dXebAH9iDQqUblmF18HZJOpvv_-F30VISv4g4pPTRTa0fGh4IzLVlmde8wsjKrO5vYxVWfdC9BWrRD32JV3G6tSLZhzOdV-dMt0So4qV7EK8YlQWtTyX_MylrIeyZyWDE1OL0KZIphTOT5kOYVNtSVQ2VWZEr0w4BqIX8l3ZAXj3bZeeCOgKRNE5E4B3L_3xmBrf7pf9NgU4MaNDDF-Zoo5mH7Zvf3R_XqF6e-2Mn7XX6wgE1BY55b2OuGMkQZWMmJolZJs37RzjmrgB3YBuk47z1hfSLUC3lOz45Kt3KRDotpcfgG6HAh8t_R8AAP__tupDng">