<div>Oh, sorry, I forgot to hit the save button in the editor.  It's just one file:</div>
<div> </div>
<div>Index: lib/Basic/TargetInfo.cpp<br>===================================================================<br>--- lib/Basic/TargetInfo.cpp (revision 101528)<br>+++ lib/Basic/TargetInfo.cpp (working copy)<br>@@ -280,6 +280,8 @@<br>
       Info.setAllowsRegister();<br>       Info.setAllowsMemory();<br>       break;<br>+    case 'Z': // wish I knew what Z was for...<br>+      break;<br>     }<br> <br>     Name++;<br>@@ -359,6 +361,14 @@<br>     case 'N':<br>
     case 'O':<br>     case 'P':<br>+    case 'Q':<br>+    case 'R':<br>+    case 'S':<br>+    case 'T':<br>+    case 'U':<br>+    case 'W':<br>+    case 'Y':<br>
+    case 'Z':<br>       break;<br>     case 'r': // general register.<br>       Info.setAllowsRegister();<br></div>
<div>I don't know if it's target-specific or not.  The gcc comment makes it seem generic (register indexed memory), but I couldn't find any docs that mentioned it.</div>
<div> </div>
<div>-John<br><br></div>
<div class="gmail_quote">On Fri, Apr 16, 2010 at 4:38 PM, Chris Lattner <span dir="ltr"><<a href="mailto:clattner@apple.com">clattner@apple.com</a>></span> wrote:<br>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote">
<div>
<div></div>
<div class="h5"><br>On Apr 16, 2010, at 3:53 PM, John Thompson wrote:<br><br>> Using Clang to compile some PS3 headers, I ran into a problem with some inline assembly for some instrinsics macros with an unrecognized "Z" constraint.  Looking at the gcc sources, I see there are several other constraints not currently supported.  The enclosed macro lets them get through the parser, but at present I have no idea how to actually implement them, so before I look into it more, I thought I'd ask.  Can someone help me out?<br>
><br>> This from the gcc sources:<br>><br>> (define_memory_constraint "Z"<br>>   "Memory operand that is an indexed or indirect from a register (it is<br>> usually better to use @samp{m} or @samp{es} in @code{asm} statements)"<br>
>   (match_operand 0 "indexed_or_indirect_operand"))<br>> Is it okay to check in the patch as an intermediate step?<br>><br><br></div></div>it Z a target independent or target-specific constraint?  You have some unrelated changes in your diff.<br>
<font color="#888888"><br>-Chris<br><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>