<div dir="ltr">Hi Christian,<div><br></div><div>I don't think this patch is correct.</div><div><br></div><div><div>+  def _Any : Pat<(!cast<ValueType>("v" # DestLanes # DestTy)</div><div>+                    (!cast<PatFrag>("extloadvi" # SrcTy) addrmode6:$addr)),</div>
<div>+                  (!cast<Instruction>("VMOVLuv" # DestLanes # DestTy)</div><div>+                    (!cast<Instruction>("VREV64d" # SrcTy)</div><div>+                      (!cast<Instruction>("VLD1d" # SrcTy) addrmode6:$addr)))>;</div>
</div><div><br></div><div>Currently, we'll generate, for an extload:</div><div><br></div><div>    vld1.i8 d0, [...]</div><div>    vmovl.u16 d0, d0</div><div><br></div><div>I think this is correct. We load "as-if" LD1, and the second instruction does not permute the lanes. With your change, we'll generate:</div>
<div><br></div><div>    vld1.i8 d0, [...]</div><div>    vrev.64 d0, d0</div><div>    vmovl.u16 d0, d0</div><div><br></div><div>Which I think is wrong - it is "as-if" VLDR.</div><div><br></div><div>Some of the other cases in your patch, where we're doing a *scalar* load and converting it to a vector, are valid I think. But this one at least is not.</div>
<div><br></div><div>Cheers,</div><div><br></div><div>James</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On 16 June 2014 12:21, Christian Pirker <span dir="ltr"><<a href="mailto:cpirker@a-bix.com" target="_blank">cpirker@a-bix.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Updated summary and added some source comments.<br>
<div class="HOEnZb"><div class="h5"><br>
<a href="http://reviews.llvm.org/D4043" target="_blank">http://reviews.llvm.org/D4043</a><br>
<br>
Files:<br>
  lib/Target/ARM/ARMISelLowering.cpp<br>
  lib/Target/ARM/ARMInstrNEON.td<br>
  test/CodeGen/ARM/big-endian-neon-extend.ll<br>
</div></div><br>_______________________________________________<br>
llvm-commits mailing list<br>
<a href="mailto:llvm-commits@cs.uiuc.edu">llvm-commits@cs.uiuc.edu</a><br>
<a href="http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits</a><br>
<br></blockquote></div><br></div>