<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>The LLVM asm parser doesn't support multiple alternative constraints; you need to have Clang pick one tuple in the front end.  See ChooseConstraintTuple in llvm-gcc for prior art.</div><br><div><div>On Jul 29, 2010, at 11:36 AMPDT, John Thompson wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div>I'm trying to fix the handling of multiple alternate constraints in Clang (see <a href="http://gcc.gnu.org/onlinedocs/gcc/Multi_002dAlternative.html#Multi_002dAlternative">http://gcc.gnu.org/onlinedocs/gcc/Multi_002dAlternative.html#Multi_002dAlternative</a>).</div> <div> </div> <div>How should the constraints be represented in the .ll file?</div> <div> </div> <div>Clang currently will assert because the code generator sees a constraints string with the wrong number of comma-separated items.</div> <div><br></div> <div>Basically, after some editing, it just concatenates them together.  The commas used in the string for a multiple alternative constraint gets confused with the commas separating the constraints.</div> <div> </div> <div>Briefly looking at the LLVM asm parser, I can't really see anything that tells me multiple alternative constraints are supported.</div> <div> </div> <div>But if they are, please tell me the string format, and perhaps update the docs to show this.</div> <div> </div> <div>If they are not yet supported in LLVM, what should I do?</div> <div> </div> <div>-John<br clear="all"><br>-- <br>John Thompson<br><a href="mailto:John.Thompson.JTSoftware@gmail.com">John.Thompson.JTSoftware@gmail.com</a><br><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></body></html>