<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/128416>128416</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
How to export basic block symbols in LLVM 14 and later versions?
</td>
</tr>
<tr>
<th>Labels</th>
<td>
new issue
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
EricWang1358
</td>
</tr>
</table>
<pre>
---
### Issue Title:
**How to export basic block symbols in LLVM 14 and later versions? Is there a feature like `-gsplit-dwarf` for this?**
### Issue Content:
Hello LLVM Team,
I am an undergraduate student and now working on a project that requires exporting basic block symbol information from the program for later perf use. In earlier versions of LLVM, I saw solutions like customing patches to achieve this. With the introduction of the `-gsplit-dwarf` option in LLVM 14, I would like to know if there is now a built-in way to export basic block symbols.
I have the following questions and would greatly appreciate any guidance:
1. **Does LLVM 14 or later support exporting basic block symbols through command-line options?**
- In earlier versions, I had to modify the source code to insert these symbols. Is there now a standard option (such as `-gsplit-dwarf`) to directly generate basic block symbols?
2. **If such a feature is not directly supported, is there an alternative method to export basic block symbols without modifying the source code?**
3. **Are there any detailed documentation or example codes?**
Thank you for your assistance, and I look forward to your response!
---
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJyklE-P4zYPxj-NcyESxHL-HnyYd_YNNsD2NuieGYm21ciiV6LGm29fyM5k2ulgeyggIEAkk3x-D0mM0baeqC62_yu2XxaYpONQ_z9Y_R19W1bbw-LC5lYvl8ti_ZSPquYD5xgTwYsVR0U1X-XzlUcQBvo5cBC4YLQaLo71FeKtv7CLYD18-_b7b1BuAL0Bh0IBXilEyz4W1QnOEaSjQIDQEEoKBM5eCYrdetnGwVlZmhFDU-zW0HAA6Wz-bs7_eZnP7IW83AtdP30l53gu44WwL9Tz_P8ZsAf0kLyh0AY0CYUgSjLkZSrX8wgjh6v1LbAHhCHwH6QFpEOBQD-SDRTv-vOjfyIA6xsOPYplD03gPsvNcdqA_aRoZjJQaCBFWsHZA2Fw9i-ggJup_kI9wxkijhDZJZmuJlo6ReE-VzCg6I5itgV1Z-mVJmQr-G6lm3JbL4FN0lNF3Ez_fUabh-nFu4Nz9pGTM3NWYbhmRLa5e2jjhAzhkqyTpfUw4u3XHbJ686LDqVSChp3jMWv5kSjOIrMZc-I2EIq7AQ5DIG2zY-hv0CZr0Gt6mF6uYO6RL0zx0YMP3DENU0W_si53ZuDUdqC579GbpbOe7lz-1oQAsPzMt5lYhyYz6NnY5jZJjJyCJtBsJojWRwq5qSjSg8v7ZMxIo6A3GMybL4U6xKQ7wPiZe4U65sjGBtIZV0ueQob1icysZGKm3pidG5hjP2Zyclbe4935kckS7WOGPaATCh7FvhL0JB2bf9kQo5WOk9zxZCc-EPow7dVbkU-BHmlvYEjQOjJgWKeevMwTxwHoJ_aDm2N9XB0vHfor3DhNk3jjFCCvycxaU5aWG-8MjvmaX4yZv_D8MFAc2EcqVDkHm_fmwtSVOVZHXFBd7jfrqqwO2_2iq7XZlVt9UKo67PWFDmZfXZojbnfH477aN_uFrdVabddKVaWq1tv9CvUGS73bVIeqPO4aU2zW1KN1K-de-xWHdmHzwqtLddiUu4XDC7k4rXelPI0w3RZK5W0f6vzR8pLaWGzWzkaJ72EkL_b6v2_zRQqu7kSGmOdQnQp1aq106bLS3BfqlBPef5b3VVqo01RmLNTpruO1Vn8GAAD__6QgPx0">