[LLVMdev] inline asm constraints in LLVM

Dale Johannesen dalej at apple.com
Thu Jul 29 11:41:39 PDT 2010


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.

On Jul 29, 2010, at 11:36 AMPDT, John Thompson wrote:

> I'm trying to fix the handling of multiple alternate constraints in  
> Clang (see http://gcc.gnu.org/onlinedocs/gcc/Multi_002dAlternative.html#Multi_002dAlternative) 
> .
>
> How should the constraints be represented in the .ll file?
>
> Clang currently will assert because the code generator sees a  
> constraints string with the wrong number of comma-separated items.
>
> 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.
>
> Briefly looking at the LLVM asm parser, I can't really see anything  
> that tells me multiple alternative constraints are supported.
>
> But if they are, please tell me the string format, and perhaps  
> update the docs to show this.
>
> If they are not yet supported in LLVM, what should I do?
>
> -John
>
> -- 
> John Thompson
> John.Thompson.JTSoftware at gmail.com
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20100729/8c820b12/attachment.html>


More information about the llvm-dev mailing list