<div dir="ltr">Hi guys,<br><br>Suppose I have an IR file on disk, and I access it via a Module pass.  Also suppose that the bitcode file hasn't changed, and no transformation passes have run.<br><br>Then can I safely assume that every time my Module pass executes code like the following, it will always visit the Module's Functions, BasicBlocks, and Instructions in the same order?<br><br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><font face="monospace, monospace">for (auto const & Fn : Module) {<br>  for (auto const & BB : Fn) {<br>     for (auto const & Ins : BB) {<br>     }<br>  }<br>}<br></font></blockquote><br>I don't notice anything in the LLVM docs suggesting that I can count on the order staying the same when visiting a Module's Functions or a Function's BasicBlocks.  But I'm told there was an IRC post the other day stating that the order *is* stable.<br><div><br></div><div>Thanks, Christian</div></div>