<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Oct 30, 2014 at 4:48 PM, Eric Christopher <span dir="ltr"><<a href="mailto:echristo@gmail.com" target="_blank">echristo@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br><br><div class="gmail_quote"><div><div class="h5">On Thu Oct 30 2014 at 1:16:38 PM Xiaoguang Wang <<a href="mailto:xgwang09@gmail.com" target="_blank">xgwang09@gmail.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Thu, Oct 30, 2014 at 2:33 PM, Robin Morisset <span dir="ltr"><<a href="mailto:morisset@google.com" target="_blank">morisset@google.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi,<br><br>From my understanding of the LLVM IR, it is impossible to jump to the middle of a Basic Block, only to its beginning. But there is a splitBasicBlock function that seems like it might be useful to you, to make sure a basic block is starting at the exact place you want to jump.<div><br></div><div>Best regards,</div><div>Robin</div></blockquote><div> </div></div></div></div><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div>Thanks you all! I'm looking at splitBasicBlock and trying to use that. BTW, is there a way at lower level of LLVM that can implement this functionality? E.g. MCBasicBlock or MCInst?<br><br></div></div></div></div></blockquote><div><br></div></div></div><div>You are unlikely to want to do this at the MC level, maybe the MI level. What are you trying to accomplish? </div><span class="HOEnZb"><font color="#888888"><div><br></div><div>-eric</div></font></span></div>
</blockquote></div>Thanks for the answer. I want to construct a table which can jump to the address after a call instruction. And replace the call/ret instructions with that indirection table. So to protect return address on stack.<br><br></div><div class="gmail_extra">Sincerely,<br></div><div class="gmail_extra">Xiaoguang<br></div></div>