<div dir="ltr">Hi Tim,<div><br></div>Thanks for your review. I modified my patch on top of your RegisterOperand changes, so I can make conversion between VPR64 and VPR128 directly. <br>Also I removed  printNeonUImm0OperandBare, and  made some format changes. <br>
I see many developers use <a href="http://llvm-reviews.chandlerc.com">llvm-reviews.chandlerc.com</a> for review, so I upload my patch there:<div><br></div><div><a href="http://llvm-reviews.chandlerc.com/D1671">http://llvm-reviews.chandlerc.com/D1671</a><br>
</div><div><br></div><div>Please review, thanks.</div>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">2013/9/12 Tim Northover <span dir="ltr"><<a href="mailto:t.p.northover@gmail.com" target="_blank">t.p.northover@gmail.com</a>></span><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hi Kevin,<br>
<br>
It's starting to look much nicer now.<br>
<div class="im"><br>
> *Custom promote all 64 bit vector to 128 bit for EXTRACT_VECTOR_ELT and<br>
> INSERT_VECTOR_ELT. ( the implementation maybe ugly, but currently I have no<br>
> idea to get a better one. )<br>
<br>
</div>I've posted <a href="http://llvm-reviews.chandlerc.com/D1656" target="_blank">http://llvm-reviews.chandlerc.com/D1656</a>, which implements<br>
the RegisterOperand change and should allow you to use the expected<br>
"sub_64" SUBREG operations as you tried in the beginning.<br>
<br>
I'd appreciate you (and anyone else) taking a look.<br>
<br>
I had another look through the whole patch, and have a few more<br>
suggestions. There are one or two formatting issues with spaces at the<br>
end of lines (particularly in .td files) and:<br>
<br>
+                             neon_uimm4_bare> {<br>
+                let Inst{20-16} = {Imm{3}, Imm{2}, Imm{1}, Imm{0},<br>
0b1};<br>
+                }<br>
<br>
TableGen tends to use the normal LLVM 2-spaces for indentation style.<br>
<br>
+void AArch64InstPrinter::printNeonUImm0OperandBare(const MCInst *MI,<br>
+void AArch64InstPrinter::printNeonUImm8OperandBare(const MCInst *MI,<br>
<br>
Are both of these functions needed?<br>
<br>
Cheers.<br>
<span class="HOEnZb"><font color="#888888"><br>
Tim.<br>
</font></span></blockquote></div><br><br clear="all"><div><br></div>-- <br><div dir="ltr">Best Regards,<div><br></div><div>Kevin Qin</div></div>
</div>