<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">