<div dir="ltr">Hi<div><br></div><div>I would like to ask something more. >From this experience, I think I didn't understand very well on the generation of LLVM IR. </div><div><br></div><div>I am using autotools(configure, make) to compile the binaries. I use the LLVMgold.so and the -save-temps option to save the LLVM IR. If you have any other good suggestions on keeping the LLVM IR, especially on the compilation with autotools, please tell me. Many Thanks.</div><div><br></div><div>Regards</div><div>Muhui</div></div><div class="gmail_extra"><br><div class="gmail_quote">2018-06-04 13:14 GMT+08:00 Muhui Jiang <span dir="ltr"><<a href="mailto:jiangmuhui@gmail.com" target="_blank">jiangmuhui@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Hi Paulr<div><br></div><div>I think I've already know the reason. I use the -save-temps to help me to save the LLVM IR during the compiling time. </div><div><br></div><div>You know, there are four different kinds stages and every stage map to one file for one binary. And they are</div><div><br></div><div>*.preopt.bc</div><div>*.internalize.bc</div><div>*.opt.bc</div><div>*.precodegen.bc</div><div><br></div><div>My LLVM Pass is running on *.preopt.bc so that I get 376 functions. However, when I run the same pass on *.precodegen.bc. I get 266 functions, which is the same number according to the symbol table. My mistake that I didn't consider which bitcode file should I run. Thanks for your suggestions.</div><div><br></div><div>Regards</div><span class="HOEnZb"><font color="#888888"><div>Muhui</div><div><br></div></font></span></div><div class="HOEnZb"><div class="h5"><div class="gmail_extra"><br><div class="gmail_quote">2018-06-04 3:08 GMT+08:00  <span dir="ltr"><<a href="mailto:paul.robinson@sony.com" target="_blank">paul.robinson@sony.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">





<div lang="EN-US" link="blue" vlink="purple">
<div class="m_6955450056835187577m_5083198112354960260WordSection1">
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Hi Muhui,<u></u><u></u></span></p><span>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal">I tried to grep the "DW_TAG_subprogram" from the debug_info . However, I noticed that the number I found is still less than the whole functions I found with LLVM IR. Do you have any experiences? Many Thanks<u></u><u></u></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"><u></u> <u></u></span></p>
</span><p class="MsoNormal"><a name="m_6955450056835187577_m_5083198112354960260__MailEndCompose"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">The only explanation that comes to mind, is that the functions are not in the final binary object file.  However, previously you said
 you believed they were present.  If that is the case, please provide us with an example source file and compiler command line, to help diagnose the behavior.<u></u><u></u></span></a></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"><u></u> <u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">Thanks,<u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d">--paulr</span><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"><u></u><u></u></span></p>
<p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1f497d"><u></u> <u></u></span></p>
</div>
</div>

</blockquote></div><br></div>
</div></div></blockquote></div><br></div>