<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">It is at the end allowing for oddities like debug info and multiple branches.  You might want to look at AnalyzeBranch.<div><br><div><div>On Sep 2, 2010, at 4:19 PMPDT, Jeff Kunkel wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite">Is there any way to tell where in the Instruction list, the branch to the other MachineBasicBlock happens? I know in the BasicBlock had a nice api for it.<div><br></div><div>Thanks,</div><div>Jeff Kunkel<br><br><div class="gmail_quote"> On Thu, Sep 2, 2010 at 5:56 PM, Dale Johannesen <span dir="ltr"><<a href="mailto:dalej@apple.com">dalej@apple.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;"> <div class="im"><br> On Sep 2, 2010, at 2:44 PMPDT, Jeff Kunkel wrote:<br> <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> I need to track which MachineBasicBlocks branch into other MachineBasicBlocks. How do I do it?<br> </blockquote> <br></div> Look at the Predecessor/Successor lists, which are target-independent<div class="im"><br> <br> <blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> I see a MachineOperand can hold a MachineBasicBlock*. Does this mean the instruction may branch to the MachineBasicBlock, or can it be something like an object reference?<br> </blockquote> <br></div> It can also be the dreaded gcc "address of label" extension.  Number and ordering of instruction operands is target-dependent.<br> <br> <br> </blockquote></div><br></div> _______________________________________________<br>LLVM Developers mailing list<br>LLVMdev@cs.uiuc.edu         <a href="http://llvm.cs.uiuc.edu">http://llvm.cs.uiuc.edu</a><br><a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev">http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev</a><br></blockquote></div><br></div></body></html>