<div dir="ltr">Thanks Eli. Good idea of using DAG combines for this, I'll see if that works for us.<div><br></div><div>-- Sean Silva</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Tue, Dec 12, 2017 at 12:22 PM, Friedman, Eli <span dir="ltr"><<a href="mailto:efriedma@codeaurora.org" target="_blank">efriedma@codeaurora.org</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div text="#000000" bgcolor="#FFFFFF"><span class="">
<div class="m_2673150999860324964moz-cite-prefix">On 12/12/2017 7:26 AM, Sean Silva via
llvm-dev wrote:<br>
</div>
<blockquote type="cite">
<div dir="auto">
<div><br>
<div class="gmail_extra"><br>
<div class="gmail_quote">On Dec 11, 2017 6:54 PM, "Sean
Silva" <<a href="mailto:chisophugis@gmail.com" target="_blank">chisophugis@gmail.com</a>>
wrote:<br type="attribution">
<blockquote class="m_2673150999860324964quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">
<div>It looks like in various places in SelectionDAG
and related machinery we appear to implicitly or
explicitly assume that TypeExpandInteger only
applies to scalars.<br>
</div>
<div><br>
Does anybody know why that is?</div>
<div><br>
</div>
<div>For our target (Pixel Visual Core: <a href="https://www.blog.google/products/pixel/pixel-visual-core-image-processing-and-machine-learning-pixel-2/" target="_blank">https://www.blog.google/<wbr>products/pixel/pixel-visual-co<wbr>re-image-processing-and-machin<wbr>e-learning-pixel-2/</a>)
expanding a N-bit vector op into two (N/2)-bit
vector ops</div>
</div>
</blockquote>
</div>
</div>
</div>
<div dir="auto"><br>
</div>
<div dir="auto">To be clear: the vector ops are all of the same
number of elements. Just the bit width of the element type
changes.</div>
</div>
</blockquote>
<br></span>
I think it just hasn't been a priority for any in-tree target; most
code doesn't use illegal vector types much, and the default strategy
generates decent code in most cases. (You might have an easier time
just adding a few target-specific DAGCombines for specific
operations which lead to low-quality code.)<span class="HOEnZb"><font color="#888888"><br>
<br>
-Eli<br>
<pre class="m_2673150999860324964moz-signature" cols="72">--
Employee of Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project</pre>
</font></span></div>
</blockquote></div><br></div>