<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/85377>85377</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
[llvm-objdump] llvm-objdump cannot disassemble __stack_chk_* symbol
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
CoTinker
</td>
</tr>
</table>
<pre>
demo.c
```
#include <string.h>
void func() {
char c = 'b';
char str1[1];
memset(str1, c, 1);
}
```
https://godbolt.org/z/TxKnEYdbP
compile command
```
% clang demo.c -c -o demo.o -fstack-protector-strong
% objdump -d demo.o | grep __stack_chk*
c: 90000008 adrp x8, 0 <__stack_chk_guard>
30: 90000008 adrp x8, 0 <__stack_chk_guard>
48: 94000000 bl 0 <__stack_chk_fail>
-------------------------------------------------------
% llvm-objdump -d demo.o | grep __stack_chk*
NULL
```
we can see that binutils objdump can get __stack_chk* symbol, while llvm-objdump can not.

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJysVE1v6zYQ_DWrCyGDWlEWddDhxX6-NCh6SA89GfyyxIQSDZHKR399QdmO3SQ9pHiEwTUx2sFwdrkiBNuNxrRQ3UG1zcQcez-1G_9gxyczZdLrt1abwa8U0C3QH7Cm59_piKUdlZu1IVBuQpzs2K16KH-e4WV_9laTwzwqQA7YEKjvLnCjejERRaDcEsBaAtZQfkBDnAqo7gqotrfYYIZgIiBfcNwQlbYCsLl-VW-_VN3HeAxQ_gDcAe46r6V3ceWnDnD3N-Du4fW38edfWv5xewvlh6N1hig_DGLU_2FHRZQTY0dOnpFckdyfDp7khxCFesqPk49GRT_lIU5-7K65Xj7qeTiSXF9yoN6QbjJHst8vyXvVPwGeJRFCFJQpNHRZnJyX0NMxxVeeTKGpODcE-24Wk36vEiEl_SU0jJ9p2InnQiPdKX4iOAjr3vPz_7eu7jn3POTftPD3P-_vvyzliyFKjCQYQ2IvIpF2nKN14b1GCe1M_MBKwtsgvUt2vfSpXf4lKuWMPq4umlNf20F0JvU28g99aWM_y5XyA-Au0ZxD6p9HoyLgToRgYgDccVY0SOsi_aV1VRiKuRBrlTNUVc7rtcpLUQiNSlFTyPRIFgmZbkvdlI3ITFvUBWXNmiNmfasZZeIg-YE1NXJxaPiaszUrFW9YVTU8sy1SZLQsqoJSWuDqIJumUQJLQxnjtAJGzSCsWyXN6XFlNoTZtLwq6zpzQhoXlrGDOJoXsoCAmKbQ1C73lHMXgFFnQwxXlmijW-bVrbNQbT85PfpItA3Jo0E6c1uo_bVS2Ty59tvGL2oX49Nt_gkAAP__cqSCww">