<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On Dec 17, 2009, at 3:37 PM, Bill Wendling wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div><blockquote type="cite"><div><br>I don't think that this is the right layer to do this at.  The "Ordering" of nodes is only defined at Builder time, not in general when instructions are randomly created by other parts of SD machinery.  The various calls to Ordering->add should only happen from the builder.<br><br></div></blockquote><blockquote type="cite"><div>OTOH, calls to *remove* a node from the ordering *should* happen from the common SD code when the node is about to be deleted.<br><font class="Apple-style-span" color="#006312"><br></font></div></blockquote>Hmm...I was hoping to make this a very low-level thing so that the higher levels wouldn't even know about it. There may be a problem because node creation & modification doesn't stop at the builder, but could happen when lowering to target nodes. I'll look into it, though.</div></span><br class="Apple-interchange-newline"></blockquote></div><br><div>Yeah, I see where you're coming from.  My hope is that only the builder, the target-indep parts of isel, and the scheduler will have to know about this stuff.</div><div><br></div><div>-Chris</div></body></html>