<div>Eli,</div>
<div> </div>
<div>So, then this is a problem with the back-end, right?  Do you agree that the back end is a better place to try to choose constraints, given that it knows better which things are already in registers and so forth?</div>

<div> </div>
<div>-John<br><br></div>
<div class="gmail_quote">On Thu, Aug 5, 2010 at 6:28 PM, Eli Friedman <span dir="ltr"><<a href="mailto:eli.friedman@gmail.com">eli.friedman@gmail.com</a>></span> wrote:<br>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote">On Thu, Aug 5, 2010 at 6:24 PM, John Thompson<br>
<div class="im"><<a href="mailto:john.thompson.jtsoftware@gmail.com">john.thompson.jtsoftware@gmail.com</a>> wrote:<br></div>> Eli,<br>
<div class="im">><br>> One thing<br>> I also noticed is that the back-end doesn't consider multiple constraints in<br>> parallel, as ChooseConstraintTuple does, but it seems like it should be<br>> okay, as long as the backend can find suitable instrustions.<br>
<br></div>That's precisely the issue; multiple-alternative constraints require<br>examining all the constraints at once.  From the gcc docs: "For<br>example, on the 68000, a logical-or instruction can combine register<br>
or an immediate value into memory, or it can combine any kind of<br>operand into a register; but it cannot combine one memory location<br>into another. "<br><font color="#888888"><br>-Eli<br></font></blockquote></div>
<br><br clear="all"><br>-- <br>John Thompson<br><a href="mailto:John.Thompson.JTSoftware@gmail.com">John.Thompson.JTSoftware@gmail.com</a><br><br>